survey-angular-ui 1.12.26 → 1.12.28

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (125) hide show
  1. package/base-angular.d.ts +3 -0
  2. package/bundles/survey-angular-ui.umd.js +45 -15
  3. package/bundles/survey-angular-ui.umd.js.map +1 -1
  4. package/esm2015/base-angular.js +41 -13
  5. package/esm2015/row.component.js +5 -3
  6. package/fesm2015/survey-angular-ui.js +44 -14
  7. package/fesm2015/survey-angular-ui.js.map +1 -1
  8. package/package.json +2 -2
  9. package/components/cover/cover-cell.component.d.ts +0 -10
  10. package/components/cover/cover.component.d.ts +0 -12
  11. package/components/file-actions/choose-file.component.d.ts +0 -10
  12. package/esm2015/components/cover/cover-cell.component.js +0 -27
  13. package/esm2015/components/cover/cover.component.js +0 -31
  14. package/esm2015/components/file-actions/choose-file.component.js +0 -27
  15. package/esm2020/angular-ui.mjs +0 -103
  16. package/esm2020/angular-ui.module.mjs +0 -184
  17. package/esm2020/base-angular.mjs +0 -128
  18. package/esm2020/comment-other.component.mjs +0 -32
  19. package/esm2020/comment.component.mjs +0 -21
  20. package/esm2020/component-factory.mjs +0 -26
  21. package/esm2020/components/action-bar/action-bar-item-dropdown.component.mjs +0 -32
  22. package/esm2020/components/action-bar/action-bar-item.component.mjs +0 -22
  23. package/esm2020/components/action-bar/action-bar.component.mjs +0 -43
  24. package/esm2020/components/action-bar/action.component.mjs +0 -27
  25. package/esm2020/components/brand-info/brand-info.component.mjs +0 -13
  26. package/esm2020/components/dropdown/dropdown.component.mjs +0 -66
  27. package/esm2020/components/element-header/element-header.component.mjs +0 -32
  28. package/esm2020/components/element-title/dynamic-head.component.mjs +0 -20
  29. package/esm2020/components/element-title/element-title.component.mjs +0 -17
  30. package/esm2020/components/element-title/title-actions.component.mjs +0 -17
  31. package/esm2020/components/list/list-item.component.mjs +0 -48
  32. package/esm2020/components/list/list.component.mjs +0 -50
  33. package/esm2020/components/matrix-actions/detail-button/detail-button.component.mjs +0 -25
  34. package/esm2020/components/matrix-actions/drag-drop-icon/drag-drop-icon.mjs +0 -20
  35. package/esm2020/components/matrix-actions/remove-button/remove-button.component.mjs +0 -25
  36. package/esm2020/components/notifier/notifier.component.mjs +0 -22
  37. package/esm2020/components/paneldynamic-actions/paneldynamic-add-btn.component.mjs +0 -35
  38. package/esm2020/components/paneldynamic-actions/paneldynamic-next-btn.component.mjs +0 -18
  39. package/esm2020/components/paneldynamic-actions/paneldynamic-prev-btn.component.mjs +0 -18
  40. package/esm2020/components/paneldynamic-actions/paneldynamic-progress-text.component.mjs +0 -14
  41. package/esm2020/components/paneldynamic-actions/paneldynamic-remove-btn.component.mjs +0 -17
  42. package/esm2020/components/popup/modal-container.component.mjs +0 -42
  43. package/esm2020/components/popup/popup-container.component.mjs +0 -56
  44. package/esm2020/components/popup/popup-pointer.component.mjs +0 -22
  45. package/esm2020/components/popup/popup.component.mjs +0 -43
  46. package/esm2020/components/popup/popup.service.mjs +0 -26
  47. package/esm2020/components/progress/buttons/progress.component.mjs +0 -67
  48. package/esm2020/components/progress/default/progress.component.mjs +0 -27
  49. package/esm2020/components/renderAs/boolean-checkbox/boolean-checkbox.component.mjs +0 -21
  50. package/esm2020/components/renderAs/boolean-radio/boolean-radio-item.component.mjs +0 -22
  51. package/esm2020/components/renderAs/boolean-radio/boolean-radio.component.mjs +0 -18
  52. package/esm2020/components/renderAs/dropdown-select/dropdown-option-item.component.mjs +0 -23
  53. package/esm2020/components/renderAs/dropdown-select/dropdown-select.component.mjs +0 -38
  54. package/esm2020/components/renderAs/rating-dropdown/rating-dropdown.component.mjs +0 -18
  55. package/esm2020/components/skeleton/skeleton.component.mjs +0 -16
  56. package/esm2020/components/skeleton.component.mjs +0 -15
  57. package/esm2020/components/survey-actions/survey-nav-btn.component.mjs +0 -22
  58. package/esm2020/components/survey-header/logo-image.component.mjs +0 -20
  59. package/esm2020/components/survey-header/survey-header.component.mjs +0 -30
  60. package/esm2020/components/svg-icon/svg-icon.component.mjs +0 -68
  61. package/esm2020/components/tagbox/tagbox-filter.component.mjs +0 -22
  62. package/esm2020/components/tagbox/tagbox-item.component.mjs +0 -27
  63. package/esm2020/components/tagbox/tagbox.component.mjs +0 -44
  64. package/esm2020/components/timer-panel/timer-panel.component.mjs +0 -32
  65. package/esm2020/element.component.mjs +0 -55
  66. package/esm2020/embedded-view-content.component.mjs +0 -24
  67. package/esm2020/errors.component.mjs +0 -58
  68. package/esm2020/page.component.mjs +0 -35
  69. package/esm2020/panel.component.mjs +0 -38
  70. package/esm2020/popup.survey.component.mjs +0 -44
  71. package/esm2020/question.component.mjs +0 -54
  72. package/esm2020/question.mjs +0 -33
  73. package/esm2020/questions/boolean.component.mjs +0 -20
  74. package/esm2020/questions/button-group/button-group-item.component.mjs +0 -29
  75. package/esm2020/questions/button-group/button-group.component.mjs +0 -14
  76. package/esm2020/questions/checkbox-item.component.mjs +0 -24
  77. package/esm2020/questions/checkbox.component.mjs +0 -17
  78. package/esm2020/questions/comment.component.mjs +0 -18
  79. package/esm2020/questions/composite.component.mjs +0 -21
  80. package/esm2020/questions/custom.component.mjs +0 -27
  81. package/esm2020/questions/customwidget.component.mjs +0 -51
  82. package/esm2020/questions/dropdown.component.mjs +0 -17
  83. package/esm2020/questions/expression.component.mjs +0 -17
  84. package/esm2020/questions/file.component.mjs +0 -25
  85. package/esm2020/questions/html.component.mjs +0 -25
  86. package/esm2020/questions/image.component.mjs +0 -26
  87. package/esm2020/questions/imagepicker-item.component.mjs +0 -48
  88. package/esm2020/questions/imagepicker.component.mjs +0 -29
  89. package/esm2020/questions/matrix-row.component.mjs +0 -27
  90. package/esm2020/questions/matrix.component.mjs +0 -36
  91. package/esm2020/questions/matrixcell.component.mjs +0 -90
  92. package/esm2020/questions/matrixdropdown.component.mjs +0 -16
  93. package/esm2020/questions/matrixdynamic.component.mjs +0 -17
  94. package/esm2020/questions/matrixrequiredheader.component.mjs +0 -24
  95. package/esm2020/questions/matrixtable.component.mjs +0 -31
  96. package/esm2020/questions/multipletext.component.mjs +0 -25
  97. package/esm2020/questions/multipletextitem.component.mjs +0 -23
  98. package/esm2020/questions/paneldynamic.component.mjs +0 -79
  99. package/esm2020/questions/radiogroup-item.component.mjs +0 -18
  100. package/esm2020/questions/radiogroup.component.mjs +0 -22
  101. package/esm2020/questions/ranking-item.component.mjs +0 -24
  102. package/esm2020/questions/ranking.component.mjs +0 -31
  103. package/esm2020/questions/rating.component.mjs +0 -23
  104. package/esm2020/questions/selectbase-item.mjs +0 -33
  105. package/esm2020/questions/selectbase.component.mjs +0 -50
  106. package/esm2020/questions/signature.component.mjs +0 -17
  107. package/esm2020/questions/tagbox.component.mjs +0 -17
  108. package/esm2020/questions/text.component.mjs +0 -16
  109. package/esm2020/row.component.mjs +0 -58
  110. package/esm2020/string-editor.component.mjs +0 -26
  111. package/esm2020/string-viewer.component.mjs +0 -37
  112. package/esm2020/survey-angular-ui.mjs +0 -5
  113. package/esm2020/survey-content.component.mjs +0 -69
  114. package/esm2020/survey-string.component.mjs +0 -17
  115. package/esm2020/survey.component.mjs +0 -32
  116. package/esm2020/template-renderer.component.mjs +0 -23
  117. package/esm2020/utils/dynamic.directive.mjs +0 -52
  118. package/esm2020/utils/ng-key2click.directive.mjs +0 -69
  119. package/esm2020/utils/ng-show.directive.mjs +0 -27
  120. package/esm2020/utils/safe-html.pipe.mjs +0 -18
  121. package/esm2020/utils/safe-url.pipe.mjs +0 -33
  122. package/fesm2015/survey-angular-ui.mjs +0 -2864
  123. package/fesm2015/survey-angular-ui.mjs.map +0 -1
  124. package/fesm2020/survey-angular-ui.mjs +0 -2839
  125. package/fesm2020/survey-angular-ui.mjs.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"survey-angular-ui.mjs","sources":["../../src/embedded-view-content.component.ts","../../src/base-angular.ts","../../src/component-factory.ts","../../src/utils/dynamic.directive.ts","../../src/components/action-bar/action.component.ts","../../src/components/action-bar/action.component.html","../../src/components/action-bar/action-bar.component.ts","../../src/components/action-bar/action-bar.component.html","../../src/utils/ng-show.directive.ts","../../src/components/popup/popup-container.component.ts","../../src/components/popup/popup-container.component.html","../../src/components/popup/popup.service.ts","../../src/components/popup/modal-container.component.ts","../../src/components/element-title/dynamic-head.component.ts","../../src/components/element-title/dynamic-head.component.html","../../src/survey-string.component.ts","../../src/components/element-title/title-actions.component.ts","../../src/components/element-title/title-actions.component.html","../../src/components/element-title/element-title.component.ts","../../src/components/element-title/element-title.component.html","../../src/components/survey-header/survey-header.component.ts","../../src/components/survey-header/survey-header.component.html","../../src/components/svg-icon/svg-icon.component.ts","../../src/components/timer-panel/timer-panel.component.ts","../../src/components/timer-panel/timer-panel.component.html","../../src/element.component.ts","../../src/element.component.html","../../src/row.component.ts","../../src/row.component.html","../../src/page.component.ts","../../src/page.component.html","../../src/components/brand-info/brand-info.component.ts","../../src/components/brand-info/brand-info.component.html","../../src/components/notifier/notifier.component.ts","../../src/components/notifier/notifier.component.html","../../src/survey-content.component.ts","../../src/survey-content.component.html","../../src/survey.component.ts","../../src/popup.survey.component.ts","../../src/popup.survey.component.html","../../src/errors.component.ts","../../src/errors.component.html","../../src/components/element-header/element-header.component.ts","../../src/components/element-header/element-header.component.html","../../src/comment.component.ts","../../src/comment.component.html","../../src/question.component.ts","../../src/question.component.html","../../src/string-viewer.component.ts","../../src/string-viewer.component.html","../../src/components/popup/popup-pointer.component.ts","../../src/components/popup/popup-pointer.component.html","../../src/components/popup/popup.component.ts","../../src/components/skeleton.component.ts","../../src/components/skeleton.component.html","../../src/components/dropdown/dropdown.component.ts","../../src/components/dropdown/dropdown.component.html","../../src/components/tagbox/tagbox-filter.component.ts","../../src/components/tagbox/tagbox-filter.component.html","../../src/components/tagbox/tagbox-item.component.ts","../../src/components/tagbox/tagbox-item.component.html","../../src/components/tagbox/tagbox.component.ts","../../src/components/tagbox/tagbox.component.html","../../src/components/renderAs/dropdown-select/dropdown-option-item.component.ts","../../src/comment-other.component.ts","../../src/comment-other.component.html","../../src/components/renderAs/dropdown-select/dropdown-select.component.ts","../../src/components/renderAs/dropdown-select/dropdown-select.component.html","../../src/utils/safe-url.pipe.ts","../../src/components/survey-header/logo-image.component.ts","../../src/components/survey-header/logo-image.component.html","../../src/question.ts","../../src/questions/text.component.ts","../../src/questions/text.component.html","../../src/utils/safe-html.pipe.ts","../../src/questions/html.component.ts","../../src/questions/html.component.html","../../src/questions/selectbase.component.ts","../../src/questions/selectbase.component.html","../../src/questions/radiogroup.component.ts","../../src/questions/radiogroup-item.component.ts","../../src/questions/radiogroup-item.component.html","../../src/questions/checkbox.component.ts","../../src/questions/checkbox-item.component.ts","../../src/questions/checkbox-item.component.html","../../src/questions/dropdown.component.ts","../../src/questions/dropdown.component.html","../../src/questions/tagbox.component.ts","../../src/questions/tagbox.component.html","../../src/questions/rating.component.ts","../../src/questions/rating.component.html","../../src/questions/boolean.component.ts","../../src/questions/boolean.component.html","../../src/questions/imagepicker-item.component.ts","../../src/questions/imagepicker-item.component.html","../../src/questions/imagepicker.component.ts","../../src/questions/imagepicker.component.html","../../src/questions/button-group/button-group-item.component.ts","../../src/questions/button-group/button-group-item.component.html","../../src/questions/button-group/button-group.component.ts","../../src/questions/button-group/button-group.component.html","../../src/utils/ng-key2click.directive.ts","../../src/components/action-bar/action-bar-item.component.ts","../../src/components/action-bar/action-bar-item.component.html","../../src/components/action-bar/action-bar-item-dropdown.component.ts","../../src/components/action-bar/action-bar-item-dropdown.component.html","../../src/questions/selectbase-item.ts","../../src/questions/selectbase-item.html","../../src/components/skeleton/skeleton.component.ts","../../src/components/skeleton/skeleton.component.html","../../src/components/list/list-item.component.ts","../../src/components/list/list-item.component.html","../../src/components/list/list.component.ts","../../src/components/list/list.component.html","../../src/components/renderAs/rating-dropdown/rating-dropdown.component.ts","../../src/components/renderAs/rating-dropdown/rating-dropdown.component.html","../../src/components/renderAs/boolean-checkbox/boolean-checkbox.component.ts","../../src/components/renderAs/boolean-checkbox/boolean-checkbox.component.html","../../src/components/renderAs/boolean-radio/boolean-radio-item.component.ts","../../src/components/renderAs/boolean-radio/boolean-radio-item.component.html","../../src/components/renderAs/boolean-radio/boolean-radio.component.ts","../../src/components/renderAs/boolean-radio/boolean-radio.component.html","../../src/components/progress/default/progress.component.ts","../../src/components/progress/default/progress.component.html","../../src/components/progress/buttons/progress.component.ts","../../src/components/progress/buttons/progress.component.html","../../src/panel.component.ts","../../src/panel.component.html","../../src/components/survey-actions/survey-nav-btn.component.ts","../../src/components/survey-actions/survey-nav-btn.component.html","../../src/questions/matrix.component.ts","../../src/questions/matrix.component.html","../../src/questions/file.component.ts","../../src/questions/file.component.html","../../src/questions/comment.component.ts","../../src/questions/comment.component.html","../../src/questions/signature.component.ts","../../src/questions/signature.component.html","../../src/questions/multipletextitem.component.ts","../../src/questions/mutlipletextitem.component.html","../../src/questions/multipletext.component.ts","../../src/questions/multipletext.component.html","../../src/questions/ranking.component.ts","../../src/questions/ranking.component.html","../../src/questions/ranking-item.component.ts","../../src/questions/ranking-item.component.html","../../src/string-editor.component.ts","../../src/string-editor.component.html","../../src/components/paneldynamic-actions/paneldynamic-add-btn.component.ts","../../src/components/paneldynamic-actions/paneldynamic-add-btn.component.html","../../src/components/paneldynamic-actions/paneldynamic-next-btn.component.ts","../../src/components/paneldynamic-actions/paneldynamic-next-btn.component.html","../../src/components/paneldynamic-actions/paneldynamic-prev-btn.component.ts","../../src/components/paneldynamic-actions/paneldynamic-prev-btn.component.html","../../src/components/paneldynamic-actions/paneldynamic-remove-btn.component.ts","../../src/components/paneldynamic-actions/paneldynamic-remove-btn.component.html","../../src/components/paneldynamic-actions/paneldynamic-progress-text.component.ts","../../src/components/paneldynamic-actions/paneldynamic-progress-text.component.html","../../src/questions/paneldynamic.component.ts","../../src/questions/paneldynamic.component.html","../../src/template-renderer.component.ts","../../src/template-renderer.component.html","../../src/questions/customwidget.component.ts","../../src/questions/customwidget.component.html","../../src/components/matrix-actions/drag-drop-icon/drag-drop-icon.ts","../../src/components/matrix-actions/drag-drop-icon/drag-drop-icon.component.html","../../src/questions/matrixcell.component.ts","../../src/questions/matrixcell.component.html","../../src/questions/matrixrequiredheader.component.ts","../../src/questions/matrix-row.component.ts","../../src/questions/matrix-row.component.html","../../src/questions/matrixtable.component.ts","../../src/questions/matrixtable.component.html","../../src/questions/matrixdropdown.component.ts","../../src/questions/matrixdropdown.component.html","../../src/questions/matrixdynamic.component.ts","../../src/questions/matrixdynamic.component.html","../../src/components/matrix-actions/remove-button/remove-button.component.ts","../../src/components/matrix-actions/remove-button/remove-button.component.html","../../src/components/matrix-actions/detail-button/detail-button.component.ts","../../src/components/matrix-actions/detail-button/detail-button.component.html","../../src/questions/expression.component.ts","../../src/questions/image.component.ts","../../src/questions/image.component.html","../../src/questions/custom.component.ts","../../src/questions/composite.component.ts","../../src/angular-ui.module.ts","../../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.makeBaseElementAngular(this.getModel());\n this.onModelChanged();\n this.previousModel = this.getModel();\n }\n this.setIsRendering(true);\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 private isDestroyed: boolean = false;\n ngOnDestroy() {\n this.isDestroyed = true;\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(key);\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(key);\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(key: string) {\n if (this.getIsRendering()) return;\n this.beforeUpdate();\n if(this.getPropertiesToUpdateSync().indexOf(key) > -1) {\n this.detectChanges();\n this.afterUpdate();\n } else {\n ((<any>window)[\"__zone_symbol__queueMicrotask\"]\n ? (<any>window)[\"__zone_symbol__queueMicrotask\"] : queueMicrotask)(() => {\n if(!this.isDestroyed) {\n this.setIsRendering(true);\n this.detectChanges();\n }\n this.afterUpdate();\n });\n }\n }\n private getChangeDetectorRef() {\n return this.embeddedView ? this.embeddedView : this.changeDetectorRef;\n }\n protected getPropertiesToUpdateSync(): Array<string> {\n return [];\n }\n protected detectChanges() {\n this.getChangeDetectorRef().detectChanges();\n }\n\n protected getShouldReattachChangeDetector(): boolean {\n return true;\n }\n\n protected beforeUpdate(): void {\n if(this.getShouldReattachChangeDetector()) {\n this.getChangeDetectorRef().detach();\n }\n this.setIsRendering(true);\n }\n protected afterUpdate(): void {\n if(this.getShouldReattachChangeDetector()) {\n this.getChangeDetectorRef().reattach();\n }\n this.setIsRendering(false);\n }\n ngAfterViewChecked(): void {\n this.setIsRendering(false);\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 { 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 protected override getPropertiesToUpdateSync(): string[] {\n return [\"mode\"];\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 { 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 { ChangeDetectorRef, Component, Input } from \"@angular/core\";\nimport { BaseAngular } from \"../../base-angular\";\nimport { PopupBaseViewModel, PopupModalViewModel } 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 PopupBaseContainerComponent<T extends PopupBaseViewModel = PopupBaseViewModel> extends BaseAngular<T> {\n private prevIsVisible: boolean = false;\n @Input() model!: T;\n\n constructor(changeDetectorRef: ChangeDetectorRef) {\n super(changeDetectorRef);\n this.changeDetectorRef.detach();\n }\n protected getModel(): T {\n return this.model;\n }\n\n get applyButtonText(): string | null {\n const popupModalModel = this.model as any as PopupModalViewModel;\n if(!popupModalModel) return null;\n\n return popupModalModel.applyButtonText;\n }\n\n apply(): void {\n const popupModalModel = this.model as any as PopupModalViewModel;\n if(!popupModalModel) return;\n\n popupModalModel.apply();\n }\n\n protected override getShouldReattachChangeDetector(): boolean {\n return false;\n }\n\n protected override onModelChanged(): void {\n this.changeDetectorRef.detectChanges();\n }\n\n protected override afterUpdate(): void {\n super.afterUpdate();\n if (!this.prevIsVisible && this.model.isVisible) {\n this.model.updateOnShowing();\n }\n if (this.prevIsVisible !== this.model.isVisible) {\n this.prevIsVisible = this.model.isVisible;\n }\n }\n public clickInside(event: any) {\n event.stopPropagation();\n }\n}","<div class=\"sv-popup\" tabindex=\"-1\" [class]=\"model.styleClass\" [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 }\" (click)=\"clickInside($event)\">\n <div class=\"sv-popup__shadow\">\n <ng-container *ngIf=\"model.showHeader\">\n <ng-template [component]=\"{ name: model.popupHeaderTemplate, data: { model: model } }\"></ng-template>\n </ng-container>\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 <sv-ng-action-bar [model]=\"model.footerToolbar\"></sv-ng-action-bar>\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 { PopupBaseContainerComponent } 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(PopupBaseContainerComponent);\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): PopupBaseViewModel {\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 return this.model;\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 ): PopupBaseViewModel => {\n const options = createDialogOptions(\n componentName,\n data,\n onApply,\n onCancel,\n undefined,\n undefined,\n cssClass,\n title,\n displayMode\n );\n return 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\" [attr.id]=\"element.ariaTitleId\" [attr.tabindex]=\"element.titleTabIndex\" [attr.aria-expanded]=\"element.titleAriaExpanded\" [attr.role]=\"'button'\" [attr.aria-label]=\"ariaLabel\"><ng-container *ngTemplateOutlet=\"titleContent\"></ng-container></h1>\n <h2 *ngSwitchCase=\"'h2'\"[class]=\"element.cssTitle\" [attr.id]=\"element.ariaTitleId\" [attr.tabindex]=\"element.titleTabIndex\" [attr.aria-expanded]=\"element.titleAriaExpanded\" [attr.role]=\"'button'\" [attr.aria-label]=\"ariaLabel\"><ng-container *ngTemplateOutlet=\"titleContent\"></ng-container></h2>\n <h3 *ngSwitchCase=\"'h3'\"[class]=\"element.cssTitle\" [attr.id]=\"element.ariaTitleId\" [attr.tabindex]=\"element.titleTabIndex\" [attr.aria-expanded]=\"element.titleAriaExpanded\" [attr.role]=\"'button'\" [attr.aria-label]=\"ariaLabel\"><ng-container *ngTemplateOutlet=\"titleContent\"></ng-container></h3>\n <h4 *ngSwitchCase=\"'h4'\"[class]=\"element.cssTitle\" [attr.id]=\"element.ariaTitleId\" [attr.tabindex]=\"element.titleTabIndex\" [attr.aria-expanded]=\"element.titleAriaExpanded\" [attr.role]=\"'button'\" [attr.aria-label]=\"ariaLabel\"><ng-container *ngTemplateOutlet=\"titleContent\"></ng-container></h4>\n <h5 *ngSwitchCase=\"'h5'\"[class]=\"element.cssTitle\" [attr.id]=\"element.ariaTitleId\" [attr.tabindex]=\"element.titleTabIndex\" [attr.aria-expanded]=\"element.titleAriaExpanded\" [attr.role]=\"'button'\" [attr.aria-label]=\"ariaLabel\"><ng-container *ngTemplateOutlet=\"titleContent\"></ng-container></h5>\n <h6 *ngSwitchCase=\"'h6'\"[class]=\"element.cssTitle\" [attr.id]=\"element.ariaTitleId\" [attr.tabindex]=\"element.titleTabIndex\" [attr.aria-expanded]=\"element.titleAriaExpanded\" [attr.role]=\"'button'\" [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 } 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-actions\",\n templateUrl: \"./title-actions.component.html\",\n styleUrls: [\"../../hide-host.scss\"]\n})\nexport class ElementTitleActionsComponent extends EmbeddedViewContentComponent {\n @Input() element: any;\n}","<ng-template #template>\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 <ng-template #elementTitleContent>\n <sv-ng-string *ngIf=\"element.isTitleRenderedAsString\" [model]=\"element.locTitle\"></sv-ng-string>\n <ng-container *ngIf=\"!element.isTitleRenderedAsString\">\n <span\n *ngIf=\"element.isRequireTextOnStart\"\n [class]=\"element.cssClasses.requiredText\"\n [attr.aria-hidden]=\"true\"\n >{{ element.requiredText }}</span>\n <span\n *ngIf=\"element.no\"\n style=\"position: static\"\n [class]=\"element.cssClasses.number || element.cssClasses.panel.number\"\n [attr.aria-hidden]=\"true\"\n >{{ element.no }}</span>\n <span *ngIf=\"element.no\">&nbsp;</span>\n <span\n *ngIf=\"element.isRequireTextBeforeTitle\"\n [class]=\"element.cssClasses.requiredText\"\n [attr.aria-hidden]=\"true\"\n >{{ element.requiredText }}</span>\n <span *ngIf=\"element.isRequireTextBeforeTitle\">&nbsp;</span>\n <sv-ng-string [model]=\"element.locTitle\"></sv-ng-string>\n <span *ngIf=\"element.isRequireTextAfterTitle\">&nbsp;</span>\n <span\n *ngIf=\" 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 { 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 <sv-ng-element-title-actions [element]=\"element\"></sv-ng-element-title-actions>\n </sv-ng-dynamic-head>\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, 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 this.title\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, Input } from \"@angular/core\";\nimport { Base, SurveyTimerModel } from \"survey-core\";\nimport { BaseAngular } from \"../../base-angular\";\n\n@Component(\n {\n selector: \"sv-timer-panel\",\n templateUrl: \"./timer-panel.component.html\",\n }\n)\n\nexport class TimerPanelComponent extends BaseAngular<SurveyTimerModel> {\n @Input() model!: SurveyTimerModel;\n private readonly circleLengthValue = 440;\n\n protected getStateElement(): Base {\n return this.model;\n }\n protected getModel(): SurveyTimerModel {\n return this.model;\n }\n public get circleLength(): number {\n return this.circleLengthValue;\n }\n public get progress(): number {\n return -this.model.progress * this.circleLength;\n }\n}\n","<div *ngIf=\"model.showTimerAsClock\" [class]=\"model.rootCss\">\n <svg *ngIf=\"model.showProgress\" [class]=\"model.getProgressCss()\" [style.stroke-dasharray]=\"circleLength\" [style.stroke-dashoffset]=\"progress\" [size]=\"'auto'\" [iconName]=\"'icon-timercircle'\" sv-ng-svg-icon></svg>\n <div [class]=\"model.textContainerCss\">\n <span [class]=\"model.majorTextCss\">{{ model.clockMajorText }}</span>\n <span *ngIf=\"model.clockMinorText\" [class]=\"model.minorTextCss\">{{ model.clockMinorText }}</span>\n </div>\n</div>\n<div *ngIf=\"!model.showTimerAsClock\" [class]='model.survey.getCss().timerRoot'>{{model.text}}</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 rootStyle() {\n //use this if to check if cssClassses are calculated and allowRootStyle flag was set\n if(!!this.model.cssClasses) {\n return this.model.rootStyle;\n } else {\n return {};\n }\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}\n","<ng-template #template>\n <div *ngIf=\"!!model\" [class]=\"model.cssClasses.questionWrapper\" [style]=\"rootStyle\" (focusin)=\"model.focusIn()\">\n <ng-template [component]=\"{ name: componentName, data: componentData }\"></ng-template>\n </div>\n</ng-template>","import { AfterViewInit, ChangeDetectorRef, Component, ElementRef, Input, NgZone, ViewChild, ViewContainerRef } 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> implements AfterViewInit {\n @Input() row!: QuestionRowModel;\n @ViewChild(\"container\", { read: ElementRef }) container?: ElementRef<HTMLDivElement>;\n constructor(cdr: ChangeDetectorRef, vcr: ViewContainerRef, private ngZone: NgZone) {\n super(cdr, vcr);\n }\n\n protected getModel(): QuestionRowModel {\n return this.row;\n }\n trackElementBy (index: number, element: IElement): string {\n return element.name + index;\n }\n public ngAfterViewInit(): void {\n const el = this.container?.nativeElement;\n if (!!el && !this.row.isNeedRender) {\n this.ngZone.runOutsideAngular(() => {\n setTimeout(() => {\n this.row.startLazyRendering(el);\n }, 10);\n });\n }\n }\n protected override onModelChanged(): void {\n super.onModelChanged();\n if(!this.previousModel) {\n return;\n } else {\n this.row.isNeedRender = this.previousModel.isNeedRender;\n this.stopLazyRendering();\n }\n }\n private stopLazyRendering() {\n this.row.stopLazyRendering();\n this.row.isNeedRender = !this.row.isLazyRendering();\n }\n public override ngOnDestroy(): void {\n super.ngOnDestroy();\n this.stopLazyRendering();\n }\n}","<ng-template #template>\n <div [class]=\"row.getRowCss()\" *ngIf=\"row.visible\" #container>\n <ng-container *ngFor=\"let element of row.visibleElements; trackBy: trackElementBy\">\n <sv-ng-element [model]=\"$any(element)\" *ngIf=\"row.isNeedRender\"></sv-ng-element>\n <ng-template *ngIf=\"!row.isNeedRender && element.skeletonComponentName\" [component]=\"{ name: element.skeletonComponentName, data: { element: element } }\"></ng-template>\n </ng-container>\n </div>\n</ng-template>","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, sv-ng-page\",\n templateUrl: \"./page.component.html\",\n styleUrls: [\"./hide-host.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-template #template>\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> \n</ng-template>","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>","import { Component, Input } from \"@angular/core\";\nimport { BaseAngular } from \"../../base-angular\";\nimport { Base, Notifier } from \"survey-core\";\n\n@Component({\n selector: \"sv-notifier\",\n templateUrl: \"./notifier.component.html\",\n styles: [\":host { display: none; }\"]\n })\nexport class NotifierComponent extends BaseAngular<Notifier> {\n @Input() notifier!: Notifier;\n protected getStateElement(): Base {\n return this.notifier;\n }\n protected getModel(): Notifier {\n return this.notifier;\n }\n}","<ng-template #template>\n <div [visible]=\"notifier.active\" [class]=\"notifier.css\">\n <span>{{notifier.message}}</span>\n <sv-action-bar [model]=\"notifier.actionBar\"></sv-action-bar> \n </div>\n</ng-template>","\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 private isSurveyUpdated: boolean = false;\n protected getModel(): SurveyModel {\n return this.model;\n }\n protected override onModelChanged(): void {\n if(!!this.previousModel) {\n this.previousModel.destroyResizeObserver();\n this.previousModel.renderCallback = <any>undefined;\n }\n if(!!this.model) {\n this.model.renderCallback = () => {\n this.detectChanges();\n };\n }\n this.isSurveyUpdated = true;\n }\n override ngOnInit(): void {\n super.ngOnInit();\n if(!!this.model && this.model[\"needRenderIcons\"]) {\n SvgRegistry.renderIcons();\n }\n }\n override ngOnDestroy(): void {\n super.ngOnDestroy();\n if(!!this.model) {\n this.model.renderCallback = <any>undefined;\n }\n }\n ngAfterViewInit(): void {\n this.isSurveyUpdated = true;\n }\n override ngAfterViewChecked(): void {\n if(!!this.model && this.isSurveyUpdated) {\n this.model.afterRenderSurvey(this.rootEl.nativeElement);\n }\n super.ngAfterViewChecked();\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.isTimerPanelShowingOnTop && !model.isShowStartingPage\">\n <sv-timer-panel [model]=\"model.timerModel\"></sv-timer-panel>\n </ng-container>\n <ng-container *ngIf=\"model.isShowProgressBarOnTop && !model.isShowStartingPage\">\n <ng-template [component]='{ name: \"sv-progress-\" + this.model.progressBarType, data: { model } }'></ng-template>\n </ng-container>\n <div *ngIf=\"model.isShowingPage\" [class]=\"model.bodyCss\" [style.maxWidth]=\"model.renderedWidth\" [id]=\"model.activePage ? model.activePage.id : ''\">\n <sv-action-bar *ngIf=\"model.isNavigationButtonsShowingOnTop\" [model]=\"model.navigationBar\"></sv-action-bar>\n <!-- ko if: activePage -->\n <ng-container *ngIf=\"model.activePage\">\n <sv-ng-page [model]=\"model.activePage\" [survey]=\"model\"></sv-ng-page>\n </ng-container>\n <!-- ko if: activePage.rows.length == 0 && $data.emptyPageTemplate -->\n <!-- ko template: { name: emptyPageTemplate, data: $data.emptyPageTemplateData || $data } -->\n <!-- /ko -->\n <!-- /ko -->\n <!-- /ko -->\n <ng-container *ngIf=\"model.isShowProgressBarOnBottom && !model.isShowStartingPage\">\n <ng-template [component]='{ name: \"sv-progress-\" + this.model.progressBarType, data: { model } }'></ng-template>\n </ng-container>\n <sv-action-bar *ngIf=\"model.isNavigationButtonsShowingOnBottom\" [model]=\"model.navigationBar\"></sv-action-bar> \n </div>\n <ng-container *ngIf=\"model.isTimerPanelShowingOnBottom && !model.isShowStartingPage\">\n <sv-timer-panel [model]=\"model.timerModel\"></sv-timer-panel>\n </ng-container>\n <div *ngIf=\"model.state === 'completed' && model.showCompletedPage\" [class]=\"model.completedCss\"\n [innerHtml]=\"model.processedCompletedHtml\"></div>\n <div *ngIf=\"model.state === 'completedbefore'\" [class]=\"model.css.body\"\n [innerHtml]=\"model.processedCompletedBeforeHtml\"></div>\n <div *ngIf=\"model.state === 'loading'\" [class]=\"model.css.body\" [innerHtml]=\"model.processedLoadingHtml\"></div>\n <div *ngIf=\"model.state === 'empty'\" [class]=\"model.css.bodyEmpty\">{{model.emptySurveyText}}</div>\n </div>\n </form>\n <sv-brand-info *ngIf=\"model.showBrandInfo\"></sv-brand-info>\n <sv-notifier [notifier]=\"model.notifier\"></sv-notifier>\n </div>\n</ng-template>","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 getShouldReattachChangeDetector(): boolean {\n return false;\n }\n protected override onModelChanged(): void {\n this.changeDetectorRef.detectChanges();\n }\n}","import { ChangeDetectorRef, Component, Input, OnChanges, SimpleChanges } 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> implements OnChanges {\n @Input() model!: SurveyModel;\n @Input() isExpanded?: boolean;\n @Input() closeOnCompleteTimeout?: number;\n public popup!: PopupSurveyModel;\n\n constructor(changeDetectorRef: ChangeDetectorRef) {\n super(changeDetectorRef);\n changeDetectorRef.detach();\n }\n protected getModel(): PopupSurveyModel {\n return this.popup;\n }\n protected override getShouldReattachChangeDetector(): boolean {\n return false;\n }\n ngOnChanges(changes: SimpleChanges): void {\n if(changes[\"model\"]?.currentValue !== changes[\"model\"]?.previousValue) {\n this.popup = new PopupSurveyModel(null, this.model);\n }\n if (this.isExpanded !== undefined) {\n this.popup.isExpanded = this.isExpanded;\n }\n if (this.closeOnCompleteTimeout !== undefined) {\n this.popup.closeOnCompleteTimeout = this.closeOnCompleteTimeout;\n }\n this.popup.isShowing = true;\n this.changeDetectorRef.detectChanges();\n }\n}","<div *ngIf=\"!!popup && popup.isShowing\" [class]=\"popup.cssRoot\" style=\"position: fixed; bottom: 3px; right: 10px;\" [style.width]=\"popup.renderedWidth\" [style.maxWidth]=\"popup.renderedWidth\">\n <div [class]=\"popup.cssHeaderRoot\">\n <span (click)=\"popup.changeExpandCollapse()\" style=\"width: 100%; cursor: pointer;\">\n <span style=\"padding-right:10px\" [class]=\"popup.cssHeaderTitle\">{{popup.locTitle.renderedHtml}}</span>\n <span aria-hidden=\"true\" [class]=\"popup.cssButton\"></span>\n </span>\n <span *ngIf=\"popup.isExpanded\" (click)=\"popup.changeExpandCollapse()\" style=\"float: right; cursor: pointer;\">\n <span style=\"padding-right:10px\" [class]=\"popup.cssHeaderTitle\">X</span>\n </span>\n </div>\n <div *ngIf=\"popup.isExpanded\" [class]=\"popup.cssBody\">\n <survey [model]=\"popup.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 if(this.element.clickTitleFunction !== undefined) {\n this.element.clickTitleFunction();\n }\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()\" [id]=\"question.commentId\" [attr.max-length]=\"question.getOthersMaxLength()\" [attr.aria-required]=\"question.ariaRequired\" [attr.aria-label]=\"question.ariaLabel\" [attr.placeholder]=\"question.commentPlaceholder\" \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 public getQuestionContentWrapperComponentName(): string {\n return (<any>this.model.survey).getQuestionContentWrapperComponentName(this.model) || this.getComponentName();\n }\n public getQuestionContentWrapperComponentData(): any {\n return {\n componentName: this.getComponentName(),\n componentData: {\n model: this.model,\n data: (<any>this.model.survey).getElementWrapperComponentData(this.model)\n }\n };\n }\n}\n\nAngularComponentFactory.Instance.registerComponent(\"question\", QuestionComponent);","<ng-template #template>\n <div *ngIf=\"!!model\" #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.ariaLabelledBy\">\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: getQuestionContentWrapperComponentName(), data: getQuestionContentWrapperComponentData(), default: 'skeleton-question' }\">\n </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 *ngIf=\"model.hasDescriptionUnderInput\" [class]=\"model.cssDescription\" [model]=\"model.locDescription\" sv-ng-string></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, DoCheck, 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 DoCheck {\n @Input() model!: LocalizableString;\n private previousModel: LocalizableString | undefined;\n constructor(private changeDetectorRef: ChangeDetectorRef) {}\n ngDoCheck(): void {\n if(this.model !== this.previousModel) {\n if(!!this.previousModel) {\n this.clearOnChanged(this.previousModel);\n }\n if(!!this.model) {\n this.model.onChanged = () => { this.changeDetectorRef.detectChanges(); };\n }\n this.previousModel = this.model;\n }\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 { Component, Input } from \"@angular/core\";\nimport { BaseAngular } from \"../../base-angular\";\nimport { PopupBaseViewModel, PopupDropdownViewModel } from \"survey-core\";\nimport { AngularComponentFactory } from \"../../component-factory\";\n\n@Component({\n selector: \"sv-ng-popup-pointer, '[sv-ng-popup-pointer]'\",\n templateUrl: \"./popup-pointer.component.html\"\n})\n\nexport class PopupPointerComponent extends BaseAngular<PopupBaseViewModel> {\n @Input() model!: PopupBaseViewModel;\n\n get popupModel(): PopupDropdownViewModel {\n return this.model as PopupDropdownViewModel;\n }\n\n protected getModel(): PopupBaseViewModel {\n return this.model;\n }\n}\nAngularComponentFactory.Instance.registerComponent(\"popup-pointer\", PopupPointerComponent);","<span class=\"sv-popup__pointer\" [style]=\"{ left: popupModel.pointerTarget.left, top: popupModel.pointerTarget.top }\"></span>","import { ChangeDetectorRef, Component, Input, ViewContainerRef } from \"@angular/core\";\nimport { BaseAngular } from \"../../base-angular\";\nimport { PopupBaseViewModel, PopupModel, createPopupViewModel } 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 protected override onModelChanged(): void {\n this.destroyModel();\n this.model = createPopupViewModel(this.popupModel, this.viewContainerRef?.element.nativeElement.parentElement);\n this.model.initializePopupContainer();\n this.portalHost = this.popupService.createComponent(this.model);\n }\n override ngOnInit() {\n this.onModelChanged();\n }\n public destroyModel(): void {\n this.portalHost?.detach();\n this.model?.unmountPopupContainer();\n }\n\n override ngOnDestroy() {\n super.ngOnDestroy();\n this.destroyModel();\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, 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 get dropdownModel(): DropdownListModel {\n return this.model?.dropdownListModel;\n }\n protected getModel() {\n return this.model;\n }\n\n override ngOnInit(): void {\n super.ngOnInit();\n if (!this.model.dropdownListModel) {\n this.model.dropdownListModel = new DropdownListModel(this.model);\n }\n }\n\n override ngOnDestroy() {\n super.ngOnDestroy();\n this.dropdownModel?.dispose();\n }\n\n click(event: any) {\n this.dropdownModel?.onClick(event);\n }\n clear(event: any) {\n this.dropdownModel?.onClear(event);\n }\n keyhandler(event: any) {\n this.dropdownModel?.keyHandler(event);\n }\n blur(event: any) {\n this.dropdownModel?.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.role]=\"dropdownModel.filterStringEnabled ? model.ariaRole : null\"\n [attr.id]=\"model.getInputId()\"\n [attr.inputmode]=\"dropdownModel.inputMode\"\n [attr.tabindex]=\"dropdownModel.inputReadOnly ? null : -1\"\n [attr.disabled]=\"model.isInputReadOnly ? true : null\"\n [attr.aria-label]=\"model.placeholder\"\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.clearCaption\"\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.inputmode]=\"model.inputMode\"\n [attr.role]=\"model.filterStringEnabled ? question.ariaRole : null\"\n [attr.readonly]=\"!model.searchEnabled ? true : null\"\n [attr.disabled]=\"question.isInputReadOnly ? true : null\"\n [attr.size]=\"!model.filterString ? 1 : null\"\n [attr.aria-label]=\"question.placeholder\"\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]=\"'auto'\" 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.selectedChoices\" [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.clearCaption\"\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 { Question, QuestionSelectBase } from \"survey-core\";\n\n@Component({\n selector: \"sv-ng-comment-other, '[sv-ng-comment-other]'\",\n templateUrl: \"./comment-other.component.html\",\n})\nexport class SurveyCommentOtherComponent {\n @Input() question!: Question;\n constructor() {\n }\n public get otherValue(): string {\n const val = (<QuestionSelectBase>this.question).otherValue;\n return !!val ? val : \"\";\n }\n public onOtherValueChange(event: any): void {\n (<QuestionSelectBase>this.question).onOtherValueChange(event);\n }\n public onOtherValueInput(event: any): void {\n (<QuestionSelectBase>this.question).onOtherValueInput(event);\n }\n public get otherId(): string {\n return (<QuestionSelectBase>this.question).otherId;\n }\n public get otherPlaceholder(): string {\n return (<QuestionSelectBase>this.question).otherPlaceholder;\n }\n}","<textarea *ngIf=\"!question.isReadOnlyRenderDiv()\" [id]=\"otherId\" [attr.max-length]=\"question.getOthersMaxLength()\" [attr.aria-required]=\"question.ariaRequired\" [attr.aria-label]=\"question.ariaLabel\" [attr.placeholder]=\"otherPlaceholder\" \n [value]=\"otherValue\"\n [style.resize]=\"question.resizeStyle\"\n [disabled]=\"question.isInputReadOnly\"\n (change)=\"onOtherValueChange($event)\"\n (input)=\"onOtherValueInput($event)\"\n [class]=\"question.cssClasses.other\">\n</textarea>\n<div *ngIf=\"question.isReadOnlyRenderDiv()\">{{ otherValue }}</div>\n","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-other></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\nAngularComponentFactory.Instance.registerComponent(\"text-question\", TextQuestionComponent);"," <ng-container [ngTemplateOutlet]=\"input\" *ngIf=\"!model.dataListId && !model.isReadOnlyRenderDiv()\"></ng-container>\n <div *ngIf=\"model.dataListId && !model.isReadOnlyRenderDiv()\">\n <ng-container [ngTemplateOutlet]=\"input\"></ng-container>\n <datalist [id]=\"model.dataListId\">\n <option *ngFor=\"let dataListItem of model.dataList\" [value]=\"dataListItem\"></option>\n </datalist>\n </div>\n <div *ngIf=\"model.isReadOnlyRenderDiv()\" #contentElement>{{ model.value }}</div>\n <ng-template #input>\n <input [style]=\"model.inputStyle\" [class]=\"model.getControlClass()\" [attr.list]=\"model.dataListId\"\n (change)=\"model.onChange($event)\" [attr.value]=\"model.value\" [disabled]=\"model.isInputReadOnly\" name=\"user\" [type]=\"model.inputType\" [id]=\"model.inputId\" [attr.placeholder]=\"model.renderedPlaceholder || ''\"\n (keyup)=\"model.onKeyUp($event)\" (keydown)=\"model.onKeyDown($event)\" (blur)=\"model.onBlur($event)\" (compositionupdate)=\"model.onCompositionUpdate($event)\" \n [attr.size] = \"model.renderedInputSize\" [attr.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 </ng-template>","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 public trackItemBy(_: number, item: ItemValue): any {\n return item.value;\n }\n public trackColumnBy(index: number): any {\n return index;\n }\n\n public getItemValueComponentName(item: ItemValue): string {\n return this.model.getItemValueWrapperComponentName(item) || this.getDefaultComponentName();\n }\n public getItemValueComponentData(item: ItemValue): any {\n const itemComponentProperty = this.model.getPropertyByName(\"itemComponent\");\n const isDefaultItemComponent = itemComponentProperty.isDefaultValue(this.model.itemComponent);\n const itemComponentName = isDefaultItemComponent ? this.getDefaultComponentName() : this.model.itemComponent;\n\n return {\n componentName: itemComponentName,\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; trackBy: trackItemBy\">\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; trackBy: trackItemBy\" >\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; trackBy: trackItemBy\">\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; trackBy: trackColumnBy\" role=\"presentation\">\n <ng-container *ngFor=\"let item of column; trackBy: trackItemBy\">\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; trackBy: trackItemBy\">\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-other></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 this.question.clickItemHandler(this.model, event.target.checked);\n }\n onSelectAllChange(event: any) {\n this.question.toggleSelectAll();\n }\n}\n","<input *ngIf=\"model == question.selectAllItem\" role=\"option\" 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\" role=\"option\" 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-other></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-other></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.booleanValue = 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.booleanValue\" [(ngModel)]=\"model.booleanValue\" />\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 <span *ngIf=\"question.cssClasses.checkedItemDecorator\" [class]=\"question.cssClasses.checkedItemDecorator\">\n <svg *ngIf=\"question.cssClasses.checkedItemSvgIconId\" [class]=\"question.cssClasses.checkedItemSvgIcon\" [iconName]=\"question.cssClasses.checkedItemSvgIconId\" [size]=\"'auto'\" sv-ng-svg-icon></svg>\n </span>\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\" [attr.aria-checked]=\"model.ariaChecked\" [attr.aria-expanded]=\"model.ariaExpanded\" [attr.role]=\"model.ariaRole\" [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\" [attr.role]=\"model.ariaRole\">\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)\" *ngIf=\"!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 { EmbeddedViewContentComponent } from \"../../embedded-view-content.component\";\nimport { AngularComponentFactory } from \"../../component-factory\";\n\n@Component({\n selector: \"sv-skeleton\",\n templateUrl: \"./skeleton.component.html\",\n styleUrls: [\"../../hide-host.scss\"]\n})\nexport class SkeletonComponent extends EmbeddedViewContentComponent {\n @Input() element: any;\n}\n\nAngularComponentFactory.Instance.registerComponent(\"sv-skeleton\", SkeletonComponent);","<ng-template #template>\n <div class=\"sv-skeleton-element\" [id]=\"element.id\"></div>\n</ng-template>","import { AfterViewInit, 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 implements AfterViewInit {\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 ngAfterViewInit(): void {\n this.listModel.onLastItemRended(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.paddingInlineStart]=\"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 { AfterViewInit, Component, ElementRef, Input, ViewChild } from \"@angular/core\";\nimport { Action } from \"survey-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 implements AfterViewInit {\n @Input() model: any;\n @ViewChild(\"listContainerElement\") listContainerElement!: ElementRef<HTMLDivElement>;\n\n trackItemBy = (_: any, item: Action) => {\n return item.id;\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 ngAfterViewInit(): void {\n if(!!this.listContainerElement?.nativeElement) {\n this.model.initListContainerHtmlElement(this.listContainerElement.nativeElement);\n }\n }\n}\n\nAngularComponentFactory.Instance.registerComponent(\"sv-list\", ListComponent);","<ng-template #template>\n <div [class]=\"model.cssClasses.root\" #listContainerElement>\n <div *ngIf=\"model.showFilter\" [class]=\"model.cssClasses.filter\">\n <div [class]=\"model.cssClasses.filterIcon\">\n <svg [iconName]=\"'icon-search'\" [size]=\"'auto'\" 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 <button *ngIf=\"model.showSearchClearButton && !!model.filterString\" (click)=\"model.onClickSearchClearButton($event)\" [class]=\"model.cssClasses.searchClearButtonIcon\">\n <svg [iconName]=\"'icon-searchclear'\" [size]=\"'auto'\" sv-ng-svg-icon></svg>\n </button>\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\" [visible]=\"!model.isEmpty\" (mousedown)=\"onMouseDown($event)\" (keydown)=\"onKeyDown($event)\" (mousemove)=\"onMouseMove($event)\">\n <sv-ng-list-item *ngFor=\"let item of model.renderedActions; trackBy: trackItemBy\" [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.booleanValue\" [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.booleanValue\" [value]=\"model.booleanValue\"\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.isLabelRendered\" [class]=\"model.cssClasses.checkboxControlLabel\" [id]=\"model.labelRenderedAriaID\">\n <sv-ng-element-title-actions [element]=\"model\"></sv-ng-element-title-actions>\n </span>\n </label>\n <div *ngIf=\"model.canRenderLabelDescription\" [class]=\"model.cssDescription\" [model]=\"model.locDescription\" sv-ng-string></div>\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.booleanValue\"\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.getProgressCssClasses()\">\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 && 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\" [attr.title]=\"model.getTooltip()\"/>","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 *ngIf=\"model.hasRows\"></td>\n <th\n *ngFor=\"let column of model.visibleColumns\" [style]=\"{ minWidth: model.columnMinWidth, width: model.columnMinWidth }\" [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\" [style]=\"{ minWidth: model.rowTitleWidth, width: model.rowTitleWidth }\" *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 tabindex=\"-1\"\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.id]=\"model.inputId\"\n [attr.multiple]=\"model.multipleRendered\"\n [attr.placeholder]=\"model.title\"\n style=\"color: transparent\"\n />\n <div [class]=\"model.cssClasses.dragArea\"\n (dragenter)=\"model.onDragEnter($event)\"\n (drop)=\"model.onDrop($event)\"\n (dragover)=\"model.onDragOver($event)\"\n (dragleave)=\"model.onDragLeave($event)\"> \n <div\n [class]=\"model.getFileDecoratorCss()\"\n >\n <span [class]=\"model.cssClasses.dragAreaPlaceholder\">{{ model.dragAreaPlaceholder }}</span>\n <div [class]=\"model.cssClasses.wrapper\">\n <label\n role=\"button\"\n tabindex=\"0\"\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.clearButtonCaption }}</span>\n <svg *ngIf=\"model.cssClasses.removeButtonIconId\" [iconName]=\"model.cssClasses.removeButtonIconId\" [size]=\"'auto'\" [title]=\"model.clearButtonCaption\" 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 [style.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 [style.height]=\"model.imageHeight\"\n [style.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 [style.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.clearButtonCaption }}</span>\n <svg *ngIf=\"model.cssClasses.removeButtonIconId\" [iconName]=\"model.cssClasses.removeButtonIconId\" [size]=\"'auto'\" [title]=\"model.clearButtonCaption\" sv-ng-svg-icon></svg>\n </button>\n <sv-action-bar *ngIf=\"model.mobileFileNavigatorVisible\" [model]=\"model.mobileFileNavigator\"></sv-action-bar>\n </div>\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 override 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 [attr.tabindex]=\"question.getItemTabIndex(model)\" [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\n class=\"sv-string-editor\"\n contenteditable=\"true\"\n *ngIf=\"model.hasHtml\"\n [innerHtml]=\"model.renderedHtml\"\n (blur)=\"onInput($event)\"\n (click)=\"onClick($event)\"\n></span>\n<span\n class=\"sv-string-editor\"\n contenteditable=\"true\"\n *ngIf=\"!model.hasHtml\"\n (blur)=\"onInput($event)\"\n (click)=\"onClick($event)\"\n >{{ model.renderedHtml }}</span\n>\n","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-remove-btn\",\n templateUrl: \"./paneldynamic-remove-btn.component.html\"\n})\nexport class PaneldynamicRemoveButtonComponent extends PaneldynamicAction {\n get panel() {\n return (this.data ? this.data : this.model.data).panel;\n }\n}\n\nAngularComponentFactory.Instance.registerComponent(\"sv-paneldynamic-remove-btn\", PaneldynamicRemoveButtonComponent);\n","<button type=\"button\" (click)=\"question.removePanelUI(panel)\" [class]=\"question.getPanelRemoveButtonCss()\"> \n <span [class]=\"question.cssClasses.buttonRemoveText\">{{question.panelRemoveText}}</span>\n <span [class]=\"question.cssClasses.iconRemove\"></span>\n</button>\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 *ngIf=\"model.panelRemoveButtonLocation ==='right'\">\n <sv-ng-paneldynamic-remove-btn *ngIf=\"model.canRemovePanel && panel.state != 'collapsed' && model.panelRemoveButtonLocation == 'right'\" [data]=\"{ panel: panel, question: model }\"></sv-ng-paneldynamic-remove-btn>\n </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 *ngIf=\"model.footerToolbar.visibleActions.length\" [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>","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 MatrixDropdownRowModelBase,\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(): MatrixDropdownRowModelBase {\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-other></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","<div [style]=\"{ overflowX: question.showHorizontalScroll ? 'scroll' : '' }\" #contentElement [class]=\"question.cssClasses.tableWrapper\">\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>\n</div>","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 <sv-ng-matrix-table *ngIf=\"model.renderedTable?.showTable\" [question]=\"model\" [table]=\"model.renderedTable\"></sv-ng-matrix-table>\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 #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.altText || 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 { PopupPointerComponent } from \"./components/popup/popup-pointer.component\";\nimport { PopupComponent } from \"./components/popup/popup.component\";\nimport { PopupBaseContainerComponent } 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 { SurveyCommentOtherComponent } from \"./comment-other.component\";\nimport { ElementHeaderComponent } from \"./components/element-header/element-header.component\";\nimport { ElementTitleActionsComponent } from \"./components/element-title/title-actions.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\";\nimport { SkeletonComponent } from \"./components/skeleton/skeleton.component\";\nimport { PaneldynamicRemoveButtonComponent } from \"./components/paneldynamic-actions/paneldynamic-remove-btn.component\";\nimport { TimerPanelComponent } from \"./components/timer-panel/timer-panel.component\";\nimport { NotifierComponent } from \"./components/notifier/notifier.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, PopupBaseContainerComponent, PopupPointerComponent,\n ListComponent, ListItemComponent,\n TagboxFilterComponent, TagboxComponent, TagboxQuestionComponent, TagboxItemComponent,\n ActionBarComponent, ActionComponent, ActionBarItemComponent, ActionBarItemDropdownComponent, HtmlQuestionComponent,\n SelectBaseItemComponent, SelectBaseComponent, SurveyCommentComponent, SurveyCommentOtherComponent, ElementHeaderComponent, ElementTitleActionsComponent, 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, SkeletonComponent, TimerPanelComponent, PaneldynamicRemoveButtonComponent,\n NotifierComponent\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, PopupBaseContainerComponent, PopupPointerComponent,\n ListComponent, ListItemComponent,\n TagboxFilterComponent, TagboxComponent, TagboxQuestionComponent, TagboxItemComponent,\n ActionBarComponent, ActionComponent, ActionBarItemComponent, ActionBarItemDropdownComponent, HtmlQuestionComponent,\n SelectBaseItemComponent, SelectBaseComponent, SurveyCommentComponent, SurveyCommentOtherComponent, 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,\n CustomQuestionComponent, CompositeQuestionComponent, ButtonGroupQuestionComponent, ModalComponent, LogoImageComponent, SkeletonComponent, TimerPanelComponent, PaneldynamicRemoveButtonComponent,\n NotifierComponent\n ],\n providers: [PopupService],\n})\nexport class SurveyModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './angular-ui';\n"],"names":["i2.DynamicComponentDirective","i1.ActionComponent","i2","i1.ActionBarComponent","i2.VisibleDirective","i3","i4.DynamicComponentDirective","i1.PopupService","i1.DynamicComponentDirective","i2.SurveyStringComponent","i1.DynamicHeadComponent","i2.ElementTitleActionsComponent","i1.ElementTitleComponent","i1.SvgIconComponent","i1.ElementComponent","i3.DynamicComponentDirective","i3.RowComponent","i4","i5.DynamicComponentDirective","i1.SurveyHeaderComponent","i2.TimerPanelComponent","i3.ActionBarComponent","i4.PageComponent","i5.BrandInfoComponent","i6.NotifierComponent","i7","i8","i9.DynamicComponentDirective","i1.ModalComponent","i2.SurveyContentComponent","i1.SurveyComponent","i1.SurveyStringComponent","i1.ErrorsComponent","i2.ElementHeaderComponent","i3.SurveyCommentComponent","i4.SurveyStringComponent","i5","i6.VisibleDirective","i7.DynamicComponentDirective","i2.SvgIconComponent","i3.PopupComponent","i6","i7.VisibleDirective","i1","i1.TagboxItemComponent","i1.SurveyCommentOtherComponent","i1.SafeUrlPipe","i1.SafeHtmlPipe","i1.DropdownComponent","i2.SurveyCommentOtherComponent","i1.TagboxComponent","i1.ButtonGroupItemComponent","i2.Key2ClickDirective","i2.PopupComponent","i3.Key2ClickDirective","i1.CheckboxItemComponent","i2.RadiogroupItemComponent","i3.SurveyStringComponent","i4.VisibleDirective","i6.DynamicComponentDirective","i2.ListItemComponent","i5.VisibleDirective","i1.ElementTitleActionsComponent","i1.BooleanRadioItemComponent","i1.ElementHeaderComponent","i2.RowComponent","i2.ActionBarComponent","i5.SafeUrlPipe","i2.ErrorsComponent","i3.TextQuestionComponent","i1.MultipleTextItemComponent","i2.PanelDynamicAddBtn","i3.PaneldynamicRemoveButtonComponent","i4.ActionBarComponent","i5.PanelDynamicPrevBtn","i6.PanelDynamicNextBtn","i7.PanelDynamicProgressText","i3.SafeHtmlPipe","i1.MatrixDynamicDragDropIconComponent","i3.ErrorsComponent","i4.SelectBaseItemComponent","i5.SurveyCommentOtherComponent","i6.SurveyStringComponent","i8.DynamicComponentDirective","i9.VisibleDirective","i1.MatrixCellComponent","i2.MatrixRequiredHeader","i3.MatrixRowComponent","i4.MatrixCellComponent","i1.MatrixTableComponent","i2.SafeResourceUrlPipe","i1.PanelComponent"],"mappings":"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"}