survey-angular-ui 1.9.51 → 1.9.52
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/angular-ui.d.ts +1 -0
- package/angular-ui.module.d.ts +4 -3
- package/components/survey-header/logo-image.component.d.ts +9 -0
- package/components/survey-header/survey-header.component.d.ts +5 -3
- package/esm2020/angular-ui.mjs +2 -1
- package/esm2020/angular-ui.module.mjs +6 -5
- package/esm2020/components/dropdown/dropdown.component.mjs +6 -5
- package/esm2020/components/survey-actions/survey-nav-btn.component.mjs +3 -3
- package/esm2020/components/survey-header/logo-image.component.mjs +20 -0
- package/esm2020/components/survey-header/survey-header.component.mjs +14 -7
- package/esm2020/questions/matrix.component.mjs +3 -3
- package/esm2020/questions/paneldynamic.component.mjs +33 -9
- package/esm2020/questions/ranking-item.component.mjs +3 -1
- package/esm2020/questions/ranking.component.mjs +16 -7
- package/esm2020/questions/selectbase.component.mjs +6 -3
- package/fesm2015/survey-angular-ui.mjs +127 -68
- package/fesm2015/survey-angular-ui.mjs.map +1 -1
- package/fesm2020/survey-angular-ui.mjs +127 -68
- package/fesm2020/survey-angular-ui.mjs.map +1 -1
- package/package.json +1 -1
- package/questions/paneldynamic.component.d.ts +2 -0
- package/questions/ranking.component.d.ts +5 -2
- package/questions/selectbase.component.d.ts +1 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"survey-angular-ui.mjs","sources":["../../../packages/survey-angular-ui/src/embedded-view-content.component.ts","../../../packages/survey-angular-ui/src/base-angular.ts","../../../packages/survey-angular-ui/src/utils/ng-show.directive.ts","../../../packages/survey-angular-ui/src/component-factory.ts","../../../packages/survey-angular-ui/src/utils/dynamic.directive.ts","../../../packages/survey-angular-ui/src/components/popup/popup-container.component.ts","../../../packages/survey-angular-ui/src/components/popup/popup-container.component.html","../../../packages/survey-angular-ui/src/components/popup/popup.service.ts","../../../packages/survey-angular-ui/src/components/popup/modal-container.component.ts","../../../packages/survey-angular-ui/src/components/element-title/dynamic-head.component.ts","../../../packages/survey-angular-ui/src/components/element-title/dynamic-head.component.html","../../../packages/survey-angular-ui/src/components/action-bar/action.component.ts","../../../packages/survey-angular-ui/src/components/action-bar/action.component.html","../../../packages/survey-angular-ui/src/components/action-bar/action-bar.component.ts","../../../packages/survey-angular-ui/src/components/action-bar/action-bar.component.html","../../../packages/survey-angular-ui/src/survey-string.component.ts","../../../packages/survey-angular-ui/src/components/element-title/element-title.component.ts","../../../packages/survey-angular-ui/src/components/element-title/element-title.component.html","../../../packages/survey-angular-ui/src/utils/safe-url.pipe.ts","../../../packages/survey-angular-ui/src/components/survey-header/survey-header.component.ts","../../../packages/survey-angular-ui/src/components/survey-header/survey-header.component.html","../../../packages/survey-angular-ui/src/element.component.ts","../../../packages/survey-angular-ui/src/element.component.html","../../../packages/survey-angular-ui/src/row.component.ts","../../../packages/survey-angular-ui/src/row.component.html","../../../packages/survey-angular-ui/src/page.component.ts","../../../packages/survey-angular-ui/src/page.component.html","../../../packages/survey-angular-ui/src/components/brand-info/brand-info.component.ts","../../../packages/survey-angular-ui/src/components/brand-info/brand-info.component.html","../../../packages/survey-angular-ui/src/survey-content.component.ts","../../../packages/survey-angular-ui/src/survey-content.component.html","../../../packages/survey-angular-ui/src/survey.component.ts","../../../packages/survey-angular-ui/src/popup.survey.component.ts","../../../packages/survey-angular-ui/src/popup.survey.component.html","../../../packages/survey-angular-ui/src/errors.component.ts","../../../packages/survey-angular-ui/src/errors.component.html","../../../packages/survey-angular-ui/src/components/element-header/element-header.component.ts","../../../packages/survey-angular-ui/src/components/element-header/element-header.component.html","../../../packages/survey-angular-ui/src/comment.component.ts","../../../packages/survey-angular-ui/src/comment.component.html","../../../packages/survey-angular-ui/src/question.component.ts","../../../packages/survey-angular-ui/src/question.component.html","../../../packages/survey-angular-ui/src/string-viewer.component.ts","../../../packages/survey-angular-ui/src/string-viewer.component.html","../../../packages/survey-angular-ui/src/components/popup/popup.component.ts","../../../packages/survey-angular-ui/src/components/skeleton.component.ts","../../../packages/survey-angular-ui/src/components/skeleton.component.html","../../../packages/survey-angular-ui/src/components/svg-icon/svg-icon.component.ts","../../../packages/survey-angular-ui/src/components/dropdown/dropdown.component.ts","../../../packages/survey-angular-ui/src/components/dropdown/dropdown.component.html","../../../packages/survey-angular-ui/src/components/tagbox/tagbox-filter.component.ts","../../../packages/survey-angular-ui/src/components/tagbox/tagbox-filter.component.html","../../../packages/survey-angular-ui/src/components/tagbox/tagbox-item.component.ts","../../../packages/survey-angular-ui/src/components/tagbox/tagbox-item.component.html","../../../packages/survey-angular-ui/src/components/tagbox/tagbox.component.ts","../../../packages/survey-angular-ui/src/components/tagbox/tagbox.component.html","../../../packages/survey-angular-ui/src/components/renderAs/dropdown-select/dropdown-option-item.component.ts","../../../packages/survey-angular-ui/src/components/renderAs/dropdown-select/dropdown-select.component.ts","../../../packages/survey-angular-ui/src/components/renderAs/dropdown-select/dropdown-select.component.html","../../../packages/survey-angular-ui/src/question.ts","../../../packages/survey-angular-ui/src/questions/text.component.ts","../../../packages/survey-angular-ui/src/questions/text.component.html","../../../packages/survey-angular-ui/src/utils/safe-html.pipe.ts","../../../packages/survey-angular-ui/src/questions/html.component.ts","../../../packages/survey-angular-ui/src/questions/html.component.html","../../../packages/survey-angular-ui/src/questions/selectbase.component.ts","../../../packages/survey-angular-ui/src/questions/selectbase.component.html","../../../packages/survey-angular-ui/src/questions/radiogroup.component.ts","../../../packages/survey-angular-ui/src/questions/radiogroup-item.component.ts","../../../packages/survey-angular-ui/src/questions/radiogroup-item.component.html","../../../packages/survey-angular-ui/src/questions/checkbox.component.ts","../../../packages/survey-angular-ui/src/questions/checkbox-item.component.ts","../../../packages/survey-angular-ui/src/questions/checkbox-item.component.html","../../../packages/survey-angular-ui/src/questions/dropdown.component.ts","../../../packages/survey-angular-ui/src/questions/dropdown.component.html","../../../packages/survey-angular-ui/src/questions/tagbox.component.ts","../../../packages/survey-angular-ui/src/questions/tagbox.component.html","../../../packages/survey-angular-ui/src/questions/rating.component.ts","../../../packages/survey-angular-ui/src/questions/rating.component.html","../../../packages/survey-angular-ui/src/questions/boolean.component.ts","../../../packages/survey-angular-ui/src/questions/boolean.component.html","../../../packages/survey-angular-ui/src/questions/imagepicker-item.component.ts","../../../packages/survey-angular-ui/src/questions/imagepicker-item.component.html","../../../packages/survey-angular-ui/src/questions/imagepicker.component.ts","../../../packages/survey-angular-ui/src/questions/imagepicker.component.html","../../../packages/survey-angular-ui/src/questions/button-group/button-group-item.component.ts","../../../packages/survey-angular-ui/src/questions/button-group/button-group-item.component.html","../../../packages/survey-angular-ui/src/questions/button-group/button-group.component.ts","../../../packages/survey-angular-ui/src/questions/button-group/button-group.component.html","../../../packages/survey-angular-ui/src/utils/ng-key2click.directive.ts","../../../packages/survey-angular-ui/src/components/action-bar/action-bar-item.component.ts","../../../packages/survey-angular-ui/src/components/action-bar/action-bar-item.component.html","../../../packages/survey-angular-ui/src/components/action-bar/action-bar-item-dropdown.component.ts","../../../packages/survey-angular-ui/src/components/action-bar/action-bar-item-dropdown.component.html","../../../packages/survey-angular-ui/src/questions/selectbase-item.ts","../../../packages/survey-angular-ui/src/questions/selectbase-item.html","../../../packages/survey-angular-ui/src/components/list/list-item.component.ts","../../../packages/survey-angular-ui/src/components/list/list-item.component.html","../../../packages/survey-angular-ui/src/components/list/list.component.ts","../../../packages/survey-angular-ui/src/components/list/list.component.html","../../../packages/survey-angular-ui/src/components/renderAs/rating-dropdown/rating-dropdown.component.ts","../../../packages/survey-angular-ui/src/components/renderAs/rating-dropdown/rating-dropdown.component.html","../../../packages/survey-angular-ui/src/components/renderAs/boolean-checkbox/boolean-checkbox.component.ts","../../../packages/survey-angular-ui/src/components/renderAs/boolean-checkbox/boolean-checkbox.component.html","../../../packages/survey-angular-ui/src/components/renderAs/boolean-radio/boolean-radio-item.component.ts","../../../packages/survey-angular-ui/src/components/renderAs/boolean-radio/boolean-radio-item.component.html","../../../packages/survey-angular-ui/src/components/renderAs/boolean-radio/boolean-radio.component.ts","../../../packages/survey-angular-ui/src/components/renderAs/boolean-radio/boolean-radio.component.html","../../../packages/survey-angular-ui/src/components/progress/default/progress.component.ts","../../../packages/survey-angular-ui/src/components/progress/default/progress.component.html","../../../packages/survey-angular-ui/src/components/progress/buttons/progress.component.ts","../../../packages/survey-angular-ui/src/components/progress/buttons/progress.component.html","../../../packages/survey-angular-ui/src/panel.component.ts","../../../packages/survey-angular-ui/src/panel.component.html","../../../packages/survey-angular-ui/src/components/survey-actions/survey-nav-btn.component.ts","../../../packages/survey-angular-ui/src/components/survey-actions/survey-nav-btn.component.html","../../../packages/survey-angular-ui/src/questions/matrix.component.ts","../../../packages/survey-angular-ui/src/questions/matrix.component.html","../../../packages/survey-angular-ui/src/questions/file.component.ts","../../../packages/survey-angular-ui/src/questions/file.component.html","../../../packages/survey-angular-ui/src/questions/comment.component.ts","../../../packages/survey-angular-ui/src/questions/comment.component.html","../../../packages/survey-angular-ui/src/questions/signature.component.ts","../../../packages/survey-angular-ui/src/questions/signature.component.html","../../../packages/survey-angular-ui/src/questions/multipletextitem.component.ts","../../../packages/survey-angular-ui/src/questions/mutlipletextitem.component.html","../../../packages/survey-angular-ui/src/questions/multipletext.component.ts","../../../packages/survey-angular-ui/src/questions/multipletext.component.html","../../../packages/survey-angular-ui/src/questions/ranking-item.component.ts","../../../packages/survey-angular-ui/src/questions/ranking-item.component.html","../../../packages/survey-angular-ui/src/questions/ranking.component.ts","../../../packages/survey-angular-ui/src/questions/ranking.component.html","../../../packages/survey-angular-ui/src/string-editor.component.ts","../../../packages/survey-angular-ui/src/string-editor.component.html","../../../packages/survey-angular-ui/src/components/paneldynamic-actions/paneldynamic-add-btn.component.ts","../../../packages/survey-angular-ui/src/components/paneldynamic-actions/paneldynamic-add-btn.component.html","../../../packages/survey-angular-ui/src/components/paneldynamic-actions/paneldynamic-next-btn.component.ts","../../../packages/survey-angular-ui/src/components/paneldynamic-actions/paneldynamic-next-btn.component.html","../../../packages/survey-angular-ui/src/components/paneldynamic-actions/paneldynamic-prev-btn.component.ts","../../../packages/survey-angular-ui/src/components/paneldynamic-actions/paneldynamic-prev-btn.component.html","../../../packages/survey-angular-ui/src/components/paneldynamic-actions/paneldynamic-progress-text.component.ts","../../../packages/survey-angular-ui/src/components/paneldynamic-actions/paneldynamic-progress-text.component.html","../../../packages/survey-angular-ui/src/questions/paneldynamic.component.ts","../../../packages/survey-angular-ui/src/questions/paneldynamic.component.html","../../../packages/survey-angular-ui/src/template-renderer.component.ts","../../../packages/survey-angular-ui/src/template-renderer.component.html","../../../packages/survey-angular-ui/src/questions/customwidget.component.ts","../../../packages/survey-angular-ui/src/questions/customwidget.component.html","../../../packages/survey-angular-ui/src/components/matrix-actions/drag-drop-icon/drag-drop-icon.ts","../../../packages/survey-angular-ui/src/components/matrix-actions/drag-drop-icon/drag-drop-icon.component.html","../../../packages/survey-angular-ui/src/questions/matrixcell.component.ts","../../../packages/survey-angular-ui/src/questions/matrixcell.component.html","../../../packages/survey-angular-ui/src/questions/matrixrequiredheader.component.ts","../../../packages/survey-angular-ui/src/questions/matrix-row.component.ts","../../../packages/survey-angular-ui/src/questions/matrix-row.component.html","../../../packages/survey-angular-ui/src/questions/matrixtable.component.ts","../../../packages/survey-angular-ui/src/questions/matrixtable.component.html","../../../packages/survey-angular-ui/src/questions/matrixdropdown.component.ts","../../../packages/survey-angular-ui/src/questions/matrixdropdown.component.html","../../../packages/survey-angular-ui/src/questions/matrixdynamic.component.ts","../../../packages/survey-angular-ui/src/questions/matrixdynamic.component.html","../../../packages/survey-angular-ui/src/components/matrix-actions/remove-button/remove-button.component.ts","../../../packages/survey-angular-ui/src/components/matrix-actions/remove-button/remove-button.component.html","../../../packages/survey-angular-ui/src/components/matrix-actions/detail-button/detail-button.component.ts","../../../packages/survey-angular-ui/src/components/matrix-actions/detail-button/detail-button.component.html","../../../packages/survey-angular-ui/src/questions/expression.component.ts","../../../packages/survey-angular-ui/src/questions/image.component.ts","../../../packages/survey-angular-ui/src/questions/image.component.html","../../../packages/survey-angular-ui/src/questions/custom.component.ts","../../../packages/survey-angular-ui/src/questions/composite.component.ts","../../../packages/survey-angular-ui/src/angular-ui.module.ts","../../../packages/survey-angular-ui/src/survey-angular-ui.ts"],"sourcesContent":["import { Component, EmbeddedViewRef, OnInit, TemplateRef, ViewChild, ViewContainerRef } from \"@angular/core\";\n\n@Component({\n template: \"\",\n})\n\nexport class EmbeddedViewContentComponent implements OnInit {\n @ViewChild(\"template\", { read: TemplateRef, static: true }) templateRef!: TemplateRef<HTMLElement>\n protected embeddedView?: EmbeddedViewRef<HTMLElement>;\n constructor(protected viewContainerRef?: ViewContainerRef) {}\n\n ngOnInit(): void {\n if(!!this.templateRef) {\n this.embeddedView = this.viewContainerRef?.createEmbeddedView(this.templateRef);\n }\n }\n}","import { ChangeDetectorRef, Component, DoCheck, OnChanges, OnDestroy, SimpleChange, ViewContainerRef } from \"@angular/core\";\nimport { ArrayChanges, Base, ISurvey, SurveyModel } from \"survey-core\";\nimport { EmbeddedViewContentComponent } from \"./embedded-view-content.component\";\n\n@Component({\n template: \"\"\n})\nexport abstract class BaseAngular<T extends Base = Base> extends EmbeddedViewContentComponent implements DoCheck, OnDestroy {\n constructor(protected changeDetectorRef: ChangeDetectorRef, viewContainerRef?: ViewContainerRef) {\n super(viewContainerRef);\n }\n protected get surveyModel(): ISurvey {\n return this.getModel().getSurvey();\n }\n protected abstract getModel(): T;\n protected previousModel?: T;\n private isModelSubsribed: boolean = false;\n\n public ngDoCheck(): void {\n if(this.previousModel !== this.getModel()) {\n this.unMakeBaseElementAngular(this.previousModel);\n this.previousModel = this.getModel();\n this.makeBaseElementAngular(this.getModel());\n this.onModelChanged();\n }\n this.beforeUpdate();\n }\n\n protected onModelChanged() {}\n\n private setIsRendering(val: boolean) {\n const model = this.getModel();\n if (!!model) {\n (<any>model).isRendering = val;\n }\n }\n private getIsRendering() {\n const model = this.getModel();\n return !!model && !!(<any>model).isRendering;\n }\n\n ngOnDestroy() {\n this.unMakeBaseElementAngular(this.getModel());\n }\n\n private makeBaseElementAngular(stateElement: T) {\n if(!!stateElement && !(<any>stateElement).__ngImplemented) {\n this.isModelSubsribed = true;\n (<any>stateElement).__ngImplemented = true;\n stateElement.iteratePropertiesHash((hash, key) => {\n var val: any = hash[key];\n if (Array.isArray(val)) {\n var val: any = val;\n val[\"onArrayChanged\"] = (arrayChanges: ArrayChanges) => {\n this.update();\n };\n }\n });\n stateElement.setPropertyValueCoreHandler = (\n hash: any,\n key: string,\n val: any\n ) => {\n if (hash[key] !== val) {\n hash[key] = val;\n this.update();\n }\n };\n }\n }\n private unMakeBaseElementAngular(stateElement?: Base) {\n if(!!stateElement && this.isModelSubsribed) {\n this.isModelSubsribed = false;\n (<any>stateElement).__ngImplemented = false;\n stateElement.setPropertyValueCoreHandler = <any>undefined;\n stateElement.iteratePropertiesHash((hash, key) => {\n var val: any = hash[key];\n if (Array.isArray(val)) {\n var val: any = val;\n val[\"onArrayChanged\"] = () => {};\n }\n });\n }\n }\n\n private update() {\n if (this.getIsRendering()) return;\n this.beforeUpdate();\n this.detectChanges();\n this.afterUpdate();\n }\n\n protected detectChanges() {\n if(!!this.embeddedView) {\n this.embeddedView.detectChanges();\n } else {\n this.changeDetectorRef.detectChanges();\n }\n }\n\n protected beforeUpdate(): void {\n this.setIsRendering(true);\n }\n protected afterUpdate(): void {\n this.setIsRendering(false);\n }\n ngAfterViewChecked(): void {\n this.afterUpdate();\n }\n}","import { Directive, ElementRef, Input, OnChanges, SimpleChanges } from \"@angular/core\";\n\n@Directive({\n selector: \"[visible]\"\n})\nexport class VisibleDirective implements OnChanges {\n constructor(private el: ElementRef) { }\n @Input() visible?: boolean;\n ngOnChanges(changes: SimpleChanges): void {\n changes[\"visible\"].currentValue ? this.show() : this.hide();\n }\n private hide() {\n this.el.nativeElement.style.display = \"none\";\n }\n private show() {\n this.el.nativeElement.style.display = \"\";\n }\n}","import { Component, ComponentRef, Type, ViewContainerRef } from \"@angular/core\";\n\nexport class AngularComponentFactory {\n public static Instance: AngularComponentFactory = new AngularComponentFactory();\n private creatorHash: { [index: string]: Type<any> } = {};\n\n public registerComponent(\n typeName: string,\n componentType: Type<any>\n ): void {\n this.creatorHash[typeName] = componentType;\n }\n public getAllTypes(): Array<string> {\n var result = new Array<string>();\n for (var key in this.creatorHash) {\n result.push(key);\n }\n return result.sort();\n }\n public isComponentRegistered(elementType: string): boolean {\n return !!this.creatorHash[elementType];\n }\n public create(containerRef: ViewContainerRef, elementType: string, params?: any): ComponentRef<Component> {\n var componentType = this.creatorHash[elementType];\n if (!componentType) return (null as any);\n return containerRef.createComponent(componentType);\n }\n}\n","import { Directive, ElementRef, Input, OnChanges, SimpleChanges, TemplateRef, ViewContainerRef } from \"@angular/core\";\nimport { AngularComponentFactory } from \"../component-factory\";\n\ninterface IDynamicComponent {\n name: string;\n data?: any;\n default?: string;\n}\n\n@Directive({\n selector: \"[component]\"\n})\n\nexport class DynamicComponentDirective implements OnChanges {\n constructor(private containerRef: ViewContainerRef, private templateRef: TemplateRef<unknown>) { }\n @Input() component!: IDynamicComponent;\n private componentInstance: any;\n ngOnChanges(changes: SimpleChanges): void {\n const componentChanges = changes[\"component\"];\n if(componentChanges.currentValue.name !== componentChanges.previousValue?.name ||\n (componentChanges.currentValue.name === undefined && componentChanges.previousValue === undefined && !this.componentInstance)) {\n this.createComponent();\n } else {\n this.updateComponentData();\n }\n }\n createComponent(): void {\n this.containerRef.clear();\n if(AngularComponentFactory.Instance.isComponentRegistered(this.component.name)) {\n this.componentInstance = AngularComponentFactory.Instance.create(this.containerRef, this.component.name).instance;\n } else if (this.component.default) {\n this.componentInstance = AngularComponentFactory.Instance.create(this.containerRef, this.component.default).instance;\n }\n if(!this.componentInstance) {\n throw new Error(`Can't create component with name: ${this.component.name} and default: ${this.component.default}`);\n } else {\n this.componentInstance.contentTempl = this.templateRef;\n }\n this.updateComponentData();\n }\n updateComponentData(): void {\n const data = this.component.data;\n Object.keys(data).forEach((key) => {\n this.componentInstance[key] = data[key];\n });\n }\n}","import { ChangeDetectorRef, Component, Input } from \"@angular/core\";\nimport { BaseAngular } from \"../../base-angular\";\nimport { PopupBaseViewModel } from \"survey-core\";\n\n@Component({\n selector: \"sv-ng-popup-container, '[sv-ng-popup-container]'\",\n templateUrl: \"./popup-container.component.html\"\n})\n\nexport class PopupContainerComponent extends BaseAngular<PopupBaseViewModel> {\n private prevIsVisible: boolean = false;\n isShow: boolean = false;\n @Input() model!: PopupBaseViewModel;\n\n constructor(changeDetectorRef: ChangeDetectorRef) {\n super(changeDetectorRef);\n this.changeDetectorRef.detach();\n }\n protected getModel(): PopupBaseViewModel {\n return this.model;\n }\n\n protected override onModelChanged(): void {\n this.changeDetectorRef.detectChanges();\n }\n\n protected override beforeUpdate(): void {\n super.beforeUpdate();\n if (!this.prevIsVisible && this.model.isVisible) {\n this.isShow = false;\n }\n }\n\n protected override afterUpdate(): void {\n if (!this.prevIsVisible && this.model.isVisible) {\n setTimeout(() => {\n this.model.updateOnShowing();\n this.isShow = true;\n this.changeDetectorRef.detectChanges();\n });\n }\n if (this.prevIsVisible !== this.model.isVisible) {\n this.prevIsVisible = this.model.isVisible;\n }\n super.afterUpdate();\n }\n}","<div class=\"sv-popup\" tabindex=\"-1\" [class]=\"model.styleClass\" [style.visibility]=\"isShow ? 'visible' : 'hidden'\" [visible]=\"model.isVisible\" (click)=\"model.clickOutside()\" (keydown)=\"model.onKeyDown($event)\">\n <div class=\"sv-popup__container\" [style]=\"{ left: model.left, top: model.top, height: model.height, minWidth: model.minWidth, width: model.width }\">\n <div class=\"sv-popup__shadow\">\n <span *ngIf=\"model.showPointer\" class=\"sv-popup__pointer\" [style]=\"{ left: model.pointerTarget.left, top: model.pointerTarget.top }\"></span>\n <div class=\"sv-popup__body-content\">\n <div *ngIf=\"model.title\" class=\"sv-popup__body-header\">{{ model.title }}</div>\n <div class=\"sv-popup__scrolling-content\">\n <div class=\"sv-popup__content\">\n <ng-template [component]=\"{ name: model.contentComponentName, data: model.contentComponentData }\"></ng-template>\n </div>\n </div>\n <div *ngIf=\"model.showFooter\" class=\"sv-popup__body-footer\">\n <button type=\"button\" (click)=\"model.cancel()\"\n class=\"sv-popup__body-footer-item sv-popup__button sv-popup__button--cancel\">{{ model.cancelButtonText }}</button>\n <button type=\"button\" *ngIf=\"model.isModal\" (click)=\"model.apply()\" \n class=\"sv-popup__body-footer-item sv-popup__button sv-popup__button--apply\">{{ model.applyButtonText }}</button>\n </div>\n </div>\n </div>\n </div>\n</div>","import { ApplicationRef, ComponentFactoryResolver, Injectable, Injector } from \"@angular/core\";\nimport { ComponentPortal, DomPortalOutlet } from \"@angular/cdk/portal\";\nimport { PopupBaseViewModel } from \"survey-core\";\nimport { PopupContainerComponent } from \"./popup-container.component\";\n\n@Injectable()\nexport class PopupService {\n constructor(private injector: Injector,\n private applicationRef: ApplicationRef,\n private componentFactoryResolver: ComponentFactoryResolver) {}\n\n createComponent(popupViewModel: PopupBaseViewModel): DomPortalOutlet {\n const portalHost = new DomPortalOutlet(popupViewModel.container, this.componentFactoryResolver, this.applicationRef, this.injector);\n const portal = new ComponentPortal(PopupContainerComponent);\n const componentRef = portalHost.attach(portal);\n popupViewModel.container = <HTMLElement>popupViewModel.container.children[0];\n componentRef.instance.model = popupViewModel;\n componentRef.changeDetectorRef.detectChanges();\n return portalHost;\n }\n}","import { DomPortalOutlet } from \"@angular/cdk/portal\";\nimport { Component } from \"@angular/core\";\nimport { createDialogOptions, IDialogOptions, PopupBaseViewModel, createPopupModalViewModel, settings } from \"survey-core\";\nimport { PopupService } from \"./popup.service\";\n\n@Component({\n selector: \"sv-ng-modal-container\",\n template: \"\",\n styleUrls: [\"../../hide-host.scss\"]\n})\n\nexport class ModalComponent {\n\n public model!: PopupBaseViewModel;\n private portalHost!: DomPortalOutlet;\n private functionDefined: boolean = false;\n\n constructor(private popupService: PopupService) {\n }\n showDialog(dialogOptions: IDialogOptions) {\n this.model = createPopupModalViewModel(dialogOptions);\n this.model.initializePopupContainer();\n this.model.model.onHide = () => {\n this.portalHost.detach();\n this.model.unmountPopupContainer();\n };\n this.portalHost = this.popupService.createComponent(this.model);\n this.model.model.isVisible = true;\n }\n ngOnInit(): void {\n if(!!settings.showModal) return;\n this.functionDefined = true;\n settings.showModal = (\n componentName: string,\n data: any,\n onApply: () => boolean,\n onCancel?: () => void,\n cssClass?: string,\n title?: string,\n displayMode: \"popup\" | \"overlay\" = \"popup\"\n ) => {\n const options = createDialogOptions(\n componentName,\n data,\n onApply,\n onCancel,\n undefined,\n undefined,\n cssClass,\n title,\n displayMode\n );\n this.showDialog(options);\n };\n }\n ngOnDestroy() {\n if(this.functionDefined) {\n settings.showModal = <any>undefined;\n }\n }\n}\n\n","import { Component, Input } from \"@angular/core\";\nimport { EmbeddedViewContentComponent } from \"../../embedded-view-content.component\";\nimport { SurveyElement } from \"survey-core\";\n\n@Component({\n selector: \"sv-ng-dynamic-head\",\n templateUrl: \"./dynamic-head.component.html\",\n styleUrls: [\"../../hide-host.scss\"]\n})\nexport class DynamicHeadComponent extends EmbeddedViewContentComponent {\n @Input() tagName!: string;\n @Input() element!: SurveyElement;\n get ariaLabel(): string | null {\n return this.element.titleAriaLabel;\n }\n}","<ng-template #template>\n <ng-container [ngSwitch]=\"tagName\">\n <h1 *ngSwitchCase=\"'h1'\" [class]=\"element.cssTitle\" [id]=\"element.ariaTitleId\" [attr.tabindex]=\"element.titleTabIndex\" [attr.aria-expanded]=\"element.titleAriaExpanded\" [attr.aria-label]=\"ariaLabel\"><ng-container *ngTemplateOutlet=\"titleContent\"></ng-container></h1>\n <h2 *ngSwitchCase=\"'h2'\"[class]=\"element.cssTitle\" [id]=\"element.ariaTitleId\" [attr.tabindex]=\"element.titleTabIndex\" [attr.aria-expanded]=\"element.titleAriaExpanded\" [attr.aria-label]=\"ariaLabel\"><ng-container *ngTemplateOutlet=\"titleContent\"></ng-container></h2>\n <h3 *ngSwitchCase=\"'h3'\"[class]=\"element.cssTitle\" [id]=\"element.ariaTitleId\" [attr.tabindex]=\"element.titleTabIndex\" [attr.aria-expanded]=\"element.titleAriaExpanded\" [attr.aria-label]=\"ariaLabel\"><ng-container *ngTemplateOutlet=\"titleContent\"></ng-container></h3>\n <h4 *ngSwitchCase=\"'h4'\"[class]=\"element.cssTitle\" [id]=\"element.ariaTitleId\" [attr.tabindex]=\"element.titleTabIndex\" [attr.aria-expanded]=\"element.titleAriaExpanded\" [attr.aria-label]=\"ariaLabel\"><ng-container *ngTemplateOutlet=\"titleContent\"></ng-container></h4>\n <h5 *ngSwitchCase=\"'h5'\"[class]=\"element.cssTitle\" [id]=\"element.ariaTitleId\" [attr.tabindex]=\"element.titleTabIndex\" [attr.aria-expanded]=\"element.titleAriaExpanded\" [attr.aria-label]=\"ariaLabel\"><ng-container *ngTemplateOutlet=\"titleContent\"></ng-container></h5>\n <h6 *ngSwitchCase=\"'h6'\"[class]=\"element.cssTitle\" [id]=\"element.ariaTitleId\" [attr.tabindex]=\"element.titleTabIndex\" [attr.aria-expanded]=\"element.titleAriaExpanded\" [attr.aria-label]=\"ariaLabel\"><ng-container *ngTemplateOutlet=\"titleContent\"></ng-container></h6>\n </ng-container>\n <ng-template #titleContent>\n <ng-content></ng-content>\n </ng-template>\n</ng-template>","import { Component, Input, ViewChild, ViewContainerRef } from \"@angular/core\";\nimport { BaseAngular } from \"../../base-angular\";\nimport { AngularComponentFactory } from \"../../component-factory\";\n\n@Component({\n selector: \"sv-ng-action\",\n templateUrl: \"./action.component.html\",\n styles: [\":host { display: none; }\"],\n})\nexport class ActionComponent extends BaseAngular {\n @Input() model: any;\n @ViewChild(\"actionContent\", { read: ViewContainerRef, static: true }) actionContent!: ViewContainerRef;\n getModel() {\n return this.model;\n }\n}\n\nAngularComponentFactory.Instance.registerComponent(\"sv-action\", ActionComponent);","\n<ng-template #template>\n <div [class]=\"model.getActionRootCss()\" [id]=\"model.id\">\n <div class=\"sv-action__content\">\n <ng-container *ngIf=\"model.needSeparator\">\n <div class=\"sv-action-bar-separator\"></div>\n </ng-container>\n <ng-template [component]=\"{ name: model.component, data: { model }, default: 'sv-action-bar-item'}\"></ng-template>\n </div>\n </div>\n</ng-template>","import { Component, ElementRef, Input, ViewChild } from \"@angular/core\";\nimport { AngularComponentFactory } from \"../../component-factory\";\nimport { BaseAngular } from \"../../base-angular\";\nimport { ActionContainer } from \"survey-core\";\n\n@Component({\n selector: \"sv-action-bar, sv-ng-action-bar\",\n templateUrl: \"./action-bar.component.html\",\n styles: [\":host { display: none }\"]\n})\nexport class ActionBarComponent extends BaseAngular<ActionContainer> {\n @Input() model!: ActionContainer;\n @Input() handleClick: any;\n @ViewChild(\"container\") container!: ElementRef<HTMLDivElement>;\n getModel(): ActionContainer {\n return this.model;\n }\n\n get allowOnClick(): boolean {\n return this.handleClick !== undefined ? this.handleClick : true;\n }\n\n onClick(event: Event): void {\n if(this.allowOnClick) {\n event.stopPropagation();\n }\n }\n ngAfterViewInit() {\n if (!!this.model.hasActions) {\n this.model.initResponsivityManager(this.container.nativeElement);\n }\n }\n override ngOnDestroy(): void {\n super.ngOnDestroy();\n this.model.resetResponsivityManager();\n }\n}\n\nAngularComponentFactory.Instance.registerComponent(\"sv-action-bar\", ActionBarComponent);","<ng-template #template>\n <div *ngIf=\"model.hasActions\" [class]=\"model.getRootCss()\" (click)=\"onClick($event)\" #container>\n <ng-container *ngFor=\"let action of model.renderedActions\">\n <sv-ng-action [model]=\"action\"></sv-ng-action>\n </ng-container>\n </div>\n</ng-template>","import { Component, Input } from \"@angular/core\";\nimport { LocalizableString } from \"survey-core\";\n\n@Component(\n {\n selector: \"sv-ng-string, '[sv-ng-string]'\",\n template: \"<ng-template [component]='{ name: model.renderAs, data: { model: model.renderAsData } }'></ng-template>\"\n }\n)\nexport class SurveyStringComponent {\n @Input() model!: LocalizableString;\n}","import { Component, Input } from \"@angular/core\";\nimport { EmbeddedViewContentComponent } from \"../../embedded-view-content.component\";\n\n@Component({\n selector: \"sv-ng-element-title\",\n templateUrl: \"./element-title.component.html\",\n styleUrls: [\"../../hide-host.scss\"]\n})\nexport class ElementTitleComponent extends EmbeddedViewContentComponent {\n @Input() element: any;\n}","<ng-template #template>\n <sv-ng-dynamic-head [tagName]=\"element.titleTagName\" [element]=\"element\" *ngIf=\"element.hasTitle\">\n <ng-container *ngIf=\"!element.hasTitleActions\">\n <ng-container *ngTemplateOutlet=\"elementTitleContent\"></ng-container>\n </ng-container>\n <ng-container *ngIf=\"element.hasTitleActions\">\n <div class=\"sv-title-actions\">\n <span class=\"sv-title-actions__title\">\n <ng-container *ngTemplateOutlet=\"elementTitleContent\"></ng-container>\n </span>\n <sv-ng-action-bar [model]=\"element.getTitleToolbar()\"></sv-ng-action-bar>\n </div>\n </ng-container>\n </sv-ng-dynamic-head>\n <ng-template #elementTitleContent>\n <sv-ng-string *ngIf=\"!element.isTitleOwner\" [model]=\"element.locTitle\"></sv-ng-string>\n <ng-container *ngIf=\"element.isTitleOwner\">\n <span\n *ngIf=\"element.isTitleOwner && element.isRequireTextOnStart\"\n [class]=\"element.cssClasses.requiredText\"\n [attr.aria-hidden]=\"true\"\n >{{ element.requiredText }}</span>\n <span\n *ngIf=\"element.isTitleOwner && element.no\"\n style=\"position: static\"\n [class]=\"element.cssClasses.number\"\n [attr.aria-hidden]=\"true\"\n >{{ element.no }}</span>\n <span *ngIf=\"element.isTitleOwner && element.no\"> </span>\n <span\n *ngIf=\"element.isTitleOwner && element.isRequireTextBeforeTitle\"\n [class]=\"element.cssClasses.requiredText\"\n [attr.aria-hidden]=\"true\"\n >{{ element.requiredText }}</span>\n <span *ngIf=\"element.isTitleOwner && element.isRequireTextBeforeTitle\"> </span>\n <sv-ng-string *ngIf=\"element.isTitleOwner\" [model]=\"element.locTitle\"></sv-ng-string>\n <span *ngIf=\"element.isTitleOwner && element.isRequireTextAfterTitle\"> </span>\n <span\n *ngIf=\"element.isTitleOwner && element.isRequireTextAfterTitle\"\n [class]=\"element.cssClasses.requiredText\"\n [attr.aria-hidden]=\"true\"\n >{{ element.requiredText }}</span> \n </ng-container>\n </ng-template>\n</ng-template>","import { Pipe, PipeTransform } from \"@angular/core\";\nimport { DomSanitizer, SafeResourceUrl, SafeUrl } from \"@angular/platform-browser\";\n\n//temp: disables angular sanitizer, which breaks a links\n@Pipe({ name: \"safeUrl\" })\nexport class SafeUrlPipe implements PipeTransform {\n constructor(private domSanitizer: DomSanitizer) {}\n transform(url: string): SafeUrl {\n return this.domSanitizer.bypassSecurityTrustUrl(url);\n }\n}\n\n@Pipe({ name: \"safeResourceUrl\" })\nexport class SafeResourceUrlPipe implements PipeTransform {\n constructor(private domSanitizer: DomSanitizer) {}\n transform(url: string): SafeResourceUrl {\n return this.domSanitizer.bypassSecurityTrustResourceUrl(url);\n }\n}","import { AfterViewInit, Component, Input, ViewContainerRef } from \"@angular/core\";\nimport { SurveyModel } from \"survey-core\";\n\n@Component({\n selector: \"'[sv-ng-survey-header]'\",\n templateUrl: \"survey-header.component.html\"\n})\nexport class SurveyHeaderComponent implements AfterViewInit {\n @Input() survey!: SurveyModel;\n constructor(private viewContainerRef: ViewContainerRef) {}\n ngAfterViewInit(): void {\n this.survey.afterRenderHeader(this.viewContainerRef.element.nativeElement);\n }\n}","<div *ngIf=\"survey.isLogoBefore\" [class]=\"survey.logoClassNames\">\n <img\n [class]=\"survey.css.logoImage\"\n [attr.src]=\"survey.locLogo.renderedHtml | safeUrl\"\n [attr.width]=\"survey.logoWidth ? survey.logoWidth : undefined\"\n [attr.height]=\"survey.logoHeight ? survey.logoHeight : undefined\"\n [attr.alt]=\"survey.locTitle.renderedHtml\"\n [style.objectFit]=\"survey.logoFit\"\n />\n </div>\n\n <div\n *ngIf=\"survey.renderedHasTitle\"\n [class]=\"survey.css.headerText\"\n [style.maxWidth]=\"survey.titleMaxWidth\"\n >\n <sv-ng-element-title [element]=\"survey\"></sv-ng-element-title>\n <h5 *ngIf=\"survey.renderedHasDescription\" [class]=\"survey.css.description\" [model]=\"survey.locDescription\" sv-ng-string></h5>\n </div>\n\n <div *ngIf=\"survey.isLogoAfter\" [class]=\"survey.logoClassNames\">\n <img\n [class]=\"survey.css.logoImage\"\n [attr.src]=\"survey.locLogo.renderedHtml | safeUrl\"\n [attr.width]=\"survey.logoWidth ? survey.logoWidth : undefined\"\n [attr.height]=\"survey.logoHeight ? survey.logoHeight : undefined\"\n [alt]=\"survey.locTitle.renderedHtml\"\n [style.objectFit]=\"survey.logoFit\"\n />\n </div>\n<div [class]=\"survey.css.headerClose\"></div>","import { Component, Input } from \"@angular/core\";\nimport { PanelModel, Question, SurveyModel } from \"survey-core\";\nimport { BaseAngular } from \"./base-angular\";\n\n@Component({\n selector: \"sv-ng-element\",\n templateUrl: \"./element.component.html\",\n styleUrls: [\"./hide-host.scss\"]\n})\nexport class ElementComponent extends BaseAngular<PanelModel | Question> {\n @Input() model!: PanelModel | Question;\n protected getModel(): PanelModel | Question {\n return this.model;\n }\n protected get elementComponentName(): string {\n return this.model.isPanel ? \"panel\": \"question\";\n }\n public get componentName(): string {\n const survey = this.surveyModel as SurveyModel;\n if(!!survey) {\n const name = survey.getElementWrapperComponentName(this.model);\n if(!!name) {\n return name;\n }\n }\n return this.elementComponentName;\n }\n public get componentData(): any {\n const survey = this.surveyModel as SurveyModel;\n let data: any;\n if(!!survey) {\n data = survey.getElementWrapperComponentData(this.model);\n }\n return {\n componentName: this.elementComponentName,\n componentData: {\n model: this.model,\n data: data\n }\n };\n }\n}","<ng-template #template>\n <div [class]=\"model.cssClasses.questionWrapper\" [style]=\"model.rootStyle\" (focusin)=\"model.focusIn()\">\n <ng-template [component]=\"{ name: componentName, data: componentData }\"></ng-template>\n </div>\n</ng-template>","import { Component, Input } from \"@angular/core\";\nimport { IElement, QuestionRowModel } from \"survey-core\";\nimport { BaseAngular } from \"./base-angular\";\n@Component({\n selector: \"sv-ng-row\",\n templateUrl: \"./row.component.html\",\n styleUrls: [\"./hide-host.scss\"]\n})\nexport class RowComponent extends BaseAngular<QuestionRowModel> {\n @Input() row!: QuestionRowModel;\n protected getModel(): QuestionRowModel {\n return this.row;\n }\n trackElementBy (index: number, element: IElement): string {\n return element.name + index;\n }\n}","<ng-template #template>\n <div [class]=\"row.getRowCss()\" *ngIf=\"row.visible\">\n <ng-container *ngFor=\"let element of row.visibleElements; trackBy: trackElementBy\">\n <sv-ng-element [model]=\"$any(element)\"></sv-ng-element>\n </ng-container>\n </div>\n</ng-template>","import { AfterViewInit, Component, ElementRef, Input, OnChanges, SimpleChanges, ViewChild } from \"@angular/core\";\nimport { PageModel, SurveyModel } from \"survey-core\";\nimport { BaseAngular } from \"./base-angular\";\n@Component({\n selector: \"page\",\n templateUrl: \"./page.component.html\",\n styleUrls: [\"./page.component.scss\"]\n})\nexport class PageComponent extends BaseAngular<PageModel> {\n @Input() model!: PageModel;\n @Input() survey?: SurveyModel;\n @ViewChild(\"pageContainer\", { static: false, read: ElementRef }) pageContainerRef!: ElementRef<HTMLDivElement>;\n protected getModel(): PageModel {\n return this.model;\n }\n protected override onModelChanged(): void {\n if(!!this.pageContainerRef && this.pageContainerRef.nativeElement) {\n this.model.survey.afterRenderPage(this.pageContainerRef.nativeElement);\n }\n }\n ngAfterViewInit(): void {\n this.model.survey?.afterRenderPage(this.pageContainerRef?.nativeElement);\n }\n}","<ng-container *ngIf=\"!!this.survey && !!this.model && this.model.isVisible && !!this.model.survey\">\n <div [class]=\"model.cssRoot\" #pageContainer>\n <sv-ng-element-title [element]=\"model\"></sv-ng-element-title>\n <div *ngIf=\"model._showDescription\" [class]=\"model.cssClasses.page.description\">\n <sv-ng-string [model]=\"model.locDescription\"></sv-ng-string>\n </div>\n <ng-container *ngFor=\"let row of model.rows\">\n <ng-template [component]=\"{ name: $any(model.survey).getRowWrapperComponentName(row), data: { componentData: $any(model.survey).getRowWrapperComponentData(row) } }\">\n <sv-ng-row [row]=\"row\"></sv-ng-row>\n </ng-template>\n </ng-container>\n </div>\n</ng-container>","import { Component } from \"@angular/core\";\nimport { AngularComponentFactory } from \"../../component-factory\";\n@Component({\n selector: \"sv-brand-info\",\n templateUrl: \"./brand-info.component.html\"\n})\nexport class BrandInfoComponent {}\nAngularComponentFactory.Instance.registerComponent(\"sv-brand-info\", BrandInfoComponent);","<div class=\"sv-brand-info\">\n <a class=\"sv-brand-info__logo\" href=\"https://surveyjs.io/?utm_source=built-in_links&utm_medium=online_survey_tool&utm_campaign=landing_page\"><img src=\"https://surveyjs.io/Content/Images/poweredby.svg\"/></a>\n <div class=\"sv-brand-info__text\">Try and see how easy it is to <a href=\"https://surveyjs.io/create-survey?utm_source=built-in_links&utm_medium=online_survey_tool&utm_campaign=create_survey\">create a survey</a></div>\n <div class=\"sv-brand-info__terms\"><a href=\"https://surveyjs.io/TermsOfUse\">Terms of Use & Privacy Statement</a></div>\n</div>","\nimport { AfterViewInit, Component, ElementRef, Input, OnInit, ViewChild } from \"@angular/core\";\nimport { SurveyModel, SvgRegistry } from \"survey-core\";\nimport { BaseAngular } from \"./base-angular\";\nimport { AngularComponentFactory } from \"./component-factory\";\n@Component({\n selector: \"survey-content\",\n templateUrl: \"./survey-content.component.html\"\n})\nexport class SurveyContentComponent extends BaseAngular<SurveyModel> implements OnInit, AfterViewInit {\n @Input() model!: SurveyModel;\n @ViewChild(\"surveyContainer\", { static: false }) rootEl!: ElementRef<HTMLDivElement>;\n protected getModel(): SurveyModel {\n return this.model;\n }\n protected override onModelChanged(): void {\n this.model.renderCallback = () => {\n this.detectChanges();\n };\n }\n override ngOnInit(): void {\n super.ngOnInit();\n if(this.model[\"needRenderIcons\"]) {\n SvgRegistry.renderIcons();\n }\n }\n override ngOnDestroy(): void {\n super.ngOnDestroy();\n this.model.renderCallback = <any>undefined;\n }\n ngAfterViewInit(): void {\n this.model.afterRenderSurvey(this.rootEl.nativeElement);\n }\n}\n\nAngularComponentFactory.Instance.registerComponent(\"survey\", SurveyContentComponent);","<ng-template #template>\n <div #surveyContainer *ngIf=\"!!model\" [class]=\"model.getRootCss()\">\n <form onsubmit=\"return false;\">\n <div class=\"sv_custom_header\" [hidden]=\"model.hasLogo\"></div>\n <div [class]=\"model.css.container\">\n <div *ngIf=\"model.renderedHasHeader\" [class]=\"model.css.header\" [survey]=\"model\" sv-ng-survey-header></div>\n <ng-container *ngIf=\"model.isShowProgressBarOnTop && !model.isShowStartingPage\">\n <ng-template [component]='{ name: \"sv-progress-\" + this.model.progressBarType, data: { model } }'></ng-template>\n </ng-container>\n <div *ngIf=\"model.isShowingPage\" [class]=\"model.bodyCss\" [style.width]=\"model.renderedWidth\" [style.maxWidth]=\"model.renderedWidth\">\n <!-- ko if: isTimerPanelShowingOnTop && !isShowStartingPage -->\n <!-- ko template: { name: 'survey-timerpanel' } -->\n <!-- /ko -->\n <!-- /ko -->\n <sv-action-bar *ngIf=\"model.isNavigationButtonsShowingOnTop\" [model]=\"model.navigationBar\"></sv-action-bar>\n <!-- ko if: activePage -->\n <ng-container *ngIf=\"model.activePage\">\n <div [id]=\"model.activePage.id\">\n <page [model]=\"model.activePage\" [survey]=\"model\"></page>\n </div>\n </ng-container>\n <!-- ko if: activePage.rows.length == 0 && $data.emptyPageTemplate -->\n <!-- ko template: { name: emptyPageTemplate, data: $data.emptyPageTemplateData || $data } -->\n <!-- /ko -->\n <!-- /ko -->\n <!-- /ko -->\n <!-- ko if: isTimerPanelShowingOnBottom && !isShowStartingPage -->\n <!-- ko template: { name: 'survey-timerpanel' } -->\n <!-- /ko -->\n <!-- /ko -->\n <ng-container *ngIf=\"model.isShowProgressBarOnBottom && !model.isShowStartingPage\">\n <ng-template [component]='{ name: \"sv-progress-\" + this.model.progressBarType, data: { model } }'></ng-template>\n </ng-container>\n <sv-action-bar *ngIf=\"model.isNavigationButtonsShowingOnBottom\" [model]=\"model.navigationBar\"></sv-action-bar>\n </div>\n <div *ngIf=\"model.state === 'completed' && model.showCompletedPage\" [class]=\"model.completedCss\"\n [innerHtml]=\"model.processedCompletedHtml\"></div>\n <div [hidden]=\"model.completedState === ''\" [class]=\"model.css.saveData.root\">\n <div [class]=\"model.completedStateCss\">\n <span>{{model.completedStateText}}</span>\n <input type=\"button\" [hidden]=\"model.completedState != 'error'\"\n [value]=\"model.getLocString('saveAgainButton')\" (click)=\"model.doComplete()\"\n [class]=\"model.css.saveData.saveAgainButton\">\n </div>\n </div>\n <div *ngIf=\"model.state === 'completedbefore'\" [class]=\"model.css.body\"\n [innerHtml]=\"model.processedCompletedBeforeHtml\"></div>\n <div *ngIf=\"model.state === 'loading'\" [class]=\"model.css.body\" [innerHtml]=\"model.processedLoadingHtml\"></div>\n <div *ngIf=\"model.state === 'empty'\" [class]=\"model.css.bodyEmpty\">{{model.emptySurveyText}}</div>\n </div>\n </form>\n <sv-brand-info *ngIf=\"model.showBrandInfo\"></sv-brand-info>\n </div>\n</ng-template>","import { ChangeDetectorRef, Component, Input } from \"@angular/core\";\nimport { SurveyModel } from \"survey-core\";\nimport { BaseAngular } from \"./base-angular\";\n@Component({\n selector: \"survey\",\n template: \"<sv-ng-modal-container></sv-ng-modal-container><survey-content [model]='model'></survey-content>\"\n})\nexport class SurveyComponent extends BaseAngular<SurveyModel> {\n @Input() model!: SurveyModel;\n protected getModel(): SurveyModel {\n return this.model;\n }\n constructor(changeDetectorRef: ChangeDetectorRef) {\n super(changeDetectorRef);\n changeDetectorRef.detach();\n }\n protected override onModelChanged(): void {\n this.changeDetectorRef.detectChanges();\n }\n}","import { ChangeDetectorRef, Component, Input } from \"@angular/core\";\nimport { PopupSurveyModel, SurveyModel } from \"survey-core\";\nimport { BaseAngular } from \"./base-angular\";\n@Component({\n selector: \"popup-survey\",\n templateUrl: \"./popup.survey.component.html\",\n styleUrls: [\"./popup.survey.component.scss\"]\n})\nexport class PopupSurveyComponent extends BaseAngular<PopupSurveyModel> {\n @Input() model!: PopupSurveyModel;\n protected getModel(): PopupSurveyModel {\n return this.model;\n }\n public get survey(): SurveyModel {\n return this.model.survey;\n }\n constructor(changeDetectorRef: ChangeDetectorRef) {\n super(changeDetectorRef);\n changeDetectorRef.detach();\n }\n protected override onModelChanged(): void {\n this.model.isShowing = true;\n this.changeDetectorRef.detectChanges();\n }\n}","<div *ngIf=\"!!model && model.isShowing\" [class]=\"model.cssRoot\" style=\"position: fixed; bottom: 3px; right: 10px; max-width: 60%;\">\n <div [class]=\"model.cssHeaderRoot\">\n <span (click)=\"model.changeExpandCollapse()\" style=\"width: 100%; cursor: pointer;\">\n <span style=\"padding-right:10px\" [class]=\"model.cssHeaderTitle\">{{model.locTitle.renderedHtml}}</span>\n <span aria-hidden=\"true\" [class]=\"model.cssButton\"></span>\n </span>\n <span *ngIf=\"model.isExpanded\" (click)=\"model.changeExpandCollapse()\" style=\"float: right; cursor: pointer;\">\n <span style=\"padding-right:10px\" [class]=\"model.cssHeaderTitle\">X</span>\n </span>\n </div>\n <div *ngIf=\"model.isExpanded\" [class]=\"model.cssBody\">\n <survey [model]=\"model.survey\"></survey>\n </div>\n</div>","import { Component, DoCheck, ElementRef, HostBinding, Input, OnDestroy, OnInit, ViewChild, ViewContainerRef } from \"@angular/core\";\nimport { Base, SurveyElement, TooltipManager } from \"survey-core\";\n\n@Component({\n templateUrl: \"./errors.component.html\",\n selector: \"'[sv-ng-errors]'\"\n})\nexport class ErrorsComponent implements OnDestroy, OnInit {\n @Input() element!: SurveyElement | any;\n @Input() location?: String;\n @ViewChild(\"errorsContainer\", { static: true }) errorsContainerRef!: ElementRef<HTMLDivElement>;\n private tooltipManager!: TooltipManager;\n constructor(private viewContainerRef: ViewContainerRef) {}\n ngOnInit(): void {\n if (this.location == \"tooltip\") {\n this.tooltipManager = new TooltipManager(this.viewContainerRef.element.nativeElement);\n }\n }\n ngOnDestroy() {\n if (!!this.tooltipManager) {\n this.tooltipManager.dispose();\n }\n }\n @HostBinding(\"attr.role\") get role (): string {\n return \"alert\";\n }\n @HostBinding(\"id\") get id(): string {\n return this.element.id + \"_errors\";\n }\n @HostBinding(\"attr.aria-live\") get ariaLive(): string {\n return \"polite\";\n }\n @HostBinding(\"class\") get class(): string {\n return this.element.cssError;\n }\n}","<div *ngFor=\"let error of element.errors;\">\n <span\n [class]=\"element.cssClasses ? element.cssClasses.error.icon : 'panel-error-icon'\"\n aria-hidden=\"true\"\n ></span>\n <span [class]=\"element.cssClasses ? element.cssClasses.error.item : 'panel-error-item'\" [model]=\"error.locText\" sv-ng-string>\n </span>\n</div>","import { Component, HostBinding, HostListener, Input } from \"@angular/core\";\n\n@Component({\n selector: \"'[sv-ng-element-header]'\",\n templateUrl: \"./element-header.component.html\"\n})\nexport class ElementHeaderComponent {\n @Input() element: any;\n constructor() {\n }\n @HostBinding(\"class\") get rootClass(): string {\n return this.element.cssHeader;\n }\n @HostListener(\"click\") click(): void {\n this.element.clickTitleFunction();\n }\n}","<sv-ng-element-title [element]=\"element\"></sv-ng-element-title>\n<div *ngIf=\"element.hasDescriptionUnderTitle\" [class]=\"element.cssDescription\" [model]=\"element.locDescription\" sv-ng-string></div>","import { Component, Input } from \"@angular/core\";\nimport { Question } from \"survey-core\";\n\n@Component({\n selector: \"sv-ng-comment, '[sv-ng-comment]'\",\n templateUrl: \"./comment.component.html\",\n})\nexport class SurveyCommentComponent {\n @Input() question!: Question;\n constructor() {\n }\n public get comment(): string {\n if(!this.question.comment) return \"\";\n return this.question.comment;\n }\n}","<textarea *ngIf=\"!question.isReadOnlyRenderDiv()\" [attr.max-length]=\"question.getOthersMaxLength()\" [attr.aria-required]=\"question.ariaRequired\" [attr.aria-label]=\"question.ariaLabel\" [attr.placeholder]=\"question.commentOrOtherPlaceholder\" \n [value]=\"comment\"\n [style.resize]=\"question.resizeStyle\"\n [disabled]=\"question.isInputReadOnly\"\n (change)=\"question.onCommentChange($event)\"\n (input)=\"question.onCommentInput($event)\"\n [class]=\"question.cssClasses.other\">\n</textarea>\n<div *ngIf=\"question.isReadOnlyRenderDiv()\">{{ question.comment }}</div>\n","import { Component, ElementRef, Input, ViewChild } from \"@angular/core\";\nimport { Question } from \"survey-core\";\nimport { AngularComponentFactory } from \"./component-factory\";\nimport { EmbeddedViewContentComponent } from \"./embedded-view-content.component\";\n\n@Component({\n selector: \"sv-ng-question\",\n templateUrl: \"./question.component.html\"\n})\nexport class QuestionComponent extends EmbeddedViewContentComponent {\n @Input() model!: Question;\n @ViewChild(\"elementContainer\") rootEl?: ElementRef<HTMLDivElement>;\n protected getModel(): Question {\n return this.model;\n }\n ngAfterViewInit(): void {\n if(!!this.rootEl?.nativeElement) {\n this.model.afterRender(this.rootEl?.nativeElement);\n }\n }\n public getComponentName(): string {\n if (this.model.customWidget) return \"survey-customwidget\";\n if (this.model.isDefaultRendering()) {\n return this.model.getTemplate() + \"-question\";\n }\n return this.model.getComponentName();\n }\n}\n\nAngularComponentFactory.Instance.registerComponent(\"question\", QuestionComponent);","<ng-template #template>\n <div #elementContainer [class]=\"model.getRootCss()\" [style]=\"{ paddingLeft: model.paddingLeft, paddingRight: model.paddingRight }\" [id]=\"model.id\" [attr.data-name]=\"model.name\" [attr.role]=\"model.ariaRole\" [attr.aria-required]=\"model.ariaRequired\" [attr.aria-invalid]=\"model.ariaInvalid\" [attr.aria-labelledby]=\"model.hasTitle ? model.ariaTitleId : null\">\n <div *ngIf=\"model.showErrorsAboveQuestion && model.hasVisibleErrors\" [element]=\"model\" sv-ng-errors></div>\n <div [element]=\"model\" *ngIf=\"model.hasTitleOnLeftTop\" sv-ng-element-header></div>\n <div [class]=\"model.cssContent\" role=\"presentation\" [visible]=\"!model.isCollapsed\">\n <div *ngIf=\"model.showErrorOnTop && model.hasVisibleErrors\" [element]=\"model\" sv-ng-errors></div>\n <ng-template [component]=\"{ name: getComponentName(), data: { model }, default: 'skeleton-question' }\" ></ng-template>\n <div *ngIf=\"model.hasComment\" [class]=\"model.cssClasses.formGroup\">\n <div>{{ model.commentText }}</div>\n <div [question]=\"model\" sv-ng-comment></div>\n </div>\n <div *ngIf=\"model.showErrorOnBottom && model.hasVisibleErrors\" [element]=\"model\" sv-ng-errors></div>\n <div *ngIf=\"model.isErrorsModeTooltip && model.hasVisibleErrors\" [element]=\"model\" [location]=\"'tooltip'\" sv-ng-errors></div>\n </div>\n <div [element]=\"model\" *ngIf=\"model.hasTitleOnBottom\" sv-ng-element-header></div>\n <div *ngIf=\"model.showErrorsBelowQuestion && model.hasVisibleErrors\" [element]=\"model\" sv-ng-errors></div>\n </div>\n</ng-template>","import { ChangeDetectorRef, Component, Input, OnChanges, OnDestroy, SimpleChanges } from \"@angular/core\";\nimport { LocalizableString } from \"survey-core\";\nimport { AngularComponentFactory } from \"./component-factory\";\n\n@Component({\n selector: \"sv-ng-string-viewer, string-viewer, '[sv-ng-string-viewer]'\",\n templateUrl: \"./string-viewer.component.html\",\n styleUrls: [\"./string-viewer.component.scss\"]\n})\nexport class StringViewerComponent implements OnChanges, OnDestroy {\n @Input() model: any;\n constructor(private changeDetectorRef: ChangeDetectorRef) {}\n ngOnChanges(changes: SimpleChanges): void {\n const currentValue = changes[\"model\"].currentValue;\n const previousValue = changes[\"model\"].previousValue;\n currentValue.onChanged = () => { this.changeDetectorRef.detectChanges(); };\n !!previousValue && this.clearOnChanged(previousValue);\n }\n clearOnChanged(model: LocalizableString) {\n model.onChanged = () => {};\n }\n ngOnDestroy(): void {\n !!this.model && this.clearOnChanged(this.model);\n }\n}\nAngularComponentFactory.Instance.registerComponent(LocalizableString.defaultRenderer, StringViewerComponent);","<span *ngIf=\"!model.hasHtml\" class=\"sv-string-viewer\">{{model.renderedHtml}}</span>\n<span *ngIf=\"model.hasHtml\" class=\"sv-string-viewer\" [innerHtml]=\"model.renderedHtml\"></span>","import { ChangeDetectorRef, Component, Input, ViewContainerRef } from \"@angular/core\";\nimport { BaseAngular } from \"../../base-angular\";\nimport { PopupBaseViewModel, PopupModel } from \"survey-core\";\nimport { DomPortalOutlet } from \"@angular/cdk/portal\";\nimport { PopupService } from \"./popup.service\";\n\n@Component({\n selector: \"sv-ng-popup, '[sv-ng-popup]'\",\n template: \"<div></div>\"\n})\n\nexport class PopupComponent extends BaseAngular<PopupModel> {\n @Input() popupModel!: PopupModel;\n\n public model!: PopupBaseViewModel;\n private portalHost!: DomPortalOutlet;\n\n protected getModel(): PopupModel {\n return this.popupModel;\n }\n\n constructor(viewContainerRef: ViewContainerRef, changeDetectorRef: ChangeDetectorRef, private popupService: PopupService) {\n super(changeDetectorRef, viewContainerRef);\n }\n\n override ngOnInit() {\n this.model = new PopupBaseViewModel(this.popupModel, this.viewContainerRef?.element.nativeElement.parentElement);\n this.model.initializePopupContainer();\n this.portalHost = this.popupService.createComponent(this.model);\n }\n\n override ngOnDestroy() {\n super.ngOnDestroy();\n this.portalHost.detach();\n (<HTMLElement>this.model.container).remove();\n this.model.unmountPopupContainer();\n }\n}","import { Component, Input } from \"@angular/core\";\nimport { AngularComponentFactory } from \"../component-factory\";\n\n@Component({\n selector: \"question-skeleton\",\n templateUrl: \"./skeleton.component.html\",\n styleUrls: [\"./skeleton.component.scss\"]\n})\nexport class QuestionSkeletonComponent {\n @Input() model: any;\n}\n\nAngularComponentFactory.Instance.registerComponent(\"skeleton-question\", QuestionSkeletonComponent);","<div class=\"sv-skeleton--not-implemented\">\n <div>{{ model.getType() + \" question type renderer is not implemented yet.\" }}</div>\n <div>{{ model.value }}</div>\n</div>\n","import { Component, HostBinding, Input, OnChanges, ViewContainerRef } from \"@angular/core\";\nimport * as Survey from \"survey-core\";\n\n@Component({\n selector: \"'[sv-ng-svg-icon]'\",\n template: \"\"\n})\nexport class SvgIconComponent implements OnChanges {\n @Input() size?: number | string;\n @Input() width?: number;\n @Input() height?: number;\n @Input() iconName!: string;\n @Input() partCss?: string;\n @Input() css?: string;\n @Input() title?: string;\n constructor(private viewContaierRef: ViewContainerRef) {\n }\n private createSvg() {\n if(!!this.iconName) {\n (Survey as any).createSvg(\n this.size,\n this.width,\n this.height,\n this.iconName,\n this.viewContaierRef.element.nativeElement\n );\n }\n }\n @HostBinding(\"class\") get rootClass(): string {\n let className = \"sv-svg-icon\";\n if(!this.css && !!this.partCss) {\n className += \" \" + this.partCss;\n } else if(!!this.css) {\n className = this.css;\n }\n return className;\n }\n @HostBinding(\"[attr.role]\") get rootRole(): string {\n return \"img\";\n }\n @HostBinding(\"[attr.aria-label]\") get ariaLabel(): string {\n return <string>this.title;\n }\n ngOnChanges(): void {\n const el = this.viewContaierRef.element.nativeElement;\n el.innerHTML = \"\";\n el.appendChild(document.createElementNS(\"http://www.w3.org/2000/svg\", \"use\"));\n this.createSvg();\n }\n}","import { Component, ElementRef, Input, OnDestroy, OnInit, ViewChild } from \"@angular/core\";\nimport { DropdownListModel, Helpers } from \"survey-core\";\nimport { BaseAngular } from \"../../base-angular\";\n\n@Component({\n selector: \"sv-ng-dropdown, '[sv-ng-dropdown]'\",\n templateUrl: \"./dropdown.component.html\"\n})\nexport class DropdownComponent extends BaseAngular implements OnDestroy, OnInit {\n @Input() model: any;\n @ViewChild(\"inputElement\") inputElementRef!: ElementRef<HTMLDivElement>;\n\n private dropdownListModel!: DropdownListModel;\n\n get dropdownModel(): DropdownListModel {\n return this.dropdownListModel;\n }\n protected getModel() {\n return this.model;\n }\n\n override ngOnInit(): void {\n super.ngOnInit();\n this.dropdownListModel = this.model.dropdownListModel || new DropdownListModel(this.model);\n }\n\n override ngOnDestroy() {\n super.ngOnDestroy();\n this.dropdownListModel?.dispose();\n }\n\n click(event: any) {\n this.dropdownListModel?.onClick(event);\n }\n clear(event: any) {\n this.dropdownListModel?.onClear(event);\n }\n keyhandler(event: any) {\n this.dropdownListModel?.keyHandler(event);\n }\n blur(event: any) {\n this.dropdownListModel?.onBlur(event);\n this.updateInputDomElement();\n }\n inputChange(event: any) {\n this.detectChanges();\n }\n updateInputDomElement() {\n if (!!this.inputElementRef?.nativeElement) {\n const control: any = this.inputElementRef.nativeElement;\n const newValue = this.model.filterString;\n if (!Helpers.isTwoValueEquals(newValue, control.value)) {\n control.value = this.model.filterString || \"\";\n }\n }\n }\n}","<div [class]=\"model.cssClasses.selectWrapper\">\n <div *ngIf=\"!model.isReadOnly\" [attr.tabindex]=\"dropdownModel.inputReadOnly ? null : 0\" [class]=\"model.getControlClass()\"\n [attr.disabled]=\"model.isInputReadOnly ? true : null\" (click)=\"click($event)\" (blur)=\"blur($event)\"\n (keydown)=\"keyhandler($event)\" [attr.id]=\"model.inputId\" [attr.aria-required]=\"model.ariaRequired\"\n [attr.aria-label]=\"model.ariaLabel\" [attr.aria-invalid]=\"model.ariaInvalid\"\n [attr.aria-describedby]=\"model.ariaDescribedBy\" [attr.role]=\"model.ariaRole\">\n <div [class]=\"model.cssClasses.controlValue\">\n <sv-ng-string *ngIf=\"model.selectedItemLocText && !model.inputHasValue\" [model]=\"model.selectedItemLocText\"></sv-ng-string>\n <input #inputElement type=\"text\" autocomplete=\"off\" [(ngModel)]=\"dropdownModel.filterString\" [class]=\"model.cssClasses.filterStringInput\"\n [attr.id]=\"model.getInputId()\"\n [attr.tabindex]=\"dropdownModel.inputReadOnly ? null : -1\"\n [attr.disabled]=\"model.isInputReadOnly ? true : null\"\n [attr.placeholder]=\"model.readOnlyText\" [attr.readonly]=\"!dropdownModel.searchEnabled ? true : null\" \n (change)=\"inputChange($event)\" (blur)=\"blur($event)\" />\n </div>\n <div *ngIf=\"(model.allowClear && model.cssClasses.cleanButtonIconId)\"\n [class]=\"model.cssClasses.cleanButton\" (click)=\"clear($event)\" [visible]=\"!model.isEmpty()\">\n <!-- ko component: { name: 'sv-svg-icon', params: { css: model.cssClasses.cleanButtonSvg, iconName: model.cssClasses.cleanButtonIconId, size: 'auto' } } -->\n <!-- /ko -->\n <svg [iconName]=\"model.cssClasses.cleanButtonIconId\" [partCss]=\"model.cssClasses.cleanButtonSvg\" [title]=\"model.cleanButtonCaption\"\n [size]=\"'auto'\" sv-ng-svg-icon></svg>\n </div>\n </div>\n <sv-ng-popup *ngIf=\"!model.isReadOnly\" [popupModel]=\"dropdownModel.popupModel\"></sv-ng-popup>\n <div disabled *ngIf=\"model.isReadOnly\" [class]=\"model.getControlClass()\" [attr.id]=\"model.inputId\">\n <sv-ng-string *ngIf=\"model.selectedItemLocText\" [model]=\"model.selectedItemLocText\"></sv-ng-string>\n <div>{{ model.readOnlyText }}</div>\n </div>\n</div>","import { Component, Input } from \"@angular/core\";\nimport { DropdownMultiSelectListModel, QuestionTagboxModel } from \"survey-core\";\nimport { BaseAngular } from \"../../base-angular\";\nimport { AngularComponentFactory } from \"../../component-factory\";\n\n@Component({\n selector: \"sv-tagbox-filter\",\n templateUrl: \"./tagbox-filter.component.html\",\n styleUrls: [\"../../hide-host.scss\"]\n})\nexport class TagboxFilterComponent extends BaseAngular {\n @Input() model!: DropdownMultiSelectListModel;\n @Input() question!: QuestionTagboxModel;\n\n getModel() {\n return this.model;\n }\n}\n\nAngularComponentFactory.Instance.registerComponent(\"sv-tagbox-filter\", TagboxFilterComponent);","<ng-template #template>\n <input\n type=\"text\"\n autocomplete=\"off\"\n [(ngModel)]=\"model.filterString\"\n [attr.id]=\"question.getInputId()\"\n [class]=\"question.cssClasses.filterStringInput\"\n [attr.readonly]=\"!model.searchEnabled ? true : null\"\n [attr.disabled]=\"question.isInputReadOnly ? true : null\"\n [attr.size]=\"!model.filterString ? 1 : null\"\n [attr.placeholder]=\"model.filterStringPlaceholder\"\n (keydown)=\"model.inputKeyHandler($event)\"\n (blur)=\"model.onBlur($event)\"\n />\n</ng-template>\n","import { Component, Input } from \"@angular/core\";\nimport { ItemValue, QuestionTagboxModel } from \"survey-core\";\nimport { BaseAngular } from \"../../base-angular\";\nimport { AngularComponentFactory } from \"../../component-factory\";\n\n@Component({\n selector: \"sv-ng-tagbox-item, '[sv-ng-tagbox-item]'\",\n templateUrl: \"./tagbox-item.component.html\",\n})\nexport class TagboxItemComponent extends BaseAngular {\n @Input() item!: ItemValue;\n @Input() question!: QuestionTagboxModel;\n\n removeItem(event: any) {\n this.question.dropdownListModel.deselectItem(this.item.value);\n event.stopPropagation();\n }\n\n getModel() {\n return this.item;\n }\n}\n\nAngularComponentFactory.Instance.registerComponent(\"sv-tagbox-item\", TagboxItemComponent);","<div class=\"sv-tagbox__item\">\n <div class=\"sv-tagbox__item-text\" [model]=\"item.locText\" sv-ng-string></div> \n <div [class]=\"question.cssClasses.cleanItemButton\" (click)=\"removeItem($event)\">\n <svg [iconName]=\"question.cssClasses.cleanItemButtonIconId\" [partCss]=\"question.cssClasses.cleanItemButtonSvg\" [size]=\"16\" sv-ng-svg-icon></svg>\n </div>\n</div>","import { Component, Input, OnDestroy, OnInit } from \"@angular/core\";\nimport { DropdownMultiSelectListModel } from \"survey-core\";\n\n@Component({\n selector: \"sv-ng-tagbox, '[sv-ng-tagbox]'\",\n templateUrl: \"./tagbox.component.html\"\n})\nexport class TagboxComponent implements OnDestroy, OnInit {\n @Input() model: any;\n private dropdownListModel!: DropdownMultiSelectListModel;\n\n get dropdownModel(): DropdownMultiSelectListModel {\n return this.dropdownListModel;\n }\n\n getModel() {\n return this.model;\n }\n\n ngOnInit(): void {\n this.dropdownListModel = this.model.dropdownListModel || new DropdownMultiSelectListModel(this.model);\n }\n\n ngOnDestroy() {\n this.dropdownListModel?.dispose();\n }\n\n click(event: any) {\n this.dropdownListModel?.onClick(event);\n }\n clear(event: any) {\n this.dropdownListModel?.onClear(event);\n }\n keyhandler(event: any) {\n this.dropdownListModel?.keyHandler(event);\n }\n blur(event: any) {\n this.dropdownListModel?.onBlur(event);\n }\n}","<div [class]=\"model.cssClasses.selectWrapper\">\n <div *ngIf=\"!model.isReadOnly\" [attr.tabindex]=\"dropdownModel.inputReadOnly ? null : 0\" [class]=\"model.getControlClass()\"\n [attr.disabled]=\"model.isInputReadOnly ? true : null\" (click)=\"click($event)\" (blur)=\"blur($event)\"\n (keydown)=\"keyhandler($event)\" [attr.id]=\"model.inputId\" [attr.aria-required]=\"model.ariaRequired\"\n [attr.aria-label]=\"model.ariaLabel\" [attr.aria-invalid]=\"model.ariaInvalid\"\n [attr.aria-describedby]=\"model.ariaDescribedBy\" [attr.role]=\"model.ariaRole\">\n <div [class]=\"model.cssClasses.controlValue\">\n <ng-container *ngIf=\"!model.isEmpty()\">\n <sv-ng-tagbox-item *ngFor=\"let item of model.selectedItems\" [item]=\"item\" [question]=\"model\">\n </sv-ng-tagbox-item>\n </ng-container>\n <ng-template [component]=\"{ name: 'sv-tagbox-filter', data: { model: dropdownModel, question: model } }\"></ng-template>\n </div>\n <div *ngIf=\"(model.allowClear && model.cssClasses.cleanButtonIconId)\" [class]=\"model.cssClasses.cleanButton\"\n (click)=\"clear($event)\" [visible]=\"!model.isEmpty()\">\n <!-- ko component: { name: 'sv-svg-icon', params: { css: model.cssClasses.cleanButtonSvg, iconName: model.cssClasses.cleanButtonIconId, size: 'auto' } } -->\n <!-- /ko -->\n <svg [iconName]=\"model.cssClasses.cleanButtonIconId\" [partCss]=\"model.cssClasses.cleanButtonSvg\" [title]=\"model.cleanButtonCaption\"\n [size]=\"'auto'\" sv-ng-svg-icon></svg>\n </div>\n </div>\n <sv-ng-popup *ngIf=\"!model.isReadOnly\" [popupModel]=\"model.popupModel\"></sv-ng-popup>\n <div disabled *ngIf=\"model.isReadOnly\" [class]=\"model.getControlClass()\" [attr.id]=\"model.inputId\">\n <div>{{ model.readOnlyText }}</div>\n </div>\n</div>","import { Component, Input } from \"@angular/core\";\nimport { BaseAngular } from \"../../../base-angular\";\nimport { AngularComponentFactory } from \"../../../component-factory\";\n\n@Component({\n selector: \"sv-ng-dropdown-option-item, '[sv-ng-dropdown-option-item]'\",\n template: '<ng-template #template><option [value]=\"item.value\" [disabled]=\"!item.isEnabled\">{{ item.text }}</option><ng-template>',\n})\nexport class DropdownOptionItemComponent extends BaseAngular {\n @Input() item: any;\n\n protected getModel() {\n return this.item;\n }\n}\n\nAngularComponentFactory.Instance.registerComponent(\"sv-dropdown-option-item\", DropdownOptionItemComponent);","import { Component, Input } from \"@angular/core\";\nimport { AngularComponentFactory } from \"../../../component-factory\";\nimport { RendererFactory } from \"survey-core\";\n\n@Component({\n selector: \"sv-ng-dropdown-select-question\",\n templateUrl: \"./dropdown-select.component.html\"\n})\nexport class DropdownSelectComponent {\n @Input() model: any;\n\n get editableValue() {\n return this.model.renderedValue || \"\";\n }\n set editableValue(newValue: any) {\n if(newValue === \"\") {\n this.model.renderedValue = undefined;\n } else {\n this.model.renderedValue = newValue;\n }\n }\n\n click(event: any) {\n this.model.onClick(event);\n }\n keyup(event: any) {\n this.model.onKeyUp(event);\n }\n}\n\nAngularComponentFactory.Instance.registerComponent(\"dropdown-select-question\", DropdownSelectComponent);\nRendererFactory.Instance.registerRenderer(\"dropdown\", \"select\", \"dropdown-select-question\");","<div [class]=\"model.renderCssRoot\">\n <div [class]=\"model.cssClasses.selectWrapper\">\n <select *ngIf=\"!model.isReadOnly\" [attr.id]=\"model.inputId\" [(ngModel)]=\"editableValue\"\n [disabled]=\"model.isInputReadOnly\" (click)=\"click($event)\" (keyup)=\"keyup($event)\"\n [class]=\"model.getControlClass()\" [attr.autocomplete]=\"model.autoComplete\" [required]=\"model.isRequired\"\n [attr.aria-required]=\"model.ariaRequired\" [attr.aria-label]=\"model.ariaLabel\"\n [attr.aria-invalid]=\"model.ariaInvalid\" [attr.aria-describedby]=\"model.ariaDescribedBy\">\n <option *ngIf=\"model.allowClear\" value=\"\">{{ model.placeholder }}</option>\n <ng-template *ngFor=\"let item of model.visibleChoices\" [component]=\"{ name: 'sv-dropdown-option-item', data: { item } }\"></ng-template>\n </select>\n <div *ngIf=\"model.isReadOnly\" disabled [class]=\"model.getControlClass()\" [attr.id]=\"model.inputId\">{{ model.readOnlyText }}</div>\n </div>\n <div *ngIf=\" model.isOtherSelected\" class=\"form-group\"\n [style.display]=\"model.isFlowLayout ? 'inline': '' \" [question]=\"model\" sv-ng-comment></div>\n</div>","import { AfterViewInit, Component, ElementRef, Input, OnDestroy, ViewChild } from \"@angular/core\";\nimport { Question } from \"survey-core\";\nimport { BaseAngular } from \"./base-angular\";\n\n@Component({\n template: \"\"\n})\nexport class QuestionAngular<T extends Question = Question> extends BaseAngular<Question> implements AfterViewInit, OnDestroy {\n @Input() public model!: T;\n\n @ViewChild(\"contentElement\") elementContentRef!: ElementRef<HTMLElement>;\n\n protected getModel() {\n return this.model;\n }\n\n ngAfterViewInit() {\n if (!!this.model) {\n this.model.afterRenderQuestionElement(this.elementContentRef?.nativeElement);\n }\n }\n override ngOnDestroy() {\n if (!!this.model) {\n this.model.beforeDestroyQuestionElement(this.elementContentRef?.nativeElement);\n }\n super.ngOnDestroy();\n }\n}","import { Component } from \"@angular/core\";\nimport { QuestionAngular } from \"../question\";\nimport { QuestionTextModel } from \"survey-core\";\nimport { AngularComponentFactory } from \"../component-factory\";\n\n@Component({\n selector: \"sv-ng-text-question\",\n templateUrl: \"./text.component.html\",\n styleUrls: [\"./text.component.scss\"]\n})\nexport class TextQuestionComponent extends QuestionAngular<QuestionTextModel> {\n keyup(event: any) {\n if (this.model.isInputTextUpdate) {\n this.model.value = event.target.value;\n }\n }\n onChange(event: any) {\n if(!this.model.isInputTextUpdate) {\n this.model.value = event.target.value;\n }\n }\n}\n\nAngularComponentFactory.Instance.registerComponent(\"text-question\", TextQuestionComponent);"," <input *ngIf=\"!model.dataListId && !model.isReadOnlyRenderDiv()\" [style]=\"model.inputStyle\" [class]=\"model.getControlClass()\"\n (change)=\"onChange($event)\" [attr.value]=\"model.value\" [disabled]=\"model.isInputReadOnly\" name=\"user\" [type]=\"model.inputType\" [id]=\"model.inputId\" [attr.placeholder]=\"model.renderedPlaceholder || ''\"\n (keyup)=\"keyup($event)\" [attr.size] = \"model.renderedInputSize\" [attr.max-length]= \"model.getMaxLength()\" [attr.min]=\"model.renderedMin\"\n [attr.max]=\"model.renderedMax\" [attr.step]=\"model.renderedStep\" [attr.max]=\"model.renderedMax\" [attr.aria-required]=\"model.ariaRequired\"\n [attr.aria-label]=\"model.ariaLabel\" [attr.aria-invalid]=\"model.ariaInvalid\" [attr.aria-describedby]=\"model.ariaDescribedBy\" [attr.autocomplete]=\"model.autoComplete\"\n [attr.ar] #contentElement/>\n <div *ngIf=\"model.dataListId && !model.isReadOnlyRenderDiv()\" #contentElement>\n <input\n [style]=\"model.inputStyle\" [class]=\"model.getControlClass()\"\n (change)=\"onChange($event)\" [attr.value]=\"model.value\"\n [disabled]=\"model.isInputReadOnly\" [type]=\"model.inputType\" [id]=\"model.inputId\" [attr.placeholder]=\"model.renderedPlaceholder || ''\"\n (keyup)=\"keyup($event)\" [attr.size] = \"model.renderedInputSize\" [attr.max-length]= \"model.getMaxLength()\" [attr.min]=\"model.renderedMin\"\n [attr.max]=\"model.renderedMax\" [attr.step]=\"model.renderedStep\" [attr.max]=\"model.renderedMax\" [attr.aria-required]=\"model.ariaRequired\"\n [attr.aria-label]=\"model.ariaLabel\" [attr.aria-invalid]=\"model.ariaInvalid\" [attr.aria-describedby]=\"model.ariaDescribedBy\" [attr.autocomplete]=\"model.autoComplete\"\n />\n <datalist [id]=\"model.dataListId\">\n <option *ngFor=\"let dataListItem of model.dataList\" [value]=\"dataListItem\"></option>\n </datalist>\n </div>\n <div *ngIf=\"model.isReadOnlyRenderDiv()\" #contentElement>{{ model.value }}</div>\n","import { Pipe, PipeTransform } from \"@angular/core\";\nimport { DomSanitizer, SafeUrl } from \"@angular/platform-browser\";\n\n@Pipe({ name: \"safeHtml\" })\nexport class SafeHtmlPipe implements PipeTransform {\n constructor(private domSanitizer: DomSanitizer) {}\n transform(url: string): SafeUrl {\n return this.domSanitizer.bypassSecurityTrustHtml(url);\n }\n}","import { Component } from \"@angular/core\";\nimport { QuestionAngular } from \"../question\";\nimport { QuestionHtmlModel } from \"survey-core\";\nimport { AngularComponentFactory } from \"../component-factory\";\n@Component({\n selector: \"sv-ng-html-question\",\n templateUrl: \"./html.component.html\",\n styleUrls: []\n})\nexport class HtmlQuestionComponent extends QuestionAngular<QuestionHtmlModel> {\n override onModelChanged(): void {\n super.onModelChanged();\n this.model.locHtml.onChanged = () => {\n this.detectChanges();\n };\n }\n override ngOnDestroy(): void {\n this.model.locHtml.onChanged = () => {};\n super.ngOnDestroy();\n }\n}\n\nAngularComponentFactory.Instance.registerComponent(\"html-question\", HtmlQuestionComponent);","<div [class]=\"model.renderCssRoot\" [innerHTML]=\"model.locHtml.renderedHtml | safeHtml\" #contentElement></div>","import { Component, Input } from \"@angular/core\";\nimport { QuestionAngular } from \"../question\";\nimport { ItemValue, QuestionRadiogroupModel, QuestionSelectBase } from \"survey-core\";\nimport { AngularComponentFactory } from \"../component-factory\";\n\n@Component({\n selector: \"['sv-ng-selectbase']\",\n templateUrl: \"./selectbase.component.html\"\n})\nexport class SelectBaseComponent<T extends QuestionSelectBase> extends QuestionAngular<T> {\n //#todo temp fix (CanClearButton should be placed in selectbase so it could work with imagepicker)\n @Input() override model!: any;\n\n public inputType: string = \"checkbox\";\n public showLegend: boolean = true;\n public getItemValueComponentName(item: ItemValue): string {\n return this.model.getItemValueWrapperComponentName(item) || \"sv-ng-selectbase-item\";\n }\n public getItemValueComponentData(item: ItemValue): any {\n return {\n componentName: \"sv-ng-selectbase-item\",\n componentData: {\n question: this.model,\n model: item,\n inputType: this.inputType,\n data: this.model.getItemValueWrapperComponentData(item)\n }\n };\n }\n}\n\nAngularComponentFactory.Instance.registerComponent(\"selectbase\", SelectBaseComponent);","<fieldset [class]=\"model.getSelectBaseRootCss()\" role=\"presentation\" #contentElement>\n <legend *ngIf=\"showLegend\" role=\"presentation\" class=\"sv-hidden\"></legend>\n <ng-container *ngIf=\"model.hasHeadItems\">\n <ng-container *ngFor=\"let item of model.headItems\">\n <ng-template [component]=\"{ name: getItemValueComponentName(item), data: getItemValueComponentData(item) }\"></ng-template>\n </ng-container>\n </ng-container>\n <ng-container *ngIf=\"!model.hasColumns && !model.blockedRow\">\n <ng-container *ngFor=\"let item of model.bodyItems\">\n <ng-template [component]=\"{ name: getItemValueComponentName(item), data: getItemValueComponentData(item) }\"></ng-template>\n </ng-container>\n </ng-container>\n <div [class]=\"model.cssClasses.rootRow\" *ngIf=\"!model.hasColumns && model.blockedRow\">\n <ng-container *ngFor=\"let item of model.dataChoices\">\n <ng-template [component]=\"{ name: getItemValueComponentName(item), data: getItemValueComponentData(item) }\"></ng-template>\n </ng-container>\n </div>\n <ng-container *ngIf=\"model.hasColumns\">\n <div [class]=\"model.cssClasses.rootMultiColumn\">\n <div [class]=\"model.getColumnClass()\" *ngFor=\"let column of model.columns\" role=\"presentation\">\n <ng-container *ngFor=\"let item of column\">\n <ng-template [component]=\"{ name: getItemValueComponentName(item), data: getItemValueComponentData(item) }\"></ng-template>\n </ng-container>\n </div>\n </div>\n </ng-container>\n <ng-container *ngIf=\"model.hasFootItems\">\n <ng-container *ngFor=\"let item of model.footItems\">\n <ng-template [component]=\"{ name: getItemValueComponentName(item), data: getItemValueComponentData(item) }\"></ng-template>\n </ng-container>\n </ng-container>\n <div *ngIf=\"model.isOtherSelected\" class=\"form-group\" [question]=\"model\" sv-ng-comment></div>\n <div *ngIf=\"model.showClearButtonInContent\">\n <input\n type=\"button\"\n (click)=\"model.clearValue()\"\n [value]=\"model.clearButtonCaption\"\n [class]=\"model.cssClasses.clearButton\"\n />\n </div>\n</fieldset>","import { Component } from \"@angular/core\";\nimport { QuestionRadiogroupModel } from \"survey-core\";\nimport { AngularComponentFactory } from \"../component-factory\";\nimport { SelectBaseComponent } from \"./selectbase.component\";\n\n@Component({\n selector: \"sv-ng-radiogroup-question\",\n templateUrl: \"./selectbase.component.html\"\n})\nexport class RadiogroupComponent extends SelectBaseComponent<QuestionRadiogroupModel> {\n override ngOnInit(): void {\n this.inputType = \"radio\";\n this.showLegend = false;\n super.ngOnInit();\n }\n}\n\nAngularComponentFactory.Instance.registerComponent(\"radiogroup-question\", RadiogroupComponent);","import { Component, Input } from \"@angular/core\";\n@Component({\n selector: \"sv-ng-radiogroup-item, '[sv-ng-radiogroup-item]'\",\n templateUrl: \"./radiogroup-item.component.html\",\n styleUrls: [\"./radiogroup-item.component.scss\"]\n})\nexport class RadiogroupItemComponent {\n @Input() question: any;\n @Input() model: any;\n constructor() {\n }\n}\n","<input type=\"radio\" [name]=\"question.questionName\" [id]=\"question.getItemId(model)\" [attr.aria-describedby]=\"question.ariaDescribedBy\" [class]=\"question.cssClasses.itemControl\"\n [disabled]=\"!question.getItemEnabled(model)\" [(ngModel)]=\"question.renderedValue\" [attr.value]=\"model.value\" [value]=\"model.value\"\n/>\n<ng-content></ng-content>","import { Component } from \"@angular/core\";\nimport { QuestionCheckboxModel } from \"survey-core\";\nimport { AngularComponentFactory } from \"../component-factory\";\nimport { SelectBaseComponent } from \"./selectbase.component\";\n\n@Component({\n selector: \"sv-ng-checkbox-question\",\n templateUrl: \"./selectbase.component.html\"\n})\nexport class CheckboxComponent extends SelectBaseComponent<QuestionCheckboxModel> {}\n\nAngularComponentFactory.Instance.registerComponent(\"checkbox-question\", CheckboxComponent);","import { Component, Input } from \"@angular/core\";\nimport { ItemValue, QuestionCheckboxModel } from \"survey-core\";\n\n@Component({\n selector: \"sv-ng-checkbox-item, '[sv-ng-checkbox-item]'\",\n templateUrl: \"./checkbox-item.component.html\",\n styleUrls: [\"./checkbox-item.component.scss\"]\n})\nexport class CheckboxItemComponent {\n @Input() question!: QuestionCheckboxModel;\n @Input() model!: ItemValue;\n constructor() {\n }\n onChange(event: any) {\n var newValue = (<Array<string>>[]).concat(this.question.renderedValue || []);\n var index = newValue.indexOf(this.model.value);\n if (event.target.checked) {\n if (index < 0) {\n newValue.push(this.model.value);\n }\n } else {\n if (index > -1) {\n newValue.splice(index, 1);\n }\n }\n this.question.renderedValue = newValue;\n }\n onSelectAllChange(event: any) {\n this.question.toggleSelectAll();\n }\n}\n","<input *ngIf=\"model == question.selectAllItem\" type=\"checkbox\" [name]=\"question.name\" [id]=\"question.getItemId(model)\" [attr.aria-describedby]=\"question.ariaDescribedBy\" [class]=\"question.cssClasses.itemControl\"\n [disabled]=\"!question.getItemEnabled(model)\" [checked]=\"question.isAllSelected\" [value]=\"''\" (change)=\"onSelectAllChange($event)\"/>\n<input *ngIf=\"model != question.selectAllItem\" type=\"checkbox\" [name]=\"question.name\" [id]=\"question.getItemId(model)\" [attr.aria-describedby]=\"question.ariaDescribedBy\" [class]=\"question.cssClasses.itemControl\"\n [disabled]=\"!question.getItemEnabled(model)\" [checked]=\"question.isItemSelected(model)\" [value]=\"model.value\" (change)=\"onChange($event)\"/>\n<ng-content></ng-content>","import { Component } from \"@angular/core\";\nimport { QuestionAngular } from \"../question\";\nimport { AngularComponentFactory } from \"../component-factory\";\nimport { QuestionDropdownModel } from \"survey-core\";\n\n@Component({\n selector: \"sv-ng-dropdown-question\",\n templateUrl: \"./dropdown.component.html\"\n})\nexport class DropdownQuestionComponent extends QuestionAngular<QuestionDropdownModel> {\n}\n\nAngularComponentFactory.Instance.registerComponent(\"dropdown-question\", DropdownQuestionComponent);","<div [class]=\"model.renderCssRoot\" #contentElement>\n <sv-ng-dropdown [model]=\"model\"></sv-ng-dropdown>\n <div *ngIf=\"model.isOtherSelected\" class=\"form-group\" [question]=\"model\" sv-ng-comment></div>\n</div>","import { Component } from \"@angular/core\";\nimport { QuestionAngular } from \"../question\";\nimport { AngularComponentFactory } from \"../component-factory\";\nimport { QuestionTagboxModel } from \"survey-core\";\n\n@Component({\n selector: \"sv-ng-tagbox-question\",\n templateUrl: \"./tagbox.component.html\"\n})\nexport class TagboxQuestionComponent extends QuestionAngular<QuestionTagboxModel> {\n}\n\nAngularComponentFactory.Instance.registerComponent(\"tagbox-question\", TagboxQuestionComponent);","<div [class]=\"model.renderCssRoot\" #contentElement>\n <sv-ng-tagbox [model]=\"model\"></sv-ng-tagbox>\n <div *ngIf=\"model.isOtherSelected\" class=\"form-group\" [question]=\"model\" sv-ng-comment></div>\n</div>","import { Component } from \"@angular/core\";\nimport { QuestionAngular } from \"../question\";\nimport { QuestionRatingModel } from \"survey-core\";\nimport { AngularComponentFactory } from \"../component-factory\";\n\n@Component({\n selector: \"sv-ng-rating-question\",\n templateUrl: \"./rating.component.html\"\n})\nexport class RatingQuestionComponent extends QuestionAngular<QuestionRatingModel> {\n trackByFn(index: number): number {\n return index;\n }\n public onClick(event: any) {\n event.stopPropagation();\n this.model.setValueFromClick(event.target.value);\n }\n}\n\nAngularComponentFactory.Instance.registerComponent(\"rating-question\", RatingQuestionComponent);"," <div [class]=\"model.ratingRootCss\" #contentElement>\n <fieldset role=\"radiogroup\">\n <legend role=\"presentation\" class=\"sv-hidden\"></legend>\n <span *ngIf=\"model.hasMinLabel\" [class]=\"model.cssClasses.minText\" [model]=\"model.locMinRateDescription\" sv-ng-string>\n </span>\n <label *ngFor=\"let item of model.renderedRateItems; index as index; trackBy: trackByFn\" [class]=\"model.getItemClass(item.itemValue)\" >\n <input type=\"radio\"\n class=\"sv-visuallyhidden\"\n [attr.name]=\"model.name\" [attr.id]=\"model.getInputId(index)\" [value]=\"item.value\" [attr.aria-required]=\"model.ariaRequired\" [attr.aria-label]=\"model.ariaLabel\" [attr.aria-invalid]=\"model.ariaInvalid\" [attr.aria-describedby]=\"model.ariaDescribedBy\"\n [disabled]=\"model.isInputReadOnly\" [checked]=\"model.value === item.value\" (click)=\"onClick($event)\"\n />\n <span [class]=\"model.cssClasses.itemText\" [model]=\"item.locText\" sv-ng-string></span>\n </label>\n <span *ngIf=\"model.hasMaxLabel\" [class]=\"model.cssClasses.maxText\" [model]=\"model.locMaxRateDescription\" sv-ng-string></span>\n </fieldset>\n </div>\n","import { Component } from \"@angular/core\";\nimport { QuestionAngular } from \"../question\";\nimport { QuestionBooleanModel } from \"survey-core\";\nimport { AngularComponentFactory } from \"../component-factory\";\n\n@Component({\n selector: \"sv-ng-boolean-question\",\n templateUrl: \"./boolean.component.html\"\n})\nexport class BooleanQuestionComponent extends QuestionAngular<QuestionBooleanModel> {\n onChange(event: any) {\n this.model.checkedValue = event.target.value;\n }\n}\n\nAngularComponentFactory.Instance.registerComponent(\"boolean-question\", BooleanQuestionComponent);","<div [class]=\"model.cssClasses.root\" (keydown)=\"model.onKeyDownCore($event)\" #contentElement>\n <label [class]=\"model.getItemCss()\">\n <input\n type=\"checkbox\"\n [attr.name]=\"model.name\" [attr.id]=\"model.inputId\" [attr.aria-required]=\"model.ariaRequired\" [attr.aria-label]=\"model.ariaLabel\" [attr.aria-invalid]=\"model.ariaInvalid\" [attr.aria-describedby]=\"model.ariaDescribedBy\"\n [class]=\"model.cssClasses.control\" [disabled]=\"model.isInputReadOnly\" [indeterminate]=\"model.isIndeterminate\" [value]=\"model.checkedValue\" [(ngModel)]=\"model.checkedValue\" />\n <span [class]=\"model.getLabelCss(false)\" (click)=\"model.onLabelClick($event, false)\" [model]=\"model.locLabelFalse\" sv-ng-string></span>\n <div [class]=\"model.cssClasses.switch\" (click)=\"model.onSwitchClickModel($event)\">\n <span [class]=\"model.cssClasses.slider\">\n <span *ngIf=\"model.cssClasses.sliderText && model.isDeterminated\" [class]=\"model.cssClasses.sliderText\" [model]=\"model.getCheckedLabel()\" sv-ng-string></span>\n </span>\n </div>\n <span [class]=\"model.getLabelCss(true)\" (click)=\"model.onLabelClick($event, true)\" [model]=\"model.locLabelTrue\" sv-ng-string></span>\n </label>\n</div>","import { AfterViewInit, Component, Input } from \"@angular/core\";\nimport { BaseAngular } from \"../base-angular\";\nimport { ImageItemValue, QuestionImagePickerModel } from \"survey-core\";\nimport { AngularComponentFactory } from \"../component-factory\";\n@Component({\n selector: \"sv-ng-imagepicker-item\",\n templateUrl: \"./imagepicker-item.component.html\",\n styles: [\":host { display: none; }\"]\n})\nexport class ImagePickerItemComponent extends BaseAngular<ImageItemValue> implements AfterViewInit {\n @Input() question!: QuestionImagePickerModel;\n @Input() model!: ImageItemValue;\n protected getModel(): ImageItemValue {\n return this.model;\n }\n onChange(event: any) {\n if (this.question.multiSelect) {\n if (event.target.checked) {\n this.question.value = this.question.value.concat(event.target.value);\n } else {\n var currValue = this.question.value;\n currValue.splice(this.question.value.indexOf(event.target.value), 1);\n this.question.value = currValue;\n }\n } else {\n this.question.value = event.target.value;\n }\n }\n ngAfterViewInit(): void {\n this.model.locImageLink.onChanged = () => {\n this.detectChanges();\n };\n }\n override ngOnDestroy(): void {\n super.ngOnDestroy();\n this.model.locImageLink.onChanged = () => {};\n }\n}\n\nAngularComponentFactory.Instance.registerComponent(\"sv-ng-imagepicker-item\", ImagePickerItemComponent);","<ng-template #template>\n <div [class]=\"question.getItemClass(model)\">\n <label [class]=\"question.cssClasses.label\">\n <input [type]=\"question.inputType\" [attr.name]=\"question.questionName\" [attr.value]=\"model.value\" [id]=\"question.getItemId(model)\" [attr.aria-required]=\"question.ariaRequired\" [attr.aria-label]=\"question.ariaLabel\" [attr.aria-invalid]=\"question.ariaInvalid\" [attr.aria-describedby]=\"question.ariaDescribedBy\"\n (change)=\"onChange($event)\" [checked]=\"question.isItemSelected(model)\" [disabled]=\"!question.getItemEnabled(model)\" [class]=\"question.cssClasses.itemControl\"\n />\n <div [class]=\"question.cssClasses.itemDecorator\">\n <div [class]=\"question.cssClasses.imageContainer\">\n <img *ngIf=\"model.locImageLink.renderedHtml && question.contentMode === 'image'\" [class]=\"question.cssClasses.image\" [attr.src]=\"model.locImageLink.renderedHtml\" [attr.width]=\"question.renderedImageWidth\" [attr.height]=\"question.renderedImageHeight\" [attr.alt]=\"model.locText.renderedHtml\" [style.objectFit]=\"question.imageFit\" (load)=\"question.onContentLoaded(model, $event)\"/>\n <video *ngIf=\"model.locImageLink.renderedHtml && question.contentMode === 'video'\" controls [class]=\"question.cssClasses.image\" [attr.src]=\"model.locImageLink.renderedHtml\" [attr.width]=\"question.renderedImageWidth\" [attr.height]=\"question.renderedImageHeight\" [style.objectFit]=\"question.imageFit\" (loadedmetadata)=\"question.onContentLoaded(model, $event)\"></video>\n <div *ngIf=\"!model.locImageLink.renderedHtml\" [class]=\"question.cssClasses.itemNoImage\" [style.width]=\"question.renderedImageWidth\" [style.height]=\"question.renderedImageHeight\" [style.objectFit]=\"question.imageFit\">\n <svg [class]=\"question.cssClasses.itemNoImageSvgIcon\" *ngIf=\"question.cssClasses.itemNoImageSvgIcon\">\n <use [attr.xlink:href]=\"question.cssClasses.itemNoImageSvgIconId\"></use>\n </svg>\n </div>\n </div>\n <span *ngIf=\"question.showLabel\" [class]=\"question.cssClasses.itemText\" [model]=\"model.locText\" sv-ng-string></span>\n </div>\n </label>\n </div>\n</ng-template>","import { Component } from \"@angular/core\";\nimport { QuestionAngular } from \"../question\";\nimport { ImageItemValue, ItemValue, QuestionImagePickerModel } from \"survey-core\";\nimport { AngularComponentFactory } from \"../component-factory\";\n\n@Component({\n selector: \"sv-ng-imagepicker-question\",\n templateUrl: \"./imagepicker.component.html\"\n})\nexport class ImagePickerQuestionComponent extends QuestionAngular<QuestionImagePickerModel> {\n public getItemValueComponentName(item: ItemValue): string {\n return this.model.getItemValueWrapperComponentName(item) || \"sv-ng-imagepicker-item\";\n }\n public getItemValueComponentData(item: ItemValue): any {\n return {\n componentName: \"sv-ng-imagepicker-item\",\n componentData: {\n question: this.model,\n model: item,\n data: this.model.getItemValueWrapperComponentData(item)\n }\n };\n }\n\n}\n\nAngularComponentFactory.Instance.registerComponent(\"imagepicker-question\", ImagePickerQuestionComponent);"," <fieldset [class]=\"model.getSelectBaseRootCss()\" #contentElement>\n <legend [attr.aria-label]=\"model.locTitle.renderedHtml\" role=\"radio\"></legend>\n <ng-container *ngIf=\"!model.hasColumns\">\n <ng-container *ngFor=\"let item of model.visibleChoices\">\n <ng-template [component]=\"{ name: getItemValueComponentName(item), data: getItemValueComponentData(item) }\"></ng-template>\n </ng-container>\n </ng-container>\n <ng-container *ngIf=\"model.hasColumns\">\n <div *ngFor=\"let column of model.columns\" [class]=\"model.getColumnClass()\" role=\"presentation\">\n <ng-container *ngFor=\"let item of column\">\n <ng-template [component]=\"{ name: getItemValueComponentName(item), data: getItemValueComponentData(item) }\"></ng-template>\n </ng-container>\n </div>\n </ng-container>\n </fieldset>","import { Component, Input, OnChanges } from \"@angular/core\";\nimport { BaseAngular } from \"../../base-angular\";\nimport { ButtonGroupItemModel, ItemValue, QuestionButtonGroupModel } from \"survey-core\";\n\n@Component({\n selector: \"sv-button-group-item\",\n templateUrl: \"./button-group-item.component.html\",\n styleUrls: [\"../../hide-host.scss\"]\n})\nexport class ButtonGroupItemComponent extends BaseAngular<ItemValue> implements OnChanges {\n @Input() item!: ItemValue;\n @Input() question!: QuestionButtonGroupModel;\n @Input() index!: number;\n public model!: ButtonGroupItemModel;\n public ngOnChanges(): void {\n this.model = new ButtonGroupItemModel(this.question, this.item, this.index);\n }\n protected getModel(): ItemValue {\n return this.item;\n }\n}","<ng-template #template>\n <label role=\"radio\" [class]=\"model.css.label\" [attr.title]=\"model.caption.renderedHtml\">\n <input type=\"radio\"\n [attr.name]=\"model.name\" [attr.id]=\"model.id\" [attr.aria-required]=\"model.isRequired\" [attr.aria-label]=\"model.caption.renderedHtml\" role=\"radio\" [attr.aria-invalid]=\"model.hasErrors\" [attr.aria-describedby]=\"model.describedBy\" [disabled]=\"model.readOnly\" [class]=\"model.css.control\" [(ngModel)]=\"question.renderedValue\" [attr.value]=\"model.value\" [value]=\"model.value\"/>\n <div data-bind=\"css: model.css.decorator\">\n <svg *ngIf=\"model.iconName\" [iconName]=\"model.iconName\" [size]=\"model.iconSize\" [class]=\"model.css.icon\" sv-ng-svg-icon></svg>\n <span [class]=\"model.css.caption\" *ngIf=\"model.showCaption\" [attr.title]=\"model.caption.renderedHtml\" sv-ng-string [model]=\"model.caption\">\n </span>\n </div>\n </label>\n</ng-template>","\nimport { Component } from \"@angular/core\";\nimport { QuestionAngular } from \"../../question\";\nimport { QuestionButtonGroupModel } from \"survey-core\";\n\n@Component({\n selector: \"sv-ng-buttongroup-question\",\n templateUrl: \"./button-group.component.html\"\n})\nexport class ButtonGroupQuestionComponent extends QuestionAngular<QuestionButtonGroupModel> {\n}","<div role=\"group\" [class]=\"model.cssClasses.root\">\n <sv-button-group-item *ngFor=\"let item of model.visibleChoices; index as index\" [question]=\"model\" [item]=\"item\" [index]=\"index\" ></sv-button-group-item>\n</div>\n","import { Directive, ElementRef, Input, SimpleChanges, OnChanges, OnDestroy } from \"@angular/core\";\nimport { doKey2ClickDown, doKey2ClickUp, doKey2ClickBlur, IAttachKey2clickOptions } from \"survey-core\";\n\n@Directive({\n selector: \"[key2click]\"\n})\nexport class Key2ClickDirective implements OnChanges, OnDestroy {\n static defaultOptions: IAttachKey2clickOptions = { processEsc: true, disableTabStop: false };\n private isSubscribed = false;\n\n options?: IAttachKey2clickOptions = Key2ClickDirective.defaultOptions;\n @Input() key2click?: IAttachKey2clickOptions;\n\n private onkeydown (evt: any) {\n doKey2ClickDown(evt, this.options);\n }\n private onkeyup = (evt: any) => {\n evt.preventDefault();\n evt.stopPropagation();\n doKey2ClickUp(evt, this.options);\n return false;\n }\n private blur (evt: any) {\n doKey2ClickBlur(evt);\n }\n constructor(private el: ElementRef) {\n this.subscribeEventListeners();\n }\n\n get element() {\n return this.el.nativeElement;\n }\n\n subscribeEventListeners() {\n if(this.isSubscribed) return;\n\n this.element.tabIndex = 0;\n this.element.addEventListener(\"keyup\", this.onkeyup);\n this.element.addEventListener(\"keydown\", this.onkeydown);\n this.element.addEventListener(\"blur\", this.blur);\n\n this.isSubscribed = true;\n }\n unsubscribeEventListeners() {\n if(!this.isSubscribed) return;\n\n this.element.tabIndex = -1;\n this.element.removeEventListener(\"keyup\", this.onkeyup);\n this.element.removeEventListener(\"keydown\", this.onkeydown);\n this.element.removeEventListener(\"blur\", this.blur);\n\n this.isSubscribed = false;\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n const curValue = changes[\"key2click\"].currentValue;\n if(curValue.disableTabStop) {\n this.unsubscribeEventListeners();\n } else {\n this.subscribeEventListeners();\n }\n this.options = Object.assign({}, Key2ClickDirective.defaultOptions, curValue);\n }\n\n ngOnDestroy(): void {\n this.unsubscribeEventListeners();\n }\n}","import { Component, Input } from \"@angular/core\";\nimport { BaseAngular } from \"../../base-angular\";\nimport { AngularComponentFactory } from \"../../component-factory\";\n\n@Component({\n selector: \"sv-action-bar-item\",\n templateUrl: \"./action-bar-item.component.html\",\n styleUrls: [\"../../hide-host.scss\"]\n})\nexport class ActionBarItemComponent extends BaseAngular {\n @Input() model: any;\n\n getModel() {\n return this.model;\n }\n}\n\nAngularComponentFactory.Instance.registerComponent(\"sv-action-bar-item\", ActionBarItemComponent);","<ng-template #template>\n <button type=\"button\" (click)=\"model.action()\" [key2click]=\"{ processEsc: false }\" [class]=\"model.getActionBarItemCss()\" [attr.title]=\"model.tooltip || model.title\" [disabled]=\"model.disabled\" \n data-bind=\"key2click: { processEsc: false }\">\n <svg *ngIf=\"model.iconName\" [iconName]=\"model.iconName\" [size]=\"model.iconSize\" [title]=\"model.tooltip || model.title\" [class]=\"model.cssClasses.itemIcon\" sv-ng-svg-icon></svg>\n <span *ngIf=\"model.hasTitle\" [class]=\"model.getActionBarItemTitleCss()\">{{ model.title }}</span>\n </button>\n<ng-template>","import { Component, Input } from \"@angular/core\";\nimport { ActionDropdownViewModel } from \"survey-core\";\nimport { BaseAngular } from \"../../base-angular\";\nimport { AngularComponentFactory } from \"../../component-factory\";\n\n@Component({\n selector: \"sv-action-bar-item-dropdown\",\n templateUrl: \"./action-bar-item-dropdown.component.html\",\n styleUrls: [\"../../hide-host.scss\"]\n})\nexport class ActionBarItemDropdownComponent extends BaseAngular {\n @Input() model: any\n protected viewModel!: ActionDropdownViewModel;\n\n protected getModel() {\n return this.model;\n }\n override ngOnInit(): void {\n super.ngOnInit();\n this.viewModel = new ActionDropdownViewModel(this.model);\n }\n override ngOnDestroy(): void {\n this.viewModel.dispose();\n super.ngOnDestroy();\n }\n}\n\nAngularComponentFactory.Instance.registerComponent(\"sv-action-bar-item-dropdown\", ActionBarItemDropdownComponent);","<ng-template #template>\n <button type=\"button\" (click)=\"model.action()\" [key2click]=\"{ processEsc: false }\" [class]=\"model.getActionBarItemCss()\" [title]=\"model.tooltip || model.title\" [disabled]=\"model.disabled\">\n <svg *ngIf=\"model.iconName\" [iconName]=\"model.iconName\" [size]=\"model.iconSize\" [title]=\"model.tooltip || model.title\" [class]=\"model.cssClasses.itemIcon\" sv-ng-svg-icon></svg>\n <span *ngIf=\"model.hasTitle\" [class]=\"model.getActionBarItemTitleCss()\">{{ model.title }}</span>\n <sv-ng-popup [popupModel]=\"model.popupModel\"></sv-ng-popup>\n </button>\n</ng-template>","import { Component, Input } from \"@angular/core\";\nimport { BaseAngular } from \"../base-angular\";\nimport { ItemValue } from \"survey-core\";\nimport { AngularComponentFactory } from \"../component-factory\";\n\n@Component({\n selector: \"['sv-ng-selectbase-item'], sv-ng-selebase-item\",\n templateUrl: \"./selectbase-item.html\",\n styles: [\":host { display: none; }\"]\n})\nexport class SelectBaseItemComponent extends BaseAngular<ItemValue> {\n @Input() question!: any;\n @Input() model!: ItemValue | any;\n @Input() inputType!: string;\n @Input() showLabel: boolean = true;\n protected getModel(): ItemValue {\n return this.model;\n }\n}\n\nAngularComponentFactory.Instance.registerComponent(\"sv-ng-selectbase-item\", SelectBaseItemComponent);","<ng-template #template>\n <div role=\"presentation\" [class]=\"question.getItemClass(model)\">\n <ng-container [ngSwitch]=\"inputType\">\n <label *ngSwitchCase=\"'checkbox'\" [class]=\"question.getLabelClass(model)\" [attr.aria-label]=\"question.getAriaItemLabel(model)\" [model]=\"model\" [question]=\"question\" sv-ng-checkbox-item>\n <ng-container *ngTemplateOutlet=\"itemDecorator\"></ng-container>\n </label>\n <label *ngSwitchCase=\"'radio'\" [class]=\"question.getLabelClass(model)\" [attr.aria-label]=\"question.getAriaItemLabel(model)\" [model]=\"model\" [question]=\"question\" sv-ng-radiogroup-item>\n <ng-container *ngTemplateOutlet=\"itemDecorator\"></ng-container>\n </label>\n </ng-container>\n <ng-template #itemDecorator>\n <span *ngIf=\"question.cssClasses.materialDecorator\" [class]=\"question.cssClasses.materialDecorator\">\n <svg *ngIf=\"question.itemSvgIcon\" [class]=\"question.cssClasses.itemDecorator\">\n <use [attr.xlink:href]=\"question.itemSvgIcon\"></use>\n </svg>\n </span>\n <span [class]=\"question.getControlLabelClass(model)\" [visible]=\"!model.hideCaption\">\n <sv-ng-string [model]=\"model.locText\"></sv-ng-string>\n </span> \n </ng-template>\n </div>\n</ng-template>","import { Component, Input } from \"@angular/core\";\nimport { ListModel, Action } from \"survey-core\";\nimport { BaseAngular } from \"../../base-angular\";\nimport { AngularComponentFactory } from \"../../component-factory\";\n\n@Component({\n selector: \"sv-ng-list-item, '[sv-ng-list-item]'\",\n templateUrl: \"./list-item.component.html\",\n styleUrls: [\"../../hide-host.scss\"],\n})\n\nexport class ListItemComponent extends BaseAngular {\n @Input() element: any;\n @Input() model!: Action;\n @Input() listModel!: ListModel;\n\n get ariaSelected(): boolean | string {\n return this.listModel.isItemSelected(this.model) || \"\";\n }\n get class(): string {\n return this.listModel.getItemClass(this.model);\n }\n get paddingLeft(): string {\n return this.listModel.getItemIndent(this.model);\n }\n click(event: any): void {\n this.listModel.onItemClick(this.model);\n event.stopPropagation();\n }\n pointerdown(event: any): void {\n this.listModel.onPointerDown(event, this.model);\n }\n\n getModel() {\n return this.model;\n }\n}\n\nAngularComponentFactory.Instance.registerComponent(\"sv-list-item\", ListItemComponent);","<ng-template #template>\n <li role=\"option\" [key2click] [visible]=\"listModel.isItemVisible(model)\" [class]=\"class\" [attr.aria-selected]=\"ariaSelected\" (click)=\"click($event)\" (pointerdown)=\"pointerdown($event)\">\n <ng-container *ngIf=\"model.needSeparator\">\n <div [class]=\"listModel.cssClasses.itemSeparator\"></div>\n </ng-container>\n <div [class]=\"listModel.cssClasses.itemBody\" [style.paddingLeft]=\"paddingLeft\">\n <ng-container *ngIf=\"!model.component\">\n <svg *ngIf=\"model.iconName\" [class]=\"listModel.cssClasses.itemIcon\" [iconName]=\"model.iconName\" [size]=\"24\"\n sv-ng-svg-icon></svg>\n <sv-ng-string [model]=\"model.locTitle\"></sv-ng-string>\n </ng-container>\n <ng-container *ngIf=\"model.component\">\n <ng-template [component]=\"{ name: model.component, data: { model: model } }\"></ng-template>\n </ng-container>\n </div>\n </li>\n</ng-template>","import { Component, Input } from \"@angular/core\";\nimport { BaseAngular } from \"../../base-angular\";\nimport { AngularComponentFactory } from \"../../component-factory\";\n\n@Component({\n selector: \"sv-ng-list, '[sv-ng-list]'\",\n templateUrl: \"./list.component.html\",\n styleUrls: [\"../../hide-host.scss\"]\n})\nexport class ListComponent extends BaseAngular {\n @Input() model: any;\n\n getModel() {\n return this.model;\n }\n onGoToItems(event: Event): void {\n this.model.goToItems(event);\n }\n onMouseDown(event: Event): void {\n event.preventDefault();\n }\n onKeyDown(event: Event): void {\n this.model.onKeyDown(event);\n }\n onMouseMove(event: Event): void {\n this.model.onMouseMove(event);\n }\n}\n\nAngularComponentFactory.Instance.registerComponent(\"sv-list\", ListComponent);","<ng-template #template>\n <div [class]=\"model.cssClasses.root\">\n <div *ngIf=\"model.showFilter\" [class]=\"model.cssClasses.filter\">\n <div [class]=\"model.cssClasses.filterIcon\">\n <svg [iconName]=\"'icon-search'\" [size]=\"24\" sv-ng-svg-icon></svg>\n </div>\n <input type=\"text\" [class]=\"model.cssClasses.filterInput\" [(ngModel)]=\"model.filterString\"\n [attr.aria-label]=\"model.filterStringPlaceholder || ''\"\n [attr.placeholder]=\"model.filterStringPlaceholder || ''\" \n (keyup)=\"onGoToItems($event)\" />\n </div>\n <div [class]=\"model.cssClasses.emptyContainer\" [visible]=\"model.isEmpty\">\n <div [class]=\"model.cssClasses.emptyText\" [attr.aria-label]=\"model.emptyMessage || ''\">{{ model.emptyMessage }}</div>\n </div>\n <ul [class]=\"model.cssClasses.itemsContainer\" role=\"listbox\" (mousedown)=\"onMouseDown($event)\" (keydown)=\"onKeyDown($event)\" (mousemove)=\"onMouseMove($event)\">\n <sv-ng-list-item *ngFor=\"let item of model.renderedActions\" [listModel]=\"model\" [model]=\"item\"></sv-ng-list-item>\n <!--ko foreach: model.renderedActions -->\n <!-- ko component: { name: 'sv-list-item', params: { item: $data, model: $parent.model } } -->\n <!-- /ko -->\n <!-- /ko -->\n </ul>\n </div>\n</ng-template>","\nimport { Component, Input } from \"@angular/core\";\nimport { AngularComponentFactory } from \"../../../component-factory\";\nimport { RendererFactory } from \"survey-core\";\n\n@Component({\n selector: \"sv-ng-rating-dropdown-question\",\n templateUrl: \"./rating-dropdown.component.html\"\n})\nexport class RatingDropdownComponent {\n @Input() model: any;\n}\n\nAngularComponentFactory.Instance.registerComponent(\"rating-dropdown-question\", RatingDropdownComponent);\nRendererFactory.Instance.registerRenderer(\n \"rating\",\n \"dropdown\",\n \"rating-dropdown-question\"\n);\n","<div [class]=\"model.cssClasses.rootDropdown\">\n <sv-ng-dropdown [model]=\"model\"></sv-ng-dropdown>\n</div>","\nimport { Component, Input } from \"@angular/core\";\nimport { AngularComponentFactory } from \"../../../component-factory\";\nimport { RendererFactory } from \"survey-core\";\n\n@Component({\n selector: \"sv-ng-boolean-checkbox-question\",\n templateUrl: \"./boolean-checkbox.component.html\"\n})\nexport class BooleanCheckboxComponent {\n @Input() model: any;\n}\n\nAngularComponentFactory.Instance.registerComponent(\"boolean-checkbox-question\", BooleanCheckboxComponent);\nRendererFactory.Instance.registerRenderer(\n \"boolean\",\n \"checkbox\",\n \"boolean-checkbox-question\"\n);\n","<div [class]=\"model.cssClasses.rootCheckbox\">\n <div [class]=\"model.getCheckboxItemCss()\">\n <label [class]=\"model.cssClasses.checkboxLabel\">\n <input\n type=\"checkbox\"\n [value]=\"model.checkedValue\" [class]=\"model.cssClasses.controlCheckbox\" \n [attr.name]=\"model.name\" [id]=\"model.inputId\" [attr.aria-required]=\"model.ariaRequired\" [attr.aria-label]=\"model.ariaLabel\"\n [attr.aria-invalid]=\"model.ariaInvalid\" [attr.aria-describedby]=\"model.ariaDescribedBy\" [(ngModel)]=\"model.checkedValue\" [value]=\"model.checkedValue\"\n [disabled]=\"model.isInputReadOnly\" [indeterminate]=\"model.isIndeterminate\"\n />\n <span [class]=\"model.cssClasses.checkboxMaterialDecorator\">\n <svg *ngIf=\"!!model.svgIcon\" [class]=\"model.cssClasses.checkboxItemDecorator\">\n <use [attr.xlink:href]=\"model.svgIcon\"></use>\n </svg>\n <span class=\"check\"></span>\n </span>\n <span *ngIf=\"model.titleLocation === 'hidden'\" [class]=\"model.cssClasses.checkboxControlLabel\" [model]=\"model.locDisplayLabel\" sv-ng-string></span>\n </label>\n </div>\n</div>","import { Component, Input } from \"@angular/core\";\nimport { LocalizableString, QuestionBooleanModel } from \"survey-core\";\n@Component({\n selector: \"sv-ng-boolean-radio-item\",\n templateUrl: \"boolean-radio-item.component.html\",\n})\nexport class BooleanRadioItemComponent {\n @Input() question!: QuestionBooleanModel;\n @Input() value!: boolean;\n @Input() locText!: LocalizableString;\n constructor() {\n\n }\n}\n","<div role=\"presentation\" [class]=\"question.getRadioItemClass(question.cssClasses, value)\">\n <label [class]=\"question.cssClasses.radioLabel\">\n <input\n type=\"radio\"\n [attr.name]=\"question.name\" [attr.aria-describedby]=\"question.ariaDescribedBy\" [value]=\"value\" [(ngModel)]=\"question.value\"\n [disabled]=\"question.isInputReadOnly\" [class]=\"question.cssClasses.itemRadioControl || ''\"\n />\n <span *ngIf=\"question.cssClasses.materialRadioDecorator\" [class]=\"question.cssClasses.materialRadioDecorator\"></span>\n <span [class]=\"question.cssClasses.radioControlLabel\" [model]=\"locText\" sv-ng-string>\n </span>\n </label>\n</div>\n","\nimport { Component, Input } from \"@angular/core\";\nimport { AngularComponentFactory } from \"../../../component-factory\";\nimport { QuestionBooleanModel, RendererFactory } from \"survey-core\";\n\n@Component({\n selector: \"sv-ng-boolean-radio-question\",\n templateUrl: \"./boolean-radio.component.html\"\n})\nexport class BooleanRadioComponent {\n @Input() model!: QuestionBooleanModel;\n}\n\nAngularComponentFactory.Instance.registerComponent(\"boolean-radio-question\", BooleanRadioComponent);\nRendererFactory.Instance.registerRenderer(\n \"boolean\",\n \"radio\",\n \"boolean-radio-question\"\n);\n","<div [class]=\"model.cssClasses.rootRadio\">\n <fieldset role=\"presentation\" [class]=\"model.cssClasses.radioFieldset\">\n <sv-ng-boolean-radio-item [value]=\"false\" [locText]=\"model.locLabelFalse\" [question]=\"model\" ></sv-ng-boolean-radio-item>\n <sv-ng-boolean-radio-item [value]=\"true\" [locText]=\"model.locLabelTrue\" [question]=\"model\" ></sv-ng-boolean-radio-item>\n </fieldset>\n</div>\n","import { Component, Input } from \"@angular/core\";\nimport { AngularComponentFactory } from \"../../../component-factory\";\nimport { SurveyProgressModel } from \"survey-core\";\nimport { EmbeddedViewContentComponent } from \"../../../embedded-view-content.component\";\n\n@Component({\n selector: \"sv-ng-progress-default\",\n templateUrl: \"./progress.component.html\"\n})\nexport class ProgressDefaultComponent extends EmbeddedViewContentComponent {\n @Input() model: any;\n getProgressTextInBarCss(css: any): string {\n return SurveyProgressModel.getProgressTextInBarCss(css);\n }\n getProgressTextUnderBarCss(css: any): string {\n return SurveyProgressModel.getProgressTextUnderBarCss(css);\n }\n}\nAngularComponentFactory.Instance.registerComponent(\"sv-progress-progress\", ProgressDefaultComponent);\nAngularComponentFactory.Instance.registerComponent(\"sv-progress-pages\", ProgressDefaultComponent);\nAngularComponentFactory.Instance.registerComponent(\"sv-progress-questions\", ProgressDefaultComponent);\nAngularComponentFactory.Instance.registerComponent(\"sv-progress-correctQuestions\", ProgressDefaultComponent);\nAngularComponentFactory.Instance.registerComponent(\"sv-progress-requiredQuestions\", ProgressDefaultComponent);","<ng-template #template>\n <div [class]=\"model.css.progress\">\n <div [class]=\"model.css.progressBar\" [style.width]=\"model.progressValue + '%'\"\n role=\"progressbar\" aria-valuemin=\"0\" aria-valuemax=\"100\">\n <span [class]=\"getProgressTextInBarCss(model.css)\">\n {{ model.progressText }}\n </span>\n </div>\n <span [class]=\"getProgressTextUnderBarCss(model.css)\"> {{ model.progressText }} </span>\n </div>\n</ng-template>","import { AfterViewInit, ChangeDetectorRef, Component, ElementRef, Input, OnChanges, OnDestroy, OnInit, SimpleChanges, ViewChild } from \"@angular/core\";\nimport { AngularComponentFactory } from \"../../../component-factory\";\nimport { SurveyModel, SurveyProgressButtonsModel } from \"survey-core\";\n\n@Component({\n selector: \"sv-ng-progress-buttons\",\n templateUrl: \"./progress.component.html\"\n})\nexport class ProgressButtonsComponent implements OnDestroy, AfterViewInit, OnChanges, OnInit {\n @Input() model!: SurveyModel;\n @ViewChild(\"progressButtonsListContainer\") progressButtonsListContainer!: ElementRef<HTMLDivElement>;\n private progressButtonsModel!: SurveyProgressButtonsModel;\n private hasScroller: boolean = false;\n private updateScroller: any = undefined;\n constructor(private changeDetectorRef: ChangeDetectorRef) {\n }\n private createProgressButtonsModel() {\n this.progressButtonsModel = new SurveyProgressButtonsModel(this.model);\n }\n ngOnInit(): void {\n this.createProgressButtonsModel();\n }\n ngOnChanges(changes: SimpleChanges): void {\n this.createProgressButtonsModel();\n }\n public isListElementClickable(index: number): boolean {\n return this.progressButtonsModel.isListElementClickable(index);\n }\n public getListElementCss(index: number): string {\n return this.progressButtonsModel.getListElementCss(index);\n }\n public clickListElement(index: number): void {\n this.progressButtonsModel.clickListElement(index);\n }\n public getScrollButtonCss(isLeftScroll: boolean): string {\n return this.progressButtonsModel.getScrollButtonCss(this.hasScroller, isLeftScroll);\n }\n public clickScrollButton(\n isLeftScroll: boolean\n ): void {\n if(this.progressButtonsListContainer) {\n this.progressButtonsListContainer.nativeElement.scrollLeft += (isLeftScroll ? -1 : 1) * 70;\n }\n }\n public ngAfterViewInit(): void {\n this.progressButtonsModel = new SurveyProgressButtonsModel(this.model);\n this.updateScroller = setInterval(() => {\n if(!!this.progressButtonsListContainer?.nativeElement) {\n const listContainerElement = this.progressButtonsListContainer.nativeElement;\n this.hasScroller = listContainerElement.scrollWidth > listContainerElement.offsetWidth;\n this.changeDetectorRef.detectChanges();\n }\n }, 100);\n }\n public ngOnDestroy(): void {\n if (typeof this.updateScroller !== \"undefined\") {\n clearInterval(this.updateScroller);\n this.updateScroller = undefined;\n }\n }\n}\nAngularComponentFactory.Instance.registerComponent(\"sv-progress-buttons\", ProgressButtonsComponent);\n","<div [class]=\"model.css.progressButtonsContainerCenter\">\n <div [class]=\"model.css.progressButtonsContainer\">\n <div\n [class]=\"getScrollButtonCss(true)\"\n (click)=\"clickScrollButton(true)\"\n role=\"button\"\n ></div>\n <div\n [class]=\"model.css.progressButtonsListContainer\" #progressButtonsListContainer>\n <ul [class]=\"model.css.progressButtonsList\">\n <li\n *ngFor=\"let page of model.visiblePages; index as index\"\n [class]=\"getListElementCss(index)\"\n (click)=\"isListElementClickable(index) ? clickListElement(index) : null\">\n <div\n [class]=\"model.css.progressButtonsPageTitle\"\n [title]=\"page.locNavigationTitle.renderedHtml || page.name\"\n >\n {{ page.locNavigationTitle.renderedHtml || page.name }}\n </div>\n <div\n [class]=\"model.css.progressButtonsPageDescription\"\n [title]=\"page.locNavigationDescription.renderedHtml\"\n >\n {{ page.locNavigationDescription.renderedHtml }}\n </div>\n </li>\n </ul>\n </div>\n <div\n [class]=\"getScrollButtonCss(false)\"\n (click)=\"clickScrollButton(false)\"\n role=\"button\"\n ></div>\n </div>\n</div>","import { AfterViewInit, Component, ElementRef, Input, ViewChild } from \"@angular/core\";\nimport { PanelModel } from \"survey-core\";\nimport { BaseAngular } from \"./base-angular\";\nimport { AngularComponentFactory } from \"./component-factory\";\n@Component({\n selector: \"sv-ng-panel, '[sv-ng-panel]'\",\n templateUrl: \"./panel.component.html\",\n})\nexport class PanelComponent extends BaseAngular<PanelModel> implements AfterViewInit {\n @Input() model!: PanelModel;\n @ViewChild(\"panelContainer\", { static: false, read: ElementRef }) panelContainerRef!: ElementRef<HTMLDivElement>;\n protected getModel(): PanelModel {\n return this.model;\n }\n ngAfterViewInit(): void {\n if(!!this.panelContainerRef?.nativeElement) {\n this.model.survey?.afterRenderPanel(this.model, this.panelContainerRef.nativeElement);\n }\n }\n trackRowBy = (_: any, row: any) => {\n return row.id;\n }\n}\nAngularComponentFactory.Instance.registerComponent(\"panel\", PanelComponent);","<ng-template #template>\n <div *ngIf=\"model.isVisible\" [attr.id]=\"model.id\" [class]=\"model.getContainerCss()\" (focusin)=\"model.focusIn()\" #panelContainer>\n <div *ngIf=\"model.hasDescription || model.hasTitle\" [element]=\"model\" sv-ng-element-header></div>\n <!-- ko template: { name: 'survey-question-errors', data: $data } -->\n <!-- /ko -->\n <div *ngIf=\"!model.isCollapsed\" [style.paddingLeft]=\"model.innerPaddingLeft\" [class]=\"model.cssClasses.panel.content\" [attr.id]=\"model.contentId\">\n <ng-container *ngFor=\"let row of model.rows; trackBy: trackRowBy\">\n <ng-template [component]=\"{ name: $any(model.survey).getRowWrapperComponentName(row), data: { componentData: $any(model.survey).getRowWrapperComponentData(row) } }\">\n <sv-ng-row [row]=\"row\"></sv-ng-row>\n </ng-template>\n </ng-container>\n <sv-ng-action-bar [model]=\"model.getFooterToolbar()\"></sv-ng-action-bar>\n </div>\n </div>\n</ng-template>","import { Action } from \"survey-core\";\nimport { Base } from \"survey-core\";\nimport { AngularComponentFactory } from \"../../component-factory\";\nimport { Component, Input } from \"@angular/core\";\n\n@Component({\n templateUrl: \"./survey-nav-btn.component.html\",\n selector: \"sv-ng-nav-btn\",\n styles: [\":host { display: contents; }\"]\n})\nexport class SurveyNavigationButton {\n @Input() public model!: Action;\n getModel(): Action {\n return this.model;\n }\n buttonMouseDown(): Base {\n return this.model.data && this.model.data.mouseDown();\n }\n}\n\nAngularComponentFactory.Instance.registerComponent(\"sv-nav-btn\", SurveyNavigationButton);\n","<input *ngIf=\"model.visible\" type=\"button\" [value]=\"model.title\" [class]=\"model.innerCss\" (mousedown)=\"buttonMouseDown()\" (click)=\"model.action()\"/>","import { Component } from \"@angular/core\";\nimport { QuestionAngular } from \"../question\";\nimport { QuestionMatrixModel } from \"survey-core\";\nimport { AngularComponentFactory } from \"../component-factory\";\n\n@Component({\n selector: \"sv-ng-matrix-question\",\n templateUrl: \"./matrix.component.html\",\n styleUrls: [\"../hide-host.scss\"]\n})\nexport class MatrixQuestionComponent extends QuestionAngular<QuestionMatrixModel> {\n override ngOnInit() {\n this.model.visibleRowsChangedCallback = () => {\n this.detectChanges();\n };\n super.ngOnInit();\n }\n public onChange(row: any, column: any): void {\n if (this.model.isInputReadOnly) return;\n row.value = column.value;\n this.detectChanges();\n }\n trackRowByFn(i: number, row: any): string {\n return \"column-\" + row.name + \"-\" + i;\n }\n trackColumnByFn(i: number, column: any): string {\n return \"column-\" + column.value + \"-\" + i;\n }\n}\n\nAngularComponentFactory.Instance.registerComponent(\"matrix-question\", MatrixQuestionComponent);","<ng-template #template>\n <div [class]=\"model.cssClasses.tableWrapper\" #contentElement>\n <fieldset>\n <legend [attr.aria-label]=\"model.locTitle.renderedHtml\"></legend>\n <table [class]=\"model.getTableCss()\">\n <thead *ngIf=\"model.showHeader\">\n <tr>\n <td [visible]=\"model.hasRows\"></td>\n <th\n *ngFor=\"let column of model.visibleColumns\" [class]=\"model.cssClasses.headerCell\">\n <ng-template [component]=\"{ name: model.getColumnHeaderWrapperComponentName(column), data: { componentData: model.getColumnHeaderWrapperComponentData(column) } }\">\n <sv-ng-string [model]=\"column.locText\"></sv-ng-string>\n </ng-template>\n </th>\n </tr>\n </thead>\n <tbody>\n <tr *ngFor=\"let row of model.visibleRows; trackBy: trackRowByFn \" [class]=\"row.rowClasses || undefined\">\n <td [class]=\"model.cssClasses.rowTextCell\" *ngIf=\"model.hasRows\" [model]=\"row.locText\" sv-ng-string></td>\n <ng-container *ngIf=\"model.hasCellText\">\n <td *ngFor=\"let column of model.visibleColumns\"\n [class]=\"model.getItemClass(row, column)\"\n (click)=\"onChange(row, column)\" [model]=\"model.getCellDisplayLocText(row.name, column)\" sv-ng-string>\n </td>\n </ng-container>\n <ng-container *ngIf=\"!model.hasCellText\">\n <td\n *ngFor=\"let column of model.visibleColumns; index as columnIndex; trackBy: trackColumnByFn\"\n [attr.data-responsive-title]=\"column.locText.renderedHtml\"\n [class]=\"model.cssClasses.cell\">\n <label [class]=\"model.getItemClass(row, column)\">\n <input\n type=\"radio\"\n [class]=\"model.cssClasses.itemValue\"\n [name]=\"row.fullName\"\n [value]=\"column.value\"\n [checked]=\"row.value === column.value\"\n [disabled]=\"model.isInputReadOnly\"\n [attr.id]=\"model.inputId + '_' + row.name + '_' + columnIndex\"\n (change)=\"onChange(row, column)\"\n [attr.aria-required]=\"model.ariaRequired\"\n [attr.aria-label]=\"column.locText.renderedHtml\"\n [attr.aria-invalid]=\"model.ariaInvalid\"\n [attr.aria-describedby]=\"model.ariaDescribedBy\"\n />\n <span [class]=\"model.cssClasses.materialDecorator\">\n <svg *ngIf=\"model.itemSvgIcon\" [class]=\"model.cssClasses.itemDecorator\">\n <use [attr.xlink:href]=\"model.itemSvgIcon\"></use>\n </svg> \n </span>\n <span [visible]=\"model.isMobile\" [class]=\"model.cssClasses.cellResponsiveTitle\" [model]=\"column.locText\" sv-ng-string></span>\n </label>\n </td>\n </ng-container>\n </tr>\n </tbody>\n </table>\n </fieldset>\n </div>\n</ng-template>","import { Component } from \"@angular/core\";\nimport { QuestionAngular } from \"../question\";\nimport { QuestionFileModel } from \"survey-core\";\nimport { AngularComponentFactory } from \"../component-factory\";\n@Component({\n selector: \"sv-ng-file-question\",\n templateUrl: \"./file.component.html\",\n styleUrls: []\n})\nexport class FileQuestionComponent extends QuestionAngular<QuestionFileModel> {\n trackFilesFn: (index: number) => string = (index: number): string => {\n return this.model.inputId + \"_\" + index;\n }\n}\n\nAngularComponentFactory.Instance.registerComponent(\"file-question\", FileQuestionComponent);","<div [class]=\"model.fileRootCss\" #contentElement>\n <input\n [class]=\"model.cssClasses.fileInput\"\n *ngIf=\"!model.isReadOnly\"\n type=\"file\"\n [attr.id]=\"model.inputId\"\n (change)=\"model.doChange($event)\"\n [attr.aria-required]=\"model.ariaRequired\"\n [attr.aria-label]=\"model.ariaLabel\"\n [attr.aria-invalid]=\"model.ariaInvalid\"\n [attr.aria-describedby]=\"model.ariaDescribedBy\"\n [attr.multiple]=\"model.multipleRendered\"\n [attr.title]=\"model.inputTitle\"\n [attr.accept]=\"model.acceptedTypes\"\n />\n <input\n *ngIf=\"model.isReadOnly\"\n type=\"file\"\n disabled\n [class]=\"model.getReadOnlyFileCss()\"\n [attr.multiple]=\"model.multipleRendered\"\n [attr.placeholder]=\"model.title\"\n style=\"color: transparent\"\n />\n <div\n [class]=\"model.getFileDecoratorCss()\"\n (drop)=\"model.onDrop($event)\"\n (dragover)=\"model.onDragOver($event)\"\n (dragleave)=\"model.onDragLeave($event)\"\n >\n <span [class]=\"model.cssClasses.dragAreaPlaceholder\">{{ model.dragAreaPlaceholder }}</span>\n <div [class]=\"model.cssClasses.wrapper\">\n <label\n role=\"button\"\n [class]=\"model.getChooseFileCss()\"\n [attr.for]=\"model.inputId\"\n [attr.aria-label]=\"model.chooseButtonCaption\"\n >\n <span>{{ model.chooseButtonCaption }}</span>\n <svg *ngIf=\"model.cssClasses.chooseFileIconId\" [title]=\"model.chooseButtonCaption\" [iconName]=\"model.cssClasses.chooseFileIconId\" [size]=\"'auto'\" sv-ng-svg-icon></svg>\n </label>\n <span\n [class]=\"model.cssClasses.noFileChosen\"\n *ngIf=\"model.isEmpty()\"\n >{{ model.noFileChosenCaption }}</span\n >\n </div>\n </div>\n <button\n type=\"button\"\n *ngIf=\"model.showRemoveButton\"\n [class]=\"model.cssClasses.removeButton\"\n (click)=\"model.doClean($event)\"\n >\n <span>{{ model.cleanButtonCaption }}</span>\n <svg *ngIf=\"model.cssClasses.removeButtonIconId\" [iconName]=\"model.cssClasses.removeButtonIconId\" [size]=\"'auto'\" sv-ng-svg-icon></svg>\n </button>\n <div [class]=\"model.cssClasses.fileList || undefined\" *ngIf=\"!model.isEmpty()\">\n <span\n *ngFor=\"let val of model.previewValue; index as index; trackBy: trackFilesFn\"\n [visible]=\"val && model.isPreviewVisible(index)\"\n [class]=\"model.cssClasses.preview\"\n >\n <div *ngIf=\"val.name && model.cssClasses.fileSign\" [class]=\"model.cssClasses.fileSign\">\n <a\n (click)=\"model.doDownloadFile($event, val)\"\n [attr.href]=\"val.content | safeUrl\"\n [attr.title]=\"val.name\"\n [attr.download]=\"val.name\"\n [attr.width]=\"model.imageWidth\"\n >{{ val.name }}</a\n >\n </div>\n <div [class]=\"model.cssClasses.imageWrapper\">\n <img\n *ngIf=\"model.canPreviewImage(val)\"\n [attr.src]=\"val.content | safeUrl\"\n [attr.height]=\"model.imageHeight\"\n [attr.width]=\"model.imageWidth\"\n alt=\"File preview\"\n />\n <svg *ngIf=\"model.defaultImage(val)\" \n [iconName]=\"model.cssClasses.defaultImageIconId\" [partCss]=\"model.cssClasses.defaultImage\" [size]=\"'auto'\" sv-ng-svg-icon></svg>\n <div *ngIf=\"val.name && !model.isReadOnly\" [class]=\"model.cssClasses.removeFileButton\" (click)=\"model.doRemoveFile(val)\">\n <span\n [class]=\"model.cssClasses.removeFile\"\n >{{ model.removeFileCaption }}</span\n >\n <svg *ngIf=\"model.cssClasses.removeFileSvgIconId\" [title]=\"model.removeFileCaption\" [partCss]=\"model.cssClasses.removeFileSvg\" [iconName]=\"model.cssClasses.removeFileSvgIconId\" [size]=\"'auto'\" sv-ng-svg-icon ></svg>\n </div>\n </div>\n <div *ngIf=\"val.name && model.cssClasses.fileSignBottom\" [class]=\"model.cssClasses.fileSignBottom\">\n <a\n (click)=\"model.doDownloadFile($event, val)\"\n [attr.href]=\"val.content | safeUrl\"\n [attr.title]=\"val.name\"\n [attr.download]=\"val.name\"\n [attr.width]=\"model.imageWidth\"\n >{{ val.name }}</a\n >\n </div>\n </span>\n </div>\n <button\n type=\"button\"\n *ngIf=\"model.showRemoveButtonBottom\"\n [class]=\"model.showRemoveButtonBottom\"\n (click)=\"model.doClean($event)\"\n >\n <span>{{ model.cleanButtonCaption }}</span>\n <svg *ngIf=\"model.cssClasses.removeButtonIconId\" [iconName]=\"model.cssClasses.removeButtonIconId\" [size]=\"'auto'\" sv-ng-svg-icon></svg>\n </button>\n <sv-action-bar *ngIf=\"model.mobileFileNavigatorVisible\" [model]=\"model.mobileFileNavigator\"></sv-action-bar>\n</div>","import { Component } from \"@angular/core\";\nimport { AngularComponentFactory } from \"../component-factory\";\nimport { QuestionAngular } from \"../question\";\nimport { QuestionCommentModel } from \"survey-core\";\n\n@Component({\n templateUrl: \"./comment.component.html\",\n selector: \"sv-ng-question-comment\"\n})\n\nexport class CommentQuestionComponent extends QuestionAngular<QuestionCommentModel> {\n onChange(event: any) {\n this.model.value = event.target.value;\n }\n}\nAngularComponentFactory.Instance.registerComponent(\"comment-question\", CommentQuestionComponent);","<textarea\n*ngIf=\"!model.isReadOnlyRenderDiv()\"\n[readonly]=\"model.isInputReadOnly\"\n[attr.disabled]=\"model.renderedInputDisabled\"\n[id]=\"model.inputId\"\n[attr.maxlength]=\"model.getMaxLength()\"\n[attr.cols]=\"model.cols\"\n[attr.rows]=\"model.rows\"\n[attr.placeholder]=\"model.renderedPlaceholder\"\n[class]=\"model.className\"\n[value]=\"model.value || null\"\n(input)=\"model.onInput($event)\"\n(keydown)=\"model.onKeyDown($event)\"\n(change)=\"onChange($event)\"\n[attr.aria-required]=\"model.ariaRequired\"\n[attr.aria-label]=\"model.ariaLabel\"\n[attr.aria-invalid]=\"model.ariaInvalid\"\n[attr.aria-describedby]=\"model.ariaDescribedBy\"\n[style.resize]=\"model.resizeStyle\"\n#contentElement></textarea>\n<div *ngIf=\"model.isReadOnlyRenderDiv()\" #contentElement>{{ model.value }}</div>","import { Component } from \"@angular/core\";\nimport { QuestionAngular } from \"../question\";\nimport { QuestionSignaturePadModel } from \"survey-core\";\nimport { AngularComponentFactory } from \"../angular-ui\";\n\n@Component({\n selector: \"sv-ng-signature-component\",\n templateUrl: \"./signature.component.html\"\n})\nexport class SignaturePadQuestionComponent extends QuestionAngular<QuestionSignaturePadModel> {}\n\nAngularComponentFactory.Instance.registerComponent(\"signaturepad-question\", SignaturePadQuestionComponent);","<div\n[class]=\"model.cssClasses.root\"\n[style.height]=\"model.signatureHeight + 'px'\" [style.width]=\"model.signatureWidth + 'px'\" #contentElement>\n<div [class]=\"model.cssClasses.placeholder\" [visible]=\"model.needShowPlaceholder()\">\n {{ model.placeHolderText }}\n</div>\n<div>\n <canvas tabindex=\"0\"></canvas>\n</div>\n<div [class]=\"model.cssClasses.controls\" [visible]=\"model.canShowClearButton\">\n <button\n type=\"button\"\n [class]=\"model.cssClasses.clearButton\"\n [title]=\"model.clearButtonCaption\"\n (click)=\"model.clearValue()\"\n >\n <span *ngIf=\"!model.cssClasses.clearButtonIconId\">✖</span>\n <svg\n *ngIf=\"model.cssClasses.clearButtonIconId\"\n [iconName]=\"model.cssClasses.clearButtonIconId\"\n [size]=\"'auto'\" sv-ng-svg-icon></svg>\n </button>\n</div>\n</div>","import { MultipleTextItemModel, QuestionMultipleTextModel, QuestionTextModel } from \"survey-core\";\nimport { Component, Input } from \"@angular/core\";\nimport { BaseAngular } from \"../base-angular\";\n\n@Component({\n selector: \"'[sv-ng-multipletext-item]'\",\n templateUrl: \"./mutlipletextitem.component.html\"\n})\nexport class MultipleTextItemComponent extends BaseAngular<QuestionTextModel> {\n @Input() question!: QuestionMultipleTextModel;\n @Input() model!: MultipleTextItemModel;\n protected getModel(): QuestionTextModel {\n return this.model.editor;\n }\n}\n","<label [class]=\"question.getItemLabelCss(model)\">\n <span [class]=\"question.getItemTitleCss()\">\n <span *ngIf=\" model.editor.isRequireTextBeforeTitle || model.editor.isRequireTextOnStart\"\n [class]=\"question.cssClasses.requiredText\">{{ model.editor.requiredText }}</span>\n <sv-ng-string [model]=\"model.locTitle\"></sv-ng-string>\n <span\n *ngIf=\"model.editor.isRequireTextAfterTitle\"\n [class]=\"question.cssClasses.requiredText\"\n >{{ model.editor.requiredText }}</span\n >\n </span>\n <div [class]=\"question.getItemCss()\">\n <div *ngIf=\"model.editor.showErrorOnTop && model.editor.hasVisibleErrors\" [element]=\"model.editor\" sv-ng-errors></div>\n <sv-ng-text-question [model]=\"model.editor\"></sv-ng-text-question>\n <div *ngIf=\"model.editor.showErrorOnBottom && model.editor.hasVisibleErrors\" [element]=\"model.editor\" sv-ng-errors></div>\n </div>\n <div *ngIf=\"model.editor.isErrorsModeTooltip && model.editor.hasVisibleErrors\" [element]=\"model.editor\" [location]=\"'tooltip'\" sv-ng-errors></div>\n</label>","import { QuestionAngular } from \"../question\";\nimport { MultipleTextItemModel, QuestionMultipleTextModel } from \"survey-core\";\nimport { Component } from \"@angular/core\";\nimport { AngularComponentFactory } from \"../component-factory\";\n\n@Component({\n selector: \"sv-ng-multipletext-question\",\n templateUrl: \"./multipletext.component.html\"\n})\nexport class MultipleTextComponent extends QuestionAngular<QuestionMultipleTextModel> {\n trackRowBy = (index: number): string => {\n return this.model.inputId + \"rowkey\" + index;\n }\n trackItemBy (_: number, item: MultipleTextItemModel): string {\n return \"item\" + item.editor.id;\n }\n}\n\nAngularComponentFactory.Instance.registerComponent(\"multipletext-question\", MultipleTextComponent);","<table [class]=\"model.cssClasses.root\" #contentElement>\n <tbody>\n <tr\n *ngFor=\"let row of model.getRows(); index as rowIndex; trackBy: trackRowBy\"\n [class]=\"model.cssClasses.row\"\n >\n <ng-container *ngFor=\"let item of row; trackBy: trackItemBy\" >\n <td [class]=\"model.cssClasses.cell\" [question]=\"model\" [model]=\"item\" sv-ng-multipletext-item></td>\n </ng-container>\n </tr>\n </tbody>\n</table>\n","import { Component, Input } from \"@angular/core\";\nimport { BaseAngular } from \"../base-angular\";\nimport { ItemValue, QuestionRankingModel } from \"survey-core\";\n\n@Component({\n selector: \"sv-ng-ranking-item\",\n templateUrl: \"./ranking-item.component.html\"\n})\nexport class RankingItemComponent extends BaseAngular<ItemValue> {\n @Input() question!: QuestionRankingModel;\n @Input() model!: ItemValue;\n @Input() index!: number;\n protected getModel(): ItemValue {\n return this.model;\n }\n}\n","\n\n\n<div tabindex=\"0\" [attr.data-sv-drop-target-ranking-item]=\"index\" \n [class]=\"question.getItemClass(model)\"\n (keydown)=\"question.handleKeydown($event, model)\"\n (pointerdown)=\"question.handlePointerDown($event, model, $any($event.currentTarget))\">\n <div tabindex=\"-1\" style=\"outline: none;\">\n <div [class]=\"question.cssClasses.itemGhostNode\"></div>\n <div [class]=\"question.cssClasses.itemContent\">\n <div [class]=\"question.cssClasses.itemIconContainer\">\n <svg\n width=\"10\"\n height=\"16\"\n viewBox=\"0 0 10 16\"\n [class]=\"question.getIconHoverCss()\"\n xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M6 2C6 0.9 6.9 0 8 0C9.1 0 10 0.9 10 2C10 3.1 9.1 4 8 4C6.9 4 6 3.1 6 2ZM2 0C0.9 0 0 0.9 0 2C0 3.1 0.9 4 2 4C3.1 4 4 3.1 4 2C4 0.9 3.1 0 2 0ZM8 6C6.9 6 6 6.9 6 8C6 9.1 6.9 10 8 10C9.1 10 10 9.1 10 8C10 6.9 9.1 6 8 6ZM2 6C0.9 6 0 6.9 0 8C0 9.1 0.9 10 2 10C3.1 10 4 9.1 4 8C4 6.9 3.1 6 2 6ZM8 12C6.9 12 6 12.9 6 14C6 15.1 6.9 16 8 16C9.1 16 10 15.1 10 14C10 12.9 9.1 12 8 12ZM2 12C0.9 12 0 12.9 0 14C0 15.1 0.9 16 2 16C3.1 16 4 15.1 4 14C4 12.9 3.1 12 2 12Z\" />\n </svg>\n <svg\n width=\"10\"\n height=\"24\"\n viewBox=\"0 0 10 24\"\n [class]=\"question.getIconFocusCss()\"\n xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M10 5L5 0L0 5H4V9H6V5H10Z\" />\n <path d=\"M6 19V15H4V19H0L5 24L10 19H6Z\" />\n </svg>\n </div>\n\n <div [class]=\"question.cssClasses.itemIndex\">{{ question.getNumberByIndex(index) }}</div>\n <div [class]=\"question.cssClasses.controlLabel\">\n <sv-ng-string [model]=\"model.locText\"></sv-ng-string>\n </div>\n </div>\n </div>\n</div>","import { Component } from \"@angular/core\";\nimport { QuestionAngular } from \"../question\";\nimport { ItemValue, QuestionRankingModel } from \"survey-core\";\nimport { AngularComponentFactory } from \"../component-factory\";\n\n@Component({\n selector: \"sv-ng-ranking-question\",\n templateUrl: \"./ranking.component.html\",\n})\nexport class RankingQuestionComponent extends QuestionAngular<QuestionRankingModel> {\n trackItemBy = (index: number, item: ItemValue): string => {\n return item.value + \"-\" + index + \"-item\";\n }\n}\n\nAngularComponentFactory.Instance.registerComponent(\"ranking-question\", RankingQuestionComponent);","<div [class]=\"model.rootClass\" #contentElement>\n <sv-ng-ranking-item\n *ngFor=\"let item of model.rankingChoices; index as index; trackBy: trackItemBy\"\n [index]=\"index\"\n [question]=\"model\"\n [model]=\"item\"\n ></sv-ng-ranking-item>\n</div>","import { Component, Input } from \"@angular/core\";\nimport { LocalizableString } from \"survey-core\";\nimport { AngularComponentFactory } from \"./component-factory\";\n\n@Component({\n selector: \"sv-ng-string-editor\",\n templateUrl: \"./string-editor.component.html\"\n})\nexport class StringEditorComponent {\n @Input() model!: LocalizableString;\n\n onInput = (event: any) => {\n this.model.text = event.target.innerText;\n };\n onClick = (event: any) => {\n event.preventDefault();\n event.stopPropagation();\n };\n}\nAngularComponentFactory.Instance.registerComponent(LocalizableString.editableRenderer, StringEditorComponent);","<span style=\"position: static\">\n <span\n class=\"sv-string-editor\"\n contenteditable=\"true\"\n style=\"position: static\"\n *ngIf=\"model.hasHtml\"\n [innerHtml]=\"model.renderedHtml\"\n (blur)=\"onInput($event)\"\n (click)=\"onClick($event)\"\n ></span>\n <span\n class=\"sv-string-editor\"\n contenteditable=\"true\"\n style=\"position: static\"\n *ngIf=\"!model.hasHtml\"\n (blur)=\"onInput($event)\"\n (click)=\"onClick($event)\"\n >{{ model.renderedHtml }}</span\n >\n</span>","import { Action, QuestionPanelDynamicModel } from \"survey-core\";\nimport { AngularComponentFactory } from \"../../component-factory\";\nimport { Component, Input } from \"@angular/core\";\n\n@Component({\n selector: \"\",\n template: \"\"\n})\nexport class PaneldynamicAction {\n @Input() data: any;\n @Input() model!: Action;\n public get question(): QuestionPanelDynamicModel {\n return (this.model && this.model.data.question) || this.data.question;\n }\n}\n\n@Component({\n selector: \"sv-ng-paneldynamic-add-btn\",\n templateUrl: \"./paneldynamic-add-btn.component.html\"\n})\nexport class PanelDynamicAddBtn extends PaneldynamicAction {\n addPanelClick() {\n this.question.addPanelUI();\n }\n}\nAngularComponentFactory.Instance.registerComponent(\"sv-paneldynamic-add-btn\", PanelDynamicAddBtn);","<button type=\"button\" *ngIf=\"question.canAddPanel\" [class]=\"question.getAddButtonCss()\" (click)=\"addPanelClick()\">\n<span [class]=\"question.cssClasses.buttonAddText\">{{question.panelAddText}}</span>\n</button>","import { Component } from \"@angular/core\";\nimport { AngularComponentFactory } from \"../../component-factory\";\nimport { PaneldynamicAction } from \"./paneldynamic-add-btn.component\";\n\n@Component({\n selector: \"sv-ng-paneldynamic-next-btn\",\n templateUrl: \"./paneldynamic-next-btn.component.html\"\n})\nexport class PanelDynamicNextBtn extends PaneldynamicAction {\n nextPanelClick() {\n this.question.goToNextPanel();\n }\n}\n\nAngularComponentFactory.Instance.registerComponent(\"sv-paneldynamic-next-btn\", PanelDynamicNextBtn);\n","<div [attr.title]=\"question.panelNextText\" (click)=\"nextPanelClick()\" [class]=\"question.getNextButtonCss()\">\n <svg [iconName]=\"question.cssClasses.progressBtnIcon\" [size]=\"'auto'\" sv-ng-svg-icon></svg>\n</div>","import { Component } from \"@angular/core\";\nimport { AngularComponentFactory } from \"../../component-factory\";\nimport { PaneldynamicAction } from \"./paneldynamic-add-btn.component\";\n\n@Component({\n selector: \"sv-ng-paneldynamic-prev-btn\",\n templateUrl: \"./paneldynamic-prev-btn.component.html\"\n})\nexport class PanelDynamicPrevBtn extends PaneldynamicAction {\n prevPanelClick() {\n this.question.goToPrevPanel();\n }\n}\nAngularComponentFactory.Instance.registerComponent(\"sv-paneldynamic-prev-btn\", PanelDynamicPrevBtn);","<div [attr.title]=\"question.panelPrevText\" (click)=\"prevPanelClick()\" [class]=\"question.getPrevButtonCss()\">\n <svg [iconName]=\"question.cssClasses.progressBtnIcon\" [size]=\"'auto'\" sv-ng-svg-icon></svg>\n</div>\n","import { Component } from \"@angular/core\";\nimport { AngularComponentFactory } from \"../../component-factory\";\nimport { PaneldynamicAction } from \"./paneldynamic-add-btn.component\";\n\n@Component({\n selector: \"sv-ng-paneldynamic-progress-text\",\n templateUrl: \"./paneldynamic-progress-text.component.html\"\n})\nexport class PanelDynamicProgressText extends PaneldynamicAction {\n}\n\nAngularComponentFactory.Instance.registerComponent(\"sv-paneldynamic-progress-text\", PanelDynamicProgressText);","<div [class]=\"question.cssClasses.progressText\">{{ question.progressText }}</div>\n","import { Component, OnInit } from \"@angular/core\";\nimport { QuestionAngular } from \"../question\";\nimport { PanelModel, QuestionPanelDynamicModel } from \"survey-core\";\nimport { AngularComponentFactory } from \"../component-factory\";\n\n@Component({\n selector: \"sv-ng-paneldynamic-question\",\n templateUrl: \"./paneldynamic.component.html\"\n})\nexport class PanelDynamicQuestionComponent extends QuestionAngular<QuestionPanelDynamicModel | any> implements OnInit {\n get renderedPanels(): PanelModel[] {\n if (this.model.isRenderModeList) return this.model.panels;\n const panels = [];\n if (this.model.currentPanel) {\n panels.push(this.model.currentPanel);\n }\n return panels;\n }\n protected override onModelChanged(): void {\n super.onModelChanged();\n this.model.panelCountChangedCallback = () => {\n this.detectChanges();\n };\n this.model.currentIndexChangedCallback = () => {\n this.detectChanges();\n };\n this.model.renderModeChangedCallback = () => {\n this.detectChanges();\n };\n }\n get progressCssClass() {\n return this.model.isProgressTopShowing\n ? this.model.cssClasses.progressTop\n : this.model.cssClasses.progressBottom;\n }\n override ngOnDestroy(): void {\n this.model.panelCountChangedCallback = () => {};\n this.model.currentIndexChangedCallback = () => {};\n this.model.renderModeChangedCallback = () => {};\n super.ngOnDestroy();\n }\n\n}\n\nAngularComponentFactory.Instance.registerComponent(\"paneldynamic-question\", PanelDynamicQuestionComponent);","<div [class]=\"model.cssClasses.root\" #contentElement>\n <div *ngIf=\"model.getShowNoEntriesPlaceholder()\" [class]=\"model.cssClasses.noEntriesPlaceholder\">\n <span [model]=\"model.locNoEntriesText\" sv-ng-string></span>\n <sv-ng-paneldynamic-add-btn [data]=\"{ question: model }\"></sv-ng-paneldynamic-add-btn>\n </div>\n <div [class]=\"model.cssClasses.progress\" *ngIf=\"!model.showLegacyNavigation && model.isProgressTopShowing && model.isRangeShowing\">\n <div\n [class]=\"model.cssClasses.progressBar\"\n [style]=\"{ width: model.progress }\"\n role=\"progressbar\"\n ></div>\n </div>\n <ng-container [ngTemplateOutlet]=\"progress\" *ngIf=\"model.showLegacyNavigation && model.isProgressTopShowing\"></ng-container>\n <!-- add track by [key]=\"panel.id\" -->\n <ng-container *ngFor=\"let panel of renderedPanels; index as index\"> \n <div [class]=\"model.getPanelWrapperCss()\">\n <sv-ng-panel [model]=\"panel\"></sv-ng-panel>\n <ng-container *ngTemplateOutlet=\"removeBtn; context: { panel }\"></ng-container>\n </div>\n <!-- add track by [key]=\"'separator' + panel.id\" -->\n <hr [class]=\"model.cssClasses.separator\" *ngIf=\"model.isRenderModeList && index < model.panelCount - 1\"/>\n </ng-container>\n <ng-container [ngTemplateOutlet]=\"progress\" *ngIf=\"model.showLegacyNavigation && model.isProgressBottomShowing\"></ng-container>\n <sv-ng-paneldynamic-add-btn *ngIf=\"model.showLegacyNavigation && model.isRenderModeList\" [data]=\"{ question: model }\"></sv-ng-paneldynamic-add-btn>\n <ng-container [ngTemplateOutlet]=\"progressV2\" *ngIf=\"model.panelCount !== 0 && !model.showLegacyNavigation\"></ng-container>\n</div>\n\n<ng-template #progressV2>\n <div [class]=\"model.cssClasses.footer\" *ngIf=\"!!model.cssClasses.footer\">\n <hr [class]=\"model.cssClasses.separator\"/>\n <div [class]=\"model.cssClasses.progress\" *ngIf=\"model.isRangeShowing && model.isProgressBottomShowing\">\n <div\n [class]=\"model.cssClasses.progressBar\"\n [style]=\"{ width: model.progress }\"\n role=\"progressbar\"\n ></div>\n </div>\n <div [class]=\"model.cssClasses.footerButtonsContainer\">\n <sv-ng-action-bar [model]=\"model.footerToolbar\"></sv-ng-action-bar>\n </div>\n </div>\n</ng-template>\n<ng-template #progress>\n <div [class]=\"this.progressCssClass\">\n <div style=\"clear: both\" [class]=\"this.progressCssClass\">\n <div [class]=\"model.cssClasses.progressContainer\">\n <sv-ng-paneldynamic-prev-btn [data]=\"{ question: model }\"></sv-ng-paneldynamic-prev-btn>\n <div [class]=\"model.cssClasses.progress\" *ngIf=\"model.isRangeShowing\">\n <div\n [class]=\"model.cssClasses.progressBar\"\n [style]=\"{ width: model.progress }\"\n role=\"progressbar\"\n ></div>\n </div>\n <sv-ng-paneldynamic-next-btn [data]=\"{ question: model }\"></sv-ng-paneldynamic-next-btn>\n </div>\n <sv-ng-paneldynamic-add-btn [data]=\"{ question: model }\"></sv-ng-paneldynamic-add-btn>\n <sv-ng-paneldynamic-progress-text [data]=\"{ question: model }\"></sv-ng-paneldynamic-progress-text>\n </div>\n </div>\n</ng-template>\n\n<ng-template #removeBtn let-panel=\"panel\">\n <button type=\"button\"\n [visible]=\"model.canRemovePanel && panel.state != 'collapsed'\" (click)=\"model.removePanelUI(panel)\" [class]=\"model.getPanelRemoveButtonCss()\">\n <span [class]=\"model.cssClasses.buttonRemoveText\">{{model.panelRemoveText}}</span>\n <span [class]=\"model.cssClasses.iconRemove\"></span>\n </button>\n</ng-template>","import { ChangeDetectorRef, Component, Input, TemplateRef, ViewContainerRef } from \"@angular/core\";\nimport { ButtonGroupItemModel, PanelModel, Question, SurveyModel } from \"survey-core\";\nimport { BaseAngular } from \"./base-angular\";\nimport { AngularComponentFactory } from \"./component-factory\";\nimport { EmbeddedViewContentComponent } from \"./embedded-view-content.component\";\n\n@Component({\n selector: \"sv-template-renderer\",\n templateUrl: \"./template-renderer.component.html\",\n styleUrls: [\"./hide-host.scss\"]\n})\nexport class TemplateRendererComponent extends EmbeddedViewContentComponent {\n @Input() componentName!: string;\n @Input() componentData!: any;\n @Input() contentTempl?: TemplateRef<unknown>;\n}\nAngularComponentFactory.Instance.registerComponent(SurveyModel.TemplateRendererComponentName, TemplateRendererComponent);","<ng-template #template>\n <ng-container *ngIf=\"!!componentName\">\n <ng-template [component]=\"{ name: componentName, data: componentData }\"></ng-template>\n </ng-container>\n <ng-container *ngIf=\"!componentName && contentTempl\">\n <ng-container *ngTemplateOutlet=\"contentTempl\"></ng-container>\n </ng-container>\n</ng-template>","import { AfterViewInit, Component, ElementRef, Input, OnChanges, OnDestroy, SimpleChanges, ViewChild } from \"@angular/core\";\nimport { AngularComponentFactory } from \"../component-factory\";\nimport { Question } from \"survey-core\";\n\n@Component(\n {\n templateUrl: \"./customwidget.component.html\",\n selector: \"sv-ng-custom-widget\"\n }\n)\nexport class CustomWidgetComponent implements AfterViewInit, OnDestroy, OnChanges {\n @Input() css: any;\n @Input() model!: Question;\n\n @ViewChild(\"content\") container!: ElementRef<HTMLDivElement>;\n\n get hasDefaultRender(): boolean {\n return this.model.customWidget.isDefaultRender || this.hasAngularComponent;\n }\n get hasHtml(): boolean {\n return this.model.customWidget.htmlTemplate ? true : false;\n }\n get customHtml(): string {\n return this.model.customWidget.htmlTemplate;\n }\n get hasAngularComponent(): boolean {\n return AngularComponentFactory.Instance.isComponentRegistered(this.model.customWidget.name);\n }\n get componentName(): string {\n if (this.hasAngularComponent) return this.model.customWidget.name;\n return this.model.getTemplate() + \"-question\";\n }\n ngAfterViewInit(): void {\n this.model.customWidget.afterRender(this.model, this.container.nativeElement);\n }\n ngOnChanges(simpleChanges: SimpleChanges) {\n if(simpleChanges[\"model\"].previousValue !== undefined && simpleChanges[\"model\"].currentValue !== undefined) {\n this.model.customWidget.afterRender(this.model, this.container.nativeElement);\n }\n }\n ngOnDestroy(): void {\n this.model.customWidget.willUnmount(this.model, this.container.nativeElement);\n }\n\n}\n\nAngularComponentFactory.Instance.registerComponent(\"survey-customwidget\", CustomWidgetComponent);\n","<div #content>\n <div *ngIf=\"hasHtml\" [innerHTML]=\"customHtml | safeHtml\"></div>\n <ng-container *ngIf=\"hasDefaultRender\">\n <ng-template [component]=\"{ name: componentName, data: { model: model, css: css } }\"></ng-template> \n </ng-container>\n</div>","import { Component, Input } from \"@angular/core\";\nimport { AngularComponentFactory } from \"../../../component-factory\";\nimport { IAction } from \"survey-core\";\nimport { EmbeddedViewContentComponent } from \"../../../embedded-view-content.component\";\n\n@Component({\n templateUrl: \"drag-drop-icon.component.html\",\n selector: \"sv-ng-matrix-drag-drop-icon\",\n styleUrls: [\"../../../hide-host.scss\"]\n})\nexport class MatrixDynamicDragDropIconComponent extends EmbeddedViewContentComponent {\n @Input() public model!: IAction;\n\n get question() {\n return this.model.data.question;\n }\n}\n\nAngularComponentFactory.Instance.registerComponent(\n \"sv-matrix-drag-drop-icon\",\n MatrixDynamicDragDropIconComponent\n);\n","<ng-template #template>\n <svg *ngIf=\"question.iconDragElement\" [class]=\"question.cssClasses.dragElementDecorator\">\n <use [attr.xlink:href]=\"question.iconDragElement\"></use>\n </svg>\n <span *ngIf=\"!question.iconDragElement\" data-bind=\"css: question.cssClasses.iconDrag\"></span>\n</ng-template>","import { Component, ElementRef, Input, ViewChild } from \"@angular/core\";\nimport { BaseAngular } from \"../base-angular\";\nimport {\n Question,\n QuestionMatrixDropdownModelBase,\n QuestionMatrixDropdownRenderedCell,\n SurveyModel\n} from \"survey-core\";\n\n@Component({\n selector: \"sv-ng-matrix-cell\",\n templateUrl: \"./matrixcell.component.html\",\n styles: [\":host { display: none; }\"]\n})\nexport class MatrixCellComponent extends BaseAngular<Question> {\n @Input() question!: QuestionMatrixDropdownModelBase;\n @Input() cell!: QuestionMatrixDropdownRenderedCell;\n\n @ViewChild(\"cellContainer\") cellContainer!: ElementRef<HTMLElement>;\n\n isVisible: boolean = false;\n\n getModel() {\n return this.cell.question;\n }\n public get row() {\n return this.cell.row;\n }\n public get panelComponentName(): string {\n const panel = this.cell.panel;\n const survey = <SurveyModel>panel.survey;\n if(!!survey) {\n const name = survey.getElementWrapperComponentName(panel);\n if(!!name) {\n return name;\n }\n }\n return \"panel\";\n }\n public get panelComponentData(): any {\n const panel = this.cell.panel;\n const survey = <SurveyModel>panel.survey;\n let data: any;\n if(!!survey) {\n data = survey.getElementWrapperComponentData(panel);\n }\n return {\n componentName: \"panel\",\n componentData: {\n model: panel,\n data: data\n }\n };\n }\n\n getComponentName(element: Question) {\n if (element.customWidget) {\n return \"survey-customwidget\";\n }\n return element.getType()+\"-question\";\n }\n getHeaders(): string {\n return this.cell.headers;\n }\n getCellStyle() {\n if (!!this.cell.width || !!this.cell.minWidth)\n return { width: this.cell.width, minWidth: this.cell.minWidth };\n return null;\n }\n ngAfterViewInit() {\n if (!this.cell.hasQuestion || !this.question || !this.question.survey) return;\n var options = {\n cell: this.cell.cell,\n cellQuestion: this.cell.question,\n htmlElement: this.cellContainer.nativeElement,\n row: this.cell.row,\n column: this.cell.cell.column,\n };\n this.question.survey.matrixAfterCellRender(this.question, options);\n }\n}","<ng-template #template>\n <td [class]=\"cell.className\" [attr.data-responsive-title]=\"getHeaders()\" [title]=\"cell.getTitle()\" [style]=\"getCellStyle()\" [attr.colspan]=\"cell.colSpans\" #cellContainer>\n <sv-ng-matrix-drag-drop-icon *ngIf=\"cell.isDragHandlerCell\" [model]=\"$any({ data: { row: row, question: question } })\"></sv-ng-matrix-drag-drop-icon>\n <sv-action-bar *ngIf=\"cell.isActionsCell\" [model]=\"cell.item.getData()\" [handleClick]=\"false\"></sv-action-bar>\n <ng-container *ngIf=\"cell.hasPanel\">\n <ng-template [component]=\"{ name: panelComponentName, data: panelComponentData }\"></ng-template>\n </ng-container>\n <div *ngIf=\"cell.hasQuestion\" [class]=\"question.cssClasses.cellQuestionWrapper\" [visible]=\"cell.question.isVisible\">\n <div *ngIf=\"cell.showErrorOnTop && cell.question.hasVisibleErrors\" [element]=\"cell.question\" [location]=\"'top'\" sv-ng-errors></div>\n <ng-container *ngIf=\"!cell.isChoice && cell.question.isDefaultRendering()\">\n <ng-template [component]=\"{ name: question.getCellWrapperComponentName(cell.cell), data: { componentData: question.getCellWrapperComponentData(cell.cell)} }\">\n <ng-template [component]=\"{ name: getComponentName(cell.question), data: { model: cell.question } }\"></ng-template>\n </ng-template>\n </ng-container>\n <ng-template *ngIf=\"!cell.isChoice && !cell.question.isDefaultRendering()\" [component]=\"{ name: cell.question.getComponentName(), data: { model: cell.question } }\">\n </ng-template>\n <sv-ng-selebase-item\n *ngIf=\"cell.isItemChoice\"\n [showLabel]=\"false\"\n [inputType]=\"cell.isCheckbox ? 'checkbox': 'radio'\"\n [question]=\"cell.question\"\n [model]=\"cell.item\"\n ></sv-ng-selebase-item>\n <div *ngIf=\"cell.isOtherChoice\" class=\"form-group\" [question]=\"cell.question\" sv-ng-comment></div>\n <div *ngIf=\"cell.showErrorOnBottom && cell.question.hasVisibleErrors\" [element]=\"cell.question\" [location]=\"'top'\" sv-ng-errors></div>\n <div *ngIf=\"cell.question.isErrorsModeTooltip && cell.question.hasVisibleErrors\" [element]=\"cell.question\" [location]=\"'tooltip'\" sv-ng-errors></div>\n </div>\n <ng-container *ngIf=\"cell.hasTitle\">\n <ng-template [component]=\"{ name: question.getCellWrapperComponentName($any(cell)), data: { componentData: question.getCellWrapperComponentData($any(cell))} }\">\n <sv-ng-string [model]=\"cell.locTitle\"></sv-ng-string>\n <span *ngIf=\"!!cell.requiredText\" [class]=\"question.cssClasses.cellRequiredText\">{{ cell.requiredText }}</span> \n </ng-template>\n </ng-container>\n</td>\n</ng-template>","import { Component, Input } from \"@angular/core\";\nimport { BaseAngular } from \"../base-angular\";\nimport {\n MatrixDropdownColumn,\n QuestionMatrixDropdownModelBase,\n} from \"survey-core\";\n\n@Component({\n selector: \"sv-ng-matrixheaderrequired\",\n styles: [\":host { display: none; }\"],\n template: \"<ng-template #template><span *ngIf='column.isRenderedRequired' [class]='question.cssClasses.cellRequiredText'>{{ column.requiredText }}</span></ng-template>\"\n})\nexport class MatrixRequiredHeader extends BaseAngular<MatrixDropdownColumn> {\n @Input() column!: MatrixDropdownColumn;\n @Input() question!: QuestionMatrixDropdownModelBase;\n getModel() {\n return this.column;\n }\n}","import { Component, ElementRef, Input, ViewChild } from \"@angular/core\";\nimport { BaseAngular } from \"../base-angular\";\nimport {\n MatrixDropdownRowModelBase,\n Question,\n QuestionMatrixDropdownModelBase,\n QuestionMatrixDropdownRenderedCell,\n QuestionMatrixDropdownRenderedRow\n} from \"survey-core\";\n\n@Component({\n selector: \"sv-ng-matrix-row\",\n templateUrl: \"./matrix-row.component.html\",\n styles: [\":host { display: none; }\"]\n})\nexport class MatrixRowComponent extends BaseAngular<QuestionMatrixDropdownRenderedRow> {\n @Input() model!: QuestionMatrixDropdownRenderedRow;\n @Input() question!: QuestionMatrixDropdownModelBase;\n protected getModel(): QuestionMatrixDropdownRenderedRow {\n return this.model;\n }\n public get row(): MatrixDropdownRowModelBase {\n return this.model.row;\n }\n public trackCellBy(_: number, cell: any): string {\n return cell.id;\n }\n}","<ng-template #template>\n <tr [class]=\"model.className\" (pointerdown)=\"question.onPointerDown($event, row)\" [attr.data-sv-drop-target-matrix-row]=\"row && row.id\">\n <sv-ng-matrix-cell\n [cell]=\"cell\"\n [question]=\"question\"\n *ngFor=\"let cell of model.cells; trackBy: trackCellBy\"\n ></sv-ng-matrix-cell>\n </tr>\n</ng-template>","import { Component, Input } from \"@angular/core\";\nimport { BaseAngular } from \"../base-angular\";\nimport { QuestionMatrixDropdownModelBase, QuestionMatrixDropdownRenderedTable } from \"survey-core\";\n\n@Component({\n selector: \"sv-ng-matrix-table\",\n templateUrl: \"./matrixtable.component.html\"\n})\nexport class MatrixTableComponent extends BaseAngular<QuestionMatrixDropdownRenderedTable> {\n @Input() question!: QuestionMatrixDropdownModelBase;\n @Input() table!: QuestionMatrixDropdownRenderedTable;\n protected getModel(): QuestionMatrixDropdownRenderedTable {\n return this.table;\n }\n public trackCellBy(_: number, cell: any): string {\n return cell.id;\n }\n public trackRowBy(index: number, row: any): string {\n return row.id;\n }\n}\n","<table [class]=\"question.getTableCss()\">\n <thead *ngIf=\"table.showHeader\">\n <tr>\n <ng-container\n *ngFor=\"let cell of table.headerRow.cells; trackBy: trackCellBy\"\n >\n <th *ngIf=\"cell.hasTitle\" [class]=\"cell.className\" [style]=\"{ minWidth: cell.minWidth, width: cell.width }\">\n <ng-template [component]=\"{ name: question.getColumnHeaderWrapperComponentName($any(cell)), data: { componentData: question.getColumnHeaderWrapperComponentData($any(cell)) } }\">\n <sv-ng-string [model]=\"cell.locTitle\"></sv-ng-string>\n <sv-ng-matrixheaderrequired *ngIf=\"!!cell.column\" [column]=\"cell.column\" [question]=\"question\">\n </sv-ng-matrixheaderrequired>\n </ng-template>\n </th>\n \n <td *ngIf=\"!cell.hasTitle\" [class]=\"cell.className\" [style]=\"{ minWidth: cell.minWidth, width: cell.width }\"></td>\n </ng-container>\n </tr>\n </thead>\n <tbody>\n <ng-container *ngFor=\"let row of table.rows; trackBy: trackRowBy\">\n <sv-ng-matrix-row [model]=\"row\" [question]=\"question\"></sv-ng-matrix-row>\n </ng-container>\n </tbody>\n <tfoot *ngIf=\"table.showFooter\">\n <tr>\n <sv-ng-matrix-cell [cell]=\"cell\" [question]=\"question\" *ngFor=\"let cell of table.footerRow.cells; trackBy: trackCellBy\">\n </sv-ng-matrix-cell>\n </tr>\n </tfoot>\n</table>","import { Component } from \"@angular/core\";\nimport { QuestionAngular } from \"../question\";\nimport { QuestionMatrixDropdownModel } from \"survey-core\";\nimport { AngularComponentFactory } from \"../component-factory\";\n\n@Component({\n selector: \"sv-ng-matrixdropdown-question\",\n templateUrl: \"./matrixdropdown.component.html\"\n})\nexport class MatrixDropdownComponent extends QuestionAngular<QuestionMatrixDropdownModel> {}\n\nAngularComponentFactory.Instance.registerComponent(\"matrixdropdown-question\", MatrixDropdownComponent);","<ng-template #template>\n <div [style]=\"{ overflowX: model.showHorizontalScroll ? 'scroll' : '' }\" #contentElement>\n <sv-ng-matrix-table *ngIf=\"model.renderedTable?.showTable\" [question]=\"model\" [table]=\"model.renderedTable\"></sv-ng-matrix-table>\n </div>\n</ng-template>","import { Component } from \"@angular/core\";\nimport { QuestionAngular } from \"../question\";\nimport { QuestionMatrixDynamicModel } from \"survey-core\";\nimport { AngularComponentFactory } from \"../component-factory\";\n\n@Component({\n selector: \"sv-ng-matrixdynamic-question\",\n templateUrl: \"./matrixdynamic.component.html\"\n})\nexport class MatrixDynamicComponent extends QuestionAngular<QuestionMatrixDynamicModel> {}\n\nAngularComponentFactory.Instance.registerComponent(\"matrixdynamic-question\", MatrixDynamicComponent);","<ng-template #template>\n <div [style]=\"{ overflowX: model.showHorizontalScroll ? 'scroll' : '' }\" #contentElement>\n <div *ngIf=\"model.renderedTable.showAddRowOnTop\" [class]=\"model.cssClasses.footer\">\n <ng-container *ngTemplateOutlet=\"addRowButton\"></ng-container>\n </div>\n <sv-ng-matrix-table *ngIf=\"model.renderedTable?.showTable\" [question]=\"model\" [table]=\"model.renderedTable\"></sv-ng-matrix-table>\n <div *ngIf=\"!model.renderedTable.showTable\" [class]=\"model.cssClasses.emptyRowsSection\">\n <div [class]=\"model.cssClasses.emptyRowsText\" [model]=\"model.locEmptyRowsText\" sv-ng-string></div>\n <ng-container *ngTemplateOutlet=\"addRowButton\"></ng-container>\n </div>\n <div *ngIf=\"model.renderedTable.showAddRowOnBottom\" [class]=\"model.cssClasses.footer\">\n <ng-container *ngTemplateOutlet=\"addRowButton\"></ng-container>\n </div>\n </div>\n <ng-template #addRowButton>\n <button type=\"button\" [class]=\"model.getAddRowButtonCss(true)\" (click)=\"model.addRowUI()\">\n <sv-ng-string [model]=\"model.locAddRowText\" ></sv-ng-string>\n <span [class]=\"model.cssClasses.iconAdd\"></span>\n </button>\n </ng-template>\n</ng-template>","import { Component, Input } from \"@angular/core\";\nimport { AngularComponentFactory } from \"../../../component-factory\";\nimport { Action, Base } from \"survey-core\";\n\n@Component({\n selector: \"sv-ng-matrix-remove-btn\",\n templateUrl: \"./remove-button.component.html\"\n})\nexport class MatrixDynamicRemoveButtonComponent {\n @Input() model!: Action;\n\n get question() {\n return this.model.data.question;\n }\n\n get row() {\n return this.model.data.row;\n }\n\n getModel(): Base {\n return this.model;\n }\n}\n\nAngularComponentFactory.Instance.registerComponent(\n \"sv-matrix-remove-button\",\n MatrixDynamicRemoveButtonComponent\n);\n","<button type=\"button\" [class]=\"question.getRemoveRowButtonCss()\" [disabled]=\"question.isInputReadOnly\" (click)=\"question.removeRowUI(row)\">\n <sv-ng-string [model]=\"question.locRemoveRowText\" ></sv-ng-string>\n <span [class]=\"question.cssClasses.iconRemove\"></span>\n</button>","import { Component, Input } from \"@angular/core\";\nimport { AngularComponentFactory } from \"../../../component-factory\";\nimport { Action } from \"survey-core\";\nimport { Base } from \"survey-core\";\n\n@Component({\n selector: \"sv-ng-matrix-detail-btn\",\n templateUrl: \"./detail-button.component.html\"\n})\nexport class MatrixDetailButtonComponent {\n @Input() public model!: Action;\n\n get question() {\n return this.model.data.question;\n }\n\n get row() {\n return this.model.data.row;\n }\n\n getModel(): Base {\n return this.model;\n }\n}\n\nAngularComponentFactory.Instance.registerComponent(\"sv-matrix-detail-button\", MatrixDetailButtonComponent);\n","<button type=\"button\" [class]=\"question.getDetailPanelButtonCss(row)\" (click)=\"row.showHideDetailPanelClick()\"\n [attr.aria-expanded]=\"question.getIsDetailPanelShowing(row) ? 'true' : 'false'\"\n [attr.aria-controls]=\"question.getIsDetailPanelShowing(row) ? row.detailPanelId : null\">\n <svg [class]=\"this.question.getDetailPanelIconCss(this.row)\" \n [iconName]=\"this.question.getDetailPanelIconId(this.row)\" [size]=\"'auto'\" sv-ng-svg-icon>\n </svg>\n</button>","import { Component } from \"@angular/core\";\nimport { AngularComponentFactory } from \"../component-factory\";\nimport { QuestionAngular } from \"../question\";\nimport { QuestionExpressionModel } from \"survey-core\";\n\n@Component({\n selector: \"sv-ng-expression\",\n template: \"<div [class]='model.cssClasses.root' #contentElement>{{ model.formatedValue }}</div>\"\n})\nexport class ExpressionComponent extends QuestionAngular<QuestionExpressionModel> {\n}\n\nAngularComponentFactory.Instance.registerComponent(\"expression-question\", ExpressionComponent);","import { Component } from \"@angular/core\";\nimport { QuestionAngular } from \"../question\";\nimport { QuestionImageModel } from \"survey-core\";\nimport { AngularComponentFactory } from \"../component-factory\";\n\n@Component({\n selector: \"sv-ng-image-question\",\n templateUrl: \"./image.component.html\"\n})\nexport class ImageQuestionComponent extends QuestionAngular<QuestionImageModel> {\n override ngAfterViewInit(): void {\n this.model.locImageLink.onChanged = () => {\n this.detectChanges();\n };\n super.ngAfterViewInit();\n }\n override ngOnDestroy(): void {\n this.model.locImageLink.onChanged = () => {};\n super.ngOnDestroy();\n }\n}\n\nAngularComponentFactory.Instance.registerComponent(\"image-question\", ImageQuestionComponent);","<div [class]=\"model.cssClasses.root\" #contentElement>\n <img\n *ngIf=\"model.renderedMode === 'image'\"\n [class]=\"model.getImageCss()\"\n [attr.src]=\"model.locImageLink.renderedHtml\"\n [attr.alt]=\"model.text || model.title\"\n [attr.width]=\"model.renderedWidth\"\n [attr.height]=\"model.renderedHeight\"\n [style]=\"{ objectFit: model.imageFit }\"\n /><video\n controls\n *ngIf=\"model.renderedMode === 'video'\"\n [class]=\"model.getImageCss()\"\n [attr.src]=\"model.locImageLink.renderedHtml\"\n [attr.width]=\"model.renderedWidth\"\n [attr.height]=\"model.renderedHeight\"\n [style]=\"{ objectFit: model.imageFit }\"\n ></video>\n <iframe\n *ngIf=\"model.renderedMode === 'youtube'\"\n [class]=\"model.getImageCss()\"\n [attr.src]=\"model.locImageLink.renderedHtml | safeResourceUrl\"\n [attr.width]=\"model.renderedWidth\"\n [attr.height]=\"model.renderedHeight\"\n [style]=\"{ objectFit: model.imageFit }\"\n ></iframe>\n</div>","import { Question } from \"survey-core\";\nimport { QuestionCustomModel } from \"survey-core\";\nimport { Component } from \"@angular/core\";\nimport { QuestionAngular } from \"../question\";\nimport { AngularComponentFactory } from \"../component-factory\";\n\n@Component({\n selector: \"sv-ng-custom-question\",\n template: \"<ng-template [component]='{ name: getComponentName(contentQuestion), data: { model: contentQuestion } }'></ng-template>\"\n})\nexport class CustomQuestionComponent extends QuestionAngular<QuestionCustomModel> {\n get contentQuestion(): Question {\n return this.model.contentQuestion;\n }\n getComponentName(element: Question): string {\n if (element.customWidget) {\n return \"survey-customwidget\";\n }\n return element.getTemplate() + \"-question\";\n }\n}\n\nAngularComponentFactory.Instance.registerComponent(\"custom-question\", CustomQuestionComponent);\n","\nimport { Component } from \"@angular/core\";\nimport { AngularComponentFactory } from \"../component-factory\";\nimport { QuestionAngular } from \"../question\";\nimport { PanelModel, QuestionCompositeModel } from \"survey-core\";\n\n@Component({\n selector: \"sv-ng-composite-question\",\n template: \"<sv-ng-panel [model]='contentPanel'></sv-ng-panel>\"\n})\nexport class CompositeQuestionComponent extends QuestionAngular<QuestionCompositeModel> {\n get contentPanel(): PanelModel {\n return this.model.contentPanel;\n }\n}\nAngularComponentFactory.Instance.registerComponent(\"composite-question\", CompositeQuestionComponent);\n","import { NgModule } from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\nimport { FormsModule } from \"@angular/forms\";\nimport { SurveyComponent } from \"./survey.component\";\nimport { PopupSurveyComponent } from \"./popup.survey.component\";\nimport { PageComponent } from \"./page.component\";\nimport { QuestionComponent } from \"./question.component\";\nimport { StringViewerComponent } from \"./string-viewer.component\";\nimport { PopupComponent } from \"./components/popup/popup.component\";\nimport { PopupContainerComponent } from \"./components/popup/popup-container.component\";\nimport { QuestionSkeletonComponent } from \"./components/skeleton.component\";\nimport { DropdownComponent } from \"./components/dropdown/dropdown.component\";\nimport { TagboxFilterComponent } from \"./components/tagbox/tagbox-filter.component\";\nimport { TagboxItemComponent } from \"./components/tagbox/tagbox-item.component\";\nimport { TagboxComponent } from \"./components/tagbox/tagbox.component\";\nimport { DropdownOptionItemComponent } from \"./components/renderAs/dropdown-select/dropdown-option-item.component\";\nimport { DropdownSelectComponent } from \"./components/renderAs/dropdown-select/dropdown-select.component\";\nimport { TextQuestionComponent } from \"./questions/text.component\";\nimport { HtmlQuestionComponent } from \"./questions/html.component\";\nimport { RadiogroupComponent } from \"./questions/radiogroup.component\";\nimport { RadiogroupItemComponent } from \"./questions/radiogroup-item.component\";\nimport { CheckboxComponent } from \"./questions/checkbox.component\";\nimport { CheckboxItemComponent } from \"./questions/checkbox-item.component\";\nimport { DropdownQuestionComponent } from \"./questions/dropdown.component\";\nimport { TagboxQuestionComponent } from \"./questions/tagbox.component\";\nimport { RatingQuestionComponent } from \"./questions/rating.component\";\nimport { BooleanQuestionComponent } from \"./questions/boolean.component\";\nimport { ImagePickerItemComponent } from \"./questions/imagepicker-item.component\";\nimport { ImagePickerQuestionComponent } from \"./questions/imagepicker.component\";\n\nimport { ActionBarComponent } from \"./components/action-bar/action-bar.component\";\nimport { ActionComponent } from \"./components/action-bar/action.component\";\nimport { ActionBarItemComponent } from \"./components/action-bar/action-bar-item.component\";\nimport { ActionBarItemDropdownComponent } from \"./components/action-bar/action-bar-item-dropdown.component\";\nimport { SelectBaseItemComponent } from \"./questions/selectbase-item\";\nimport { SelectBaseComponent } from \"./questions/selectbase.component\";\nimport { SurveyCommentComponent } from \"./comment.component\";\nimport { ElementHeaderComponent } from \"./components/element-header/element-header.component\";\nimport { ElementTitleComponent } from \"./components/element-title/element-title.component\";\nimport { SurveyHeaderComponent } from \"./components/survey-header/survey-header.component\";\n\nimport { DynamicHeadComponent } from \"./components/element-title/dynamic-head.component\";\nimport { ListComponent } from \"./components/list/list.component\";\nimport { ListItemComponent } from \"./components/list/list-item.component\";\nimport { RowComponent } from \"./row.component\";\nimport { RatingDropdownComponent } from \"./components/renderAs/rating-dropdown/rating-dropdown.component\";\nimport { BooleanCheckboxComponent } from \"./components/renderAs/boolean-checkbox/boolean-checkbox.component\";\nimport { BooleanRadioComponent } from \"./components/renderAs/boolean-radio/boolean-radio.component\";\nimport { BooleanRadioItemComponent } from \"./components/renderAs/boolean-radio/boolean-radio-item.component\";\nimport { ProgressDefaultComponent } from \"./components/progress/default/progress.component\";\nimport { ProgressButtonsComponent } from \"./components/progress/buttons/progress.component\";\nimport { PanelComponent } from \"./panel.component\";\nimport { PopupService } from \"./components/popup/popup.service\";\nimport { SurveyNavigationButton } from \"./components/survey-actions/survey-nav-btn.component\";\nimport { MatrixQuestionComponent } from \"./questions/matrix.component\";\nimport { SvgIconComponent } from \"./components/svg-icon/svg-icon.component\";\nimport { FileQuestionComponent, } from \"./questions/file.component\";\nimport { VisibleDirective } from \"./utils/ng-show.directive\";\nimport { Key2ClickDirective } from \"./utils/ng-key2click.directive\";\nimport { SafeUrlPipe, SafeResourceUrlPipe } from \"./utils/safe-url.pipe\";\nimport { SafeHtmlPipe } from \"./utils/safe-html.pipe\";\nimport { CommentQuestionComponent } from \"./questions/comment.component\";\nimport { SignaturePadQuestionComponent } from \"./questions/signature.component\";\nimport { MultipleTextComponent } from \"./questions/multipletext.component\";\nimport { ErrorsComponent } from \"./errors.component\";\nimport { MultipleTextItemComponent } from \"./questions/multipletextitem.component\";\nimport { DynamicComponentDirective } from \"./utils/dynamic.directive\";\nimport { RankingQuestionComponent } from \"./questions/ranking.component\";\nimport { RankingItemComponent } from \"./questions/ranking-item.component\";\nimport { SurveyStringComponent } from \"./survey-string.component\";\nimport { StringEditorComponent } from \"./string-editor.component\";\nimport { PanelDynamicAddBtn } from \"./components/paneldynamic-actions/paneldynamic-add-btn.component\";\nimport { PanelDynamicNextBtn }from \"./components/paneldynamic-actions/paneldynamic-next-btn.component\";\nimport { PanelDynamicPrevBtn } from \"./components/paneldynamic-actions/paneldynamic-prev-btn.component\";\nimport { PanelDynamicProgressText } from \"./components/paneldynamic-actions/paneldynamic-progress-text.component\";\nimport { PanelDynamicQuestionComponent } from \"./questions/paneldynamic.component\";\nimport { EmbeddedViewContentComponent } from \"./embedded-view-content.component\";\nimport { ElementComponent } from \"./element.component\";\nimport { CustomWidgetComponent } from \"./questions/customwidget.component\";\nimport { MatrixCellComponent } from \"./questions/matrixcell.component\";\nimport { MatrixTableComponent } from \"./questions/matrixtable.component\";\nimport { MatrixDropdownComponent } from \"./questions/matrixdropdown.component\";\nimport { MatrixDynamicComponent } from \"./questions/matrixdynamic.component\";\nimport { MatrixDynamicRemoveButtonComponent } from \"./components/matrix-actions/remove-button/remove-button.component\";\nimport { MatrixDynamicDragDropIconComponent } from \"./components/matrix-actions/drag-drop-icon/drag-drop-icon\";\nimport { MatrixDetailButtonComponent } from \"./components/matrix-actions/detail-button/detail-button.component\";\nimport { MatrixRequiredHeader } from \"./questions/matrixrequiredheader.component\";\nimport { ExpressionComponent } from \"./questions/expression.component\";\nimport { ImageQuestionComponent } from \"./questions/image.component\";\nimport { BrandInfoComponent } from \"./components/brand-info/brand-info.component\";\nimport { CustomQuestionComponent } from \"./questions/custom.component\";\nimport { CompositeQuestionComponent } from \"./questions/composite.component\";\nimport { SurveyContentComponent } from \"./survey-content.component\";\nimport { TemplateRendererComponent } from \"./template-renderer.component\";\nimport { ModalComponent } from \"./components/popup/modal-container.component\";\nimport { ButtonGroupQuestionComponent } from \"./questions/button-group/button-group.component\";\nimport { ButtonGroupItemComponent } from \"./questions/button-group/button-group-item.component\";\nimport { MatrixRowComponent } from \"./questions/matrix-row.component\";\n@NgModule({\n declarations: [\n VisibleDirective, Key2ClickDirective, PanelDynamicAddBtn, PanelDynamicNextBtn, PanelDynamicPrevBtn, PanelDynamicProgressText, ElementComponent, TemplateRendererComponent,\n SurveyComponent, SurveyContentComponent, PopupSurveyComponent, PageComponent, PanelComponent, QuestionComponent, StringViewerComponent, SurveyStringComponent, StringEditorComponent,\n QuestionSkeletonComponent, TextQuestionComponent, RadiogroupComponent, RadiogroupItemComponent, CheckboxComponent, CheckboxItemComponent,\n DropdownComponent, DropdownQuestionComponent, DropdownSelectComponent, DropdownOptionItemComponent,\n PopupComponent, PopupContainerComponent,\n ListComponent, ListItemComponent,\n TagboxFilterComponent, TagboxComponent, TagboxQuestionComponent, TagboxItemComponent,\n ActionBarComponent, ActionComponent, ActionBarItemComponent, ActionBarItemDropdownComponent, HtmlQuestionComponent,\n SelectBaseItemComponent, SelectBaseComponent, SurveyCommentComponent, ElementHeaderComponent, ElementTitleComponent, DynamicHeadComponent, RowComponent,\n RatingQuestionComponent, RatingDropdownComponent, BooleanQuestionComponent, BooleanCheckboxComponent, BooleanRadioComponent, BooleanRadioItemComponent, ImagePickerItemComponent, ImagePickerQuestionComponent, ImageQuestionComponent,\n SurveyHeaderComponent, ProgressDefaultComponent, ProgressButtonsComponent, SurveyNavigationButton, MatrixQuestionComponent, SvgIconComponent, FileQuestionComponent, SafeUrlPipe, SafeHtmlPipe, CommentQuestionComponent, SignaturePadQuestionComponent, ErrorsComponent,\n MultipleTextComponent, MultipleTextItemComponent, DynamicComponentDirective, RankingQuestionComponent, RankingItemComponent, PanelDynamicQuestionComponent, EmbeddedViewContentComponent, CustomWidgetComponent, MatrixCellComponent, MatrixTableComponent, MatrixDropdownComponent,\n MatrixDynamicComponent, MatrixDetailButtonComponent, MatrixDynamicRemoveButtonComponent, MatrixDynamicDragDropIconComponent, MatrixRequiredHeader, ExpressionComponent, SafeResourceUrlPipe, BrandInfoComponent,\n CustomQuestionComponent, CompositeQuestionComponent, ButtonGroupItemComponent, ButtonGroupQuestionComponent, MatrixRowComponent, ModalComponent\n ],\n imports: [\n CommonModule, FormsModule\n ],\n exports: [\n VisibleDirective, Key2ClickDirective, PanelDynamicAddBtn, PanelDynamicNextBtn, PanelDynamicPrevBtn, PanelDynamicProgressText, ElementComponent, TemplateRendererComponent,\n SurveyComponent, SurveyContentComponent, PopupSurveyComponent, PageComponent, PanelComponent, QuestionComponent, StringViewerComponent, SurveyStringComponent, StringEditorComponent,\n QuestionSkeletonComponent, TextQuestionComponent, RadiogroupComponent, RadiogroupItemComponent, CheckboxComponent, CheckboxItemComponent,\n DropdownComponent, DropdownQuestionComponent, DropdownSelectComponent, DropdownOptionItemComponent,\n PopupComponent, PopupContainerComponent,\n ListComponent, ListItemComponent,\n TagboxFilterComponent, TagboxComponent, TagboxQuestionComponent, TagboxItemComponent,\n ActionBarComponent, ActionComponent, ActionBarItemComponent, ActionBarItemDropdownComponent, HtmlQuestionComponent,\n SelectBaseItemComponent, SelectBaseComponent, SurveyCommentComponent, ElementHeaderComponent, ElementTitleComponent, DynamicHeadComponent, RowComponent,\n RatingQuestionComponent, RatingDropdownComponent, BooleanQuestionComponent, BooleanCheckboxComponent, BooleanRadioComponent, BooleanRadioItemComponent, ImagePickerItemComponent, ImagePickerQuestionComponent, ImageQuestionComponent,\n SurveyHeaderComponent, ProgressDefaultComponent, ProgressButtonsComponent, SurveyNavigationButton, MatrixQuestionComponent, SvgIconComponent, FileQuestionComponent, SafeUrlPipe, SafeHtmlPipe, CommentQuestionComponent, SignaturePadQuestionComponent, ErrorsComponent,\n MultipleTextComponent, MultipleTextItemComponent, DynamicComponentDirective, RankingQuestionComponent, RankingItemComponent, PanelDynamicQuestionComponent, EmbeddedViewContentComponent, CustomWidgetComponent, MatrixCellComponent, MatrixTableComponent, MatrixDropdownComponent,\n MatrixDynamicComponent, MatrixDetailButtonComponent, MatrixDynamicRemoveButtonComponent, MatrixDynamicDragDropIconComponent, MatrixRequiredHeader, ExpressionComponent, SafeResourceUrlPipe, BrandInfoComponent,\n CustomQuestionComponent, CompositeQuestionComponent, ButtonGroupQuestionComponent, ModalComponent\n ],\n providers: [PopupService],\n})\nexport class SurveyAngularModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './angular-ui';\n"],"names":["i1.VisibleDirective","i3.DynamicComponentDirective","i1.PopupService","i1","i2.DynamicComponentDirective","i1.ActionComponent","i1.DynamicComponentDirective","i1.DynamicHeadComponent","i2.ActionBarComponent","i3.SurveyStringComponent","i4","i1.ElementTitleComponent","i2.SurveyStringComponent","i3","i4.SafeUrlPipe","i1.ElementComponent","i3.RowComponent","i5.DynamicComponentDirective","i1.SurveyHeaderComponent","i3.PageComponent","i4.BrandInfoComponent","i5","i6","i7.DynamicComponentDirective","i1.ModalComponent","i2.SurveyContentComponent","i1.SurveyComponent","i1.SurveyStringComponent","i1.ErrorsComponent","i2.ElementHeaderComponent","i3.SurveyCommentComponent","i5.VisibleDirective","i6.DynamicComponentDirective","i2.SvgIconComponent","i3.PopupComponent","i6.VisibleDirective","i1.TagboxItemComponent","i1.SurveyCommentComponent","i4.DynamicComponentDirective","i2","i1.SafeHtmlPipe","i1.DropdownComponent","i2.SurveyCommentComponent","i1.TagboxComponent","i1.SvgIconComponent","i1.ButtonGroupItemComponent","i2.Key2ClickDirective","i2.PopupComponent","i3.Key2ClickDirective","i1.CheckboxItemComponent","i2.RadiogroupItemComponent","i4.VisibleDirective","i2.ListItemComponent","i1.BooleanRadioItemComponent","i1.ElementHeaderComponent","i2.RowComponent","i3.ActionBarComponent","i3.VisibleDirective","i5.SafeUrlPipe","i2.VisibleDirective","i2.ErrorsComponent","i3.TextQuestionComponent","i1.MultipleTextItemComponent","i1.RankingItemComponent","i2.PanelDynamicAddBtn","i3.PanelComponent","i4.ActionBarComponent","i5.PanelDynamicPrevBtn","i6.PanelDynamicNextBtn","i7.PanelDynamicProgressText","i8","i9.VisibleDirective","i3.SafeHtmlPipe","i1.MatrixDynamicDragDropIconComponent","i3.ErrorsComponent","i4.SelectBaseItemComponent","i5.SurveyCommentComponent","i6.SurveyStringComponent","i7","i8.DynamicComponentDirective","i1.MatrixCellComponent","i2.MatrixRequiredHeader","i3.MatrixRowComponent","i4.MatrixCellComponent","i1.MatrixTableComponent","i2.SafeResourceUrlPipe","i1.PanelComponent"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"survey-angular-ui.mjs","sources":["../../../packages/survey-angular-ui/src/embedded-view-content.component.ts","../../../packages/survey-angular-ui/src/base-angular.ts","../../../packages/survey-angular-ui/src/utils/ng-show.directive.ts","../../../packages/survey-angular-ui/src/component-factory.ts","../../../packages/survey-angular-ui/src/utils/dynamic.directive.ts","../../../packages/survey-angular-ui/src/components/popup/popup-container.component.ts","../../../packages/survey-angular-ui/src/components/popup/popup-container.component.html","../../../packages/survey-angular-ui/src/components/popup/popup.service.ts","../../../packages/survey-angular-ui/src/components/popup/modal-container.component.ts","../../../packages/survey-angular-ui/src/components/element-title/dynamic-head.component.ts","../../../packages/survey-angular-ui/src/components/element-title/dynamic-head.component.html","../../../packages/survey-angular-ui/src/components/action-bar/action.component.ts","../../../packages/survey-angular-ui/src/components/action-bar/action.component.html","../../../packages/survey-angular-ui/src/components/action-bar/action-bar.component.ts","../../../packages/survey-angular-ui/src/components/action-bar/action-bar.component.html","../../../packages/survey-angular-ui/src/survey-string.component.ts","../../../packages/survey-angular-ui/src/components/element-title/element-title.component.ts","../../../packages/survey-angular-ui/src/components/element-title/element-title.component.html","../../../packages/survey-angular-ui/src/components/survey-header/survey-header.component.ts","../../../packages/survey-angular-ui/src/components/survey-header/survey-header.component.html","../../../packages/survey-angular-ui/src/element.component.ts","../../../packages/survey-angular-ui/src/element.component.html","../../../packages/survey-angular-ui/src/row.component.ts","../../../packages/survey-angular-ui/src/row.component.html","../../../packages/survey-angular-ui/src/page.component.ts","../../../packages/survey-angular-ui/src/page.component.html","../../../packages/survey-angular-ui/src/components/brand-info/brand-info.component.ts","../../../packages/survey-angular-ui/src/components/brand-info/brand-info.component.html","../../../packages/survey-angular-ui/src/survey-content.component.ts","../../../packages/survey-angular-ui/src/survey-content.component.html","../../../packages/survey-angular-ui/src/survey.component.ts","../../../packages/survey-angular-ui/src/popup.survey.component.ts","../../../packages/survey-angular-ui/src/popup.survey.component.html","../../../packages/survey-angular-ui/src/errors.component.ts","../../../packages/survey-angular-ui/src/errors.component.html","../../../packages/survey-angular-ui/src/components/element-header/element-header.component.ts","../../../packages/survey-angular-ui/src/components/element-header/element-header.component.html","../../../packages/survey-angular-ui/src/comment.component.ts","../../../packages/survey-angular-ui/src/comment.component.html","../../../packages/survey-angular-ui/src/question.component.ts","../../../packages/survey-angular-ui/src/question.component.html","../../../packages/survey-angular-ui/src/string-viewer.component.ts","../../../packages/survey-angular-ui/src/string-viewer.component.html","../../../packages/survey-angular-ui/src/components/popup/popup.component.ts","../../../packages/survey-angular-ui/src/components/skeleton.component.ts","../../../packages/survey-angular-ui/src/components/skeleton.component.html","../../../packages/survey-angular-ui/src/components/svg-icon/svg-icon.component.ts","../../../packages/survey-angular-ui/src/components/dropdown/dropdown.component.ts","../../../packages/survey-angular-ui/src/components/dropdown/dropdown.component.html","../../../packages/survey-angular-ui/src/components/tagbox/tagbox-filter.component.ts","../../../packages/survey-angular-ui/src/components/tagbox/tagbox-filter.component.html","../../../packages/survey-angular-ui/src/components/tagbox/tagbox-item.component.ts","../../../packages/survey-angular-ui/src/components/tagbox/tagbox-item.component.html","../../../packages/survey-angular-ui/src/components/tagbox/tagbox.component.ts","../../../packages/survey-angular-ui/src/components/tagbox/tagbox.component.html","../../../packages/survey-angular-ui/src/components/renderAs/dropdown-select/dropdown-option-item.component.ts","../../../packages/survey-angular-ui/src/components/renderAs/dropdown-select/dropdown-select.component.ts","../../../packages/survey-angular-ui/src/components/renderAs/dropdown-select/dropdown-select.component.html","../../../packages/survey-angular-ui/src/utils/safe-url.pipe.ts","../../../packages/survey-angular-ui/src/components/survey-header/logo-image.component.ts","../../../packages/survey-angular-ui/src/components/survey-header/logo-image.component.html","../../../packages/survey-angular-ui/src/question.ts","../../../packages/survey-angular-ui/src/questions/text.component.ts","../../../packages/survey-angular-ui/src/questions/text.component.html","../../../packages/survey-angular-ui/src/utils/safe-html.pipe.ts","../../../packages/survey-angular-ui/src/questions/html.component.ts","../../../packages/survey-angular-ui/src/questions/html.component.html","../../../packages/survey-angular-ui/src/questions/selectbase.component.ts","../../../packages/survey-angular-ui/src/questions/selectbase.component.html","../../../packages/survey-angular-ui/src/questions/radiogroup.component.ts","../../../packages/survey-angular-ui/src/questions/radiogroup-item.component.ts","../../../packages/survey-angular-ui/src/questions/radiogroup-item.component.html","../../../packages/survey-angular-ui/src/questions/checkbox.component.ts","../../../packages/survey-angular-ui/src/questions/checkbox-item.component.ts","../../../packages/survey-angular-ui/src/questions/checkbox-item.component.html","../../../packages/survey-angular-ui/src/questions/dropdown.component.ts","../../../packages/survey-angular-ui/src/questions/dropdown.component.html","../../../packages/survey-angular-ui/src/questions/tagbox.component.ts","../../../packages/survey-angular-ui/src/questions/tagbox.component.html","../../../packages/survey-angular-ui/src/questions/rating.component.ts","../../../packages/survey-angular-ui/src/questions/rating.component.html","../../../packages/survey-angular-ui/src/questions/boolean.component.ts","../../../packages/survey-angular-ui/src/questions/boolean.component.html","../../../packages/survey-angular-ui/src/questions/imagepicker-item.component.ts","../../../packages/survey-angular-ui/src/questions/imagepicker-item.component.html","../../../packages/survey-angular-ui/src/questions/imagepicker.component.ts","../../../packages/survey-angular-ui/src/questions/imagepicker.component.html","../../../packages/survey-angular-ui/src/questions/button-group/button-group-item.component.ts","../../../packages/survey-angular-ui/src/questions/button-group/button-group-item.component.html","../../../packages/survey-angular-ui/src/questions/button-group/button-group.component.ts","../../../packages/survey-angular-ui/src/questions/button-group/button-group.component.html","../../../packages/survey-angular-ui/src/utils/ng-key2click.directive.ts","../../../packages/survey-angular-ui/src/components/action-bar/action-bar-item.component.ts","../../../packages/survey-angular-ui/src/components/action-bar/action-bar-item.component.html","../../../packages/survey-angular-ui/src/components/action-bar/action-bar-item-dropdown.component.ts","../../../packages/survey-angular-ui/src/components/action-bar/action-bar-item-dropdown.component.html","../../../packages/survey-angular-ui/src/questions/selectbase-item.ts","../../../packages/survey-angular-ui/src/questions/selectbase-item.html","../../../packages/survey-angular-ui/src/components/list/list-item.component.ts","../../../packages/survey-angular-ui/src/components/list/list-item.component.html","../../../packages/survey-angular-ui/src/components/list/list.component.ts","../../../packages/survey-angular-ui/src/components/list/list.component.html","../../../packages/survey-angular-ui/src/components/renderAs/rating-dropdown/rating-dropdown.component.ts","../../../packages/survey-angular-ui/src/components/renderAs/rating-dropdown/rating-dropdown.component.html","../../../packages/survey-angular-ui/src/components/renderAs/boolean-checkbox/boolean-checkbox.component.ts","../../../packages/survey-angular-ui/src/components/renderAs/boolean-checkbox/boolean-checkbox.component.html","../../../packages/survey-angular-ui/src/components/renderAs/boolean-radio/boolean-radio-item.component.ts","../../../packages/survey-angular-ui/src/components/renderAs/boolean-radio/boolean-radio-item.component.html","../../../packages/survey-angular-ui/src/components/renderAs/boolean-radio/boolean-radio.component.ts","../../../packages/survey-angular-ui/src/components/renderAs/boolean-radio/boolean-radio.component.html","../../../packages/survey-angular-ui/src/components/progress/default/progress.component.ts","../../../packages/survey-angular-ui/src/components/progress/default/progress.component.html","../../../packages/survey-angular-ui/src/components/progress/buttons/progress.component.ts","../../../packages/survey-angular-ui/src/components/progress/buttons/progress.component.html","../../../packages/survey-angular-ui/src/panel.component.ts","../../../packages/survey-angular-ui/src/panel.component.html","../../../packages/survey-angular-ui/src/components/survey-actions/survey-nav-btn.component.ts","../../../packages/survey-angular-ui/src/components/survey-actions/survey-nav-btn.component.html","../../../packages/survey-angular-ui/src/questions/matrix.component.ts","../../../packages/survey-angular-ui/src/questions/matrix.component.html","../../../packages/survey-angular-ui/src/questions/file.component.ts","../../../packages/survey-angular-ui/src/questions/file.component.html","../../../packages/survey-angular-ui/src/questions/comment.component.ts","../../../packages/survey-angular-ui/src/questions/comment.component.html","../../../packages/survey-angular-ui/src/questions/signature.component.ts","../../../packages/survey-angular-ui/src/questions/signature.component.html","../../../packages/survey-angular-ui/src/questions/multipletextitem.component.ts","../../../packages/survey-angular-ui/src/questions/mutlipletextitem.component.html","../../../packages/survey-angular-ui/src/questions/multipletext.component.ts","../../../packages/survey-angular-ui/src/questions/multipletext.component.html","../../../packages/survey-angular-ui/src/questions/ranking.component.ts","../../../packages/survey-angular-ui/src/questions/ranking.component.html","../../../packages/survey-angular-ui/src/questions/ranking-item.component.ts","../../../packages/survey-angular-ui/src/questions/ranking-item.component.html","../../../packages/survey-angular-ui/src/string-editor.component.ts","../../../packages/survey-angular-ui/src/string-editor.component.html","../../../packages/survey-angular-ui/src/components/paneldynamic-actions/paneldynamic-add-btn.component.ts","../../../packages/survey-angular-ui/src/components/paneldynamic-actions/paneldynamic-add-btn.component.html","../../../packages/survey-angular-ui/src/components/paneldynamic-actions/paneldynamic-next-btn.component.ts","../../../packages/survey-angular-ui/src/components/paneldynamic-actions/paneldynamic-next-btn.component.html","../../../packages/survey-angular-ui/src/components/paneldynamic-actions/paneldynamic-prev-btn.component.ts","../../../packages/survey-angular-ui/src/components/paneldynamic-actions/paneldynamic-prev-btn.component.html","../../../packages/survey-angular-ui/src/components/paneldynamic-actions/paneldynamic-progress-text.component.ts","../../../packages/survey-angular-ui/src/components/paneldynamic-actions/paneldynamic-progress-text.component.html","../../../packages/survey-angular-ui/src/questions/paneldynamic.component.ts","../../../packages/survey-angular-ui/src/questions/paneldynamic.component.html","../../../packages/survey-angular-ui/src/template-renderer.component.ts","../../../packages/survey-angular-ui/src/template-renderer.component.html","../../../packages/survey-angular-ui/src/questions/customwidget.component.ts","../../../packages/survey-angular-ui/src/questions/customwidget.component.html","../../../packages/survey-angular-ui/src/components/matrix-actions/drag-drop-icon/drag-drop-icon.ts","../../../packages/survey-angular-ui/src/components/matrix-actions/drag-drop-icon/drag-drop-icon.component.html","../../../packages/survey-angular-ui/src/questions/matrixcell.component.ts","../../../packages/survey-angular-ui/src/questions/matrixcell.component.html","../../../packages/survey-angular-ui/src/questions/matrixrequiredheader.component.ts","../../../packages/survey-angular-ui/src/questions/matrix-row.component.ts","../../../packages/survey-angular-ui/src/questions/matrix-row.component.html","../../../packages/survey-angular-ui/src/questions/matrixtable.component.ts","../../../packages/survey-angular-ui/src/questions/matrixtable.component.html","../../../packages/survey-angular-ui/src/questions/matrixdropdown.component.ts","../../../packages/survey-angular-ui/src/questions/matrixdropdown.component.html","../../../packages/survey-angular-ui/src/questions/matrixdynamic.component.ts","../../../packages/survey-angular-ui/src/questions/matrixdynamic.component.html","../../../packages/survey-angular-ui/src/components/matrix-actions/remove-button/remove-button.component.ts","../../../packages/survey-angular-ui/src/components/matrix-actions/remove-button/remove-button.component.html","../../../packages/survey-angular-ui/src/components/matrix-actions/detail-button/detail-button.component.ts","../../../packages/survey-angular-ui/src/components/matrix-actions/detail-button/detail-button.component.html","../../../packages/survey-angular-ui/src/questions/expression.component.ts","../../../packages/survey-angular-ui/src/questions/image.component.ts","../../../packages/survey-angular-ui/src/questions/image.component.html","../../../packages/survey-angular-ui/src/questions/custom.component.ts","../../../packages/survey-angular-ui/src/questions/composite.component.ts","../../../packages/survey-angular-ui/src/angular-ui.module.ts","../../../packages/survey-angular-ui/src/survey-angular-ui.ts"],"sourcesContent":["import { Component, EmbeddedViewRef, OnInit, TemplateRef, ViewChild, ViewContainerRef } from \"@angular/core\";\n\n@Component({\n template: \"\",\n})\n\nexport class EmbeddedViewContentComponent implements OnInit {\n @ViewChild(\"template\", { read: TemplateRef, static: true }) templateRef!: TemplateRef<HTMLElement>\n protected embeddedView?: EmbeddedViewRef<HTMLElement>;\n constructor(protected viewContainerRef?: ViewContainerRef) {}\n\n ngOnInit(): void {\n if(!!this.templateRef) {\n this.embeddedView = this.viewContainerRef?.createEmbeddedView(this.templateRef);\n }\n }\n}","import { ChangeDetectorRef, Component, DoCheck, OnChanges, OnDestroy, SimpleChange, ViewContainerRef } from \"@angular/core\";\nimport { ArrayChanges, Base, ISurvey, SurveyModel } from \"survey-core\";\nimport { EmbeddedViewContentComponent } from \"./embedded-view-content.component\";\n\n@Component({\n template: \"\"\n})\nexport abstract class BaseAngular<T extends Base = Base> extends EmbeddedViewContentComponent implements DoCheck, OnDestroy {\n constructor(protected changeDetectorRef: ChangeDetectorRef, viewContainerRef?: ViewContainerRef) {\n super(viewContainerRef);\n }\n protected get surveyModel(): ISurvey {\n return this.getModel().getSurvey();\n }\n protected abstract getModel(): T;\n protected previousModel?: T;\n private isModelSubsribed: boolean = false;\n\n public ngDoCheck(): void {\n if(this.previousModel !== this.getModel()) {\n this.unMakeBaseElementAngular(this.previousModel);\n this.previousModel = this.getModel();\n this.makeBaseElementAngular(this.getModel());\n this.onModelChanged();\n }\n this.beforeUpdate();\n }\n\n protected onModelChanged() {}\n\n private setIsRendering(val: boolean) {\n const model = this.getModel();\n if (!!model) {\n (<any>model).isRendering = val;\n }\n }\n private getIsRendering() {\n const model = this.getModel();\n return !!model && !!(<any>model).isRendering;\n }\n\n ngOnDestroy() {\n this.unMakeBaseElementAngular(this.getModel());\n }\n\n private makeBaseElementAngular(stateElement: T) {\n if(!!stateElement && !(<any>stateElement).__ngImplemented) {\n this.isModelSubsribed = true;\n (<any>stateElement).__ngImplemented = true;\n stateElement.iteratePropertiesHash((hash, key) => {\n var val: any = hash[key];\n if (Array.isArray(val)) {\n var val: any = val;\n val[\"onArrayChanged\"] = (arrayChanges: ArrayChanges) => {\n this.update();\n };\n }\n });\n stateElement.setPropertyValueCoreHandler = (\n hash: any,\n key: string,\n val: any\n ) => {\n if (hash[key] !== val) {\n hash[key] = val;\n this.update();\n }\n };\n }\n }\n private unMakeBaseElementAngular(stateElement?: Base) {\n if(!!stateElement && this.isModelSubsribed) {\n this.isModelSubsribed = false;\n (<any>stateElement).__ngImplemented = false;\n stateElement.setPropertyValueCoreHandler = <any>undefined;\n stateElement.iteratePropertiesHash((hash, key) => {\n var val: any = hash[key];\n if (Array.isArray(val)) {\n var val: any = val;\n val[\"onArrayChanged\"] = () => {};\n }\n });\n }\n }\n\n private update() {\n if (this.getIsRendering()) return;\n this.beforeUpdate();\n this.detectChanges();\n this.afterUpdate();\n }\n\n protected detectChanges() {\n if(!!this.embeddedView) {\n this.embeddedView.detectChanges();\n } else {\n this.changeDetectorRef.detectChanges();\n }\n }\n\n protected beforeUpdate(): void {\n this.setIsRendering(true);\n }\n protected afterUpdate(): void {\n this.setIsRendering(false);\n }\n ngAfterViewChecked(): void {\n this.afterUpdate();\n }\n}","import { Directive, ElementRef, Input, OnChanges, SimpleChanges } from \"@angular/core\";\n\n@Directive({\n selector: \"[visible]\"\n})\nexport class VisibleDirective implements OnChanges {\n constructor(private el: ElementRef) { }\n @Input() visible?: boolean;\n ngOnChanges(changes: SimpleChanges): void {\n changes[\"visible\"].currentValue ? this.show() : this.hide();\n }\n private hide() {\n this.el.nativeElement.style.display = \"none\";\n }\n private show() {\n this.el.nativeElement.style.display = \"\";\n }\n}","import { Component, ComponentRef, Type, ViewContainerRef } from \"@angular/core\";\n\nexport class AngularComponentFactory {\n public static Instance: AngularComponentFactory = new AngularComponentFactory();\n private creatorHash: { [index: string]: Type<any> } = {};\n\n public registerComponent(\n typeName: string,\n componentType: Type<any>\n ): void {\n this.creatorHash[typeName] = componentType;\n }\n public getAllTypes(): Array<string> {\n var result = new Array<string>();\n for (var key in this.creatorHash) {\n result.push(key);\n }\n return result.sort();\n }\n public isComponentRegistered(elementType: string): boolean {\n return !!this.creatorHash[elementType];\n }\n public create(containerRef: ViewContainerRef, elementType: string, params?: any): ComponentRef<Component> {\n var componentType = this.creatorHash[elementType];\n if (!componentType) return (null as any);\n return containerRef.createComponent(componentType);\n }\n}\n","import { Directive, ElementRef, Input, OnChanges, SimpleChanges, TemplateRef, ViewContainerRef } from \"@angular/core\";\nimport { AngularComponentFactory } from \"../component-factory\";\n\ninterface IDynamicComponent {\n name: string;\n data?: any;\n default?: string;\n}\n\n@Directive({\n selector: \"[component]\"\n})\n\nexport class DynamicComponentDirective implements OnChanges {\n constructor(private containerRef: ViewContainerRef, private templateRef: TemplateRef<unknown>) { }\n @Input() component!: IDynamicComponent;\n private componentInstance: any;\n ngOnChanges(changes: SimpleChanges): void {\n const componentChanges = changes[\"component\"];\n if(componentChanges.currentValue.name !== componentChanges.previousValue?.name ||\n (componentChanges.currentValue.name === undefined && componentChanges.previousValue === undefined && !this.componentInstance)) {\n this.createComponent();\n } else {\n this.updateComponentData();\n }\n }\n createComponent(): void {\n this.containerRef.clear();\n if(AngularComponentFactory.Instance.isComponentRegistered(this.component.name)) {\n this.componentInstance = AngularComponentFactory.Instance.create(this.containerRef, this.component.name).instance;\n } else if (this.component.default) {\n this.componentInstance = AngularComponentFactory.Instance.create(this.containerRef, this.component.default).instance;\n }\n if(!this.componentInstance) {\n throw new Error(`Can't create component with name: ${this.component.name} and default: ${this.component.default}`);\n } else {\n this.componentInstance.contentTempl = this.templateRef;\n }\n this.updateComponentData();\n }\n updateComponentData(): void {\n const data = this.component.data;\n Object.keys(data).forEach((key) => {\n this.componentInstance[key] = data[key];\n });\n }\n}","import { ChangeDetectorRef, Component, Input } from \"@angular/core\";\nimport { BaseAngular } from \"../../base-angular\";\nimport { PopupBaseViewModel } from \"survey-core\";\n\n@Component({\n selector: \"sv-ng-popup-container, '[sv-ng-popup-container]'\",\n templateUrl: \"./popup-container.component.html\"\n})\n\nexport class PopupContainerComponent extends BaseAngular<PopupBaseViewModel> {\n private prevIsVisible: boolean = false;\n isShow: boolean = false;\n @Input() model!: PopupBaseViewModel;\n\n constructor(changeDetectorRef: ChangeDetectorRef) {\n super(changeDetectorRef);\n this.changeDetectorRef.detach();\n }\n protected getModel(): PopupBaseViewModel {\n return this.model;\n }\n\n protected override onModelChanged(): void {\n this.changeDetectorRef.detectChanges();\n }\n\n protected override beforeUpdate(): void {\n super.beforeUpdate();\n if (!this.prevIsVisible && this.model.isVisible) {\n this.isShow = false;\n }\n }\n\n protected override afterUpdate(): void {\n if (!this.prevIsVisible && this.model.isVisible) {\n setTimeout(() => {\n this.model.updateOnShowing();\n this.isShow = true;\n this.changeDetectorRef.detectChanges();\n });\n }\n if (this.prevIsVisible !== this.model.isVisible) {\n this.prevIsVisible = this.model.isVisible;\n }\n super.afterUpdate();\n }\n}","<div class=\"sv-popup\" tabindex=\"-1\" [class]=\"model.styleClass\" [style.visibility]=\"isShow ? 'visible' : 'hidden'\" [visible]=\"model.isVisible\" (click)=\"model.clickOutside()\" (keydown)=\"model.onKeyDown($event)\">\n <div class=\"sv-popup__container\" [style]=\"{ left: model.left, top: model.top, height: model.height, minWidth: model.minWidth, width: model.width }\">\n <div class=\"sv-popup__shadow\">\n <span *ngIf=\"model.showPointer\" class=\"sv-popup__pointer\" [style]=\"{ left: model.pointerTarget.left, top: model.pointerTarget.top }\"></span>\n <div class=\"sv-popup__body-content\">\n <div *ngIf=\"model.title\" class=\"sv-popup__body-header\">{{ model.title }}</div>\n <div class=\"sv-popup__scrolling-content\">\n <div class=\"sv-popup__content\">\n <ng-template [component]=\"{ name: model.contentComponentName, data: model.contentComponentData }\"></ng-template>\n </div>\n </div>\n <div *ngIf=\"model.showFooter\" class=\"sv-popup__body-footer\">\n <button type=\"button\" (click)=\"model.cancel()\"\n class=\"sv-popup__body-footer-item sv-popup__button sv-popup__button--cancel\">{{ model.cancelButtonText }}</button>\n <button type=\"button\" *ngIf=\"model.isModal\" (click)=\"model.apply()\" \n class=\"sv-popup__body-footer-item sv-popup__button sv-popup__button--apply\">{{ model.applyButtonText }}</button>\n </div>\n </div>\n </div>\n </div>\n</div>","import { ApplicationRef, ComponentFactoryResolver, Injectable, Injector } from \"@angular/core\";\nimport { ComponentPortal, DomPortalOutlet } from \"@angular/cdk/portal\";\nimport { PopupBaseViewModel } from \"survey-core\";\nimport { PopupContainerComponent } from \"./popup-container.component\";\n\n@Injectable()\nexport class PopupService {\n constructor(private injector: Injector,\n private applicationRef: ApplicationRef,\n private componentFactoryResolver: ComponentFactoryResolver) {}\n\n createComponent(popupViewModel: PopupBaseViewModel): DomPortalOutlet {\n const portalHost = new DomPortalOutlet(popupViewModel.container, this.componentFactoryResolver, this.applicationRef, this.injector);\n const portal = new ComponentPortal(PopupContainerComponent);\n const componentRef = portalHost.attach(portal);\n popupViewModel.container = <HTMLElement>popupViewModel.container.children[0];\n componentRef.instance.model = popupViewModel;\n componentRef.changeDetectorRef.detectChanges();\n return portalHost;\n }\n}","import { DomPortalOutlet } from \"@angular/cdk/portal\";\nimport { Component } from \"@angular/core\";\nimport { createDialogOptions, IDialogOptions, PopupBaseViewModel, createPopupModalViewModel, settings } from \"survey-core\";\nimport { PopupService } from \"./popup.service\";\n\n@Component({\n selector: \"sv-ng-modal-container\",\n template: \"\",\n styleUrls: [\"../../hide-host.scss\"]\n})\n\nexport class ModalComponent {\n\n public model!: PopupBaseViewModel;\n private portalHost!: DomPortalOutlet;\n private functionDefined: boolean = false;\n\n constructor(private popupService: PopupService) {\n }\n showDialog(dialogOptions: IDialogOptions) {\n this.model = createPopupModalViewModel(dialogOptions);\n this.model.initializePopupContainer();\n this.model.model.onHide = () => {\n this.portalHost.detach();\n this.model.unmountPopupContainer();\n };\n this.portalHost = this.popupService.createComponent(this.model);\n this.model.model.isVisible = true;\n }\n ngOnInit(): void {\n if(!!settings.showModal) return;\n this.functionDefined = true;\n settings.showModal = (\n componentName: string,\n data: any,\n onApply: () => boolean,\n onCancel?: () => void,\n cssClass?: string,\n title?: string,\n displayMode: \"popup\" | \"overlay\" = \"popup\"\n ) => {\n const options = createDialogOptions(\n componentName,\n data,\n onApply,\n onCancel,\n undefined,\n undefined,\n cssClass,\n title,\n displayMode\n );\n this.showDialog(options);\n };\n }\n ngOnDestroy() {\n if(this.functionDefined) {\n settings.showModal = <any>undefined;\n }\n }\n}\n\n","import { Component, Input } from \"@angular/core\";\nimport { EmbeddedViewContentComponent } from \"../../embedded-view-content.component\";\nimport { SurveyElement } from \"survey-core\";\n\n@Component({\n selector: \"sv-ng-dynamic-head\",\n templateUrl: \"./dynamic-head.component.html\",\n styleUrls: [\"../../hide-host.scss\"]\n})\nexport class DynamicHeadComponent extends EmbeddedViewContentComponent {\n @Input() tagName!: string;\n @Input() element!: SurveyElement;\n get ariaLabel(): string | null {\n return this.element.titleAriaLabel;\n }\n}","<ng-template #template>\n <ng-container [ngSwitch]=\"tagName\">\n <h1 *ngSwitchCase=\"'h1'\" [class]=\"element.cssTitle\" [id]=\"element.ariaTitleId\" [attr.tabindex]=\"element.titleTabIndex\" [attr.aria-expanded]=\"element.titleAriaExpanded\" [attr.aria-label]=\"ariaLabel\"><ng-container *ngTemplateOutlet=\"titleContent\"></ng-container></h1>\n <h2 *ngSwitchCase=\"'h2'\"[class]=\"element.cssTitle\" [id]=\"element.ariaTitleId\" [attr.tabindex]=\"element.titleTabIndex\" [attr.aria-expanded]=\"element.titleAriaExpanded\" [attr.aria-label]=\"ariaLabel\"><ng-container *ngTemplateOutlet=\"titleContent\"></ng-container></h2>\n <h3 *ngSwitchCase=\"'h3'\"[class]=\"element.cssTitle\" [id]=\"element.ariaTitleId\" [attr.tabindex]=\"element.titleTabIndex\" [attr.aria-expanded]=\"element.titleAriaExpanded\" [attr.aria-label]=\"ariaLabel\"><ng-container *ngTemplateOutlet=\"titleContent\"></ng-container></h3>\n <h4 *ngSwitchCase=\"'h4'\"[class]=\"element.cssTitle\" [id]=\"element.ariaTitleId\" [attr.tabindex]=\"element.titleTabIndex\" [attr.aria-expanded]=\"element.titleAriaExpanded\" [attr.aria-label]=\"ariaLabel\"><ng-container *ngTemplateOutlet=\"titleContent\"></ng-container></h4>\n <h5 *ngSwitchCase=\"'h5'\"[class]=\"element.cssTitle\" [id]=\"element.ariaTitleId\" [attr.tabindex]=\"element.titleTabIndex\" [attr.aria-expanded]=\"element.titleAriaExpanded\" [attr.aria-label]=\"ariaLabel\"><ng-container *ngTemplateOutlet=\"titleContent\"></ng-container></h5>\n <h6 *ngSwitchCase=\"'h6'\"[class]=\"element.cssTitle\" [id]=\"element.ariaTitleId\" [attr.tabindex]=\"element.titleTabIndex\" [attr.aria-expanded]=\"element.titleAriaExpanded\" [attr.aria-label]=\"ariaLabel\"><ng-container *ngTemplateOutlet=\"titleContent\"></ng-container></h6>\n </ng-container>\n <ng-template #titleContent>\n <ng-content></ng-content>\n </ng-template>\n</ng-template>","import { Component, Input, ViewChild, ViewContainerRef } from \"@angular/core\";\nimport { BaseAngular } from \"../../base-angular\";\nimport { AngularComponentFactory } from \"../../component-factory\";\n\n@Component({\n selector: \"sv-ng-action\",\n templateUrl: \"./action.component.html\",\n styles: [\":host { display: none; }\"],\n})\nexport class ActionComponent extends BaseAngular {\n @Input() model: any;\n @ViewChild(\"actionContent\", { read: ViewContainerRef, static: true }) actionContent!: ViewContainerRef;\n getModel() {\n return this.model;\n }\n}\n\nAngularComponentFactory.Instance.registerComponent(\"sv-action\", ActionComponent);","\n<ng-template #template>\n <div [class]=\"model.getActionRootCss()\" [id]=\"model.id\">\n <div class=\"sv-action__content\">\n <ng-container *ngIf=\"model.needSeparator\">\n <div class=\"sv-action-bar-separator\"></div>\n </ng-container>\n <ng-template [component]=\"{ name: model.component, data: { model }, default: 'sv-action-bar-item'}\"></ng-template>\n </div>\n </div>\n</ng-template>","import { Component, ElementRef, Input, ViewChild } from \"@angular/core\";\nimport { AngularComponentFactory } from \"../../component-factory\";\nimport { BaseAngular } from \"../../base-angular\";\nimport { ActionContainer } from \"survey-core\";\n\n@Component({\n selector: \"sv-action-bar, sv-ng-action-bar\",\n templateUrl: \"./action-bar.component.html\",\n styles: [\":host { display: none }\"]\n})\nexport class ActionBarComponent extends BaseAngular<ActionContainer> {\n @Input() model!: ActionContainer;\n @Input() handleClick: any;\n @ViewChild(\"container\") container!: ElementRef<HTMLDivElement>;\n getModel(): ActionContainer {\n return this.model;\n }\n\n get allowOnClick(): boolean {\n return this.handleClick !== undefined ? this.handleClick : true;\n }\n\n onClick(event: Event): void {\n if(this.allowOnClick) {\n event.stopPropagation();\n }\n }\n ngAfterViewInit() {\n if (!!this.model.hasActions) {\n this.model.initResponsivityManager(this.container.nativeElement);\n }\n }\n override ngOnDestroy(): void {\n super.ngOnDestroy();\n this.model.resetResponsivityManager();\n }\n}\n\nAngularComponentFactory.Instance.registerComponent(\"sv-action-bar\", ActionBarComponent);","<ng-template #template>\n <div *ngIf=\"model.hasActions\" [class]=\"model.getRootCss()\" (click)=\"onClick($event)\" #container>\n <ng-container *ngFor=\"let action of model.renderedActions\">\n <sv-ng-action [model]=\"action\"></sv-ng-action>\n </ng-container>\n </div>\n</ng-template>","import { Component, Input } from \"@angular/core\";\nimport { LocalizableString } from \"survey-core\";\n\n@Component(\n {\n selector: \"sv-ng-string, '[sv-ng-string]'\",\n template: \"<ng-template [component]='{ name: model.renderAs, data: { model: model.renderAsData } }'></ng-template>\"\n }\n)\nexport class SurveyStringComponent {\n @Input() model!: LocalizableString;\n}","import { Component, Input } from \"@angular/core\";\nimport { EmbeddedViewContentComponent } from \"../../embedded-view-content.component\";\n\n@Component({\n selector: \"sv-ng-element-title\",\n templateUrl: \"./element-title.component.html\",\n styleUrls: [\"../../hide-host.scss\"]\n})\nexport class ElementTitleComponent extends EmbeddedViewContentComponent {\n @Input() element: any;\n}","<ng-template #template>\n <sv-ng-dynamic-head [tagName]=\"element.titleTagName\" [element]=\"element\" *ngIf=\"element.hasTitle\">\n <ng-container *ngIf=\"!element.hasTitleActions\">\n <ng-container *ngTemplateOutlet=\"elementTitleContent\"></ng-container>\n </ng-container>\n <ng-container *ngIf=\"element.hasTitleActions\">\n <div class=\"sv-title-actions\">\n <span class=\"sv-title-actions__title\">\n <ng-container *ngTemplateOutlet=\"elementTitleContent\"></ng-container>\n </span>\n <sv-ng-action-bar [model]=\"element.getTitleToolbar()\"></sv-ng-action-bar>\n </div>\n </ng-container>\n </sv-ng-dynamic-head>\n <ng-template #elementTitleContent>\n <sv-ng-string *ngIf=\"!element.isTitleOwner\" [model]=\"element.locTitle\"></sv-ng-string>\n <ng-container *ngIf=\"element.isTitleOwner\">\n <span\n *ngIf=\"element.isTitleOwner && element.isRequireTextOnStart\"\n [class]=\"element.cssClasses.requiredText\"\n [attr.aria-hidden]=\"true\"\n >{{ element.requiredText }}</span>\n <span\n *ngIf=\"element.isTitleOwner && element.no\"\n style=\"position: static\"\n [class]=\"element.cssClasses.number\"\n [attr.aria-hidden]=\"true\"\n >{{ element.no }}</span>\n <span *ngIf=\"element.isTitleOwner && element.no\"> </span>\n <span\n *ngIf=\"element.isTitleOwner && element.isRequireTextBeforeTitle\"\n [class]=\"element.cssClasses.requiredText\"\n [attr.aria-hidden]=\"true\"\n >{{ element.requiredText }}</span>\n <span *ngIf=\"element.isTitleOwner && element.isRequireTextBeforeTitle\"> </span>\n <sv-ng-string *ngIf=\"element.isTitleOwner\" [model]=\"element.locTitle\"></sv-ng-string>\n <span *ngIf=\"element.isTitleOwner && element.isRequireTextAfterTitle\"> </span>\n <span\n *ngIf=\"element.isTitleOwner && element.isRequireTextAfterTitle\"\n [class]=\"element.cssClasses.requiredText\"\n [attr.aria-hidden]=\"true\"\n >{{ element.requiredText }}</span> \n </ng-container>\n </ng-template>\n</ng-template>","import { AfterViewInit, ChangeDetectorRef, Component, Input, OnDestroy, ViewContainerRef } from \"@angular/core\";\nimport { SurveyModel } from \"survey-core\";\n\n@Component({\n selector: \"'[sv-ng-survey-header]'\",\n templateUrl: \"survey-header.component.html\"\n})\nexport class SurveyHeaderComponent implements AfterViewInit, OnDestroy {\n @Input() survey!: SurveyModel;\n constructor(private viewContainerRef: ViewContainerRef, private changeDetectorRef: ChangeDetectorRef) {}\n ngAfterViewInit(): void {\n this.survey.afterRenderHeader(this.viewContainerRef.element.nativeElement);\n this.survey.locLogo.onChanged = () => {\n this.changeDetectorRef.detectChanges();\n };\n }\n ngOnDestroy(): void {\n this.survey.locLogo.onChanged = () => {};\n }\n}","<div *ngIf=\"survey.isLogoBefore\" [class]=\"survey.logoClassNames\">\n <ng-template [component]=\"{ name: survey.getElementWrapperComponentName(survey, 'logo-image'), data: { data: survey.getElementWrapperComponentData(survey, 'logo-image') } }\"></ng-template>\n</div>\n<div\n *ngIf=\"survey.renderedHasTitle\"\n [class]=\"survey.css.headerText\"\n [style.maxWidth]=\"survey.titleMaxWidth\"\n>\n <sv-ng-element-title [element]=\"survey\"></sv-ng-element-title>\n <h5 *ngIf=\"survey.renderedHasDescription\" [class]=\"survey.css.description\" [model]=\"survey.locDescription\" sv-ng-string></h5>\n</div>\n\n<div *ngIf=\"survey.isLogoAfter\" [class]=\"survey.logoClassNames\">\n <ng-template [component]=\"{ name: survey.getElementWrapperComponentName(survey, 'logo-image'), data: { data: survey.getElementWrapperComponentData(survey, 'logo-image') } }\"></ng-template>\n</div>\n<div [class]=\"survey.css.headerClose\"></div>","import { Component, Input } from \"@angular/core\";\nimport { PanelModel, Question, SurveyModel } from \"survey-core\";\nimport { BaseAngular } from \"./base-angular\";\n\n@Component({\n selector: \"sv-ng-element\",\n templateUrl: \"./element.component.html\",\n styleUrls: [\"./hide-host.scss\"]\n})\nexport class ElementComponent extends BaseAngular<PanelModel | Question> {\n @Input() model!: PanelModel | Question;\n protected getModel(): PanelModel | Question {\n return this.model;\n }\n protected get elementComponentName(): string {\n return this.model.isPanel ? \"panel\": \"question\";\n }\n public get componentName(): string {\n const survey = this.surveyModel as SurveyModel;\n if(!!survey) {\n const name = survey.getElementWrapperComponentName(this.model);\n if(!!name) {\n return name;\n }\n }\n return this.elementComponentName;\n }\n public get componentData(): any {\n const survey = this.surveyModel as SurveyModel;\n let data: any;\n if(!!survey) {\n data = survey.getElementWrapperComponentData(this.model);\n }\n return {\n componentName: this.elementComponentName,\n componentData: {\n model: this.model,\n data: data\n }\n };\n }\n}","<ng-template #template>\n <div [class]=\"model.cssClasses.questionWrapper\" [style]=\"model.rootStyle\" (focusin)=\"model.focusIn()\">\n <ng-template [component]=\"{ name: componentName, data: componentData }\"></ng-template>\n </div>\n</ng-template>","import { Component, Input } from \"@angular/core\";\nimport { IElement, QuestionRowModel } from \"survey-core\";\nimport { BaseAngular } from \"./base-angular\";\n@Component({\n selector: \"sv-ng-row\",\n templateUrl: \"./row.component.html\",\n styleUrls: [\"./hide-host.scss\"]\n})\nexport class RowComponent extends BaseAngular<QuestionRowModel> {\n @Input() row!: QuestionRowModel;\n protected getModel(): QuestionRowModel {\n return this.row;\n }\n trackElementBy (index: number, element: IElement): string {\n return element.name + index;\n }\n}","<ng-template #template>\n <div [class]=\"row.getRowCss()\" *ngIf=\"row.visible\">\n <ng-container *ngFor=\"let element of row.visibleElements; trackBy: trackElementBy\">\n <sv-ng-element [model]=\"$any(element)\"></sv-ng-element>\n </ng-container>\n </div>\n</ng-template>","import { AfterViewInit, Component, ElementRef, Input, OnChanges, SimpleChanges, ViewChild } from \"@angular/core\";\nimport { PageModel, SurveyModel } from \"survey-core\";\nimport { BaseAngular } from \"./base-angular\";\n@Component({\n selector: \"page\",\n templateUrl: \"./page.component.html\",\n styleUrls: [\"./page.component.scss\"]\n})\nexport class PageComponent extends BaseAngular<PageModel> {\n @Input() model!: PageModel;\n @Input() survey?: SurveyModel;\n @ViewChild(\"pageContainer\", { static: false, read: ElementRef }) pageContainerRef!: ElementRef<HTMLDivElement>;\n protected getModel(): PageModel {\n return this.model;\n }\n protected override onModelChanged(): void {\n if(!!this.pageContainerRef && this.pageContainerRef.nativeElement) {\n this.model.survey.afterRenderPage(this.pageContainerRef.nativeElement);\n }\n }\n ngAfterViewInit(): void {\n this.model.survey?.afterRenderPage(this.pageContainerRef?.nativeElement);\n }\n}","<ng-container *ngIf=\"!!this.survey && !!this.model && this.model.isVisible && !!this.model.survey\">\n <div [class]=\"model.cssRoot\" #pageContainer>\n <sv-ng-element-title [element]=\"model\"></sv-ng-element-title>\n <div *ngIf=\"model._showDescription\" [class]=\"model.cssClasses.page.description\">\n <sv-ng-string [model]=\"model.locDescription\"></sv-ng-string>\n </div>\n <ng-container *ngFor=\"let row of model.rows\">\n <ng-template [component]=\"{ name: $any(model.survey).getRowWrapperComponentName(row), data: { componentData: $any(model.survey).getRowWrapperComponentData(row) } }\">\n <sv-ng-row [row]=\"row\"></sv-ng-row>\n </ng-template>\n </ng-container>\n </div>\n</ng-container>","import { Component } from \"@angular/core\";\nimport { AngularComponentFactory } from \"../../component-factory\";\n@Component({\n selector: \"sv-brand-info\",\n templateUrl: \"./brand-info.component.html\"\n})\nexport class BrandInfoComponent {}\nAngularComponentFactory.Instance.registerComponent(\"sv-brand-info\", BrandInfoComponent);","<div class=\"sv-brand-info\">\n <a class=\"sv-brand-info__logo\" href=\"https://surveyjs.io/?utm_source=built-in_links&utm_medium=online_survey_tool&utm_campaign=landing_page\"><img src=\"https://surveyjs.io/Content/Images/poweredby.svg\"/></a>\n <div class=\"sv-brand-info__text\">Try and see how easy it is to <a href=\"https://surveyjs.io/create-survey?utm_source=built-in_links&utm_medium=online_survey_tool&utm_campaign=create_survey\">create a survey</a></div>\n <div class=\"sv-brand-info__terms\"><a href=\"https://surveyjs.io/TermsOfUse\">Terms of Use & Privacy Statement</a></div>\n</div>","\nimport { AfterViewInit, Component, ElementRef, Input, OnInit, ViewChild } from \"@angular/core\";\nimport { SurveyModel, SvgRegistry } from \"survey-core\";\nimport { BaseAngular } from \"./base-angular\";\nimport { AngularComponentFactory } from \"./component-factory\";\n@Component({\n selector: \"survey-content\",\n templateUrl: \"./survey-content.component.html\"\n})\nexport class SurveyContentComponent extends BaseAngular<SurveyModel> implements OnInit, AfterViewInit {\n @Input() model!: SurveyModel;\n @ViewChild(\"surveyContainer\", { static: false }) rootEl!: ElementRef<HTMLDivElement>;\n protected getModel(): SurveyModel {\n return this.model;\n }\n protected override onModelChanged(): void {\n this.model.renderCallback = () => {\n this.detectChanges();\n };\n }\n override ngOnInit(): void {\n super.ngOnInit();\n if(this.model[\"needRenderIcons\"]) {\n SvgRegistry.renderIcons();\n }\n }\n override ngOnDestroy(): void {\n super.ngOnDestroy();\n this.model.renderCallback = <any>undefined;\n }\n ngAfterViewInit(): void {\n this.model.afterRenderSurvey(this.rootEl.nativeElement);\n }\n}\n\nAngularComponentFactory.Instance.registerComponent(\"survey\", SurveyContentComponent);","<ng-template #template>\n <div #surveyContainer *ngIf=\"!!model\" [class]=\"model.getRootCss()\">\n <form onsubmit=\"return false;\">\n <div class=\"sv_custom_header\" [hidden]=\"model.hasLogo\"></div>\n <div [class]=\"model.css.container\">\n <div *ngIf=\"model.renderedHasHeader\" [class]=\"model.css.header\" [survey]=\"model\" sv-ng-survey-header></div>\n <ng-container *ngIf=\"model.isShowProgressBarOnTop && !model.isShowStartingPage\">\n <ng-template [component]='{ name: \"sv-progress-\" + this.model.progressBarType, data: { model } }'></ng-template>\n </ng-container>\n <div *ngIf=\"model.isShowingPage\" [class]=\"model.bodyCss\" [style.width]=\"model.renderedWidth\" [style.maxWidth]=\"model.renderedWidth\">\n <!-- ko if: isTimerPanelShowingOnTop && !isShowStartingPage -->\n <!-- ko template: { name: 'survey-timerpanel' } -->\n <!-- /ko -->\n <!-- /ko -->\n <sv-action-bar *ngIf=\"model.isNavigationButtonsShowingOnTop\" [model]=\"model.navigationBar\"></sv-action-bar>\n <!-- ko if: activePage -->\n <ng-container *ngIf=\"model.activePage\">\n <div [id]=\"model.activePage.id\">\n <page [model]=\"model.activePage\" [survey]=\"model\"></page>\n </div>\n </ng-container>\n <!-- ko if: activePage.rows.length == 0 && $data.emptyPageTemplate -->\n <!-- ko template: { name: emptyPageTemplate, data: $data.emptyPageTemplateData || $data } -->\n <!-- /ko -->\n <!-- /ko -->\n <!-- /ko -->\n <!-- ko if: isTimerPanelShowingOnBottom && !isShowStartingPage -->\n <!-- ko template: { name: 'survey-timerpanel' } -->\n <!-- /ko -->\n <!-- /ko -->\n <ng-container *ngIf=\"model.isShowProgressBarOnBottom && !model.isShowStartingPage\">\n <ng-template [component]='{ name: \"sv-progress-\" + this.model.progressBarType, data: { model } }'></ng-template>\n </ng-container>\n <sv-action-bar *ngIf=\"model.isNavigationButtonsShowingOnBottom\" [model]=\"model.navigationBar\"></sv-action-bar>\n </div>\n <div *ngIf=\"model.state === 'completed' && model.showCompletedPage\" [class]=\"model.completedCss\"\n [innerHtml]=\"model.processedCompletedHtml\"></div>\n <div [hidden]=\"model.completedState === ''\" [class]=\"model.css.saveData.root\">\n <div [class]=\"model.completedStateCss\">\n <span>{{model.completedStateText}}</span>\n <input type=\"button\" [hidden]=\"model.completedState != 'error'\"\n [value]=\"model.getLocString('saveAgainButton')\" (click)=\"model.doComplete()\"\n [class]=\"model.css.saveData.saveAgainButton\">\n </div>\n </div>\n <div *ngIf=\"model.state === 'completedbefore'\" [class]=\"model.css.body\"\n [innerHtml]=\"model.processedCompletedBeforeHtml\"></div>\n <div *ngIf=\"model.state === 'loading'\" [class]=\"model.css.body\" [innerHtml]=\"model.processedLoadingHtml\"></div>\n <div *ngIf=\"model.state === 'empty'\" [class]=\"model.css.bodyEmpty\">{{model.emptySurveyText}}</div>\n </div>\n </form>\n <sv-brand-info *ngIf=\"model.showBrandInfo\"></sv-brand-info>\n </div>\n</ng-template>","import { ChangeDetectorRef, Component, Input } from \"@angular/core\";\nimport { SurveyModel } from \"survey-core\";\nimport { BaseAngular } from \"./base-angular\";\n@Component({\n selector: \"survey\",\n template: \"<sv-ng-modal-container></sv-ng-modal-container><survey-content [model]='model'></survey-content>\"\n})\nexport class SurveyComponent extends BaseAngular<SurveyModel> {\n @Input() model!: SurveyModel;\n protected getModel(): SurveyModel {\n return this.model;\n }\n constructor(changeDetectorRef: ChangeDetectorRef) {\n super(changeDetectorRef);\n changeDetectorRef.detach();\n }\n protected override onModelChanged(): void {\n this.changeDetectorRef.detectChanges();\n }\n}","import { ChangeDetectorRef, Component, Input } from \"@angular/core\";\nimport { PopupSurveyModel, SurveyModel } from \"survey-core\";\nimport { BaseAngular } from \"./base-angular\";\n@Component({\n selector: \"popup-survey\",\n templateUrl: \"./popup.survey.component.html\",\n styleUrls: [\"./popup.survey.component.scss\"]\n})\nexport class PopupSurveyComponent extends BaseAngular<PopupSurveyModel> {\n @Input() model!: PopupSurveyModel;\n protected getModel(): PopupSurveyModel {\n return this.model;\n }\n public get survey(): SurveyModel {\n return this.model.survey;\n }\n constructor(changeDetectorRef: ChangeDetectorRef) {\n super(changeDetectorRef);\n changeDetectorRef.detach();\n }\n protected override onModelChanged(): void {\n this.model.isShowing = true;\n this.changeDetectorRef.detectChanges();\n }\n}","<div *ngIf=\"!!model && model.isShowing\" [class]=\"model.cssRoot\" style=\"position: fixed; bottom: 3px; right: 10px; max-width: 60%;\">\n <div [class]=\"model.cssHeaderRoot\">\n <span (click)=\"model.changeExpandCollapse()\" style=\"width: 100%; cursor: pointer;\">\n <span style=\"padding-right:10px\" [class]=\"model.cssHeaderTitle\">{{model.locTitle.renderedHtml}}</span>\n <span aria-hidden=\"true\" [class]=\"model.cssButton\"></span>\n </span>\n <span *ngIf=\"model.isExpanded\" (click)=\"model.changeExpandCollapse()\" style=\"float: right; cursor: pointer;\">\n <span style=\"padding-right:10px\" [class]=\"model.cssHeaderTitle\">X</span>\n </span>\n </div>\n <div *ngIf=\"model.isExpanded\" [class]=\"model.cssBody\">\n <survey [model]=\"model.survey\"></survey>\n </div>\n</div>","import { Component, DoCheck, ElementRef, HostBinding, Input, OnDestroy, OnInit, ViewChild, ViewContainerRef } from \"@angular/core\";\nimport { Base, SurveyElement, TooltipManager } from \"survey-core\";\n\n@Component({\n templateUrl: \"./errors.component.html\",\n selector: \"'[sv-ng-errors]'\"\n})\nexport class ErrorsComponent implements OnDestroy, OnInit {\n @Input() element!: SurveyElement | any;\n @Input() location?: String;\n @ViewChild(\"errorsContainer\", { static: true }) errorsContainerRef!: ElementRef<HTMLDivElement>;\n private tooltipManager!: TooltipManager;\n constructor(private viewContainerRef: ViewContainerRef) {}\n ngOnInit(): void {\n if (this.location == \"tooltip\") {\n this.tooltipManager = new TooltipManager(this.viewContainerRef.element.nativeElement);\n }\n }\n ngOnDestroy() {\n if (!!this.tooltipManager) {\n this.tooltipManager.dispose();\n }\n }\n @HostBinding(\"attr.role\") get role (): string {\n return \"alert\";\n }\n @HostBinding(\"id\") get id(): string {\n return this.element.id + \"_errors\";\n }\n @HostBinding(\"attr.aria-live\") get ariaLive(): string {\n return \"polite\";\n }\n @HostBinding(\"class\") get class(): string {\n return this.element.cssError;\n }\n}","<div *ngFor=\"let error of element.errors;\">\n <span\n [class]=\"element.cssClasses ? element.cssClasses.error.icon : 'panel-error-icon'\"\n aria-hidden=\"true\"\n ></span>\n <span [class]=\"element.cssClasses ? element.cssClasses.error.item : 'panel-error-item'\" [model]=\"error.locText\" sv-ng-string>\n </span>\n</div>","import { Component, HostBinding, HostListener, Input } from \"@angular/core\";\n\n@Component({\n selector: \"'[sv-ng-element-header]'\",\n templateUrl: \"./element-header.component.html\"\n})\nexport class ElementHeaderComponent {\n @Input() element: any;\n constructor() {\n }\n @HostBinding(\"class\") get rootClass(): string {\n return this.element.cssHeader;\n }\n @HostListener(\"click\") click(): void {\n this.element.clickTitleFunction();\n }\n}","<sv-ng-element-title [element]=\"element\"></sv-ng-element-title>\n<div *ngIf=\"element.hasDescriptionUnderTitle\" [class]=\"element.cssDescription\" [model]=\"element.locDescription\" sv-ng-string></div>","import { Component, Input } from \"@angular/core\";\nimport { Question } from \"survey-core\";\n\n@Component({\n selector: \"sv-ng-comment, '[sv-ng-comment]'\",\n templateUrl: \"./comment.component.html\",\n})\nexport class SurveyCommentComponent {\n @Input() question!: Question;\n constructor() {\n }\n public get comment(): string {\n if(!this.question.comment) return \"\";\n return this.question.comment;\n }\n}","<textarea *ngIf=\"!question.isReadOnlyRenderDiv()\" [attr.max-length]=\"question.getOthersMaxLength()\" [attr.aria-required]=\"question.ariaRequired\" [attr.aria-label]=\"question.ariaLabel\" [attr.placeholder]=\"question.commentOrOtherPlaceholder\" \n [value]=\"comment\"\n [style.resize]=\"question.resizeStyle\"\n [disabled]=\"question.isInputReadOnly\"\n (change)=\"question.onCommentChange($event)\"\n (input)=\"question.onCommentInput($event)\"\n [class]=\"question.cssClasses.other\">\n</textarea>\n<div *ngIf=\"question.isReadOnlyRenderDiv()\">{{ question.comment }}</div>\n","import { Component, ElementRef, Input, ViewChild } from \"@angular/core\";\nimport { Question } from \"survey-core\";\nimport { AngularComponentFactory } from \"./component-factory\";\nimport { EmbeddedViewContentComponent } from \"./embedded-view-content.component\";\n\n@Component({\n selector: \"sv-ng-question\",\n templateUrl: \"./question.component.html\"\n})\nexport class QuestionComponent extends EmbeddedViewContentComponent {\n @Input() model!: Question;\n @ViewChild(\"elementContainer\") rootEl?: ElementRef<HTMLDivElement>;\n protected getModel(): Question {\n return this.model;\n }\n ngAfterViewInit(): void {\n if(!!this.rootEl?.nativeElement) {\n this.model.afterRender(this.rootEl?.nativeElement);\n }\n }\n public getComponentName(): string {\n if (this.model.customWidget) return \"survey-customwidget\";\n if (this.model.isDefaultRendering()) {\n return this.model.getTemplate() + \"-question\";\n }\n return this.model.getComponentName();\n }\n}\n\nAngularComponentFactory.Instance.registerComponent(\"question\", QuestionComponent);","<ng-template #template>\n <div #elementContainer [class]=\"model.getRootCss()\" [style]=\"{ paddingLeft: model.paddingLeft, paddingRight: model.paddingRight }\" [id]=\"model.id\" [attr.data-name]=\"model.name\" [attr.role]=\"model.ariaRole\" [attr.aria-required]=\"model.ariaRequired\" [attr.aria-invalid]=\"model.ariaInvalid\" [attr.aria-labelledby]=\"model.hasTitle ? model.ariaTitleId : null\">\n <div *ngIf=\"model.showErrorsAboveQuestion && model.hasVisibleErrors\" [element]=\"model\" sv-ng-errors></div>\n <div [element]=\"model\" *ngIf=\"model.hasTitleOnLeftTop\" sv-ng-element-header></div>\n <div [class]=\"model.cssContent\" role=\"presentation\" [visible]=\"!model.isCollapsed\">\n <div *ngIf=\"model.showErrorOnTop && model.hasVisibleErrors\" [element]=\"model\" sv-ng-errors></div>\n <ng-template [component]=\"{ name: getComponentName(), data: { model }, default: 'skeleton-question' }\" ></ng-template>\n <div *ngIf=\"model.hasComment\" [class]=\"model.cssClasses.formGroup\">\n <div>{{ model.commentText }}</div>\n <div [question]=\"model\" sv-ng-comment></div>\n </div>\n <div *ngIf=\"model.showErrorOnBottom && model.hasVisibleErrors\" [element]=\"model\" sv-ng-errors></div>\n <div *ngIf=\"model.isErrorsModeTooltip && model.hasVisibleErrors\" [element]=\"model\" [location]=\"'tooltip'\" sv-ng-errors></div>\n </div>\n <div [element]=\"model\" *ngIf=\"model.hasTitleOnBottom\" sv-ng-element-header></div>\n <div *ngIf=\"model.showErrorsBelowQuestion && model.hasVisibleErrors\" [element]=\"model\" sv-ng-errors></div>\n </div>\n</ng-template>","import { ChangeDetectorRef, Component, Input, OnChanges, OnDestroy, SimpleChanges } from \"@angular/core\";\nimport { LocalizableString } from \"survey-core\";\nimport { AngularComponentFactory } from \"./component-factory\";\n\n@Component({\n selector: \"sv-ng-string-viewer, string-viewer, '[sv-ng-string-viewer]'\",\n templateUrl: \"./string-viewer.component.html\",\n styleUrls: [\"./string-viewer.component.scss\"]\n})\nexport class StringViewerComponent implements OnChanges, OnDestroy {\n @Input() model: any;\n constructor(private changeDetectorRef: ChangeDetectorRef) {}\n ngOnChanges(changes: SimpleChanges): void {\n const currentValue = changes[\"model\"].currentValue;\n const previousValue = changes[\"model\"].previousValue;\n currentValue.onChanged = () => { this.changeDetectorRef.detectChanges(); };\n !!previousValue && this.clearOnChanged(previousValue);\n }\n clearOnChanged(model: LocalizableString) {\n model.onChanged = () => {};\n }\n ngOnDestroy(): void {\n !!this.model && this.clearOnChanged(this.model);\n }\n}\nAngularComponentFactory.Instance.registerComponent(LocalizableString.defaultRenderer, StringViewerComponent);","<span *ngIf=\"!model.hasHtml\" class=\"sv-string-viewer\">{{model.renderedHtml}}</span>\n<span *ngIf=\"model.hasHtml\" class=\"sv-string-viewer\" [innerHtml]=\"model.renderedHtml\"></span>","import { ChangeDetectorRef, Component, Input, ViewContainerRef } from \"@angular/core\";\nimport { BaseAngular } from \"../../base-angular\";\nimport { PopupBaseViewModel, PopupModel } from \"survey-core\";\nimport { DomPortalOutlet } from \"@angular/cdk/portal\";\nimport { PopupService } from \"./popup.service\";\n\n@Component({\n selector: \"sv-ng-popup, '[sv-ng-popup]'\",\n template: \"<div></div>\"\n})\n\nexport class PopupComponent extends BaseAngular<PopupModel> {\n @Input() popupModel!: PopupModel;\n\n public model!: PopupBaseViewModel;\n private portalHost!: DomPortalOutlet;\n\n protected getModel(): PopupModel {\n return this.popupModel;\n }\n\n constructor(viewContainerRef: ViewContainerRef, changeDetectorRef: ChangeDetectorRef, private popupService: PopupService) {\n super(changeDetectorRef, viewContainerRef);\n }\n\n override ngOnInit() {\n this.model = new PopupBaseViewModel(this.popupModel, this.viewContainerRef?.element.nativeElement.parentElement);\n this.model.initializePopupContainer();\n this.portalHost = this.popupService.createComponent(this.model);\n }\n\n override ngOnDestroy() {\n super.ngOnDestroy();\n this.portalHost.detach();\n (<HTMLElement>this.model.container).remove();\n this.model.unmountPopupContainer();\n }\n}","import { Component, Input } from \"@angular/core\";\nimport { AngularComponentFactory } from \"../component-factory\";\n\n@Component({\n selector: \"question-skeleton\",\n templateUrl: \"./skeleton.component.html\",\n styleUrls: [\"./skeleton.component.scss\"]\n})\nexport class QuestionSkeletonComponent {\n @Input() model: any;\n}\n\nAngularComponentFactory.Instance.registerComponent(\"skeleton-question\", QuestionSkeletonComponent);","<div class=\"sv-skeleton--not-implemented\">\n <div>{{ model.getType() + \" question type renderer is not implemented yet.\" }}</div>\n <div>{{ model.value }}</div>\n</div>\n","import { Component, HostBinding, Input, OnChanges, ViewContainerRef } from \"@angular/core\";\nimport * as Survey from \"survey-core\";\n\n@Component({\n selector: \"'[sv-ng-svg-icon]'\",\n template: \"\"\n})\nexport class SvgIconComponent implements OnChanges {\n @Input() size?: number | string;\n @Input() width?: number;\n @Input() height?: number;\n @Input() iconName!: string;\n @Input() partCss?: string;\n @Input() css?: string;\n @Input() title?: string;\n constructor(private viewContaierRef: ViewContainerRef) {\n }\n private createSvg() {\n if(!!this.iconName) {\n (Survey as any).createSvg(\n this.size,\n this.width,\n this.height,\n this.iconName,\n this.viewContaierRef.element.nativeElement\n );\n }\n }\n @HostBinding(\"class\") get rootClass(): string {\n let className = \"sv-svg-icon\";\n if(!this.css && !!this.partCss) {\n className += \" \" + this.partCss;\n } else if(!!this.css) {\n className = this.css;\n }\n return className;\n }\n @HostBinding(\"[attr.role]\") get rootRole(): string {\n return \"img\";\n }\n @HostBinding(\"[attr.aria-label]\") get ariaLabel(): string {\n return <string>this.title;\n }\n ngOnChanges(): void {\n const el = this.viewContaierRef.element.nativeElement;\n el.innerHTML = \"\";\n el.appendChild(document.createElementNS(\"http://www.w3.org/2000/svg\", \"use\"));\n this.createSvg();\n }\n}","import { Component, ElementRef, Input, OnDestroy, OnInit, ViewChild } from \"@angular/core\";\nimport { DropdownListModel, Helpers } from \"survey-core\";\nimport { BaseAngular } from \"../../base-angular\";\n\n@Component({\n selector: \"sv-ng-dropdown, '[sv-ng-dropdown]'\",\n templateUrl: \"./dropdown.component.html\"\n})\nexport class DropdownComponent extends BaseAngular implements OnDestroy, OnInit {\n @Input() model: any;\n @ViewChild(\"inputElement\") inputElementRef!: ElementRef<HTMLDivElement>;\n\n private dropdownListModel!: DropdownListModel;\n\n get dropdownModel(): DropdownListModel {\n return this.dropdownListModel;\n }\n protected getModel() {\n return this.model;\n }\n\n override ngOnInit(): void {\n super.ngOnInit();\n this.dropdownListModel = this.model.dropdownListModel || new DropdownListModel(this.model);\n }\n\n override ngOnDestroy() {\n super.ngOnDestroy();\n this.dropdownListModel?.dispose();\n }\n\n click(event: any) {\n this.dropdownListModel?.onClick(event);\n }\n clear(event: any) {\n this.dropdownListModel?.onClear(event);\n }\n keyhandler(event: any) {\n this.dropdownListModel?.keyHandler(event);\n }\n blur(event: any) {\n this.dropdownListModel?.onBlur(event);\n this.updateInputDomElement();\n }\n inputChange(event: any) {\n this.detectChanges();\n }\n updateInputDomElement() {\n if (!!this.inputElementRef?.nativeElement) {\n const control: any = this.inputElementRef.nativeElement;\n const newValue = this.model.filterString;\n if (!Helpers.isTwoValueEquals(newValue, control.value)) {\n control.value = this.model.filterString || \"\";\n }\n }\n }\n}","<div [class]=\"model.cssClasses.selectWrapper\">\n <div *ngIf=\"!model.isReadOnly\" [attr.tabindex]=\"dropdownModel.inputReadOnly ? null : 0\" [class]=\"model.getControlClass()\"\n [attr.disabled]=\"model.isInputReadOnly ? true : null\" (click)=\"click($event)\" (blur)=\"blur($event)\"\n (keydown)=\"keyhandler($event)\" [attr.id]=\"model.inputId\" [attr.aria-required]=\"model.ariaRequired\"\n [attr.aria-label]=\"model.ariaLabel\" [attr.aria-invalid]=\"model.ariaInvalid\"\n [attr.aria-describedby]=\"model.ariaDescribedBy\" [attr.role]=\"model.ariaRole\">\n <div [class]=\"model.cssClasses.controlValue\">\n <ng-container *ngIf=\"model.showInputFieldComponent\">\n <ng-template [component]=\"{ name: model.inputFieldComponentName, data: { model: dropdownModel.getSelectedAction(), question: model } }\"></ng-template>\n </ng-container>\n <sv-ng-string *ngIf=\"model.showSelectedItemLocText\" [model]=\"model.selectedItemLocText\"></sv-ng-string>\n <input #inputElement type=\"text\" autocomplete=\"off\" [(ngModel)]=\"dropdownModel.filterString\" [class]=\"model.cssClasses.filterStringInput\"\n [attr.id]=\"model.getInputId()\"\n [attr.tabindex]=\"dropdownModel.inputReadOnly ? null : -1\"\n [attr.disabled]=\"model.isInputReadOnly ? true : null\"\n [attr.placeholder]=\"model.readOnlyText\" [attr.readonly]=\"!dropdownModel.searchEnabled ? true : null\" \n (change)=\"inputChange($event)\" (blur)=\"blur($event)\" />\n </div>\n <div *ngIf=\"(model.allowClear && model.cssClasses.cleanButtonIconId)\"\n [class]=\"model.cssClasses.cleanButton\" (click)=\"clear($event)\" [visible]=\"!model.isEmpty()\">\n <!-- ko component: { name: 'sv-svg-icon', params: { css: model.cssClasses.cleanButtonSvg, iconName: model.cssClasses.cleanButtonIconId, size: 'auto' } } -->\n <!-- /ko -->\n <svg [iconName]=\"model.cssClasses.cleanButtonIconId\" [partCss]=\"model.cssClasses.cleanButtonSvg\" [title]=\"model.cleanButtonCaption\"\n [size]=\"'auto'\" sv-ng-svg-icon></svg>\n </div>\n </div>\n <sv-ng-popup *ngIf=\"!model.isReadOnly\" [popupModel]=\"dropdownModel.popupModel\"></sv-ng-popup>\n <div disabled *ngIf=\"model.isReadOnly\" [class]=\"model.getControlClass()\" [attr.id]=\"model.inputId\">\n <sv-ng-string *ngIf=\"model.selectedItemLocText\" [model]=\"model.selectedItemLocText\"></sv-ng-string>\n <div>{{ model.readOnlyText }}</div>\n </div>\n</div>","import { Component, Input } from \"@angular/core\";\nimport { DropdownMultiSelectListModel, QuestionTagboxModel } from \"survey-core\";\nimport { BaseAngular } from \"../../base-angular\";\nimport { AngularComponentFactory } from \"../../component-factory\";\n\n@Component({\n selector: \"sv-tagbox-filter\",\n templateUrl: \"./tagbox-filter.component.html\",\n styleUrls: [\"../../hide-host.scss\"]\n})\nexport class TagboxFilterComponent extends BaseAngular {\n @Input() model!: DropdownMultiSelectListModel;\n @Input() question!: QuestionTagboxModel;\n\n getModel() {\n return this.model;\n }\n}\n\nAngularComponentFactory.Instance.registerComponent(\"sv-tagbox-filter\", TagboxFilterComponent);","<ng-template #template>\n <input\n type=\"text\"\n autocomplete=\"off\"\n [(ngModel)]=\"model.filterString\"\n [attr.id]=\"question.getInputId()\"\n [class]=\"question.cssClasses.filterStringInput\"\n [attr.readonly]=\"!model.searchEnabled ? true : null\"\n [attr.disabled]=\"question.isInputReadOnly ? true : null\"\n [attr.size]=\"!model.filterString ? 1 : null\"\n [attr.placeholder]=\"model.filterStringPlaceholder\"\n (keydown)=\"model.inputKeyHandler($event)\"\n (blur)=\"model.onBlur($event)\"\n />\n</ng-template>\n","import { Component, Input } from \"@angular/core\";\nimport { ItemValue, QuestionTagboxModel } from \"survey-core\";\nimport { BaseAngular } from \"../../base-angular\";\nimport { AngularComponentFactory } from \"../../component-factory\";\n\n@Component({\n selector: \"sv-ng-tagbox-item, '[sv-ng-tagbox-item]'\",\n templateUrl: \"./tagbox-item.component.html\",\n})\nexport class TagboxItemComponent extends BaseAngular {\n @Input() item!: ItemValue;\n @Input() question!: QuestionTagboxModel;\n\n removeItem(event: any) {\n this.question.dropdownListModel.deselectItem(this.item.value);\n event.stopPropagation();\n }\n\n getModel() {\n return this.item;\n }\n}\n\nAngularComponentFactory.Instance.registerComponent(\"sv-tagbox-item\", TagboxItemComponent);","<div class=\"sv-tagbox__item\">\n <div class=\"sv-tagbox__item-text\" [model]=\"item.locText\" sv-ng-string></div> \n <div [class]=\"question.cssClasses.cleanItemButton\" (click)=\"removeItem($event)\">\n <svg [iconName]=\"question.cssClasses.cleanItemButtonIconId\" [partCss]=\"question.cssClasses.cleanItemButtonSvg\" [size]=\"16\" sv-ng-svg-icon></svg>\n </div>\n</div>","import { Component, Input, OnDestroy, OnInit } from \"@angular/core\";\nimport { DropdownMultiSelectListModel } from \"survey-core\";\n\n@Component({\n selector: \"sv-ng-tagbox, '[sv-ng-tagbox]'\",\n templateUrl: \"./tagbox.component.html\"\n})\nexport class TagboxComponent implements OnDestroy, OnInit {\n @Input() model: any;\n private dropdownListModel!: DropdownMultiSelectListModel;\n\n get dropdownModel(): DropdownMultiSelectListModel {\n return this.dropdownListModel;\n }\n\n getModel() {\n return this.model;\n }\n\n ngOnInit(): void {\n this.dropdownListModel = this.model.dropdownListModel || new DropdownMultiSelectListModel(this.model);\n }\n\n ngOnDestroy() {\n this.dropdownListModel?.dispose();\n }\n\n click(event: any) {\n this.dropdownListModel?.onClick(event);\n }\n clear(event: any) {\n this.dropdownListModel?.onClear(event);\n }\n keyhandler(event: any) {\n this.dropdownListModel?.keyHandler(event);\n }\n blur(event: any) {\n this.dropdownListModel?.onBlur(event);\n }\n}","<div [class]=\"model.cssClasses.selectWrapper\">\n <div *ngIf=\"!model.isReadOnly\" [attr.tabindex]=\"dropdownModel.inputReadOnly ? null : 0\" [class]=\"model.getControlClass()\"\n [attr.disabled]=\"model.isInputReadOnly ? true : null\" (click)=\"click($event)\" (blur)=\"blur($event)\"\n (keydown)=\"keyhandler($event)\" [attr.id]=\"model.inputId\" [attr.aria-required]=\"model.ariaRequired\"\n [attr.aria-label]=\"model.ariaLabel\" [attr.aria-invalid]=\"model.ariaInvalid\"\n [attr.aria-describedby]=\"model.ariaDescribedBy\" [attr.role]=\"model.ariaRole\">\n <div [class]=\"model.cssClasses.controlValue\">\n <ng-container *ngIf=\"!model.isEmpty()\">\n <sv-ng-tagbox-item *ngFor=\"let item of model.selectedItems\" [item]=\"item\" [question]=\"model\">\n </sv-ng-tagbox-item>\n </ng-container>\n <ng-template [component]=\"{ name: 'sv-tagbox-filter', data: { model: dropdownModel, question: model } }\"></ng-template>\n </div>\n <div *ngIf=\"(model.allowClear && model.cssClasses.cleanButtonIconId)\" [class]=\"model.cssClasses.cleanButton\"\n (click)=\"clear($event)\" [visible]=\"!model.isEmpty()\">\n <!-- ko component: { name: 'sv-svg-icon', params: { css: model.cssClasses.cleanButtonSvg, iconName: model.cssClasses.cleanButtonIconId, size: 'auto' } } -->\n <!-- /ko -->\n <svg [iconName]=\"model.cssClasses.cleanButtonIconId\" [partCss]=\"model.cssClasses.cleanButtonSvg\" [title]=\"model.cleanButtonCaption\"\n [size]=\"'auto'\" sv-ng-svg-icon></svg>\n </div>\n </div>\n <sv-ng-popup *ngIf=\"!model.isReadOnly\" [popupModel]=\"model.popupModel\"></sv-ng-popup>\n <div disabled *ngIf=\"model.isReadOnly\" [class]=\"model.getControlClass()\" [attr.id]=\"model.inputId\">\n <div>{{ model.readOnlyText }}</div>\n </div>\n</div>","import { Component, Input } from \"@angular/core\";\nimport { BaseAngular } from \"../../../base-angular\";\nimport { AngularComponentFactory } from \"../../../component-factory\";\n\n@Component({\n selector: \"sv-ng-dropdown-option-item, '[sv-ng-dropdown-option-item]'\",\n template: '<ng-template #template><option [value]=\"item.value\" [disabled]=\"!item.isEnabled\">{{ item.text }}</option><ng-template>',\n})\nexport class DropdownOptionItemComponent extends BaseAngular {\n @Input() item: any;\n\n protected getModel() {\n return this.item;\n }\n}\n\nAngularComponentFactory.Instance.registerComponent(\"sv-dropdown-option-item\", DropdownOptionItemComponent);","import { Component, Input } from \"@angular/core\";\nimport { AngularComponentFactory } from \"../../../component-factory\";\nimport { RendererFactory } from \"survey-core\";\n\n@Component({\n selector: \"sv-ng-dropdown-select-question\",\n templateUrl: \"./dropdown-select.component.html\"\n})\nexport class DropdownSelectComponent {\n @Input() model: any;\n\n get editableValue() {\n return this.model.renderedValue || \"\";\n }\n set editableValue(newValue: any) {\n if(newValue === \"\") {\n this.model.renderedValue = undefined;\n } else {\n this.model.renderedValue = newValue;\n }\n }\n\n click(event: any) {\n this.model.onClick(event);\n }\n keyup(event: any) {\n this.model.onKeyUp(event);\n }\n}\n\nAngularComponentFactory.Instance.registerComponent(\"dropdown-select-question\", DropdownSelectComponent);\nRendererFactory.Instance.registerRenderer(\"dropdown\", \"select\", \"dropdown-select-question\");","<div [class]=\"model.renderCssRoot\">\n <div [class]=\"model.cssClasses.selectWrapper\">\n <select *ngIf=\"!model.isReadOnly\" [attr.id]=\"model.inputId\" [(ngModel)]=\"editableValue\"\n [disabled]=\"model.isInputReadOnly\" (click)=\"click($event)\" (keyup)=\"keyup($event)\"\n [class]=\"model.getControlClass()\" [attr.autocomplete]=\"model.autoComplete\" [required]=\"model.isRequired\"\n [attr.aria-required]=\"model.ariaRequired\" [attr.aria-label]=\"model.ariaLabel\"\n [attr.aria-invalid]=\"model.ariaInvalid\" [attr.aria-describedby]=\"model.ariaDescribedBy\">\n <option *ngIf=\"model.allowClear\" value=\"\">{{ model.placeholder }}</option>\n <ng-template *ngFor=\"let item of model.visibleChoices\" [component]=\"{ name: 'sv-dropdown-option-item', data: { item } }\"></ng-template>\n </select>\n <div *ngIf=\"model.isReadOnly\" disabled [class]=\"model.getControlClass()\" [attr.id]=\"model.inputId\">{{ model.readOnlyText }}</div>\n </div>\n <div *ngIf=\" model.isOtherSelected\" class=\"form-group\"\n [style.display]=\"model.isFlowLayout ? 'inline': '' \" [question]=\"model\" sv-ng-comment></div>\n</div>","import { Pipe, PipeTransform } from \"@angular/core\";\nimport { DomSanitizer, SafeResourceUrl, SafeUrl } from \"@angular/platform-browser\";\n\n//temp: disables angular sanitizer, which breaks a links\n@Pipe({ name: \"safeUrl\" })\nexport class SafeUrlPipe implements PipeTransform {\n constructor(private domSanitizer: DomSanitizer) {}\n transform(url: string): SafeUrl {\n return this.domSanitizer.bypassSecurityTrustUrl(url);\n }\n}\n\n@Pipe({ name: \"safeResourceUrl\" })\nexport class SafeResourceUrlPipe implements PipeTransform {\n constructor(private domSanitizer: DomSanitizer) {}\n transform(url: string): SafeResourceUrl {\n return this.domSanitizer.bypassSecurityTrustResourceUrl(url);\n }\n}","import { Component, Input } from \"@angular/core\";\nimport { AngularComponentFactory } from \"../../component-factory\";\nimport { EmbeddedViewContentComponent } from \"../../embedded-view-content.component\";\nimport { SurveyModel } from \"survey-core\";\n@Component({\n selector: \"sv-logo-image\",\n templateUrl: \"./logo-image.component.html\",\n styleUrls: [\"../../hide-host.scss\"]\n})\nexport class LogoImageComponent extends EmbeddedViewContentComponent {\n @Input() data!: SurveyModel;\n get survey(): SurveyModel {\n return this.data;\n }\n}\nAngularComponentFactory.Instance.registerComponent(\"sv-logo-image\", LogoImageComponent);","<ng-template #template>\n <img\n [class]=\"survey.css.logoImage\"\n [attr.src]=\"survey.locLogo.renderedHtml | safeUrl\"\n [attr.width]=\"survey.logoWidth ? survey.logoWidth : undefined\"\n [attr.height]=\"survey.logoHeight ? survey.logoHeight : undefined\"\n [attr.alt]=\"survey.locTitle.renderedHtml\"\n [style.objectFit]=\"survey.logoFit\"\n />\n</ng-template>","import { AfterViewInit, Component, ElementRef, Input, OnDestroy, ViewChild } from \"@angular/core\";\nimport { Question } from \"survey-core\";\nimport { BaseAngular } from \"./base-angular\";\n\n@Component({\n template: \"\"\n})\nexport class QuestionAngular<T extends Question = Question> extends BaseAngular<Question> implements AfterViewInit, OnDestroy {\n @Input() public model!: T;\n\n @ViewChild(\"contentElement\") elementContentRef!: ElementRef<HTMLElement>;\n\n protected getModel() {\n return this.model;\n }\n\n ngAfterViewInit() {\n if (!!this.model) {\n this.model.afterRenderQuestionElement(this.elementContentRef?.nativeElement);\n }\n }\n override ngOnDestroy() {\n if (!!this.model) {\n this.model.beforeDestroyQuestionElement(this.elementContentRef?.nativeElement);\n }\n super.ngOnDestroy();\n }\n}","import { Component } from \"@angular/core\";\nimport { QuestionAngular } from \"../question\";\nimport { QuestionTextModel } from \"survey-core\";\nimport { AngularComponentFactory } from \"../component-factory\";\n\n@Component({\n selector: \"sv-ng-text-question\",\n templateUrl: \"./text.component.html\",\n styleUrls: [\"./text.component.scss\"]\n})\nexport class TextQuestionComponent extends QuestionAngular<QuestionTextModel> {\n keyup(event: any) {\n if (this.model.isInputTextUpdate) {\n this.model.value = event.target.value;\n }\n }\n onChange(event: any) {\n if(!this.model.isInputTextUpdate) {\n this.model.value = event.target.value;\n }\n }\n}\n\nAngularComponentFactory.Instance.registerComponent(\"text-question\", TextQuestionComponent);"," <input *ngIf=\"!model.dataListId && !model.isReadOnlyRenderDiv()\" [style]=\"model.inputStyle\" [class]=\"model.getControlClass()\"\n (change)=\"onChange($event)\" [attr.value]=\"model.value\" [disabled]=\"model.isInputReadOnly\" name=\"user\" [type]=\"model.inputType\" [id]=\"model.inputId\" [attr.placeholder]=\"model.renderedPlaceholder || ''\"\n (keyup)=\"keyup($event)\" [attr.size] = \"model.renderedInputSize\" [attr.max-length]= \"model.getMaxLength()\" [attr.min]=\"model.renderedMin\"\n [attr.max]=\"model.renderedMax\" [attr.step]=\"model.renderedStep\" [attr.max]=\"model.renderedMax\" [attr.aria-required]=\"model.ariaRequired\"\n [attr.aria-label]=\"model.ariaLabel\" [attr.aria-invalid]=\"model.ariaInvalid\" [attr.aria-describedby]=\"model.ariaDescribedBy\" [attr.autocomplete]=\"model.autoComplete\"\n [attr.ar] #contentElement/>\n <div *ngIf=\"model.dataListId && !model.isReadOnlyRenderDiv()\" #contentElement>\n <input\n [style]=\"model.inputStyle\" [class]=\"model.getControlClass()\"\n (change)=\"onChange($event)\" [attr.value]=\"model.value\"\n [disabled]=\"model.isInputReadOnly\" [type]=\"model.inputType\" [id]=\"model.inputId\" [attr.placeholder]=\"model.renderedPlaceholder || ''\"\n (keyup)=\"keyup($event)\" [attr.size] = \"model.renderedInputSize\" [attr.max-length]= \"model.getMaxLength()\" [attr.min]=\"model.renderedMin\"\n [attr.max]=\"model.renderedMax\" [attr.step]=\"model.renderedStep\" [attr.max]=\"model.renderedMax\" [attr.aria-required]=\"model.ariaRequired\"\n [attr.aria-label]=\"model.ariaLabel\" [attr.aria-invalid]=\"model.ariaInvalid\" [attr.aria-describedby]=\"model.ariaDescribedBy\" [attr.autocomplete]=\"model.autoComplete\"\n />\n <datalist [id]=\"model.dataListId\">\n <option *ngFor=\"let dataListItem of model.dataList\" [value]=\"dataListItem\"></option>\n </datalist>\n </div>\n <div *ngIf=\"model.isReadOnlyRenderDiv()\" #contentElement>{{ model.value }}</div>\n","import { Pipe, PipeTransform } from \"@angular/core\";\nimport { DomSanitizer, SafeUrl } from \"@angular/platform-browser\";\n\n@Pipe({ name: \"safeHtml\" })\nexport class SafeHtmlPipe implements PipeTransform {\n constructor(private domSanitizer: DomSanitizer) {}\n transform(url: string): SafeUrl {\n return this.domSanitizer.bypassSecurityTrustHtml(url);\n }\n}","import { Component } from \"@angular/core\";\nimport { QuestionAngular } from \"../question\";\nimport { QuestionHtmlModel } from \"survey-core\";\nimport { AngularComponentFactory } from \"../component-factory\";\n@Component({\n selector: \"sv-ng-html-question\",\n templateUrl: \"./html.component.html\",\n styleUrls: []\n})\nexport class HtmlQuestionComponent extends QuestionAngular<QuestionHtmlModel> {\n override onModelChanged(): void {\n super.onModelChanged();\n this.model.locHtml.onChanged = () => {\n this.detectChanges();\n };\n }\n override ngOnDestroy(): void {\n this.model.locHtml.onChanged = () => {};\n super.ngOnDestroy();\n }\n}\n\nAngularComponentFactory.Instance.registerComponent(\"html-question\", HtmlQuestionComponent);","<div [class]=\"model.renderCssRoot\" [innerHTML]=\"model.locHtml.renderedHtml | safeHtml\" #contentElement></div>","import { Component, Input } from \"@angular/core\";\nimport { QuestionAngular } from \"../question\";\nimport { ItemValue, QuestionRadiogroupModel, QuestionSelectBase } from \"survey-core\";\nimport { AngularComponentFactory } from \"../component-factory\";\n\n@Component({\n selector: \"['sv-ng-selectbase']\",\n templateUrl: \"./selectbase.component.html\"\n})\nexport class SelectBaseComponent<T extends QuestionSelectBase> extends QuestionAngular<T> {\n //#todo temp fix (CanClearButton should be placed in selectbase so it could work with imagepicker)\n @Input() override model!: any;\n\n public inputType: string = \"checkbox\";\n public showLegend: boolean = true;\n\n public getDefaultComponentName(): string {\n return \"sv-ng-selectbase-item\";\n }\n\n public getItemValueComponentName(item: ItemValue): string {\n return this.model.getItemValueWrapperComponentName(item) || this.getDefaultComponentName();\n }\n public getItemValueComponentData(item: ItemValue): any {\n return {\n componentName: this.getDefaultComponentName(),\n componentData: {\n question: this.model,\n model: item,\n inputType: this.inputType,\n data: this.model.getItemValueWrapperComponentData(item)\n }\n };\n }\n}\n\nAngularComponentFactory.Instance.registerComponent(\"selectbase\", SelectBaseComponent);","<fieldset [class]=\"model.getSelectBaseRootCss()\" role=\"presentation\" #contentElement>\n <legend *ngIf=\"showLegend\" role=\"presentation\" class=\"sv-hidden\"></legend>\n <ng-container *ngIf=\"model.hasHeadItems\">\n <ng-container *ngFor=\"let item of model.headItems\">\n <ng-template [component]=\"{ name: getItemValueComponentName(item), data: getItemValueComponentData(item) }\"></ng-template>\n </ng-container>\n </ng-container>\n <ng-container *ngIf=\"!model.hasColumns && !model.blockedRow\">\n <ng-container *ngFor=\"let item of model.bodyItems\">\n <ng-template [component]=\"{ name: getItemValueComponentName(item), data: getItemValueComponentData(item) }\"></ng-template>\n </ng-container>\n </ng-container>\n <div [class]=\"model.cssClasses.rootRow\" *ngIf=\"!model.hasColumns && model.blockedRow\">\n <ng-container *ngFor=\"let item of model.dataChoices\">\n <ng-template [component]=\"{ name: getItemValueComponentName(item), data: getItemValueComponentData(item) }\"></ng-template>\n </ng-container>\n </div>\n <ng-container *ngIf=\"model.hasColumns\">\n <div [class]=\"model.cssClasses.rootMultiColumn\">\n <div [class]=\"model.getColumnClass()\" *ngFor=\"let column of model.columns\" role=\"presentation\">\n <ng-container *ngFor=\"let item of column\">\n <ng-template [component]=\"{ name: getItemValueComponentName(item), data: getItemValueComponentData(item) }\"></ng-template>\n </ng-container>\n </div>\n </div>\n </ng-container>\n <ng-container *ngIf=\"model.hasFootItems\">\n <ng-container *ngFor=\"let item of model.footItems\">\n <ng-template [component]=\"{ name: getItemValueComponentName(item), data: getItemValueComponentData(item) }\"></ng-template>\n </ng-container>\n </ng-container>\n <div *ngIf=\"model.isOtherSelected\" class=\"form-group\" [question]=\"model\" sv-ng-comment></div>\n <div *ngIf=\"model.showClearButtonInContent\">\n <input\n type=\"button\"\n (click)=\"model.clearValue()\"\n [value]=\"model.clearButtonCaption\"\n [class]=\"model.cssClasses.clearButton\"\n />\n </div>\n</fieldset>","import { Component } from \"@angular/core\";\nimport { QuestionRadiogroupModel } from \"survey-core\";\nimport { AngularComponentFactory } from \"../component-factory\";\nimport { SelectBaseComponent } from \"./selectbase.component\";\n\n@Component({\n selector: \"sv-ng-radiogroup-question\",\n templateUrl: \"./selectbase.component.html\"\n})\nexport class RadiogroupComponent extends SelectBaseComponent<QuestionRadiogroupModel> {\n override ngOnInit(): void {\n this.inputType = \"radio\";\n this.showLegend = false;\n super.ngOnInit();\n }\n}\n\nAngularComponentFactory.Instance.registerComponent(\"radiogroup-question\", RadiogroupComponent);","import { Component, Input } from \"@angular/core\";\n@Component({\n selector: \"sv-ng-radiogroup-item, '[sv-ng-radiogroup-item]'\",\n templateUrl: \"./radiogroup-item.component.html\",\n styleUrls: [\"./radiogroup-item.component.scss\"]\n})\nexport class RadiogroupItemComponent {\n @Input() question: any;\n @Input() model: any;\n constructor() {\n }\n}\n","<input type=\"radio\" [name]=\"question.questionName\" [id]=\"question.getItemId(model)\" [attr.aria-describedby]=\"question.ariaDescribedBy\" [class]=\"question.cssClasses.itemControl\"\n [disabled]=\"!question.getItemEnabled(model)\" [(ngModel)]=\"question.renderedValue\" [attr.value]=\"model.value\" [value]=\"model.value\"\n/>\n<ng-content></ng-content>","import { Component } from \"@angular/core\";\nimport { QuestionCheckboxModel } from \"survey-core\";\nimport { AngularComponentFactory } from \"../component-factory\";\nimport { SelectBaseComponent } from \"./selectbase.component\";\n\n@Component({\n selector: \"sv-ng-checkbox-question\",\n templateUrl: \"./selectbase.component.html\"\n})\nexport class CheckboxComponent extends SelectBaseComponent<QuestionCheckboxModel> {}\n\nAngularComponentFactory.Instance.registerComponent(\"checkbox-question\", CheckboxComponent);","import { Component, Input } from \"@angular/core\";\nimport { ItemValue, QuestionCheckboxModel } from \"survey-core\";\n\n@Component({\n selector: \"sv-ng-checkbox-item, '[sv-ng-checkbox-item]'\",\n templateUrl: \"./checkbox-item.component.html\",\n styleUrls: [\"./checkbox-item.component.scss\"]\n})\nexport class CheckboxItemComponent {\n @Input() question!: QuestionCheckboxModel;\n @Input() model!: ItemValue;\n constructor() {\n }\n onChange(event: any) {\n var newValue = (<Array<string>>[]).concat(this.question.renderedValue || []);\n var index = newValue.indexOf(this.model.value);\n if (event.target.checked) {\n if (index < 0) {\n newValue.push(this.model.value);\n }\n } else {\n if (index > -1) {\n newValue.splice(index, 1);\n }\n }\n this.question.renderedValue = newValue;\n }\n onSelectAllChange(event: any) {\n this.question.toggleSelectAll();\n }\n}\n","<input *ngIf=\"model == question.selectAllItem\" type=\"checkbox\" [name]=\"question.name\" [id]=\"question.getItemId(model)\" [attr.aria-describedby]=\"question.ariaDescribedBy\" [class]=\"question.cssClasses.itemControl\"\n [disabled]=\"!question.getItemEnabled(model)\" [checked]=\"question.isAllSelected\" [value]=\"''\" (change)=\"onSelectAllChange($event)\"/>\n<input *ngIf=\"model != question.selectAllItem\" type=\"checkbox\" [name]=\"question.name\" [id]=\"question.getItemId(model)\" [attr.aria-describedby]=\"question.ariaDescribedBy\" [class]=\"question.cssClasses.itemControl\"\n [disabled]=\"!question.getItemEnabled(model)\" [checked]=\"question.isItemSelected(model)\" [value]=\"model.value\" (change)=\"onChange($event)\"/>\n<ng-content></ng-content>","import { Component } from \"@angular/core\";\nimport { QuestionAngular } from \"../question\";\nimport { AngularComponentFactory } from \"../component-factory\";\nimport { QuestionDropdownModel } from \"survey-core\";\n\n@Component({\n selector: \"sv-ng-dropdown-question\",\n templateUrl: \"./dropdown.component.html\"\n})\nexport class DropdownQuestionComponent extends QuestionAngular<QuestionDropdownModel> {\n}\n\nAngularComponentFactory.Instance.registerComponent(\"dropdown-question\", DropdownQuestionComponent);","<div [class]=\"model.renderCssRoot\" #contentElement>\n <sv-ng-dropdown [model]=\"model\"></sv-ng-dropdown>\n <div *ngIf=\"model.isOtherSelected\" class=\"form-group\" [question]=\"model\" sv-ng-comment></div>\n</div>","import { Component } from \"@angular/core\";\nimport { QuestionAngular } from \"../question\";\nimport { AngularComponentFactory } from \"../component-factory\";\nimport { QuestionTagboxModel } from \"survey-core\";\n\n@Component({\n selector: \"sv-ng-tagbox-question\",\n templateUrl: \"./tagbox.component.html\"\n})\nexport class TagboxQuestionComponent extends QuestionAngular<QuestionTagboxModel> {\n}\n\nAngularComponentFactory.Instance.registerComponent(\"tagbox-question\", TagboxQuestionComponent);","<div [class]=\"model.renderCssRoot\" #contentElement>\n <sv-ng-tagbox [model]=\"model\"></sv-ng-tagbox>\n <div *ngIf=\"model.isOtherSelected\" class=\"form-group\" [question]=\"model\" sv-ng-comment></div>\n</div>","import { Component } from \"@angular/core\";\nimport { QuestionAngular } from \"../question\";\nimport { QuestionRatingModel } from \"survey-core\";\nimport { AngularComponentFactory } from \"../component-factory\";\n\n@Component({\n selector: \"sv-ng-rating-question\",\n templateUrl: \"./rating.component.html\"\n})\nexport class RatingQuestionComponent extends QuestionAngular<QuestionRatingModel> {\n trackByFn(index: number): number {\n return index;\n }\n public onClick(event: any) {\n event.stopPropagation();\n this.model.setValueFromClick(event.target.value);\n }\n}\n\nAngularComponentFactory.Instance.registerComponent(\"rating-question\", RatingQuestionComponent);"," <div [class]=\"model.ratingRootCss\" #contentElement>\n <fieldset role=\"radiogroup\">\n <legend role=\"presentation\" class=\"sv-hidden\"></legend>\n <span *ngIf=\"model.hasMinLabel\" [class]=\"model.cssClasses.minText\" [model]=\"model.locMinRateDescription\" sv-ng-string>\n </span>\n <label *ngFor=\"let item of model.renderedRateItems; index as index; trackBy: trackByFn\" [class]=\"model.getItemClass(item.itemValue)\" >\n <input type=\"radio\"\n class=\"sv-visuallyhidden\"\n [attr.name]=\"model.name\" [attr.id]=\"model.getInputId(index)\" [value]=\"item.value\" [attr.aria-required]=\"model.ariaRequired\" [attr.aria-label]=\"model.ariaLabel\" [attr.aria-invalid]=\"model.ariaInvalid\" [attr.aria-describedby]=\"model.ariaDescribedBy\"\n [disabled]=\"model.isInputReadOnly\" [checked]=\"model.value === item.value\" (click)=\"onClick($event)\"\n />\n <span [class]=\"model.cssClasses.itemText\" [model]=\"item.locText\" sv-ng-string></span>\n </label>\n <span *ngIf=\"model.hasMaxLabel\" [class]=\"model.cssClasses.maxText\" [model]=\"model.locMaxRateDescription\" sv-ng-string></span>\n </fieldset>\n </div>\n","import { Component } from \"@angular/core\";\nimport { QuestionAngular } from \"../question\";\nimport { QuestionBooleanModel } from \"survey-core\";\nimport { AngularComponentFactory } from \"../component-factory\";\n\n@Component({\n selector: \"sv-ng-boolean-question\",\n templateUrl: \"./boolean.component.html\"\n})\nexport class BooleanQuestionComponent extends QuestionAngular<QuestionBooleanModel> {\n onChange(event: any) {\n this.model.checkedValue = event.target.value;\n }\n}\n\nAngularComponentFactory.Instance.registerComponent(\"boolean-question\", BooleanQuestionComponent);","<div [class]=\"model.cssClasses.root\" (keydown)=\"model.onKeyDownCore($event)\" #contentElement>\n <label [class]=\"model.getItemCss()\">\n <input\n type=\"checkbox\"\n [attr.name]=\"model.name\" [attr.id]=\"model.inputId\" [attr.aria-required]=\"model.ariaRequired\" [attr.aria-label]=\"model.ariaLabel\" [attr.aria-invalid]=\"model.ariaInvalid\" [attr.aria-describedby]=\"model.ariaDescribedBy\"\n [class]=\"model.cssClasses.control\" [disabled]=\"model.isInputReadOnly\" [indeterminate]=\"model.isIndeterminate\" [value]=\"model.checkedValue\" [(ngModel)]=\"model.checkedValue\" />\n <span [class]=\"model.getLabelCss(false)\" (click)=\"model.onLabelClick($event, false)\" [model]=\"model.locLabelFalse\" sv-ng-string></span>\n <div [class]=\"model.cssClasses.switch\" (click)=\"model.onSwitchClickModel($event)\">\n <span [class]=\"model.cssClasses.slider\">\n <span *ngIf=\"model.cssClasses.sliderText && model.isDeterminated\" [class]=\"model.cssClasses.sliderText\" [model]=\"model.getCheckedLabel()\" sv-ng-string></span>\n </span>\n </div>\n <span [class]=\"model.getLabelCss(true)\" (click)=\"model.onLabelClick($event, true)\" [model]=\"model.locLabelTrue\" sv-ng-string></span>\n </label>\n</div>","import { AfterViewInit, Component, Input } from \"@angular/core\";\nimport { BaseAngular } from \"../base-angular\";\nimport { ImageItemValue, QuestionImagePickerModel } from \"survey-core\";\nimport { AngularComponentFactory } from \"../component-factory\";\n@Component({\n selector: \"sv-ng-imagepicker-item\",\n templateUrl: \"./imagepicker-item.component.html\",\n styles: [\":host { display: none; }\"]\n})\nexport class ImagePickerItemComponent extends BaseAngular<ImageItemValue> implements AfterViewInit {\n @Input() question!: QuestionImagePickerModel;\n @Input() model!: ImageItemValue;\n protected getModel(): ImageItemValue {\n return this.model;\n }\n onChange(event: any) {\n if (this.question.multiSelect) {\n if (event.target.checked) {\n this.question.value = this.question.value.concat(event.target.value);\n } else {\n var currValue = this.question.value;\n currValue.splice(this.question.value.indexOf(event.target.value), 1);\n this.question.value = currValue;\n }\n } else {\n this.question.value = event.target.value;\n }\n }\n ngAfterViewInit(): void {\n this.model.locImageLink.onChanged = () => {\n this.detectChanges();\n };\n }\n override ngOnDestroy(): void {\n super.ngOnDestroy();\n this.model.locImageLink.onChanged = () => {};\n }\n}\n\nAngularComponentFactory.Instance.registerComponent(\"sv-ng-imagepicker-item\", ImagePickerItemComponent);","<ng-template #template>\n <div [class]=\"question.getItemClass(model)\">\n <label [class]=\"question.cssClasses.label\">\n <input [type]=\"question.inputType\" [attr.name]=\"question.questionName\" [attr.value]=\"model.value\" [id]=\"question.getItemId(model)\" [attr.aria-required]=\"question.ariaRequired\" [attr.aria-label]=\"question.ariaLabel\" [attr.aria-invalid]=\"question.ariaInvalid\" [attr.aria-describedby]=\"question.ariaDescribedBy\"\n (change)=\"onChange($event)\" [checked]=\"question.isItemSelected(model)\" [disabled]=\"!question.getItemEnabled(model)\" [class]=\"question.cssClasses.itemControl\"\n />\n <div [class]=\"question.cssClasses.itemDecorator\">\n <div [class]=\"question.cssClasses.imageContainer\">\n <img *ngIf=\"model.locImageLink.renderedHtml && question.contentMode === 'image'\" [class]=\"question.cssClasses.image\" [attr.src]=\"model.locImageLink.renderedHtml\" [attr.width]=\"question.renderedImageWidth\" [attr.height]=\"question.renderedImageHeight\" [attr.alt]=\"model.locText.renderedHtml\" [style.objectFit]=\"question.imageFit\" (load)=\"question.onContentLoaded(model, $event)\"/>\n <video *ngIf=\"model.locImageLink.renderedHtml && question.contentMode === 'video'\" controls [class]=\"question.cssClasses.image\" [attr.src]=\"model.locImageLink.renderedHtml\" [attr.width]=\"question.renderedImageWidth\" [attr.height]=\"question.renderedImageHeight\" [style.objectFit]=\"question.imageFit\" (loadedmetadata)=\"question.onContentLoaded(model, $event)\"></video>\n <div *ngIf=\"!model.locImageLink.renderedHtml\" [class]=\"question.cssClasses.itemNoImage\" [style.width]=\"question.renderedImageWidth\" [style.height]=\"question.renderedImageHeight\" [style.objectFit]=\"question.imageFit\">\n <svg [class]=\"question.cssClasses.itemNoImageSvgIcon\" *ngIf=\"question.cssClasses.itemNoImageSvgIcon\">\n <use [attr.xlink:href]=\"question.cssClasses.itemNoImageSvgIconId\"></use>\n </svg>\n </div>\n </div>\n <span *ngIf=\"question.showLabel\" [class]=\"question.cssClasses.itemText\" [model]=\"model.locText\" sv-ng-string></span>\n </div>\n </label>\n </div>\n</ng-template>","import { Component } from \"@angular/core\";\nimport { QuestionAngular } from \"../question\";\nimport { ImageItemValue, ItemValue, QuestionImagePickerModel } from \"survey-core\";\nimport { AngularComponentFactory } from \"../component-factory\";\n\n@Component({\n selector: \"sv-ng-imagepicker-question\",\n templateUrl: \"./imagepicker.component.html\"\n})\nexport class ImagePickerQuestionComponent extends QuestionAngular<QuestionImagePickerModel> {\n public getItemValueComponentName(item: ItemValue): string {\n return this.model.getItemValueWrapperComponentName(item) || \"sv-ng-imagepicker-item\";\n }\n public getItemValueComponentData(item: ItemValue): any {\n return {\n componentName: \"sv-ng-imagepicker-item\",\n componentData: {\n question: this.model,\n model: item,\n data: this.model.getItemValueWrapperComponentData(item)\n }\n };\n }\n\n}\n\nAngularComponentFactory.Instance.registerComponent(\"imagepicker-question\", ImagePickerQuestionComponent);"," <fieldset [class]=\"model.getSelectBaseRootCss()\" #contentElement>\n <legend [attr.aria-label]=\"model.locTitle.renderedHtml\" role=\"radio\"></legend>\n <ng-container *ngIf=\"!model.hasColumns\">\n <ng-container *ngFor=\"let item of model.visibleChoices\">\n <ng-template [component]=\"{ name: getItemValueComponentName(item), data: getItemValueComponentData(item) }\"></ng-template>\n </ng-container>\n </ng-container>\n <ng-container *ngIf=\"model.hasColumns\">\n <div *ngFor=\"let column of model.columns\" [class]=\"model.getColumnClass()\" role=\"presentation\">\n <ng-container *ngFor=\"let item of column\">\n <ng-template [component]=\"{ name: getItemValueComponentName(item), data: getItemValueComponentData(item) }\"></ng-template>\n </ng-container>\n </div>\n </ng-container>\n </fieldset>","import { Component, Input, OnChanges } from \"@angular/core\";\nimport { BaseAngular } from \"../../base-angular\";\nimport { ButtonGroupItemModel, ItemValue, QuestionButtonGroupModel } from \"survey-core\";\n\n@Component({\n selector: \"sv-button-group-item\",\n templateUrl: \"./button-group-item.component.html\",\n styleUrls: [\"../../hide-host.scss\"]\n})\nexport class ButtonGroupItemComponent extends BaseAngular<ItemValue> implements OnChanges {\n @Input() item!: ItemValue;\n @Input() question!: QuestionButtonGroupModel;\n @Input() index!: number;\n public model!: ButtonGroupItemModel;\n public ngOnChanges(): void {\n this.model = new ButtonGroupItemModel(this.question, this.item, this.index);\n }\n protected getModel(): ItemValue {\n return this.item;\n }\n}","<ng-template #template>\n <label role=\"radio\" [class]=\"model.css.label\" [attr.title]=\"model.caption.renderedHtml\">\n <input type=\"radio\"\n [attr.name]=\"model.name\" [attr.id]=\"model.id\" [attr.aria-required]=\"model.isRequired\" [attr.aria-label]=\"model.caption.renderedHtml\" role=\"radio\" [attr.aria-invalid]=\"model.hasErrors\" [attr.aria-describedby]=\"model.describedBy\" [disabled]=\"model.readOnly\" [class]=\"model.css.control\" [(ngModel)]=\"question.renderedValue\" [attr.value]=\"model.value\" [value]=\"model.value\"/>\n <div data-bind=\"css: model.css.decorator\">\n <svg *ngIf=\"model.iconName\" [iconName]=\"model.iconName\" [size]=\"model.iconSize\" [class]=\"model.css.icon\" sv-ng-svg-icon></svg>\n <span [class]=\"model.css.caption\" *ngIf=\"model.showCaption\" [attr.title]=\"model.caption.renderedHtml\" sv-ng-string [model]=\"model.caption\">\n </span>\n </div>\n </label>\n</ng-template>","\nimport { Component } from \"@angular/core\";\nimport { QuestionAngular } from \"../../question\";\nimport { QuestionButtonGroupModel } from \"survey-core\";\n\n@Component({\n selector: \"sv-ng-buttongroup-question\",\n templateUrl: \"./button-group.component.html\"\n})\nexport class ButtonGroupQuestionComponent extends QuestionAngular<QuestionButtonGroupModel> {\n}","<div role=\"group\" [class]=\"model.cssClasses.root\">\n <sv-button-group-item *ngFor=\"let item of model.visibleChoices; index as index\" [question]=\"model\" [item]=\"item\" [index]=\"index\" ></sv-button-group-item>\n</div>\n","import { Directive, ElementRef, Input, SimpleChanges, OnChanges, OnDestroy } from \"@angular/core\";\nimport { doKey2ClickDown, doKey2ClickUp, doKey2ClickBlur, IAttachKey2clickOptions } from \"survey-core\";\n\n@Directive({\n selector: \"[key2click]\"\n})\nexport class Key2ClickDirective implements OnChanges, OnDestroy {\n static defaultOptions: IAttachKey2clickOptions = { processEsc: true, disableTabStop: false };\n private isSubscribed = false;\n\n options?: IAttachKey2clickOptions = Key2ClickDirective.defaultOptions;\n @Input() key2click?: IAttachKey2clickOptions;\n\n private onkeydown (evt: any) {\n doKey2ClickDown(evt, this.options);\n }\n private onkeyup = (evt: any) => {\n evt.preventDefault();\n evt.stopPropagation();\n doKey2ClickUp(evt, this.options);\n return false;\n }\n private blur (evt: any) {\n doKey2ClickBlur(evt);\n }\n constructor(private el: ElementRef) {\n this.subscribeEventListeners();\n }\n\n get element() {\n return this.el.nativeElement;\n }\n\n subscribeEventListeners() {\n if(this.isSubscribed) return;\n\n this.element.tabIndex = 0;\n this.element.addEventListener(\"keyup\", this.onkeyup);\n this.element.addEventListener(\"keydown\", this.onkeydown);\n this.element.addEventListener(\"blur\", this.blur);\n\n this.isSubscribed = true;\n }\n unsubscribeEventListeners() {\n if(!this.isSubscribed) return;\n\n this.element.tabIndex = -1;\n this.element.removeEventListener(\"keyup\", this.onkeyup);\n this.element.removeEventListener(\"keydown\", this.onkeydown);\n this.element.removeEventListener(\"blur\", this.blur);\n\n this.isSubscribed = false;\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n const curValue = changes[\"key2click\"].currentValue;\n if(curValue.disableTabStop) {\n this.unsubscribeEventListeners();\n } else {\n this.subscribeEventListeners();\n }\n this.options = Object.assign({}, Key2ClickDirective.defaultOptions, curValue);\n }\n\n ngOnDestroy(): void {\n this.unsubscribeEventListeners();\n }\n}","import { Component, Input } from \"@angular/core\";\nimport { BaseAngular } from \"../../base-angular\";\nimport { AngularComponentFactory } from \"../../component-factory\";\n\n@Component({\n selector: \"sv-action-bar-item\",\n templateUrl: \"./action-bar-item.component.html\",\n styleUrls: [\"../../hide-host.scss\"]\n})\nexport class ActionBarItemComponent extends BaseAngular {\n @Input() model: any;\n\n getModel() {\n return this.model;\n }\n}\n\nAngularComponentFactory.Instance.registerComponent(\"sv-action-bar-item\", ActionBarItemComponent);","<ng-template #template>\n <button type=\"button\" (click)=\"model.action()\" [key2click]=\"{ processEsc: false }\" [class]=\"model.getActionBarItemCss()\" [attr.title]=\"model.tooltip || model.title\" [disabled]=\"model.disabled\" \n data-bind=\"key2click: { processEsc: false }\">\n <svg *ngIf=\"model.iconName\" [iconName]=\"model.iconName\" [size]=\"model.iconSize\" [title]=\"model.tooltip || model.title\" [class]=\"model.cssClasses.itemIcon\" sv-ng-svg-icon></svg>\n <span *ngIf=\"model.hasTitle\" [class]=\"model.getActionBarItemTitleCss()\">{{ model.title }}</span>\n </button>\n<ng-template>","import { Component, Input } from \"@angular/core\";\nimport { ActionDropdownViewModel } from \"survey-core\";\nimport { BaseAngular } from \"../../base-angular\";\nimport { AngularComponentFactory } from \"../../component-factory\";\n\n@Component({\n selector: \"sv-action-bar-item-dropdown\",\n templateUrl: \"./action-bar-item-dropdown.component.html\",\n styleUrls: [\"../../hide-host.scss\"]\n})\nexport class ActionBarItemDropdownComponent extends BaseAngular {\n @Input() model: any\n protected viewModel!: ActionDropdownViewModel;\n\n protected getModel() {\n return this.model;\n }\n override ngOnInit(): void {\n super.ngOnInit();\n this.viewModel = new ActionDropdownViewModel(this.model);\n }\n override ngOnDestroy(): void {\n this.viewModel.dispose();\n super.ngOnDestroy();\n }\n}\n\nAngularComponentFactory.Instance.registerComponent(\"sv-action-bar-item-dropdown\", ActionBarItemDropdownComponent);","<ng-template #template>\n <button type=\"button\" (click)=\"model.action()\" [key2click]=\"{ processEsc: false }\" [class]=\"model.getActionBarItemCss()\" [title]=\"model.tooltip || model.title\" [disabled]=\"model.disabled\">\n <svg *ngIf=\"model.iconName\" [iconName]=\"model.iconName\" [size]=\"model.iconSize\" [title]=\"model.tooltip || model.title\" [class]=\"model.cssClasses.itemIcon\" sv-ng-svg-icon></svg>\n <span *ngIf=\"model.hasTitle\" [class]=\"model.getActionBarItemTitleCss()\">{{ model.title }}</span>\n <sv-ng-popup [popupModel]=\"model.popupModel\"></sv-ng-popup>\n </button>\n</ng-template>","import { Component, Input } from \"@angular/core\";\nimport { BaseAngular } from \"../base-angular\";\nimport { ItemValue } from \"survey-core\";\nimport { AngularComponentFactory } from \"../component-factory\";\n\n@Component({\n selector: \"['sv-ng-selectbase-item'], sv-ng-selebase-item\",\n templateUrl: \"./selectbase-item.html\",\n styles: [\":host { display: none; }\"]\n})\nexport class SelectBaseItemComponent extends BaseAngular<ItemValue> {\n @Input() question!: any;\n @Input() model!: ItemValue | any;\n @Input() inputType!: string;\n @Input() showLabel: boolean = true;\n protected getModel(): ItemValue {\n return this.model;\n }\n}\n\nAngularComponentFactory.Instance.registerComponent(\"sv-ng-selectbase-item\", SelectBaseItemComponent);","<ng-template #template>\n <div role=\"presentation\" [class]=\"question.getItemClass(model)\">\n <ng-container [ngSwitch]=\"inputType\">\n <label *ngSwitchCase=\"'checkbox'\" [class]=\"question.getLabelClass(model)\" [attr.aria-label]=\"question.getAriaItemLabel(model)\" [model]=\"model\" [question]=\"question\" sv-ng-checkbox-item>\n <ng-container *ngTemplateOutlet=\"itemDecorator\"></ng-container>\n </label>\n <label *ngSwitchCase=\"'radio'\" [class]=\"question.getLabelClass(model)\" [attr.aria-label]=\"question.getAriaItemLabel(model)\" [model]=\"model\" [question]=\"question\" sv-ng-radiogroup-item>\n <ng-container *ngTemplateOutlet=\"itemDecorator\"></ng-container>\n </label>\n </ng-container>\n <ng-template #itemDecorator>\n <span *ngIf=\"question.cssClasses.materialDecorator\" [class]=\"question.cssClasses.materialDecorator\">\n <svg *ngIf=\"question.itemSvgIcon\" [class]=\"question.cssClasses.itemDecorator\">\n <use [attr.xlink:href]=\"question.itemSvgIcon\"></use>\n </svg>\n </span>\n <span [class]=\"question.getControlLabelClass(model)\" [visible]=\"!model.hideCaption\">\n <sv-ng-string [model]=\"model.locText\"></sv-ng-string>\n </span> \n </ng-template>\n </div>\n</ng-template>","import { Component, Input } from \"@angular/core\";\nimport { ListModel, Action } from \"survey-core\";\nimport { BaseAngular } from \"../../base-angular\";\nimport { AngularComponentFactory } from \"../../component-factory\";\n\n@Component({\n selector: \"sv-ng-list-item, '[sv-ng-list-item]'\",\n templateUrl: \"./list-item.component.html\",\n styleUrls: [\"../../hide-host.scss\"],\n})\n\nexport class ListItemComponent extends BaseAngular {\n @Input() element: any;\n @Input() model!: Action;\n @Input() listModel!: ListModel;\n\n get ariaSelected(): boolean | string {\n return this.listModel.isItemSelected(this.model) || \"\";\n }\n get class(): string {\n return this.listModel.getItemClass(this.model);\n }\n get paddingLeft(): string {\n return this.listModel.getItemIndent(this.model);\n }\n click(event: any): void {\n this.listModel.onItemClick(this.model);\n event.stopPropagation();\n }\n pointerdown(event: any): void {\n this.listModel.onPointerDown(event, this.model);\n }\n\n getModel() {\n return this.model;\n }\n}\n\nAngularComponentFactory.Instance.registerComponent(\"sv-list-item\", ListItemComponent);","<ng-template #template>\n <li role=\"option\" [key2click] [visible]=\"listModel.isItemVisible(model)\" [class]=\"class\" [attr.aria-selected]=\"ariaSelected\" (click)=\"click($event)\" (pointerdown)=\"pointerdown($event)\">\n <ng-container *ngIf=\"model.needSeparator\">\n <div [class]=\"listModel.cssClasses.itemSeparator\"></div>\n </ng-container>\n <div [class]=\"listModel.cssClasses.itemBody\" [style.paddingLeft]=\"paddingLeft\">\n <ng-container *ngIf=\"!model.component\">\n <svg *ngIf=\"model.iconName\" [class]=\"listModel.cssClasses.itemIcon\" [iconName]=\"model.iconName\" [size]=\"24\"\n sv-ng-svg-icon></svg>\n <sv-ng-string [model]=\"model.locTitle\"></sv-ng-string>\n </ng-container>\n <ng-container *ngIf=\"model.component\">\n <ng-template [component]=\"{ name: model.component, data: { model: model } }\"></ng-template>\n </ng-container>\n </div>\n </li>\n</ng-template>","import { Component, Input } from \"@angular/core\";\nimport { BaseAngular } from \"../../base-angular\";\nimport { AngularComponentFactory } from \"../../component-factory\";\n\n@Component({\n selector: \"sv-ng-list, '[sv-ng-list]'\",\n templateUrl: \"./list.component.html\",\n styleUrls: [\"../../hide-host.scss\"]\n})\nexport class ListComponent extends BaseAngular {\n @Input() model: any;\n\n getModel() {\n return this.model;\n }\n onGoToItems(event: Event): void {\n this.model.goToItems(event);\n }\n onMouseDown(event: Event): void {\n event.preventDefault();\n }\n onKeyDown(event: Event): void {\n this.model.onKeyDown(event);\n }\n onMouseMove(event: Event): void {\n this.model.onMouseMove(event);\n }\n}\n\nAngularComponentFactory.Instance.registerComponent(\"sv-list\", ListComponent);","<ng-template #template>\n <div [class]=\"model.cssClasses.root\">\n <div *ngIf=\"model.showFilter\" [class]=\"model.cssClasses.filter\">\n <div [class]=\"model.cssClasses.filterIcon\">\n <svg [iconName]=\"'icon-search'\" [size]=\"24\" sv-ng-svg-icon></svg>\n </div>\n <input type=\"text\" [class]=\"model.cssClasses.filterInput\" [(ngModel)]=\"model.filterString\"\n [attr.aria-label]=\"model.filterStringPlaceholder || ''\"\n [attr.placeholder]=\"model.filterStringPlaceholder || ''\" \n (keyup)=\"onGoToItems($event)\" />\n </div>\n <div [class]=\"model.cssClasses.emptyContainer\" [visible]=\"model.isEmpty\">\n <div [class]=\"model.cssClasses.emptyText\" [attr.aria-label]=\"model.emptyMessage || ''\">{{ model.emptyMessage }}</div>\n </div>\n <ul [class]=\"model.cssClasses.itemsContainer\" role=\"listbox\" (mousedown)=\"onMouseDown($event)\" (keydown)=\"onKeyDown($event)\" (mousemove)=\"onMouseMove($event)\">\n <sv-ng-list-item *ngFor=\"let item of model.renderedActions\" [listModel]=\"model\" [model]=\"item\"></sv-ng-list-item>\n <!--ko foreach: model.renderedActions -->\n <!-- ko component: { name: 'sv-list-item', params: { item: $data, model: $parent.model } } -->\n <!-- /ko -->\n <!-- /ko -->\n </ul>\n </div>\n</ng-template>","\nimport { Component, Input } from \"@angular/core\";\nimport { AngularComponentFactory } from \"../../../component-factory\";\nimport { RendererFactory } from \"survey-core\";\n\n@Component({\n selector: \"sv-ng-rating-dropdown-question\",\n templateUrl: \"./rating-dropdown.component.html\"\n})\nexport class RatingDropdownComponent {\n @Input() model: any;\n}\n\nAngularComponentFactory.Instance.registerComponent(\"rating-dropdown-question\", RatingDropdownComponent);\nRendererFactory.Instance.registerRenderer(\n \"rating\",\n \"dropdown\",\n \"rating-dropdown-question\"\n);\n","<div [class]=\"model.cssClasses.rootDropdown\">\n <sv-ng-dropdown [model]=\"model\"></sv-ng-dropdown>\n</div>","\nimport { Component, Input } from \"@angular/core\";\nimport { AngularComponentFactory } from \"../../../component-factory\";\nimport { RendererFactory } from \"survey-core\";\n\n@Component({\n selector: \"sv-ng-boolean-checkbox-question\",\n templateUrl: \"./boolean-checkbox.component.html\"\n})\nexport class BooleanCheckboxComponent {\n @Input() model: any;\n}\n\nAngularComponentFactory.Instance.registerComponent(\"boolean-checkbox-question\", BooleanCheckboxComponent);\nRendererFactory.Instance.registerRenderer(\n \"boolean\",\n \"checkbox\",\n \"boolean-checkbox-question\"\n);\n","<div [class]=\"model.cssClasses.rootCheckbox\">\n <div [class]=\"model.getCheckboxItemCss()\">\n <label [class]=\"model.cssClasses.checkboxLabel\">\n <input\n type=\"checkbox\"\n [value]=\"model.checkedValue\" [class]=\"model.cssClasses.controlCheckbox\" \n [attr.name]=\"model.name\" [id]=\"model.inputId\" [attr.aria-required]=\"model.ariaRequired\" [attr.aria-label]=\"model.ariaLabel\"\n [attr.aria-invalid]=\"model.ariaInvalid\" [attr.aria-describedby]=\"model.ariaDescribedBy\" [(ngModel)]=\"model.checkedValue\" [value]=\"model.checkedValue\"\n [disabled]=\"model.isInputReadOnly\" [indeterminate]=\"model.isIndeterminate\"\n />\n <span [class]=\"model.cssClasses.checkboxMaterialDecorator\">\n <svg *ngIf=\"!!model.svgIcon\" [class]=\"model.cssClasses.checkboxItemDecorator\">\n <use [attr.xlink:href]=\"model.svgIcon\"></use>\n </svg>\n <span class=\"check\"></span>\n </span>\n <span *ngIf=\"model.titleLocation === 'hidden'\" [class]=\"model.cssClasses.checkboxControlLabel\" [model]=\"model.locDisplayLabel\" sv-ng-string></span>\n </label>\n </div>\n</div>","import { Component, Input } from \"@angular/core\";\nimport { LocalizableString, QuestionBooleanModel } from \"survey-core\";\n@Component({\n selector: \"sv-ng-boolean-radio-item\",\n templateUrl: \"boolean-radio-item.component.html\",\n})\nexport class BooleanRadioItemComponent {\n @Input() question!: QuestionBooleanModel;\n @Input() value!: boolean;\n @Input() locText!: LocalizableString;\n constructor() {\n\n }\n}\n","<div role=\"presentation\" [class]=\"question.getRadioItemClass(question.cssClasses, value)\">\n <label [class]=\"question.cssClasses.radioLabel\">\n <input\n type=\"radio\"\n [attr.name]=\"question.name\" [attr.aria-describedby]=\"question.ariaDescribedBy\" [value]=\"value\" [(ngModel)]=\"question.value\"\n [disabled]=\"question.isInputReadOnly\" [class]=\"question.cssClasses.itemRadioControl || ''\"\n />\n <span *ngIf=\"question.cssClasses.materialRadioDecorator\" [class]=\"question.cssClasses.materialRadioDecorator\"></span>\n <span [class]=\"question.cssClasses.radioControlLabel\" [model]=\"locText\" sv-ng-string>\n </span>\n </label>\n</div>\n","\nimport { Component, Input } from \"@angular/core\";\nimport { AngularComponentFactory } from \"../../../component-factory\";\nimport { QuestionBooleanModel, RendererFactory } from \"survey-core\";\n\n@Component({\n selector: \"sv-ng-boolean-radio-question\",\n templateUrl: \"./boolean-radio.component.html\"\n})\nexport class BooleanRadioComponent {\n @Input() model!: QuestionBooleanModel;\n}\n\nAngularComponentFactory.Instance.registerComponent(\"boolean-radio-question\", BooleanRadioComponent);\nRendererFactory.Instance.registerRenderer(\n \"boolean\",\n \"radio\",\n \"boolean-radio-question\"\n);\n","<div [class]=\"model.cssClasses.rootRadio\">\n <fieldset role=\"presentation\" [class]=\"model.cssClasses.radioFieldset\">\n <sv-ng-boolean-radio-item [value]=\"false\" [locText]=\"model.locLabelFalse\" [question]=\"model\" ></sv-ng-boolean-radio-item>\n <sv-ng-boolean-radio-item [value]=\"true\" [locText]=\"model.locLabelTrue\" [question]=\"model\" ></sv-ng-boolean-radio-item>\n </fieldset>\n</div>\n","import { Component, Input } from \"@angular/core\";\nimport { AngularComponentFactory } from \"../../../component-factory\";\nimport { SurveyProgressModel } from \"survey-core\";\nimport { EmbeddedViewContentComponent } from \"../../../embedded-view-content.component\";\n\n@Component({\n selector: \"sv-ng-progress-default\",\n templateUrl: \"./progress.component.html\"\n})\nexport class ProgressDefaultComponent extends EmbeddedViewContentComponent {\n @Input() model: any;\n getProgressTextInBarCss(css: any): string {\n return SurveyProgressModel.getProgressTextInBarCss(css);\n }\n getProgressTextUnderBarCss(css: any): string {\n return SurveyProgressModel.getProgressTextUnderBarCss(css);\n }\n}\nAngularComponentFactory.Instance.registerComponent(\"sv-progress-progress\", ProgressDefaultComponent);\nAngularComponentFactory.Instance.registerComponent(\"sv-progress-pages\", ProgressDefaultComponent);\nAngularComponentFactory.Instance.registerComponent(\"sv-progress-questions\", ProgressDefaultComponent);\nAngularComponentFactory.Instance.registerComponent(\"sv-progress-correctQuestions\", ProgressDefaultComponent);\nAngularComponentFactory.Instance.registerComponent(\"sv-progress-requiredQuestions\", ProgressDefaultComponent);","<ng-template #template>\n <div [class]=\"model.css.progress\">\n <div [class]=\"model.css.progressBar\" [style.width]=\"model.progressValue + '%'\"\n role=\"progressbar\" aria-valuemin=\"0\" aria-valuemax=\"100\">\n <span [class]=\"getProgressTextInBarCss(model.css)\">\n {{ model.progressText }}\n </span>\n </div>\n <span [class]=\"getProgressTextUnderBarCss(model.css)\"> {{ model.progressText }} </span>\n </div>\n</ng-template>","import { AfterViewInit, ChangeDetectorRef, Component, ElementRef, Input, OnChanges, OnDestroy, OnInit, SimpleChanges, ViewChild } from \"@angular/core\";\nimport { AngularComponentFactory } from \"../../../component-factory\";\nimport { SurveyModel, SurveyProgressButtonsModel } from \"survey-core\";\n\n@Component({\n selector: \"sv-ng-progress-buttons\",\n templateUrl: \"./progress.component.html\"\n})\nexport class ProgressButtonsComponent implements OnDestroy, AfterViewInit, OnChanges, OnInit {\n @Input() model!: SurveyModel;\n @ViewChild(\"progressButtonsListContainer\") progressButtonsListContainer!: ElementRef<HTMLDivElement>;\n private progressButtonsModel!: SurveyProgressButtonsModel;\n private hasScroller: boolean = false;\n private updateScroller: any = undefined;\n constructor(private changeDetectorRef: ChangeDetectorRef) {\n }\n private createProgressButtonsModel() {\n this.progressButtonsModel = new SurveyProgressButtonsModel(this.model);\n }\n ngOnInit(): void {\n this.createProgressButtonsModel();\n }\n ngOnChanges(changes: SimpleChanges): void {\n this.createProgressButtonsModel();\n }\n public isListElementClickable(index: number): boolean {\n return this.progressButtonsModel.isListElementClickable(index);\n }\n public getListElementCss(index: number): string {\n return this.progressButtonsModel.getListElementCss(index);\n }\n public clickListElement(index: number): void {\n this.progressButtonsModel.clickListElement(index);\n }\n public getScrollButtonCss(isLeftScroll: boolean): string {\n return this.progressButtonsModel.getScrollButtonCss(this.hasScroller, isLeftScroll);\n }\n public clickScrollButton(\n isLeftScroll: boolean\n ): void {\n if(this.progressButtonsListContainer) {\n this.progressButtonsListContainer.nativeElement.scrollLeft += (isLeftScroll ? -1 : 1) * 70;\n }\n }\n public ngAfterViewInit(): void {\n this.progressButtonsModel = new SurveyProgressButtonsModel(this.model);\n this.updateScroller = setInterval(() => {\n if(!!this.progressButtonsListContainer?.nativeElement) {\n const listContainerElement = this.progressButtonsListContainer.nativeElement;\n this.hasScroller = listContainerElement.scrollWidth > listContainerElement.offsetWidth;\n this.changeDetectorRef.detectChanges();\n }\n }, 100);\n }\n public ngOnDestroy(): void {\n if (typeof this.updateScroller !== \"undefined\") {\n clearInterval(this.updateScroller);\n this.updateScroller = undefined;\n }\n }\n}\nAngularComponentFactory.Instance.registerComponent(\"sv-progress-buttons\", ProgressButtonsComponent);\n","<div [class]=\"model.css.progressButtonsContainerCenter\">\n <div [class]=\"model.css.progressButtonsContainer\">\n <div\n [class]=\"getScrollButtonCss(true)\"\n (click)=\"clickScrollButton(true)\"\n role=\"button\"\n ></div>\n <div\n [class]=\"model.css.progressButtonsListContainer\" #progressButtonsListContainer>\n <ul [class]=\"model.css.progressButtonsList\">\n <li\n *ngFor=\"let page of model.visiblePages; index as index\"\n [class]=\"getListElementCss(index)\"\n (click)=\"isListElementClickable(index) ? clickListElement(index) : null\">\n <div\n [class]=\"model.css.progressButtonsPageTitle\"\n [title]=\"page.locNavigationTitle.renderedHtml || page.name\"\n >\n {{ page.locNavigationTitle.renderedHtml || page.name }}\n </div>\n <div\n [class]=\"model.css.progressButtonsPageDescription\"\n [title]=\"page.locNavigationDescription.renderedHtml\"\n >\n {{ page.locNavigationDescription.renderedHtml }}\n </div>\n </li>\n </ul>\n </div>\n <div\n [class]=\"getScrollButtonCss(false)\"\n (click)=\"clickScrollButton(false)\"\n role=\"button\"\n ></div>\n </div>\n</div>","import { AfterViewInit, Component, ElementRef, Input, ViewChild } from \"@angular/core\";\nimport { PanelModel } from \"survey-core\";\nimport { BaseAngular } from \"./base-angular\";\nimport { AngularComponentFactory } from \"./component-factory\";\n@Component({\n selector: \"sv-ng-panel, '[sv-ng-panel]'\",\n templateUrl: \"./panel.component.html\",\n})\nexport class PanelComponent extends BaseAngular<PanelModel> implements AfterViewInit {\n @Input() model!: PanelModel;\n @ViewChild(\"panelContainer\", { static: false, read: ElementRef }) panelContainerRef!: ElementRef<HTMLDivElement>;\n protected getModel(): PanelModel {\n return this.model;\n }\n ngAfterViewInit(): void {\n if(!!this.panelContainerRef?.nativeElement) {\n this.model.survey?.afterRenderPanel(this.model, this.panelContainerRef.nativeElement);\n }\n }\n trackRowBy = (_: any, row: any) => {\n return row.id;\n }\n}\nAngularComponentFactory.Instance.registerComponent(\"panel\", PanelComponent);","<ng-template #template>\n <div *ngIf=\"model.isVisible\" [attr.id]=\"model.id\" [class]=\"model.getContainerCss()\" (focusin)=\"model.focusIn()\" #panelContainer>\n <div *ngIf=\"model.hasDescription || model.hasTitle\" [element]=\"model\" sv-ng-element-header></div>\n <!-- ko template: { name: 'survey-question-errors', data: $data } -->\n <!-- /ko -->\n <div *ngIf=\"!model.isCollapsed\" [style.paddingLeft]=\"model.innerPaddingLeft\" [class]=\"model.cssClasses.panel.content\" [attr.id]=\"model.contentId\">\n <ng-container *ngFor=\"let row of model.rows; trackBy: trackRowBy\">\n <ng-template [component]=\"{ name: $any(model.survey).getRowWrapperComponentName(row), data: { componentData: $any(model.survey).getRowWrapperComponentData(row) } }\">\n <sv-ng-row [row]=\"row\"></sv-ng-row>\n </ng-template>\n </ng-container>\n <sv-ng-action-bar [model]=\"model.getFooterToolbar()\"></sv-ng-action-bar>\n </div>\n </div>\n</ng-template>","import { Action } from \"survey-core\";\nimport { Base } from \"survey-core\";\nimport { AngularComponentFactory } from \"../../component-factory\";\nimport { Component, Input } from \"@angular/core\";\n\n@Component({\n templateUrl: \"./survey-nav-btn.component.html\",\n selector: \"sv-ng-nav-btn\",\n styles: [\":host { display: contents; }\"]\n})\nexport class SurveyNavigationButton {\n @Input() public model!: Action;\n getModel(): Action {\n return this.model;\n }\n buttonMouseDown(): Base {\n return this.model.data && this.model.data.mouseDown();\n }\n}\n\nAngularComponentFactory.Instance.registerComponent(\"sv-nav-btn\", SurveyNavigationButton);\n","<input *ngIf=\"model.visible\" type=\"button\" [value]=\"model.title\" [class]=\"model.innerCss\" (mousedown)=\"buttonMouseDown()\" (click)=\"model.action()\" [disabled]=\"model.disabled\"/>","import { Component } from \"@angular/core\";\nimport { QuestionAngular } from \"../question\";\nimport { QuestionMatrixModel } from \"survey-core\";\nimport { AngularComponentFactory } from \"../component-factory\";\n\n@Component({\n selector: \"sv-ng-matrix-question\",\n templateUrl: \"./matrix.component.html\",\n styleUrls: [\"../hide-host.scss\"]\n})\nexport class MatrixQuestionComponent extends QuestionAngular<QuestionMatrixModel> {\n override ngOnInit() {\n this.model.visibleRowsChangedCallback = () => {\n this.detectChanges();\n };\n super.ngOnInit();\n }\n public onChange(row: any, column: any): void {\n if (this.model.isInputReadOnly) return;\n row.value = column.value;\n this.detectChanges();\n }\n trackRowByFn(i: number, row: any): string {\n return \"column-\" + row.name + \"-\" + i;\n }\n trackColumnByFn(i: number, column: any): string {\n return \"column-\" + column.value + \"-\" + i;\n }\n}\n\nAngularComponentFactory.Instance.registerComponent(\"matrix-question\", MatrixQuestionComponent);","<ng-template #template>\n <div [class]=\"model.cssClasses.tableWrapper\" #contentElement>\n <fieldset>\n <legend [attr.aria-label]=\"model.locTitle.renderedHtml\"></legend>\n <table [class]=\"model.getTableCss()\">\n <thead *ngIf=\"model.showHeader\">\n <tr>\n <td [visible]=\"model.hasRows\"></td>\n <th\n *ngFor=\"let column of model.visibleColumns\" [class]=\"model.cssClasses.headerCell\">\n <ng-template [component]=\"{ name: model.getColumnHeaderWrapperComponentName(column), data: { componentData: model.getColumnHeaderWrapperComponentData(column) } }\">\n <sv-ng-string [model]=\"column.locText\"></sv-ng-string>\n </ng-template>\n </th>\n </tr>\n </thead>\n <tbody>\n <tr *ngFor=\"let row of model.visibleRows; trackBy: trackRowByFn \" [class]=\"row.rowClasses || undefined\">\n <td [class]=\"model.cssClasses.rowTextCell\" *ngIf=\"model.hasRows\">\n <ng-template [component]=\"{ name: model.getRowHeaderWrapperComponentName($any(row)), data: { componentData: model.getRowHeaderWrapperComponentData($any(row)) } }\">\n <sv-ng-string [model]=\"row.locText\"></sv-ng-string>\n </ng-template>\n </td>\n <ng-container *ngIf=\"model.hasCellText\">\n <td *ngFor=\"let column of model.visibleColumns\"\n [class]=\"model.getItemClass(row, column)\"\n (click)=\"onChange(row, column)\" [model]=\"model.getCellDisplayLocText(row.name, column)\" sv-ng-string>\n </td>\n </ng-container>\n <ng-container *ngIf=\"!model.hasCellText\">\n <td\n *ngFor=\"let column of model.visibleColumns; index as columnIndex; trackBy: trackColumnByFn\"\n [attr.data-responsive-title]=\"column.locText.renderedHtml\"\n [class]=\"model.cssClasses.cell\">\n <label [class]=\"model.getItemClass(row, column)\">\n <input\n type=\"radio\"\n [class]=\"model.cssClasses.itemValue\"\n [name]=\"row.fullName\"\n [value]=\"column.value\"\n [checked]=\"row.value === column.value\"\n [disabled]=\"model.isInputReadOnly\"\n [attr.id]=\"model.inputId + '_' + row.name + '_' + columnIndex\"\n (change)=\"onChange(row, column)\"\n [attr.aria-required]=\"model.ariaRequired\"\n [attr.aria-label]=\"column.locText.renderedHtml\"\n [attr.aria-invalid]=\"model.ariaInvalid\"\n [attr.aria-describedby]=\"model.ariaDescribedBy\"\n />\n <span [class]=\"model.cssClasses.materialDecorator\">\n <svg *ngIf=\"model.itemSvgIcon\" [class]=\"model.cssClasses.itemDecorator\">\n <use [attr.xlink:href]=\"model.itemSvgIcon\"></use>\n </svg> \n </span>\n <span [visible]=\"model.isMobile\" [class]=\"model.cssClasses.cellResponsiveTitle\" [model]=\"column.locText\" sv-ng-string></span>\n </label>\n </td>\n </ng-container>\n </tr>\n </tbody>\n </table>\n </fieldset>\n </div>\n</ng-template>","import { Component } from \"@angular/core\";\nimport { QuestionAngular } from \"../question\";\nimport { QuestionFileModel } from \"survey-core\";\nimport { AngularComponentFactory } from \"../component-factory\";\n@Component({\n selector: \"sv-ng-file-question\",\n templateUrl: \"./file.component.html\",\n styleUrls: []\n})\nexport class FileQuestionComponent extends QuestionAngular<QuestionFileModel> {\n trackFilesFn: (index: number) => string = (index: number): string => {\n return this.model.inputId + \"_\" + index;\n }\n}\n\nAngularComponentFactory.Instance.registerComponent(\"file-question\", FileQuestionComponent);","<div [class]=\"model.fileRootCss\" #contentElement>\n <input\n [class]=\"model.cssClasses.fileInput\"\n *ngIf=\"!model.isReadOnly\"\n type=\"file\"\n [attr.id]=\"model.inputId\"\n (change)=\"model.doChange($event)\"\n [attr.aria-required]=\"model.ariaRequired\"\n [attr.aria-label]=\"model.ariaLabel\"\n [attr.aria-invalid]=\"model.ariaInvalid\"\n [attr.aria-describedby]=\"model.ariaDescribedBy\"\n [attr.multiple]=\"model.multipleRendered\"\n [attr.title]=\"model.inputTitle\"\n [attr.accept]=\"model.acceptedTypes\"\n />\n <input\n *ngIf=\"model.isReadOnly\"\n type=\"file\"\n disabled\n [class]=\"model.getReadOnlyFileCss()\"\n [attr.multiple]=\"model.multipleRendered\"\n [attr.placeholder]=\"model.title\"\n style=\"color: transparent\"\n />\n <div\n [class]=\"model.getFileDecoratorCss()\"\n (drop)=\"model.onDrop($event)\"\n (dragover)=\"model.onDragOver($event)\"\n (dragleave)=\"model.onDragLeave($event)\"\n >\n <span [class]=\"model.cssClasses.dragAreaPlaceholder\">{{ model.dragAreaPlaceholder }}</span>\n <div [class]=\"model.cssClasses.wrapper\">\n <label\n role=\"button\"\n [class]=\"model.getChooseFileCss()\"\n [attr.for]=\"model.inputId\"\n [attr.aria-label]=\"model.chooseButtonCaption\"\n >\n <span>{{ model.chooseButtonCaption }}</span>\n <svg *ngIf=\"model.cssClasses.chooseFileIconId\" [title]=\"model.chooseButtonCaption\" [iconName]=\"model.cssClasses.chooseFileIconId\" [size]=\"'auto'\" sv-ng-svg-icon></svg>\n </label>\n <span\n [class]=\"model.cssClasses.noFileChosen\"\n *ngIf=\"model.isEmpty()\"\n >{{ model.noFileChosenCaption }}</span\n >\n </div>\n </div>\n <button\n type=\"button\"\n *ngIf=\"model.showRemoveButton\"\n [class]=\"model.cssClasses.removeButton\"\n (click)=\"model.doClean($event)\"\n >\n <span>{{ model.cleanButtonCaption }}</span>\n <svg *ngIf=\"model.cssClasses.removeButtonIconId\" [iconName]=\"model.cssClasses.removeButtonIconId\" [size]=\"'auto'\" sv-ng-svg-icon></svg>\n </button>\n <div [class]=\"model.cssClasses.fileList || undefined\" *ngIf=\"!model.isEmpty()\">\n <span\n *ngFor=\"let val of model.previewValue; index as index; trackBy: trackFilesFn\"\n [visible]=\"val && model.isPreviewVisible(index)\"\n [class]=\"model.cssClasses.preview\"\n >\n <div *ngIf=\"val.name && model.cssClasses.fileSign\" [class]=\"model.cssClasses.fileSign\">\n <a\n (click)=\"model.doDownloadFile($event, val)\"\n [attr.href]=\"val.content | safeUrl\"\n [attr.title]=\"val.name\"\n [attr.download]=\"val.name\"\n [attr.width]=\"model.imageWidth\"\n >{{ val.name }}</a\n >\n </div>\n <div [class]=\"model.cssClasses.imageWrapper\">\n <img\n *ngIf=\"model.canPreviewImage(val)\"\n [attr.src]=\"val.content | safeUrl\"\n [attr.height]=\"model.imageHeight\"\n [attr.width]=\"model.imageWidth\"\n alt=\"File preview\"\n />\n <svg *ngIf=\"model.defaultImage(val)\" \n [iconName]=\"model.cssClasses.defaultImageIconId\" [partCss]=\"model.cssClasses.defaultImage\" [size]=\"'auto'\" sv-ng-svg-icon></svg>\n <div *ngIf=\"val.name && !model.isReadOnly\" [class]=\"model.cssClasses.removeFileButton\" (click)=\"model.doRemoveFile(val)\">\n <span\n [class]=\"model.cssClasses.removeFile\"\n >{{ model.removeFileCaption }}</span\n >\n <svg *ngIf=\"model.cssClasses.removeFileSvgIconId\" [title]=\"model.removeFileCaption\" [partCss]=\"model.cssClasses.removeFileSvg\" [iconName]=\"model.cssClasses.removeFileSvgIconId\" [size]=\"'auto'\" sv-ng-svg-icon ></svg>\n </div>\n </div>\n <div *ngIf=\"val.name && model.cssClasses.fileSignBottom\" [class]=\"model.cssClasses.fileSignBottom\">\n <a\n (click)=\"model.doDownloadFile($event, val)\"\n [attr.href]=\"val.content | safeUrl\"\n [attr.title]=\"val.name\"\n [attr.download]=\"val.name\"\n [attr.width]=\"model.imageWidth\"\n >{{ val.name }}</a\n >\n </div>\n </span>\n </div>\n <button\n type=\"button\"\n *ngIf=\"model.showRemoveButtonBottom\"\n [class]=\"model.showRemoveButtonBottom\"\n (click)=\"model.doClean($event)\"\n >\n <span>{{ model.cleanButtonCaption }}</span>\n <svg *ngIf=\"model.cssClasses.removeButtonIconId\" [iconName]=\"model.cssClasses.removeButtonIconId\" [size]=\"'auto'\" sv-ng-svg-icon></svg>\n </button>\n <sv-action-bar *ngIf=\"model.mobileFileNavigatorVisible\" [model]=\"model.mobileFileNavigator\"></sv-action-bar>\n</div>","import { Component } from \"@angular/core\";\nimport { AngularComponentFactory } from \"../component-factory\";\nimport { QuestionAngular } from \"../question\";\nimport { QuestionCommentModel } from \"survey-core\";\n\n@Component({\n templateUrl: \"./comment.component.html\",\n selector: \"sv-ng-question-comment\"\n})\n\nexport class CommentQuestionComponent extends QuestionAngular<QuestionCommentModel> {\n onChange(event: any) {\n this.model.value = event.target.value;\n }\n}\nAngularComponentFactory.Instance.registerComponent(\"comment-question\", CommentQuestionComponent);","<textarea\n*ngIf=\"!model.isReadOnlyRenderDiv()\"\n[readonly]=\"model.isInputReadOnly\"\n[attr.disabled]=\"model.renderedInputDisabled\"\n[id]=\"model.inputId\"\n[attr.maxlength]=\"model.getMaxLength()\"\n[attr.cols]=\"model.cols\"\n[attr.rows]=\"model.rows\"\n[attr.placeholder]=\"model.renderedPlaceholder\"\n[class]=\"model.className\"\n[value]=\"model.value || null\"\n(input)=\"model.onInput($event)\"\n(keydown)=\"model.onKeyDown($event)\"\n(change)=\"onChange($event)\"\n[attr.aria-required]=\"model.ariaRequired\"\n[attr.aria-label]=\"model.ariaLabel\"\n[attr.aria-invalid]=\"model.ariaInvalid\"\n[attr.aria-describedby]=\"model.ariaDescribedBy\"\n[style.resize]=\"model.resizeStyle\"\n#contentElement></textarea>\n<div *ngIf=\"model.isReadOnlyRenderDiv()\" #contentElement>{{ model.value }}</div>","import { Component } from \"@angular/core\";\nimport { QuestionAngular } from \"../question\";\nimport { QuestionSignaturePadModel } from \"survey-core\";\nimport { AngularComponentFactory } from \"../angular-ui\";\n\n@Component({\n selector: \"sv-ng-signature-component\",\n templateUrl: \"./signature.component.html\"\n})\nexport class SignaturePadQuestionComponent extends QuestionAngular<QuestionSignaturePadModel> {}\n\nAngularComponentFactory.Instance.registerComponent(\"signaturepad-question\", SignaturePadQuestionComponent);","<div\n[class]=\"model.cssClasses.root\"\n[style.height]=\"model.signatureHeight + 'px'\" [style.width]=\"model.signatureWidth + 'px'\" #contentElement>\n<div [class]=\"model.cssClasses.placeholder\" [visible]=\"model.needShowPlaceholder()\">\n {{ model.placeHolderText }}\n</div>\n<div>\n <canvas tabindex=\"0\"></canvas>\n</div>\n<div [class]=\"model.cssClasses.controls\" [visible]=\"model.canShowClearButton\">\n <button\n type=\"button\"\n [class]=\"model.cssClasses.clearButton\"\n [title]=\"model.clearButtonCaption\"\n (click)=\"model.clearValue()\"\n >\n <span *ngIf=\"!model.cssClasses.clearButtonIconId\">✖</span>\n <svg\n *ngIf=\"model.cssClasses.clearButtonIconId\"\n [iconName]=\"model.cssClasses.clearButtonIconId\"\n [size]=\"'auto'\" sv-ng-svg-icon></svg>\n </button>\n</div>\n</div>","import { MultipleTextItemModel, QuestionMultipleTextModel, QuestionTextModel } from \"survey-core\";\nimport { Component, Input } from \"@angular/core\";\nimport { BaseAngular } from \"../base-angular\";\n\n@Component({\n selector: \"'[sv-ng-multipletext-item]'\",\n templateUrl: \"./mutlipletextitem.component.html\"\n})\nexport class MultipleTextItemComponent extends BaseAngular<QuestionTextModel> {\n @Input() question!: QuestionMultipleTextModel;\n @Input() model!: MultipleTextItemModel;\n protected getModel(): QuestionTextModel {\n return this.model.editor;\n }\n}\n","<label [class]=\"question.getItemLabelCss(model)\">\n <span [class]=\"question.getItemTitleCss()\">\n <span *ngIf=\" model.editor.isRequireTextBeforeTitle || model.editor.isRequireTextOnStart\"\n [class]=\"question.cssClasses.requiredText\">{{ model.editor.requiredText }}</span>\n <sv-ng-string [model]=\"model.locTitle\"></sv-ng-string>\n <span\n *ngIf=\"model.editor.isRequireTextAfterTitle\"\n [class]=\"question.cssClasses.requiredText\"\n >{{ model.editor.requiredText }}</span\n >\n </span>\n <div [class]=\"question.getItemCss()\">\n <div *ngIf=\"model.editor.showErrorOnTop && model.editor.hasVisibleErrors\" [element]=\"model.editor\" sv-ng-errors></div>\n <sv-ng-text-question [model]=\"model.editor\"></sv-ng-text-question>\n <div *ngIf=\"model.editor.showErrorOnBottom && model.editor.hasVisibleErrors\" [element]=\"model.editor\" sv-ng-errors></div>\n </div>\n <div *ngIf=\"model.editor.isErrorsModeTooltip && model.editor.hasVisibleErrors\" [element]=\"model.editor\" [location]=\"'tooltip'\" sv-ng-errors></div>\n</label>","import { QuestionAngular } from \"../question\";\nimport { MultipleTextItemModel, QuestionMultipleTextModel } from \"survey-core\";\nimport { Component } from \"@angular/core\";\nimport { AngularComponentFactory } from \"../component-factory\";\n\n@Component({\n selector: \"sv-ng-multipletext-question\",\n templateUrl: \"./multipletext.component.html\"\n})\nexport class MultipleTextComponent extends QuestionAngular<QuestionMultipleTextModel> {\n trackRowBy = (index: number): string => {\n return this.model.inputId + \"rowkey\" + index;\n }\n trackItemBy (_: number, item: MultipleTextItemModel): string {\n return \"item\" + item.editor.id;\n }\n}\n\nAngularComponentFactory.Instance.registerComponent(\"multipletext-question\", MultipleTextComponent);","<table [class]=\"model.cssClasses.root\" #contentElement>\n <tbody>\n <tr\n *ngFor=\"let row of model.getRows(); index as rowIndex; trackBy: trackRowBy\"\n [class]=\"model.cssClasses.row\"\n >\n <ng-container *ngFor=\"let item of row; trackBy: trackItemBy\" >\n <td [class]=\"model.cssClasses.cell\" [question]=\"model\" [model]=\"item\" sv-ng-multipletext-item></td>\n </ng-container>\n </tr>\n </tbody>\n</table>\n","import { Component } from \"@angular/core\";\nimport { ItemValue, QuestionRankingModel } from \"survey-core\";\nimport { AngularComponentFactory } from \"../component-factory\";\nimport { SelectBaseComponent } from \"./selectbase.component\";\n\n@Component({\n selector: \"sv-ng-ranking-question\",\n templateUrl: \"./ranking.component.html\",\n})\nexport class RankingQuestionComponent extends SelectBaseComponent<QuestionRankingModel> {\n public override inputType: string = \"\";\n trackItemBy = (index: number, item: ItemValue): string => {\n return item.value + \"-\" + index + \"-item\";\n }\n public override getDefaultComponentName(): string {\n return \"sv-ng-ranking-item\";\n }\n public override getItemValueComponentData(item: ItemValue, index?: number): any {\n const res = super.getItemValueComponentData(item);\n res.componentData.index = index;\n return res;\n }\n}\nAngularComponentFactory.Instance.registerComponent(\"ranking-question\", RankingQuestionComponent);","<div [class]=\"model.rootClass\" #contentElement>\n <ng-container *ngFor=\"let item of model.rankingChoices; index as index; trackBy: trackItemBy\">\n <ng-template [component]=\"{ name: getItemValueComponentName(item), data: getItemValueComponentData(item, index) }\"></ng-template>\n </ng-container>\n</div>","import { Component, Input } from \"@angular/core\";\nimport { BaseAngular } from \"../base-angular\";\nimport { ItemValue, QuestionRankingModel } from \"survey-core\";\nimport { AngularComponentFactory } from \"../component-factory\";\n\n@Component({\n selector: \"sv-ng-ranking-item\",\n templateUrl: \"./ranking-item.component.html\"\n})\nexport class RankingItemComponent extends BaseAngular<ItemValue> {\n @Input() question!: QuestionRankingModel;\n @Input() model!: ItemValue;\n @Input() index!: number;\n protected getModel(): ItemValue {\n return this.model;\n }\n}\nAngularComponentFactory.Instance.registerComponent(\"sv-ng-ranking-item\", RankingItemComponent);","\n\n\n<div tabindex=\"0\" [attr.data-sv-drop-target-ranking-item]=\"index\" \n [class]=\"question.getItemClass(model)\"\n (keydown)=\"question.handleKeydown($event, model)\"\n (pointerdown)=\"question.handlePointerDown($event, model, $any($event.currentTarget))\">\n <div tabindex=\"-1\" style=\"outline: none;\">\n <div [class]=\"question.cssClasses.itemGhostNode\"></div>\n <div [class]=\"question.cssClasses.itemContent\">\n <div [class]=\"question.cssClasses.itemIconContainer\">\n <svg\n width=\"10\"\n height=\"16\"\n viewBox=\"0 0 10 16\"\n [class]=\"question.getIconHoverCss()\"\n xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M6 2C6 0.9 6.9 0 8 0C9.1 0 10 0.9 10 2C10 3.1 9.1 4 8 4C6.9 4 6 3.1 6 2ZM2 0C0.9 0 0 0.9 0 2C0 3.1 0.9 4 2 4C3.1 4 4 3.1 4 2C4 0.9 3.1 0 2 0ZM8 6C6.9 6 6 6.9 6 8C6 9.1 6.9 10 8 10C9.1 10 10 9.1 10 8C10 6.9 9.1 6 8 6ZM2 6C0.9 6 0 6.9 0 8C0 9.1 0.9 10 2 10C3.1 10 4 9.1 4 8C4 6.9 3.1 6 2 6ZM8 12C6.9 12 6 12.9 6 14C6 15.1 6.9 16 8 16C9.1 16 10 15.1 10 14C10 12.9 9.1 12 8 12ZM2 12C0.9 12 0 12.9 0 14C0 15.1 0.9 16 2 16C3.1 16 4 15.1 4 14C4 12.9 3.1 12 2 12Z\" />\n </svg>\n <svg\n width=\"10\"\n height=\"24\"\n viewBox=\"0 0 10 24\"\n [class]=\"question.getIconFocusCss()\"\n xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M10 5L5 0L0 5H4V9H6V5H10Z\" />\n <path d=\"M6 19V15H4V19H0L5 24L10 19H6Z\" />\n </svg>\n </div>\n\n <div [class]=\"question.cssClasses.itemIndex\">{{ question.getNumberByIndex(index) }}</div>\n <div [class]=\"question.cssClasses.controlLabel\">\n <sv-ng-string [model]=\"model.locText\"></sv-ng-string>\n </div>\n </div>\n </div>\n</div>","import { Component, Input } from \"@angular/core\";\nimport { LocalizableString } from \"survey-core\";\nimport { AngularComponentFactory } from \"./component-factory\";\n\n@Component({\n selector: \"sv-ng-string-editor\",\n templateUrl: \"./string-editor.component.html\"\n})\nexport class StringEditorComponent {\n @Input() model!: LocalizableString;\n\n onInput = (event: any) => {\n this.model.text = event.target.innerText;\n };\n onClick = (event: any) => {\n event.preventDefault();\n event.stopPropagation();\n };\n}\nAngularComponentFactory.Instance.registerComponent(LocalizableString.editableRenderer, StringEditorComponent);","<span style=\"position: static\">\n <span\n class=\"sv-string-editor\"\n contenteditable=\"true\"\n style=\"position: static\"\n *ngIf=\"model.hasHtml\"\n [innerHtml]=\"model.renderedHtml\"\n (blur)=\"onInput($event)\"\n (click)=\"onClick($event)\"\n ></span>\n <span\n class=\"sv-string-editor\"\n contenteditable=\"true\"\n style=\"position: static\"\n *ngIf=\"!model.hasHtml\"\n (blur)=\"onInput($event)\"\n (click)=\"onClick($event)\"\n >{{ model.renderedHtml }}</span\n >\n</span>","import { Action, QuestionPanelDynamicModel } from \"survey-core\";\nimport { AngularComponentFactory } from \"../../component-factory\";\nimport { Component, Input } from \"@angular/core\";\n\n@Component({\n selector: \"\",\n template: \"\"\n})\nexport class PaneldynamicAction {\n @Input() data: any;\n @Input() model!: Action;\n public get question(): QuestionPanelDynamicModel {\n return (this.model && this.model.data.question) || this.data.question;\n }\n}\n\n@Component({\n selector: \"sv-ng-paneldynamic-add-btn\",\n templateUrl: \"./paneldynamic-add-btn.component.html\"\n})\nexport class PanelDynamicAddBtn extends PaneldynamicAction {\n addPanelClick() {\n this.question.addPanelUI();\n }\n}\nAngularComponentFactory.Instance.registerComponent(\"sv-paneldynamic-add-btn\", PanelDynamicAddBtn);","<button type=\"button\" *ngIf=\"question.canAddPanel\" [class]=\"question.getAddButtonCss()\" (click)=\"addPanelClick()\">\n<span [class]=\"question.cssClasses.buttonAddText\">{{question.panelAddText}}</span>\n</button>","import { Component } from \"@angular/core\";\nimport { AngularComponentFactory } from \"../../component-factory\";\nimport { PaneldynamicAction } from \"./paneldynamic-add-btn.component\";\n\n@Component({\n selector: \"sv-ng-paneldynamic-next-btn\",\n templateUrl: \"./paneldynamic-next-btn.component.html\"\n})\nexport class PanelDynamicNextBtn extends PaneldynamicAction {\n nextPanelClick() {\n this.question.goToNextPanel();\n }\n}\n\nAngularComponentFactory.Instance.registerComponent(\"sv-paneldynamic-next-btn\", PanelDynamicNextBtn);\n","<div [attr.title]=\"question.panelNextText\" (click)=\"nextPanelClick()\" [class]=\"question.getNextButtonCss()\">\n <svg [iconName]=\"question.cssClasses.progressBtnIcon\" [size]=\"'auto'\" sv-ng-svg-icon></svg>\n</div>","import { Component } from \"@angular/core\";\nimport { AngularComponentFactory } from \"../../component-factory\";\nimport { PaneldynamicAction } from \"./paneldynamic-add-btn.component\";\n\n@Component({\n selector: \"sv-ng-paneldynamic-prev-btn\",\n templateUrl: \"./paneldynamic-prev-btn.component.html\"\n})\nexport class PanelDynamicPrevBtn extends PaneldynamicAction {\n prevPanelClick() {\n this.question.goToPrevPanel();\n }\n}\nAngularComponentFactory.Instance.registerComponent(\"sv-paneldynamic-prev-btn\", PanelDynamicPrevBtn);","<div [attr.title]=\"question.panelPrevText\" (click)=\"prevPanelClick()\" [class]=\"question.getPrevButtonCss()\">\n <svg [iconName]=\"question.cssClasses.progressBtnIcon\" [size]=\"'auto'\" sv-ng-svg-icon></svg>\n</div>\n","import { Component } from \"@angular/core\";\nimport { AngularComponentFactory } from \"../../component-factory\";\nimport { PaneldynamicAction } from \"./paneldynamic-add-btn.component\";\n\n@Component({\n selector: \"sv-ng-paneldynamic-progress-text\",\n templateUrl: \"./paneldynamic-progress-text.component.html\"\n})\nexport class PanelDynamicProgressText extends PaneldynamicAction {\n}\n\nAngularComponentFactory.Instance.registerComponent(\"sv-paneldynamic-progress-text\", PanelDynamicProgressText);","<div [class]=\"question.cssClasses.progressText\">{{ question.progressText }}</div>\n","import { Component, OnInit } from \"@angular/core\";\nimport { QuestionAngular } from \"../question\";\nimport { PanelModel, QuestionPanelDynamicModel, SurveyModel } from \"survey-core\";\nimport { AngularComponentFactory } from \"../component-factory\";\n\n@Component({\n selector: \"sv-ng-paneldynamic-question\",\n templateUrl: \"./paneldynamic.component.html\"\n})\nexport class PanelDynamicQuestionComponent extends QuestionAngular<QuestionPanelDynamicModel | any> implements OnInit {\n get renderedPanels(): PanelModel[] {\n if (this.model.isRenderModeList) return this.model.panels;\n const panels = [];\n if (this.model.currentPanel) {\n panels.push(this.model.currentPanel);\n }\n return panels;\n }\n protected override onModelChanged(): void {\n super.onModelChanged();\n this.model.panelCountChangedCallback = () => {\n this.detectChanges();\n };\n this.model.currentIndexChangedCallback = () => {\n this.detectChanges();\n };\n this.model.renderModeChangedCallback = () => {\n this.detectChanges();\n };\n }\n get progressCssClass() {\n return this.model.isProgressTopShowing\n ? this.model.cssClasses.progressTop\n : this.model.cssClasses.progressBottom;\n }\n override ngOnDestroy(): void {\n this.model.panelCountChangedCallback = () => {};\n this.model.currentIndexChangedCallback = () => {};\n this.model.renderModeChangedCallback = () => {};\n super.ngOnDestroy();\n }\n public getPanelComponentName(panel: PanelModel): string {\n const survey = this.surveyModel as SurveyModel;\n if(!!survey) {\n const name = survey.getElementWrapperComponentName(panel);\n if(!!name) {\n return name;\n }\n }\n return \"panel\";\n }\n public getPanelComponentData(panel: PanelModel): any {\n const survey = this.surveyModel as SurveyModel;\n let data: any;\n if(!!survey) {\n data = survey.getElementWrapperComponentData(panel);\n }\n return {\n componentName: \"panel\",\n componentData: {\n model: panel,\n data: data\n }\n };\n }\n}\n\nAngularComponentFactory.Instance.registerComponent(\"paneldynamic-question\", PanelDynamicQuestionComponent);","<div [class]=\"model.cssClasses.root\" #contentElement>\n <div *ngIf=\"model.getShowNoEntriesPlaceholder()\" [class]=\"model.cssClasses.noEntriesPlaceholder\">\n <span [model]=\"model.locNoEntriesText\" sv-ng-string></span>\n <sv-ng-paneldynamic-add-btn [data]=\"{ question: model }\"></sv-ng-paneldynamic-add-btn>\n </div>\n <div [class]=\"model.cssClasses.progress\" *ngIf=\"!model.showLegacyNavigation && model.isProgressTopShowing && model.isRangeShowing\">\n <div\n [class]=\"model.cssClasses.progressBar\"\n [style]=\"{ width: model.progress }\"\n role=\"progressbar\"\n ></div>\n </div>\n <ng-container [ngTemplateOutlet]=\"progress\" *ngIf=\"model.showLegacyNavigation && model.isProgressTopShowing\"></ng-container>\n <!-- add track by [key]=\"panel.id\" -->\n <ng-container *ngFor=\"let panel of renderedPanels; index as index\"> \n <div [class]=\"model.getPanelWrapperCss()\">\n <ng-template [component]=\"{ name: getPanelComponentName(panel), data: getPanelComponentData(panel) }\"></ng-template>\n <ng-container *ngTemplateOutlet=\"removeBtn; context: { panel }\"></ng-container>\n </div>\n <!-- add track by [key]=\"'separator' + panel.id\" -->\n <hr [class]=\"model.cssClasses.separator\" *ngIf=\"model.isRenderModeList && index < model.panelCount - 1\"/>\n </ng-container>\n <ng-container [ngTemplateOutlet]=\"progress\" *ngIf=\"model.showLegacyNavigation && model.isProgressBottomShowing\"></ng-container>\n <sv-ng-paneldynamic-add-btn *ngIf=\"model.showLegacyNavigation && model.isRenderModeList\" [data]=\"{ question: model }\"></sv-ng-paneldynamic-add-btn>\n <ng-container [ngTemplateOutlet]=\"progressV2\" *ngIf=\"model.panelCount !== 0 && !model.showLegacyNavigation\"></ng-container>\n</div>\n\n<ng-template #progressV2>\n <div [class]=\"model.cssClasses.footer\" *ngIf=\"!!model.cssClasses.footer\">\n <hr [class]=\"model.cssClasses.separator\"/>\n <div [class]=\"model.cssClasses.progress\" *ngIf=\"model.isRangeShowing && model.isProgressBottomShowing\">\n <div\n [class]=\"model.cssClasses.progressBar\"\n [style]=\"{ width: model.progress }\"\n role=\"progressbar\"\n ></div>\n </div>\n <div [class]=\"model.cssClasses.footerButtonsContainer\">\n <sv-ng-action-bar [model]=\"model.footerToolbar\"></sv-ng-action-bar>\n </div>\n </div>\n</ng-template>\n<ng-template #progress>\n <div [class]=\"this.progressCssClass\">\n <div style=\"clear: both\" [class]=\"this.progressCssClass\">\n <div [class]=\"model.cssClasses.progressContainer\">\n <sv-ng-paneldynamic-prev-btn [data]=\"{ question: model }\"></sv-ng-paneldynamic-prev-btn>\n <div [class]=\"model.cssClasses.progress\" *ngIf=\"model.isRangeShowing\">\n <div\n [class]=\"model.cssClasses.progressBar\"\n [style]=\"{ width: model.progress }\"\n role=\"progressbar\"\n ></div>\n </div>\n <sv-ng-paneldynamic-next-btn [data]=\"{ question: model }\"></sv-ng-paneldynamic-next-btn>\n </div>\n <sv-ng-paneldynamic-add-btn [data]=\"{ question: model }\"></sv-ng-paneldynamic-add-btn>\n <sv-ng-paneldynamic-progress-text [data]=\"{ question: model }\"></sv-ng-paneldynamic-progress-text>\n </div>\n </div>\n</ng-template>\n\n<ng-template #removeBtn let-panel=\"panel\">\n <button type=\"button\"\n [visible]=\"model.canRemovePanel && panel.state != 'collapsed'\" (click)=\"model.removePanelUI(panel)\" [class]=\"model.getPanelRemoveButtonCss()\">\n <span [class]=\"model.cssClasses.buttonRemoveText\">{{model.panelRemoveText}}</span>\n <span [class]=\"model.cssClasses.iconRemove\"></span>\n </button>\n</ng-template>","import { ChangeDetectorRef, Component, Input, TemplateRef, ViewContainerRef } from \"@angular/core\";\nimport { ButtonGroupItemModel, PanelModel, Question, SurveyModel } from \"survey-core\";\nimport { BaseAngular } from \"./base-angular\";\nimport { AngularComponentFactory } from \"./component-factory\";\nimport { EmbeddedViewContentComponent } from \"./embedded-view-content.component\";\n\n@Component({\n selector: \"sv-template-renderer\",\n templateUrl: \"./template-renderer.component.html\",\n styleUrls: [\"./hide-host.scss\"]\n})\nexport class TemplateRendererComponent extends EmbeddedViewContentComponent {\n @Input() componentName!: string;\n @Input() componentData!: any;\n @Input() contentTempl?: TemplateRef<unknown>;\n}\nAngularComponentFactory.Instance.registerComponent(SurveyModel.TemplateRendererComponentName, TemplateRendererComponent);","<ng-template #template>\n <ng-container *ngIf=\"!!componentName\">\n <ng-template [component]=\"{ name: componentName, data: componentData }\"></ng-template>\n </ng-container>\n <ng-container *ngIf=\"!componentName && contentTempl\">\n <ng-container *ngTemplateOutlet=\"contentTempl\"></ng-container>\n </ng-container>\n</ng-template>","import { AfterViewInit, Component, ElementRef, Input, OnChanges, OnDestroy, SimpleChanges, ViewChild } from \"@angular/core\";\nimport { AngularComponentFactory } from \"../component-factory\";\nimport { Question } from \"survey-core\";\n\n@Component(\n {\n templateUrl: \"./customwidget.component.html\",\n selector: \"sv-ng-custom-widget\"\n }\n)\nexport class CustomWidgetComponent implements AfterViewInit, OnDestroy, OnChanges {\n @Input() css: any;\n @Input() model!: Question;\n\n @ViewChild(\"content\") container!: ElementRef<HTMLDivElement>;\n\n get hasDefaultRender(): boolean {\n return this.model.customWidget.isDefaultRender || this.hasAngularComponent;\n }\n get hasHtml(): boolean {\n return this.model.customWidget.htmlTemplate ? true : false;\n }\n get customHtml(): string {\n return this.model.customWidget.htmlTemplate;\n }\n get hasAngularComponent(): boolean {\n return AngularComponentFactory.Instance.isComponentRegistered(this.model.customWidget.name);\n }\n get componentName(): string {\n if (this.hasAngularComponent) return this.model.customWidget.name;\n return this.model.getTemplate() + \"-question\";\n }\n ngAfterViewInit(): void {\n this.model.customWidget.afterRender(this.model, this.container.nativeElement);\n }\n ngOnChanges(simpleChanges: SimpleChanges) {\n if(simpleChanges[\"model\"].previousValue !== undefined && simpleChanges[\"model\"].currentValue !== undefined) {\n this.model.customWidget.afterRender(this.model, this.container.nativeElement);\n }\n }\n ngOnDestroy(): void {\n this.model.customWidget.willUnmount(this.model, this.container.nativeElement);\n }\n\n}\n\nAngularComponentFactory.Instance.registerComponent(\"survey-customwidget\", CustomWidgetComponent);\n","<div #content>\n <div *ngIf=\"hasHtml\" [innerHTML]=\"customHtml | safeHtml\"></div>\n <ng-container *ngIf=\"hasDefaultRender\">\n <ng-template [component]=\"{ name: componentName, data: { model: model, css: css } }\"></ng-template> \n </ng-container>\n</div>","import { Component, Input } from \"@angular/core\";\nimport { AngularComponentFactory } from \"../../../component-factory\";\nimport { IAction } from \"survey-core\";\nimport { EmbeddedViewContentComponent } from \"../../../embedded-view-content.component\";\n\n@Component({\n templateUrl: \"drag-drop-icon.component.html\",\n selector: \"sv-ng-matrix-drag-drop-icon\",\n styleUrls: [\"../../../hide-host.scss\"]\n})\nexport class MatrixDynamicDragDropIconComponent extends EmbeddedViewContentComponent {\n @Input() public model!: IAction;\n\n get question() {\n return this.model.data.question;\n }\n}\n\nAngularComponentFactory.Instance.registerComponent(\n \"sv-matrix-drag-drop-icon\",\n MatrixDynamicDragDropIconComponent\n);\n","<ng-template #template>\n <svg *ngIf=\"question.iconDragElement\" [class]=\"question.cssClasses.dragElementDecorator\">\n <use [attr.xlink:href]=\"question.iconDragElement\"></use>\n </svg>\n <span *ngIf=\"!question.iconDragElement\" data-bind=\"css: question.cssClasses.iconDrag\"></span>\n</ng-template>","import { Component, ElementRef, Input, ViewChild } from \"@angular/core\";\nimport { BaseAngular } from \"../base-angular\";\nimport {\n Question,\n QuestionMatrixDropdownModelBase,\n QuestionMatrixDropdownRenderedCell,\n SurveyModel\n} from \"survey-core\";\n\n@Component({\n selector: \"sv-ng-matrix-cell\",\n templateUrl: \"./matrixcell.component.html\",\n styles: [\":host { display: none; }\"]\n})\nexport class MatrixCellComponent extends BaseAngular<Question> {\n @Input() question!: QuestionMatrixDropdownModelBase;\n @Input() cell!: QuestionMatrixDropdownRenderedCell;\n\n @ViewChild(\"cellContainer\") cellContainer!: ElementRef<HTMLElement>;\n\n isVisible: boolean = false;\n\n getModel() {\n return this.cell.question;\n }\n public get row() {\n return this.cell.row;\n }\n public get panelComponentName(): string {\n const panel = this.cell.panel;\n const survey = <SurveyModel>panel.survey;\n if(!!survey) {\n const name = survey.getElementWrapperComponentName(panel);\n if(!!name) {\n return name;\n }\n }\n return \"panel\";\n }\n public get panelComponentData(): any {\n const panel = this.cell.panel;\n const survey = <SurveyModel>panel.survey;\n let data: any;\n if(!!survey) {\n data = survey.getElementWrapperComponentData(panel);\n }\n return {\n componentName: \"panel\",\n componentData: {\n model: panel,\n data: data\n }\n };\n }\n\n getComponentName(element: Question) {\n if (element.customWidget) {\n return \"survey-customwidget\";\n }\n return element.getType()+\"-question\";\n }\n getHeaders(): string {\n return this.cell.headers;\n }\n getCellStyle() {\n if (!!this.cell.width || !!this.cell.minWidth)\n return { width: this.cell.width, minWidth: this.cell.minWidth };\n return null;\n }\n ngAfterViewInit() {\n if (!this.cell.hasQuestion || !this.question || !this.question.survey) return;\n var options = {\n cell: this.cell.cell,\n cellQuestion: this.cell.question,\n htmlElement: this.cellContainer.nativeElement,\n row: this.cell.row,\n column: this.cell.cell.column,\n };\n this.question.survey.matrixAfterCellRender(this.question, options);\n }\n}","<ng-template #template>\n <td [class]=\"cell.className\" [attr.data-responsive-title]=\"getHeaders()\" [title]=\"cell.getTitle()\" [style]=\"getCellStyle()\" [attr.colspan]=\"cell.colSpans\" #cellContainer>\n <sv-ng-matrix-drag-drop-icon *ngIf=\"cell.isDragHandlerCell\" [model]=\"$any({ data: { row: row, question: question } })\"></sv-ng-matrix-drag-drop-icon>\n <sv-action-bar *ngIf=\"cell.isActionsCell\" [model]=\"cell.item.getData()\" [handleClick]=\"false\"></sv-action-bar>\n <ng-container *ngIf=\"cell.hasPanel\">\n <ng-template [component]=\"{ name: panelComponentName, data: panelComponentData }\"></ng-template>\n </ng-container>\n <div *ngIf=\"cell.hasQuestion\" [class]=\"question.cssClasses.cellQuestionWrapper\" [visible]=\"cell.question.isVisible\">\n <div *ngIf=\"cell.showErrorOnTop && cell.question.hasVisibleErrors\" [element]=\"cell.question\" [location]=\"'top'\" sv-ng-errors></div>\n <ng-container *ngIf=\"!cell.isChoice && cell.question.isDefaultRendering()\">\n <ng-template [component]=\"{ name: question.getCellWrapperComponentName(cell.cell), data: { componentData: question.getCellWrapperComponentData(cell.cell)} }\">\n <ng-template [component]=\"{ name: getComponentName(cell.question), data: { model: cell.question } }\"></ng-template>\n </ng-template>\n </ng-container>\n <ng-template *ngIf=\"!cell.isChoice && !cell.question.isDefaultRendering()\" [component]=\"{ name: cell.question.getComponentName(), data: { model: cell.question } }\">\n </ng-template>\n <sv-ng-selebase-item\n *ngIf=\"cell.isItemChoice\"\n [showLabel]=\"false\"\n [inputType]=\"cell.isCheckbox ? 'checkbox': 'radio'\"\n [question]=\"cell.question\"\n [model]=\"cell.item\"\n ></sv-ng-selebase-item>\n <div *ngIf=\"cell.isOtherChoice\" class=\"form-group\" [question]=\"cell.question\" sv-ng-comment></div>\n <div *ngIf=\"cell.showErrorOnBottom && cell.question.hasVisibleErrors\" [element]=\"cell.question\" [location]=\"'top'\" sv-ng-errors></div>\n <div *ngIf=\"cell.question.isErrorsModeTooltip && cell.question.hasVisibleErrors\" [element]=\"cell.question\" [location]=\"'tooltip'\" sv-ng-errors></div>\n </div>\n <ng-container *ngIf=\"cell.hasTitle\">\n <ng-template [component]=\"{ name: question.getCellWrapperComponentName($any(cell)), data: { componentData: question.getCellWrapperComponentData($any(cell))} }\">\n <sv-ng-string [model]=\"cell.locTitle\"></sv-ng-string>\n <span *ngIf=\"!!cell.requiredText\" [class]=\"question.cssClasses.cellRequiredText\">{{ cell.requiredText }}</span> \n </ng-template>\n </ng-container>\n</td>\n</ng-template>","import { Component, Input } from \"@angular/core\";\nimport { BaseAngular } from \"../base-angular\";\nimport {\n MatrixDropdownColumn,\n QuestionMatrixDropdownModelBase,\n} from \"survey-core\";\n\n@Component({\n selector: \"sv-ng-matrixheaderrequired\",\n styles: [\":host { display: none; }\"],\n template: \"<ng-template #template><span *ngIf='column.isRenderedRequired' [class]='question.cssClasses.cellRequiredText'>{{ column.requiredText }}</span></ng-template>\"\n})\nexport class MatrixRequiredHeader extends BaseAngular<MatrixDropdownColumn> {\n @Input() column!: MatrixDropdownColumn;\n @Input() question!: QuestionMatrixDropdownModelBase;\n getModel() {\n return this.column;\n }\n}","import { Component, ElementRef, Input, ViewChild } from \"@angular/core\";\nimport { BaseAngular } from \"../base-angular\";\nimport {\n MatrixDropdownRowModelBase,\n Question,\n QuestionMatrixDropdownModelBase,\n QuestionMatrixDropdownRenderedCell,\n QuestionMatrixDropdownRenderedRow\n} from \"survey-core\";\n\n@Component({\n selector: \"sv-ng-matrix-row\",\n templateUrl: \"./matrix-row.component.html\",\n styles: [\":host { display: none; }\"]\n})\nexport class MatrixRowComponent extends BaseAngular<QuestionMatrixDropdownRenderedRow> {\n @Input() model!: QuestionMatrixDropdownRenderedRow;\n @Input() question!: QuestionMatrixDropdownModelBase;\n protected getModel(): QuestionMatrixDropdownRenderedRow {\n return this.model;\n }\n public get row(): MatrixDropdownRowModelBase {\n return this.model.row;\n }\n public trackCellBy(_: number, cell: any): string {\n return cell.id;\n }\n}","<ng-template #template>\n <tr [class]=\"model.className\" (pointerdown)=\"question.onPointerDown($event, row)\" [attr.data-sv-drop-target-matrix-row]=\"row && row.id\">\n <sv-ng-matrix-cell\n [cell]=\"cell\"\n [question]=\"question\"\n *ngFor=\"let cell of model.cells; trackBy: trackCellBy\"\n ></sv-ng-matrix-cell>\n </tr>\n</ng-template>","import { Component, Input } from \"@angular/core\";\nimport { BaseAngular } from \"../base-angular\";\nimport { QuestionMatrixDropdownModelBase, QuestionMatrixDropdownRenderedTable } from \"survey-core\";\n\n@Component({\n selector: \"sv-ng-matrix-table\",\n templateUrl: \"./matrixtable.component.html\"\n})\nexport class MatrixTableComponent extends BaseAngular<QuestionMatrixDropdownRenderedTable> {\n @Input() question!: QuestionMatrixDropdownModelBase;\n @Input() table!: QuestionMatrixDropdownRenderedTable;\n protected getModel(): QuestionMatrixDropdownRenderedTable {\n return this.table;\n }\n public trackCellBy(_: number, cell: any): string {\n return cell.id;\n }\n public trackRowBy(index: number, row: any): string {\n return row.id;\n }\n}\n","<table [class]=\"question.getTableCss()\">\n <thead *ngIf=\"table.showHeader\">\n <tr>\n <ng-container\n *ngFor=\"let cell of table.headerRow.cells; trackBy: trackCellBy\"\n >\n <th *ngIf=\"cell.hasTitle\" [class]=\"cell.className\" [style]=\"{ minWidth: cell.minWidth, width: cell.width }\">\n <ng-template [component]=\"{ name: question.getColumnHeaderWrapperComponentName($any(cell)), data: { componentData: question.getColumnHeaderWrapperComponentData($any(cell)) } }\">\n <sv-ng-string [model]=\"cell.locTitle\"></sv-ng-string>\n <sv-ng-matrixheaderrequired *ngIf=\"!!cell.column\" [column]=\"cell.column\" [question]=\"question\">\n </sv-ng-matrixheaderrequired>\n </ng-template>\n </th>\n \n <td *ngIf=\"!cell.hasTitle\" [class]=\"cell.className\" [style]=\"{ minWidth: cell.minWidth, width: cell.width }\"></td>\n </ng-container>\n </tr>\n </thead>\n <tbody>\n <ng-container *ngFor=\"let row of table.rows; trackBy: trackRowBy\">\n <sv-ng-matrix-row [model]=\"row\" [question]=\"question\"></sv-ng-matrix-row>\n </ng-container>\n </tbody>\n <tfoot *ngIf=\"table.showFooter\">\n <tr>\n <sv-ng-matrix-cell [cell]=\"cell\" [question]=\"question\" *ngFor=\"let cell of table.footerRow.cells; trackBy: trackCellBy\">\n </sv-ng-matrix-cell>\n </tr>\n </tfoot>\n</table>","import { Component } from \"@angular/core\";\nimport { QuestionAngular } from \"../question\";\nimport { QuestionMatrixDropdownModel } from \"survey-core\";\nimport { AngularComponentFactory } from \"../component-factory\";\n\n@Component({\n selector: \"sv-ng-matrixdropdown-question\",\n templateUrl: \"./matrixdropdown.component.html\"\n})\nexport class MatrixDropdownComponent extends QuestionAngular<QuestionMatrixDropdownModel> {}\n\nAngularComponentFactory.Instance.registerComponent(\"matrixdropdown-question\", MatrixDropdownComponent);","<ng-template #template>\n <div [style]=\"{ overflowX: model.showHorizontalScroll ? 'scroll' : '' }\" #contentElement>\n <sv-ng-matrix-table *ngIf=\"model.renderedTable?.showTable\" [question]=\"model\" [table]=\"model.renderedTable\"></sv-ng-matrix-table>\n </div>\n</ng-template>","import { Component } from \"@angular/core\";\nimport { QuestionAngular } from \"../question\";\nimport { QuestionMatrixDynamicModel } from \"survey-core\";\nimport { AngularComponentFactory } from \"../component-factory\";\n\n@Component({\n selector: \"sv-ng-matrixdynamic-question\",\n templateUrl: \"./matrixdynamic.component.html\"\n})\nexport class MatrixDynamicComponent extends QuestionAngular<QuestionMatrixDynamicModel> {}\n\nAngularComponentFactory.Instance.registerComponent(\"matrixdynamic-question\", MatrixDynamicComponent);","<ng-template #template>\n <div [style]=\"{ overflowX: model.showHorizontalScroll ? 'scroll' : '' }\" #contentElement>\n <div *ngIf=\"model.renderedTable.showAddRowOnTop\" [class]=\"model.cssClasses.footer\">\n <ng-container *ngTemplateOutlet=\"addRowButton\"></ng-container>\n </div>\n <sv-ng-matrix-table *ngIf=\"model.renderedTable?.showTable\" [question]=\"model\" [table]=\"model.renderedTable\"></sv-ng-matrix-table>\n <div *ngIf=\"!model.renderedTable.showTable\" [class]=\"model.cssClasses.emptyRowsSection\">\n <div [class]=\"model.cssClasses.emptyRowsText\" [model]=\"model.locEmptyRowsText\" sv-ng-string></div>\n <ng-container *ngTemplateOutlet=\"addRowButton\"></ng-container>\n </div>\n <div *ngIf=\"model.renderedTable.showAddRowOnBottom\" [class]=\"model.cssClasses.footer\">\n <ng-container *ngTemplateOutlet=\"addRowButton\"></ng-container>\n </div>\n </div>\n <ng-template #addRowButton>\n <button type=\"button\" [class]=\"model.getAddRowButtonCss(true)\" (click)=\"model.addRowUI()\">\n <sv-ng-string [model]=\"model.locAddRowText\" ></sv-ng-string>\n <span [class]=\"model.cssClasses.iconAdd\"></span>\n </button>\n </ng-template>\n</ng-template>","import { Component, Input } from \"@angular/core\";\nimport { AngularComponentFactory } from \"../../../component-factory\";\nimport { Action, Base } from \"survey-core\";\n\n@Component({\n selector: \"sv-ng-matrix-remove-btn\",\n templateUrl: \"./remove-button.component.html\"\n})\nexport class MatrixDynamicRemoveButtonComponent {\n @Input() model!: Action;\n\n get question() {\n return this.model.data.question;\n }\n\n get row() {\n return this.model.data.row;\n }\n\n getModel(): Base {\n return this.model;\n }\n}\n\nAngularComponentFactory.Instance.registerComponent(\n \"sv-matrix-remove-button\",\n MatrixDynamicRemoveButtonComponent\n);\n","<button type=\"button\" [class]=\"question.getRemoveRowButtonCss()\" [disabled]=\"question.isInputReadOnly\" (click)=\"question.removeRowUI(row)\">\n <sv-ng-string [model]=\"question.locRemoveRowText\" ></sv-ng-string>\n <span [class]=\"question.cssClasses.iconRemove\"></span>\n</button>","import { Component, Input } from \"@angular/core\";\nimport { AngularComponentFactory } from \"../../../component-factory\";\nimport { Action } from \"survey-core\";\nimport { Base } from \"survey-core\";\n\n@Component({\n selector: \"sv-ng-matrix-detail-btn\",\n templateUrl: \"./detail-button.component.html\"\n})\nexport class MatrixDetailButtonComponent {\n @Input() public model!: Action;\n\n get question() {\n return this.model.data.question;\n }\n\n get row() {\n return this.model.data.row;\n }\n\n getModel(): Base {\n return this.model;\n }\n}\n\nAngularComponentFactory.Instance.registerComponent(\"sv-matrix-detail-button\", MatrixDetailButtonComponent);\n","<button type=\"button\" [class]=\"question.getDetailPanelButtonCss(row)\" (click)=\"row.showHideDetailPanelClick()\"\n [attr.aria-expanded]=\"question.getIsDetailPanelShowing(row) ? 'true' : 'false'\"\n [attr.aria-controls]=\"question.getIsDetailPanelShowing(row) ? row.detailPanelId : null\">\n <svg [class]=\"this.question.getDetailPanelIconCss(this.row)\" \n [iconName]=\"this.question.getDetailPanelIconId(this.row)\" [size]=\"'auto'\" sv-ng-svg-icon>\n </svg>\n</button>","import { Component } from \"@angular/core\";\nimport { AngularComponentFactory } from \"../component-factory\";\nimport { QuestionAngular } from \"../question\";\nimport { QuestionExpressionModel } from \"survey-core\";\n\n@Component({\n selector: \"sv-ng-expression\",\n template: \"<div [class]='model.cssClasses.root' #contentElement>{{ model.formatedValue }}</div>\"\n})\nexport class ExpressionComponent extends QuestionAngular<QuestionExpressionModel> {\n}\n\nAngularComponentFactory.Instance.registerComponent(\"expression-question\", ExpressionComponent);","import { Component } from \"@angular/core\";\nimport { QuestionAngular } from \"../question\";\nimport { QuestionImageModel } from \"survey-core\";\nimport { AngularComponentFactory } from \"../component-factory\";\n\n@Component({\n selector: \"sv-ng-image-question\",\n templateUrl: \"./image.component.html\"\n})\nexport class ImageQuestionComponent extends QuestionAngular<QuestionImageModel> {\n override ngAfterViewInit(): void {\n this.model.locImageLink.onChanged = () => {\n this.detectChanges();\n };\n super.ngAfterViewInit();\n }\n override ngOnDestroy(): void {\n this.model.locImageLink.onChanged = () => {};\n super.ngOnDestroy();\n }\n}\n\nAngularComponentFactory.Instance.registerComponent(\"image-question\", ImageQuestionComponent);","<div [class]=\"model.cssClasses.root\" #contentElement>\n <img\n *ngIf=\"model.renderedMode === 'image'\"\n [class]=\"model.getImageCss()\"\n [attr.src]=\"model.locImageLink.renderedHtml\"\n [attr.alt]=\"model.text || model.title\"\n [attr.width]=\"model.renderedWidth\"\n [attr.height]=\"model.renderedHeight\"\n [style]=\"{ objectFit: model.imageFit }\"\n /><video\n controls\n *ngIf=\"model.renderedMode === 'video'\"\n [class]=\"model.getImageCss()\"\n [attr.src]=\"model.locImageLink.renderedHtml\"\n [attr.width]=\"model.renderedWidth\"\n [attr.height]=\"model.renderedHeight\"\n [style]=\"{ objectFit: model.imageFit }\"\n ></video>\n <iframe\n *ngIf=\"model.renderedMode === 'youtube'\"\n [class]=\"model.getImageCss()\"\n [attr.src]=\"model.locImageLink.renderedHtml | safeResourceUrl\"\n [attr.width]=\"model.renderedWidth\"\n [attr.height]=\"model.renderedHeight\"\n [style]=\"{ objectFit: model.imageFit }\"\n ></iframe>\n</div>","import { Question } from \"survey-core\";\nimport { QuestionCustomModel } from \"survey-core\";\nimport { Component } from \"@angular/core\";\nimport { QuestionAngular } from \"../question\";\nimport { AngularComponentFactory } from \"../component-factory\";\n\n@Component({\n selector: \"sv-ng-custom-question\",\n template: \"<ng-template [component]='{ name: getComponentName(contentQuestion), data: { model: contentQuestion } }'></ng-template>\"\n})\nexport class CustomQuestionComponent extends QuestionAngular<QuestionCustomModel> {\n get contentQuestion(): Question {\n return this.model.contentQuestion;\n }\n getComponentName(element: Question): string {\n if (element.customWidget) {\n return \"survey-customwidget\";\n }\n return element.getTemplate() + \"-question\";\n }\n}\n\nAngularComponentFactory.Instance.registerComponent(\"custom-question\", CustomQuestionComponent);\n","\nimport { Component } from \"@angular/core\";\nimport { AngularComponentFactory } from \"../component-factory\";\nimport { QuestionAngular } from \"../question\";\nimport { PanelModel, QuestionCompositeModel } from \"survey-core\";\n\n@Component({\n selector: \"sv-ng-composite-question\",\n template: \"<sv-ng-panel [model]='contentPanel'></sv-ng-panel>\"\n})\nexport class CompositeQuestionComponent extends QuestionAngular<QuestionCompositeModel> {\n get contentPanel(): PanelModel {\n return this.model.contentPanel;\n }\n}\nAngularComponentFactory.Instance.registerComponent(\"composite-question\", CompositeQuestionComponent);\n","import { NgModule } from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\nimport { FormsModule } from \"@angular/forms\";\nimport { SurveyComponent } from \"./survey.component\";\nimport { PopupSurveyComponent } from \"./popup.survey.component\";\nimport { PageComponent } from \"./page.component\";\nimport { QuestionComponent } from \"./question.component\";\nimport { StringViewerComponent } from \"./string-viewer.component\";\nimport { PopupComponent } from \"./components/popup/popup.component\";\nimport { PopupContainerComponent } from \"./components/popup/popup-container.component\";\nimport { QuestionSkeletonComponent } from \"./components/skeleton.component\";\nimport { DropdownComponent } from \"./components/dropdown/dropdown.component\";\nimport { TagboxFilterComponent } from \"./components/tagbox/tagbox-filter.component\";\nimport { TagboxItemComponent } from \"./components/tagbox/tagbox-item.component\";\nimport { TagboxComponent } from \"./components/tagbox/tagbox.component\";\nimport { DropdownOptionItemComponent } from \"./components/renderAs/dropdown-select/dropdown-option-item.component\";\nimport { DropdownSelectComponent } from \"./components/renderAs/dropdown-select/dropdown-select.component\";\nimport { TextQuestionComponent } from \"./questions/text.component\";\nimport { HtmlQuestionComponent } from \"./questions/html.component\";\nimport { RadiogroupComponent } from \"./questions/radiogroup.component\";\nimport { RadiogroupItemComponent } from \"./questions/radiogroup-item.component\";\nimport { CheckboxComponent } from \"./questions/checkbox.component\";\nimport { CheckboxItemComponent } from \"./questions/checkbox-item.component\";\nimport { DropdownQuestionComponent } from \"./questions/dropdown.component\";\nimport { TagboxQuestionComponent } from \"./questions/tagbox.component\";\nimport { RatingQuestionComponent } from \"./questions/rating.component\";\nimport { BooleanQuestionComponent } from \"./questions/boolean.component\";\nimport { ImagePickerItemComponent } from \"./questions/imagepicker-item.component\";\nimport { ImagePickerQuestionComponent } from \"./questions/imagepicker.component\";\n\nimport { ActionBarComponent } from \"./components/action-bar/action-bar.component\";\nimport { ActionComponent } from \"./components/action-bar/action.component\";\nimport { ActionBarItemComponent } from \"./components/action-bar/action-bar-item.component\";\nimport { ActionBarItemDropdownComponent } from \"./components/action-bar/action-bar-item-dropdown.component\";\nimport { SelectBaseItemComponent } from \"./questions/selectbase-item\";\nimport { SelectBaseComponent } from \"./questions/selectbase.component\";\nimport { SurveyCommentComponent } from \"./comment.component\";\nimport { ElementHeaderComponent } from \"./components/element-header/element-header.component\";\nimport { ElementTitleComponent } from \"./components/element-title/element-title.component\";\nimport { SurveyHeaderComponent } from \"./components/survey-header/survey-header.component\";\n\nimport { DynamicHeadComponent } from \"./components/element-title/dynamic-head.component\";\nimport { ListComponent } from \"./components/list/list.component\";\nimport { ListItemComponent } from \"./components/list/list-item.component\";\nimport { RowComponent } from \"./row.component\";\nimport { RatingDropdownComponent } from \"./components/renderAs/rating-dropdown/rating-dropdown.component\";\nimport { BooleanCheckboxComponent } from \"./components/renderAs/boolean-checkbox/boolean-checkbox.component\";\nimport { BooleanRadioComponent } from \"./components/renderAs/boolean-radio/boolean-radio.component\";\nimport { BooleanRadioItemComponent } from \"./components/renderAs/boolean-radio/boolean-radio-item.component\";\nimport { ProgressDefaultComponent } from \"./components/progress/default/progress.component\";\nimport { ProgressButtonsComponent } from \"./components/progress/buttons/progress.component\";\nimport { PanelComponent } from \"./panel.component\";\nimport { PopupService } from \"./components/popup/popup.service\";\nimport { SurveyNavigationButton } from \"./components/survey-actions/survey-nav-btn.component\";\nimport { MatrixQuestionComponent } from \"./questions/matrix.component\";\nimport { SvgIconComponent } from \"./components/svg-icon/svg-icon.component\";\nimport { FileQuestionComponent, } from \"./questions/file.component\";\nimport { VisibleDirective } from \"./utils/ng-show.directive\";\nimport { Key2ClickDirective } from \"./utils/ng-key2click.directive\";\nimport { SafeUrlPipe, SafeResourceUrlPipe } from \"./utils/safe-url.pipe\";\nimport { SafeHtmlPipe } from \"./utils/safe-html.pipe\";\nimport { CommentQuestionComponent } from \"./questions/comment.component\";\nimport { SignaturePadQuestionComponent } from \"./questions/signature.component\";\nimport { MultipleTextComponent } from \"./questions/multipletext.component\";\nimport { ErrorsComponent } from \"./errors.component\";\nimport { MultipleTextItemComponent } from \"./questions/multipletextitem.component\";\nimport { DynamicComponentDirective } from \"./utils/dynamic.directive\";\nimport { RankingQuestionComponent } from \"./questions/ranking.component\";\nimport { RankingItemComponent } from \"./questions/ranking-item.component\";\nimport { SurveyStringComponent } from \"./survey-string.component\";\nimport { StringEditorComponent } from \"./string-editor.component\";\nimport { PanelDynamicAddBtn } from \"./components/paneldynamic-actions/paneldynamic-add-btn.component\";\nimport { PanelDynamicNextBtn }from \"./components/paneldynamic-actions/paneldynamic-next-btn.component\";\nimport { PanelDynamicPrevBtn } from \"./components/paneldynamic-actions/paneldynamic-prev-btn.component\";\nimport { PanelDynamicProgressText } from \"./components/paneldynamic-actions/paneldynamic-progress-text.component\";\nimport { PanelDynamicQuestionComponent } from \"./questions/paneldynamic.component\";\nimport { EmbeddedViewContentComponent } from \"./embedded-view-content.component\";\nimport { ElementComponent } from \"./element.component\";\nimport { CustomWidgetComponent } from \"./questions/customwidget.component\";\nimport { MatrixCellComponent } from \"./questions/matrixcell.component\";\nimport { MatrixTableComponent } from \"./questions/matrixtable.component\";\nimport { MatrixDropdownComponent } from \"./questions/matrixdropdown.component\";\nimport { MatrixDynamicComponent } from \"./questions/matrixdynamic.component\";\nimport { MatrixDynamicRemoveButtonComponent } from \"./components/matrix-actions/remove-button/remove-button.component\";\nimport { MatrixDynamicDragDropIconComponent } from \"./components/matrix-actions/drag-drop-icon/drag-drop-icon\";\nimport { MatrixDetailButtonComponent } from \"./components/matrix-actions/detail-button/detail-button.component\";\nimport { MatrixRequiredHeader } from \"./questions/matrixrequiredheader.component\";\nimport { ExpressionComponent } from \"./questions/expression.component\";\nimport { ImageQuestionComponent } from \"./questions/image.component\";\nimport { BrandInfoComponent } from \"./components/brand-info/brand-info.component\";\nimport { CustomQuestionComponent } from \"./questions/custom.component\";\nimport { CompositeQuestionComponent } from \"./questions/composite.component\";\nimport { SurveyContentComponent } from \"./survey-content.component\";\nimport { TemplateRendererComponent } from \"./template-renderer.component\";\nimport { ModalComponent } from \"./components/popup/modal-container.component\";\nimport { ButtonGroupQuestionComponent } from \"./questions/button-group/button-group.component\";\nimport { ButtonGroupItemComponent } from \"./questions/button-group/button-group-item.component\";\nimport { MatrixRowComponent } from \"./questions/matrix-row.component\";\nimport { LogoImageComponent } from \"./components/survey-header/logo-image.component\";\n@NgModule({\n declarations: [\n VisibleDirective, Key2ClickDirective, PanelDynamicAddBtn, PanelDynamicNextBtn, PanelDynamicPrevBtn, PanelDynamicProgressText, ElementComponent, TemplateRendererComponent,\n SurveyComponent, SurveyContentComponent, PopupSurveyComponent, PageComponent, PanelComponent, QuestionComponent, StringViewerComponent, SurveyStringComponent, StringEditorComponent,\n QuestionSkeletonComponent, TextQuestionComponent, RadiogroupComponent, RadiogroupItemComponent, CheckboxComponent, CheckboxItemComponent,\n DropdownComponent, DropdownQuestionComponent, DropdownSelectComponent, DropdownOptionItemComponent,\n PopupComponent, PopupContainerComponent,\n ListComponent, ListItemComponent,\n TagboxFilterComponent, TagboxComponent, TagboxQuestionComponent, TagboxItemComponent,\n ActionBarComponent, ActionComponent, ActionBarItemComponent, ActionBarItemDropdownComponent, HtmlQuestionComponent,\n SelectBaseItemComponent, SelectBaseComponent, SurveyCommentComponent, ElementHeaderComponent, ElementTitleComponent, DynamicHeadComponent, RowComponent,\n RatingQuestionComponent, RatingDropdownComponent, BooleanQuestionComponent, BooleanCheckboxComponent, BooleanRadioComponent, BooleanRadioItemComponent, ImagePickerItemComponent, ImagePickerQuestionComponent, ImageQuestionComponent,\n SurveyHeaderComponent, ProgressDefaultComponent, ProgressButtonsComponent, SurveyNavigationButton, MatrixQuestionComponent, SvgIconComponent, FileQuestionComponent, SafeUrlPipe, SafeHtmlPipe, CommentQuestionComponent, SignaturePadQuestionComponent, ErrorsComponent,\n MultipleTextComponent, MultipleTextItemComponent, DynamicComponentDirective, RankingQuestionComponent, RankingItemComponent, PanelDynamicQuestionComponent, EmbeddedViewContentComponent, CustomWidgetComponent, MatrixCellComponent, MatrixTableComponent, MatrixDropdownComponent,\n MatrixDynamicComponent, MatrixDetailButtonComponent, MatrixDynamicRemoveButtonComponent, MatrixDynamicDragDropIconComponent, MatrixRequiredHeader, ExpressionComponent, SafeResourceUrlPipe, BrandInfoComponent,\n CustomQuestionComponent, CompositeQuestionComponent, ButtonGroupItemComponent, ButtonGroupQuestionComponent, MatrixRowComponent, ModalComponent, LogoImageComponent\n ],\n imports: [\n CommonModule, FormsModule\n ],\n exports: [\n VisibleDirective, Key2ClickDirective, PanelDynamicAddBtn, PanelDynamicNextBtn, PanelDynamicPrevBtn, PanelDynamicProgressText, ElementComponent, TemplateRendererComponent,\n SurveyComponent, SurveyContentComponent, PopupSurveyComponent, PageComponent, PanelComponent, QuestionComponent, StringViewerComponent, SurveyStringComponent, StringEditorComponent,\n QuestionSkeletonComponent, TextQuestionComponent, RadiogroupComponent, RadiogroupItemComponent, CheckboxComponent, CheckboxItemComponent,\n DropdownComponent, DropdownQuestionComponent, DropdownSelectComponent, DropdownOptionItemComponent,\n PopupComponent, PopupContainerComponent,\n ListComponent, ListItemComponent,\n TagboxFilterComponent, TagboxComponent, TagboxQuestionComponent, TagboxItemComponent,\n ActionBarComponent, ActionComponent, ActionBarItemComponent, ActionBarItemDropdownComponent, HtmlQuestionComponent,\n SelectBaseItemComponent, SelectBaseComponent, SurveyCommentComponent, ElementHeaderComponent, ElementTitleComponent, DynamicHeadComponent, RowComponent,\n RatingQuestionComponent, RatingDropdownComponent, BooleanQuestionComponent, BooleanCheckboxComponent, BooleanRadioComponent, BooleanRadioItemComponent, ImagePickerItemComponent, ImagePickerQuestionComponent, ImageQuestionComponent,\n SurveyHeaderComponent, ProgressDefaultComponent, ProgressButtonsComponent, SurveyNavigationButton, MatrixQuestionComponent, SvgIconComponent, FileQuestionComponent, SafeUrlPipe, SafeHtmlPipe, CommentQuestionComponent, SignaturePadQuestionComponent, ErrorsComponent,\n MultipleTextComponent, MultipleTextItemComponent, DynamicComponentDirective, RankingQuestionComponent, RankingItemComponent, PanelDynamicQuestionComponent, EmbeddedViewContentComponent, CustomWidgetComponent, MatrixCellComponent, MatrixTableComponent, MatrixDropdownComponent,\n MatrixDynamicComponent, MatrixDetailButtonComponent, MatrixDynamicRemoveButtonComponent, MatrixDynamicDragDropIconComponent, MatrixRequiredHeader, ExpressionComponent, SafeResourceUrlPipe, BrandInfoComponent,\n CustomQuestionComponent, CompositeQuestionComponent, ButtonGroupQuestionComponent, ModalComponent, LogoImageComponent\n ],\n providers: [PopupService],\n})\nexport class SurveyAngularModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './angular-ui';\n"],"names":["i1.VisibleDirective","i3.DynamicComponentDirective","i1.PopupService","i1","i2.DynamicComponentDirective","i1.ActionComponent","i1.DynamicComponentDirective","i1.DynamicHeadComponent","i2.ActionBarComponent","i3.SurveyStringComponent","i4","i1.ElementTitleComponent","i2.SurveyStringComponent","i3","i4.DynamicComponentDirective","i1.ElementComponent","i3.RowComponent","i5.DynamicComponentDirective","i1.SurveyHeaderComponent","i3.PageComponent","i4.BrandInfoComponent","i5","i6","i7.DynamicComponentDirective","i1.ModalComponent","i2.SurveyContentComponent","i1.SurveyComponent","i1.SurveyStringComponent","i1.ErrorsComponent","i2.ElementHeaderComponent","i3.SurveyCommentComponent","i5.VisibleDirective","i6.DynamicComponentDirective","i2.SvgIconComponent","i3.PopupComponent","i7.VisibleDirective","i1.TagboxItemComponent","i6.VisibleDirective","i1.SurveyCommentComponent","i1.SafeUrlPipe","i2","i1.SafeHtmlPipe","i1.DropdownComponent","i2.SurveyCommentComponent","i1.TagboxComponent","i1.SvgIconComponent","i1.ButtonGroupItemComponent","i2.Key2ClickDirective","i2.PopupComponent","i3.Key2ClickDirective","i1.CheckboxItemComponent","i2.RadiogroupItemComponent","i4.VisibleDirective","i2.ListItemComponent","i1.BooleanRadioItemComponent","i1.ElementHeaderComponent","i2.RowComponent","i3.ActionBarComponent","i3.VisibleDirective","i5.SafeUrlPipe","i2.VisibleDirective","i2.ErrorsComponent","i3.TextQuestionComponent","i1.MultipleTextItemComponent","i2.PanelDynamicAddBtn","i4.PanelDynamicPrevBtn","i5.PanelDynamicNextBtn","i6.PanelDynamicProgressText","i7","i8.DynamicComponentDirective","i9.VisibleDirective","i3.SafeHtmlPipe","i1.MatrixDynamicDragDropIconComponent","i3.ErrorsComponent","i4.SelectBaseItemComponent","i5.SurveyCommentComponent","i6.SurveyStringComponent","i1.MatrixCellComponent","i2.MatrixRequiredHeader","i3.MatrixRowComponent","i4.MatrixCellComponent","i1.MatrixTableComponent","i2.SafeResourceUrlPipe","i1.PanelComponent"],"mappings":"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"}
|