survey-angular-ui 1.9.72 → 1.9.75

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 (232) hide show
  1. package/README.md +23 -192
  2. package/angular-ui.d.ts +2 -0
  3. package/angular-ui.module.d.ts +82 -80
  4. package/bundles/survey-angular-ui.umd.js +4338 -0
  5. package/bundles/survey-angular-ui.umd.js.map +1 -0
  6. package/component-factory.d.ts +2 -2
  7. package/components/character-counter/character-counter.component.d.ts +10 -0
  8. package/components/rating/rating-item.component.d.ts +13 -0
  9. package/esm2015/angular-ui.js +105 -0
  10. package/esm2015/angular-ui.module.js +188 -0
  11. package/esm2015/base-angular.js +128 -0
  12. package/esm2015/comment-other.component.js +35 -0
  13. package/esm2015/comment.component.js +24 -0
  14. package/esm2015/component-factory.js +26 -0
  15. package/esm2015/components/action-bar/action-bar-item-dropdown.component.js +36 -0
  16. package/esm2015/components/action-bar/action-bar-item.component.js +26 -0
  17. package/esm2015/components/action-bar/action-bar.component.js +47 -0
  18. package/esm2015/components/action-bar/action.component.js +31 -0
  19. package/esm2015/components/brand-info/brand-info.component.js +16 -0
  20. package/esm2015/components/character-counter/character-counter.component.js +25 -0
  21. package/esm2015/components/dropdown/dropdown.component.js +76 -0
  22. package/esm2015/components/element-header/element-header.component.js +35 -0
  23. package/esm2015/components/element-title/dynamic-head.component.js +24 -0
  24. package/esm2015/components/element-title/element-title.component.js +21 -0
  25. package/esm2015/components/element-title/title-actions.component.js +21 -0
  26. package/esm2015/components/list/list-item.component.js +52 -0
  27. package/esm2015/components/list/list.component.js +55 -0
  28. package/esm2015/components/matrix-actions/detail-button/detail-button.component.js +28 -0
  29. package/esm2015/components/matrix-actions/drag-drop-icon/drag-drop-icon.js +24 -0
  30. package/esm2015/components/matrix-actions/remove-button/remove-button.component.js +28 -0
  31. package/esm2015/components/notifier/notifier.component.js +26 -0
  32. package/esm2015/components/paneldynamic-actions/paneldynamic-add-btn.component.js +38 -0
  33. package/esm2015/components/paneldynamic-actions/paneldynamic-next-btn.component.js +21 -0
  34. package/esm2015/components/paneldynamic-actions/paneldynamic-prev-btn.component.js +21 -0
  35. package/esm2015/components/paneldynamic-actions/paneldynamic-progress-text.component.js +17 -0
  36. package/esm2015/components/paneldynamic-actions/paneldynamic-remove-btn.component.js +20 -0
  37. package/esm2015/components/popup/modal-container.component.js +46 -0
  38. package/esm2015/components/popup/popup-container.component.js +59 -0
  39. package/esm2015/components/popup/popup-pointer.component.js +25 -0
  40. package/esm2015/components/popup/popup.component.js +45 -0
  41. package/esm2015/components/popup/popup.service.js +26 -0
  42. package/esm2015/components/progress/buttons/progress.component.js +71 -0
  43. package/esm2015/components/progress/default/progress.component.js +30 -0
  44. package/esm2015/components/rating/rating-item.component.js +34 -0
  45. package/esm2015/components/renderAs/boolean-checkbox/boolean-checkbox.component.js +24 -0
  46. package/esm2015/components/renderAs/boolean-radio/boolean-radio-item.component.js +25 -0
  47. package/esm2015/components/renderAs/boolean-radio/boolean-radio.component.js +21 -0
  48. package/esm2015/components/renderAs/dropdown-select/dropdown-option-item.component.js +23 -0
  49. package/esm2015/components/renderAs/dropdown-select/dropdown-select.component.js +41 -0
  50. package/esm2015/components/renderAs/rating-dropdown/rating-dropdown.component.js +21 -0
  51. package/esm2015/components/skeleton/skeleton.component.js +20 -0
  52. package/esm2015/components/skeleton.component.js +19 -0
  53. package/esm2015/components/survey-actions/survey-nav-btn.component.js +26 -0
  54. package/esm2015/components/survey-header/logo-image.component.js +24 -0
  55. package/esm2015/components/survey-header/survey-header.component.js +33 -0
  56. package/esm2015/components/svg-icon/svg-icon.component.js +68 -0
  57. package/esm2015/components/tagbox/tagbox-filter.component.js +26 -0
  58. package/esm2015/components/tagbox/tagbox-item.component.js +30 -0
  59. package/esm2015/components/tagbox/tagbox.component.js +52 -0
  60. package/esm2015/components/timer-panel/timer-panel.component.js +35 -0
  61. package/esm2015/element.component.js +59 -0
  62. package/esm2015/embedded-view-content.component.js +25 -0
  63. package/esm2015/errors.component.js +61 -0
  64. package/esm2015/page.component.js +40 -0
  65. package/esm2015/panel.component.js +42 -0
  66. package/esm2015/popup.survey.component.js +49 -0
  67. package/esm2015/question.component.js +58 -0
  68. package/esm2015/question.js +35 -0
  69. package/esm2015/questions/boolean.component.js +23 -0
  70. package/esm2015/questions/button-group/button-group-item.component.js +33 -0
  71. package/esm2015/questions/button-group/button-group.component.js +17 -0
  72. package/esm2015/questions/checkbox-item.component.js +28 -0
  73. package/esm2015/questions/checkbox.component.js +20 -0
  74. package/esm2015/questions/comment.component.js +22 -0
  75. package/esm2015/questions/composite.component.js +21 -0
  76. package/esm2015/questions/custom.component.js +27 -0
  77. package/esm2015/questions/customwidget.component.js +54 -0
  78. package/esm2015/questions/dropdown.component.js +20 -0
  79. package/esm2015/questions/expression.component.js +17 -0
  80. package/esm2015/questions/file.component.js +29 -0
  81. package/esm2015/questions/html.component.js +29 -0
  82. package/esm2015/questions/image.component.js +29 -0
  83. package/esm2015/questions/imagepicker-item.component.js +52 -0
  84. package/esm2015/questions/imagepicker.component.js +32 -0
  85. package/esm2015/questions/matrix-row.component.js +31 -0
  86. package/esm2015/questions/matrix.component.js +40 -0
  87. package/esm2015/questions/matrixcell.component.js +94 -0
  88. package/esm2015/questions/matrixdropdown.component.js +19 -0
  89. package/esm2015/questions/matrixdynamic.component.js +20 -0
  90. package/esm2015/questions/matrixrequiredheader.component.js +24 -0
  91. package/esm2015/questions/matrixtable.component.js +34 -0
  92. package/esm2015/questions/multipletext.component.js +28 -0
  93. package/esm2015/questions/multipletextitem.component.js +26 -0
  94. package/esm2015/questions/paneldynamic.component.js +82 -0
  95. package/esm2015/questions/radiogroup-item.component.js +22 -0
  96. package/esm2015/questions/radiogroup.component.js +25 -0
  97. package/esm2015/questions/ranking-item.component.js +27 -0
  98. package/esm2015/questions/ranking.component.js +34 -0
  99. package/esm2015/questions/rating.component.js +27 -0
  100. package/esm2015/questions/selectbase-item.js +37 -0
  101. package/esm2015/questions/selectbase.component.js +53 -0
  102. package/esm2015/questions/signature.component.js +20 -0
  103. package/esm2015/questions/tagbox.component.js +20 -0
  104. package/esm2015/questions/text.component.js +21 -0
  105. package/esm2015/row.component.js +63 -0
  106. package/esm2015/string-editor.component.js +29 -0
  107. package/esm2015/string-viewer.component.js +41 -0
  108. package/esm2015/survey-angular-ui.js +5 -0
  109. package/esm2015/survey-content.component.js +72 -0
  110. package/esm2015/survey-string.component.js +17 -0
  111. package/esm2015/survey.component.js +32 -0
  112. package/esm2015/template-renderer.component.js +27 -0
  113. package/esm2015/utils/dynamic.directive.js +54 -0
  114. package/esm2015/utils/ng-key2click.directive.js +69 -0
  115. package/esm2015/utils/ng-show.directive.js +27 -0
  116. package/esm2015/utils/safe-html.pipe.js +18 -0
  117. package/esm2015/utils/safe-url.pipe.js +33 -0
  118. package/esm2020/angular-ui.mjs +103 -103
  119. package/esm2020/angular-ui.module.mjs +184 -184
  120. package/esm2020/base-angular.mjs +128 -128
  121. package/esm2020/comment-other.component.mjs +32 -32
  122. package/esm2020/comment.component.mjs +21 -21
  123. package/esm2020/component-factory.mjs +26 -26
  124. package/esm2020/components/action-bar/action-bar-item-dropdown.component.mjs +32 -32
  125. package/esm2020/components/action-bar/action-bar-item.component.mjs +22 -22
  126. package/esm2020/components/action-bar/action-bar.component.mjs +43 -43
  127. package/esm2020/components/action-bar/action.component.mjs +27 -27
  128. package/esm2020/components/brand-info/brand-info.component.mjs +13 -13
  129. package/esm2020/components/dropdown/dropdown.component.mjs +66 -66
  130. package/esm2020/components/element-header/element-header.component.mjs +32 -32
  131. package/esm2020/components/element-title/dynamic-head.component.mjs +20 -20
  132. package/esm2020/components/element-title/element-title.component.mjs +17 -17
  133. package/esm2020/components/element-title/title-actions.component.mjs +17 -17
  134. package/esm2020/components/list/list-item.component.mjs +48 -48
  135. package/esm2020/components/list/list.component.mjs +50 -50
  136. package/esm2020/components/matrix-actions/detail-button/detail-button.component.mjs +25 -25
  137. package/esm2020/components/matrix-actions/drag-drop-icon/drag-drop-icon.mjs +20 -20
  138. package/esm2020/components/matrix-actions/remove-button/remove-button.component.mjs +25 -25
  139. package/esm2020/components/notifier/notifier.component.mjs +22 -22
  140. package/esm2020/components/paneldynamic-actions/paneldynamic-add-btn.component.mjs +35 -35
  141. package/esm2020/components/paneldynamic-actions/paneldynamic-next-btn.component.mjs +18 -18
  142. package/esm2020/components/paneldynamic-actions/paneldynamic-prev-btn.component.mjs +18 -18
  143. package/esm2020/components/paneldynamic-actions/paneldynamic-progress-text.component.mjs +14 -14
  144. package/esm2020/components/paneldynamic-actions/paneldynamic-remove-btn.component.mjs +17 -17
  145. package/esm2020/components/popup/modal-container.component.mjs +42 -42
  146. package/esm2020/components/popup/popup-container.component.mjs +56 -56
  147. package/esm2020/components/popup/popup-pointer.component.mjs +22 -22
  148. package/esm2020/components/popup/popup.component.mjs +43 -43
  149. package/esm2020/components/popup/popup.service.mjs +26 -26
  150. package/esm2020/components/progress/buttons/progress.component.mjs +67 -67
  151. package/esm2020/components/progress/default/progress.component.mjs +27 -27
  152. package/esm2020/components/renderAs/boolean-checkbox/boolean-checkbox.component.mjs +21 -21
  153. package/esm2020/components/renderAs/boolean-radio/boolean-radio-item.component.mjs +22 -22
  154. package/esm2020/components/renderAs/boolean-radio/boolean-radio.component.mjs +18 -18
  155. package/esm2020/components/renderAs/dropdown-select/dropdown-option-item.component.mjs +23 -23
  156. package/esm2020/components/renderAs/dropdown-select/dropdown-select.component.mjs +38 -38
  157. package/esm2020/components/renderAs/rating-dropdown/rating-dropdown.component.mjs +18 -18
  158. package/esm2020/components/skeleton/skeleton.component.mjs +16 -16
  159. package/esm2020/components/skeleton.component.mjs +15 -15
  160. package/esm2020/components/survey-actions/survey-nav-btn.component.mjs +22 -22
  161. package/esm2020/components/survey-header/logo-image.component.mjs +20 -20
  162. package/esm2020/components/survey-header/survey-header.component.mjs +30 -30
  163. package/esm2020/components/svg-icon/svg-icon.component.mjs +68 -68
  164. package/esm2020/components/tagbox/tagbox-filter.component.mjs +22 -22
  165. package/esm2020/components/tagbox/tagbox-item.component.mjs +27 -27
  166. package/esm2020/components/tagbox/tagbox.component.mjs +44 -44
  167. package/esm2020/components/timer-panel/timer-panel.component.mjs +32 -32
  168. package/esm2020/element.component.mjs +55 -55
  169. package/esm2020/embedded-view-content.component.mjs +24 -24
  170. package/esm2020/errors.component.mjs +58 -58
  171. package/esm2020/page.component.mjs +35 -35
  172. package/esm2020/panel.component.mjs +38 -38
  173. package/esm2020/popup.survey.component.mjs +44 -44
  174. package/esm2020/question.component.mjs +54 -54
  175. package/esm2020/question.mjs +33 -33
  176. package/esm2020/questions/boolean.component.mjs +20 -20
  177. package/esm2020/questions/button-group/button-group-item.component.mjs +29 -29
  178. package/esm2020/questions/button-group/button-group.component.mjs +14 -14
  179. package/esm2020/questions/checkbox-item.component.mjs +24 -36
  180. package/esm2020/questions/checkbox.component.mjs +17 -17
  181. package/esm2020/questions/comment.component.mjs +18 -18
  182. package/esm2020/questions/composite.component.mjs +21 -21
  183. package/esm2020/questions/custom.component.mjs +27 -27
  184. package/esm2020/questions/customwidget.component.mjs +51 -51
  185. package/esm2020/questions/dropdown.component.mjs +17 -17
  186. package/esm2020/questions/expression.component.mjs +17 -17
  187. package/esm2020/questions/file.component.mjs +25 -25
  188. package/esm2020/questions/html.component.mjs +25 -25
  189. package/esm2020/questions/image.component.mjs +26 -26
  190. package/esm2020/questions/imagepicker-item.component.mjs +48 -48
  191. package/esm2020/questions/imagepicker.component.mjs +29 -29
  192. package/esm2020/questions/matrix-row.component.mjs +27 -27
  193. package/esm2020/questions/matrix.component.mjs +36 -36
  194. package/esm2020/questions/matrixcell.component.mjs +90 -90
  195. package/esm2020/questions/matrixdropdown.component.mjs +16 -16
  196. package/esm2020/questions/matrixdynamic.component.mjs +17 -17
  197. package/esm2020/questions/matrixrequiredheader.component.mjs +24 -24
  198. package/esm2020/questions/matrixtable.component.mjs +31 -31
  199. package/esm2020/questions/multipletext.component.mjs +25 -25
  200. package/esm2020/questions/multipletextitem.component.mjs +23 -23
  201. package/esm2020/questions/paneldynamic.component.mjs +79 -79
  202. package/esm2020/questions/radiogroup-item.component.mjs +18 -18
  203. package/esm2020/questions/radiogroup.component.mjs +22 -22
  204. package/esm2020/questions/ranking-item.component.mjs +24 -24
  205. package/esm2020/questions/ranking.component.mjs +31 -31
  206. package/esm2020/questions/rating.component.mjs +23 -23
  207. package/esm2020/questions/selectbase-item.mjs +33 -33
  208. package/esm2020/questions/selectbase.component.mjs +50 -47
  209. package/esm2020/questions/signature.component.mjs +17 -17
  210. package/esm2020/questions/tagbox.component.mjs +17 -17
  211. package/esm2020/questions/text.component.mjs +16 -16
  212. package/esm2020/row.component.mjs +58 -58
  213. package/esm2020/string-editor.component.mjs +26 -26
  214. package/esm2020/string-viewer.component.mjs +37 -37
  215. package/esm2020/survey-angular-ui.mjs +5 -5
  216. package/esm2020/survey-content.component.mjs +69 -69
  217. package/esm2020/survey-string.component.mjs +17 -17
  218. package/esm2020/survey.component.mjs +32 -32
  219. package/esm2020/template-renderer.component.mjs +23 -23
  220. package/esm2020/utils/dynamic.directive.mjs +52 -52
  221. package/esm2020/utils/ng-key2click.directive.mjs +69 -69
  222. package/esm2020/utils/ng-show.directive.mjs +27 -27
  223. package/esm2020/utils/safe-html.pipe.mjs +18 -18
  224. package/esm2020/utils/safe-url.pipe.mjs +33 -33
  225. package/fesm2015/survey-angular-ui.js +3206 -0
  226. package/fesm2015/survey-angular-ui.js.map +1 -0
  227. package/fesm2015/survey-angular-ui.mjs +2864 -2873
  228. package/fesm2015/survey-angular-ui.mjs.map +1 -1
  229. package/fesm2020/survey-angular-ui.mjs +2839 -2848
  230. package/fesm2020/survey-angular-ui.mjs.map +1 -1
  231. package/package.json +6 -19
  232. package/utils/dynamic.directive.d.ts +3 -2
@@ -0,0 +1,29 @@
1
+ import { Component } from "@angular/core";
2
+ import { QuestionAngular } from "../question";
3
+ import { AngularComponentFactory } from "../component-factory";
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "../components/svg-icon/svg-icon.component";
6
+ import * as i2 from "../components/action-bar/action-bar.component";
7
+ import * as i3 from "@angular/common";
8
+ import * as i4 from "../utils/ng-show.directive";
9
+ import * as i5 from "../utils/safe-url.pipe";
10
+ export class FileQuestionComponent extends QuestionAngular {
11
+ constructor() {
12
+ super(...arguments);
13
+ this.trackFilesFn = (index) => {
14
+ return this.model.inputId + "_" + index;
15
+ };
16
+ }
17
+ }
18
+ FileQuestionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: FileQuestionComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
19
+ FileQuestionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: FileQuestionComponent, selector: "sv-ng-file-question", usesInheritance: true, ngImport: i0, template: "<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>", components: [{ type: i1.SvgIconComponent, selector: "'[sv-ng-svg-icon]'", inputs: ["size", "width", "height", "iconName", "partCss", "css", "title"] }, { type: i2.ActionBarComponent, selector: "sv-action-bar, sv-ng-action-bar", inputs: ["model", "handleClick"] }], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i4.VisibleDirective, selector: "[visible]", inputs: ["visible"] }], pipes: { "safeUrl": i5.SafeUrlPipe } });
20
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: FileQuestionComponent, decorators: [{
21
+ type: Component,
22
+ args: [{
23
+ selector: "sv-ng-file-question",
24
+ templateUrl: "./file.component.html",
25
+ styleUrls: []
26
+ }]
27
+ }] });
28
+ AngularComponentFactory.Instance.registerComponent("file-question", FileQuestionComponent);
29
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcXVlc3Rpb25zL2ZpbGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vc3JjL3F1ZXN0aW9ucy9maWxlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUU5QyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7Ozs7OztBQU0vRCxNQUFNLE9BQU8scUJBQXNCLFNBQVEsZUFBa0M7SUFMN0U7O1FBTUUsaUJBQVksR0FBOEIsQ0FBQyxLQUFhLEVBQVUsRUFBRTtZQUNsRSxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxHQUFHLEdBQUcsR0FBRyxLQUFLLENBQUM7UUFDMUMsQ0FBQyxDQUFBO0tBQ0Y7O21IQUpZLHFCQUFxQjt1R0FBckIscUJBQXFCLGtGQ1RsQyx1bUtBdUhNOzRGRDlHTyxxQkFBcUI7a0JBTGpDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHFCQUFxQjtvQkFDL0IsV0FBVyxFQUFFLHVCQUF1QjtvQkFDcEMsU0FBUyxFQUFFLEVBQUU7aUJBQ2Q7O0FBT0QsdUJBQXVCLENBQUMsUUFBUSxDQUFDLGlCQUFpQixDQUFDLGVBQWUsRUFBRSxxQkFBcUIsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IFF1ZXN0aW9uQW5ndWxhciB9IGZyb20gXCIuLi9xdWVzdGlvblwiO1xuaW1wb3J0IHsgUXVlc3Rpb25GaWxlTW9kZWwgfSBmcm9tIFwic3VydmV5LWNvcmVcIjtcbmltcG9ydCB7IEFuZ3VsYXJDb21wb25lbnRGYWN0b3J5IH0gZnJvbSBcIi4uL2NvbXBvbmVudC1mYWN0b3J5XCI7XG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6IFwic3YtbmctZmlsZS1xdWVzdGlvblwiLFxuICB0ZW1wbGF0ZVVybDogXCIuL2ZpbGUuY29tcG9uZW50Lmh0bWxcIixcbiAgc3R5bGVVcmxzOiBbXVxufSlcbmV4cG9ydCBjbGFzcyBGaWxlUXVlc3Rpb25Db21wb25lbnQgZXh0ZW5kcyBRdWVzdGlvbkFuZ3VsYXI8UXVlc3Rpb25GaWxlTW9kZWw+IHtcbiAgdHJhY2tGaWxlc0ZuOiAoaW5kZXg6IG51bWJlcikgPT4gc3RyaW5nID0gKGluZGV4OiBudW1iZXIpOiBzdHJpbmcgPT4ge1xuICAgIHJldHVybiB0aGlzLm1vZGVsLmlucHV0SWQgKyBcIl9cIiArIGluZGV4O1xuICB9XG59XG5cbkFuZ3VsYXJDb21wb25lbnRGYWN0b3J5Lkluc3RhbmNlLnJlZ2lzdGVyQ29tcG9uZW50KFwiZmlsZS1xdWVzdGlvblwiLCBGaWxlUXVlc3Rpb25Db21wb25lbnQpOyIsIjxkaXYgW2NsYXNzXT1cIm1vZGVsLmZpbGVSb290Q3NzXCIgI2NvbnRlbnRFbGVtZW50PlxuICA8aW5wdXRcbiAgICBbY2xhc3NdPVwibW9kZWwuY3NzQ2xhc3Nlcy5maWxlSW5wdXRcIlxuICAgICpuZ0lmPVwiIW1vZGVsLmlzUmVhZE9ubHlcIlxuICAgIHRhYmluZGV4PVwiLTFcIlxuICAgIHR5cGU9XCJmaWxlXCJcbiAgICBbYXR0ci5pZF09XCJtb2RlbC5pbnB1dElkXCJcbiAgICAoY2hhbmdlKT1cIm1vZGVsLmRvQ2hhbmdlKCRldmVudClcIlxuICAgIFthdHRyLmFyaWEtcmVxdWlyZWRdPVwibW9kZWwuYXJpYVJlcXVpcmVkXCJcbiAgICBbYXR0ci5hcmlhLWxhYmVsXT1cIm1vZGVsLmFyaWFMYWJlbFwiXG4gICAgW2F0dHIuYXJpYS1pbnZhbGlkXT1cIm1vZGVsLmFyaWFJbnZhbGlkXCJcbiAgICBbYXR0ci5hcmlhLWRlc2NyaWJlZGJ5XT1cIm1vZGVsLmFyaWFEZXNjcmliZWRCeVwiXG4gICAgW2F0dHIubXVsdGlwbGVdPVwibW9kZWwubXVsdGlwbGVSZW5kZXJlZFwiXG4gICAgW2F0dHIudGl0bGVdPVwibW9kZWwuaW5wdXRUaXRsZVwiXG4gICAgW2F0dHIuYWNjZXB0XT1cIm1vZGVsLmFjY2VwdGVkVHlwZXNcIlxuICAvPlxuICA8aW5wdXRcbiAgICAqbmdJZj1cIm1vZGVsLmlzUmVhZE9ubHlcIlxuICAgIHR5cGU9XCJmaWxlXCJcbiAgICBkaXNhYmxlZFxuICAgIFtjbGFzc109XCJtb2RlbC5nZXRSZWFkT25seUZpbGVDc3MoKVwiXG4gICAgW2F0dHIuaWRdPVwibW9kZWwuaW5wdXRJZFwiXG4gICAgW2F0dHIubXVsdGlwbGVdPVwibW9kZWwubXVsdGlwbGVSZW5kZXJlZFwiXG4gICAgW2F0dHIucGxhY2Vob2xkZXJdPVwibW9kZWwudGl0bGVcIlxuICAgIHN0eWxlPVwiY29sb3I6IHRyYW5zcGFyZW50XCJcbiAgLz5cbiAgPGRpdiBbY2xhc3NdPVwibW9kZWwuY3NzQ2xhc3Nlcy5kcmFnQXJlYVwiXG4gICAgKGRyYWdlbnRlcik9XCJtb2RlbC5vbkRyYWdFbnRlcigkZXZlbnQpXCJcbiAgICAoZHJvcCk9XCJtb2RlbC5vbkRyb3AoJGV2ZW50KVwiXG4gICAgKGRyYWdvdmVyKT1cIm1vZGVsLm9uRHJhZ092ZXIoJGV2ZW50KVwiXG4gICAgKGRyYWdsZWF2ZSk9XCJtb2RlbC5vbkRyYWdMZWF2ZSgkZXZlbnQpXCI+ICBcbiAgICA8ZGl2XG4gICAgICBbY2xhc3NdPVwibW9kZWwuZ2V0RmlsZURlY29yYXRvckNzcygpXCJcbiAgICA+XG4gICAgICA8c3BhbiBbY2xhc3NdPVwibW9kZWwuY3NzQ2xhc3Nlcy5kcmFnQXJlYVBsYWNlaG9sZGVyXCI+e3sgbW9kZWwuZHJhZ0FyZWFQbGFjZWhvbGRlciB9fTwvc3Bhbj5cbiAgICAgIDxkaXYgW2NsYXNzXT1cIm1vZGVsLmNzc0NsYXNzZXMud3JhcHBlclwiPlxuICAgICAgICA8bGFiZWxcbiAgICAgICAgICByb2xlPVwiYnV0dG9uXCJcbiAgICAgICAgICB0YWJpbmRleD1cIjBcIlxuICAgICAgICAgIFtjbGFzc109XCJtb2RlbC5nZXRDaG9vc2VGaWxlQ3NzKClcIlxuICAgICAgICAgIFthdHRyLmZvcl09XCJtb2RlbC5pbnB1dElkXCJcbiAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cIm1vZGVsLmNob29zZUJ1dHRvbkNhcHRpb25cIlxuICAgICAgICAgID5cbiAgICAgICAgICA8c3Bhbj57eyBtb2RlbC5jaG9vc2VCdXR0b25DYXB0aW9uIH19PC9zcGFuPlxuICAgICAgICAgIDxzdmcgKm5nSWY9XCJtb2RlbC5jc3NDbGFzc2VzLmNob29zZUZpbGVJY29uSWRcIiBbdGl0bGVdPVwibW9kZWwuY2hvb3NlQnV0dG9uQ2FwdGlvblwiIFtpY29uTmFtZV09XCJtb2RlbC5jc3NDbGFzc2VzLmNob29zZUZpbGVJY29uSWRcIiBbc2l6ZV09XCInYXV0bydcIiBzdi1uZy1zdmctaWNvbj48L3N2Zz5cbiAgICAgICAgPC9sYWJlbD5cbiAgICAgICAgPHNwYW5cbiAgICAgICAgICBbY2xhc3NdPVwibW9kZWwuY3NzQ2xhc3Nlcy5ub0ZpbGVDaG9zZW5cIlxuICAgICAgICAgICpuZ0lmPVwibW9kZWwuaXNFbXB0eSgpXCJcbiAgICAgICAgICA+e3sgbW9kZWwubm9GaWxlQ2hvc2VuQ2FwdGlvbiB9fTwvc3BhblxuICAgICAgICA+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8YnV0dG9uXG4gICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICpuZ0lmPVwibW9kZWwuc2hvd1JlbW92ZUJ1dHRvblwiXG4gICAgICBbY2xhc3NdPVwibW9kZWwuY3NzQ2xhc3Nlcy5yZW1vdmVCdXR0b25cIlxuICAgICAgKGNsaWNrKT1cIm1vZGVsLmRvQ2xlYW4oJGV2ZW50KVwiXG4gICAgPlxuICAgICAgPHNwYW4+e3sgbW9kZWwuY2xlYXJCdXR0b25DYXB0aW9uIH19PC9zcGFuPlxuICAgICAgPHN2ZyAqbmdJZj1cIm1vZGVsLmNzc0NsYXNzZXMucmVtb3ZlQnV0dG9uSWNvbklkXCIgW2ljb25OYW1lXT1cIm1vZGVsLmNzc0NsYXNzZXMucmVtb3ZlQnV0dG9uSWNvbklkXCIgW3NpemVdPVwiJ2F1dG8nXCIgW3RpdGxlXT1cIm1vZGVsLmNsZWFyQnV0dG9uQ2FwdGlvblwiIHN2LW5nLXN2Zy1pY29uPjwvc3ZnPlxuICAgIDwvYnV0dG9uPlxuICAgIDxkaXYgW2NsYXNzXT1cIm1vZGVsLmNzc0NsYXNzZXMuZmlsZUxpc3QgfHwgdW5kZWZpbmVkXCIgKm5nSWY9XCIhbW9kZWwuaXNFbXB0eSgpXCI+XG4gICAgICA8c3BhblxuICAgICAgICAqbmdGb3I9XCJsZXQgdmFsIG9mIG1vZGVsLnByZXZpZXdWYWx1ZTsgaW5kZXggYXMgaW5kZXg7IHRyYWNrQnk6IHRyYWNrRmlsZXNGblwiXG4gICAgICAgIFt2aXNpYmxlXT1cInZhbCAmJiBtb2RlbC5pc1ByZXZpZXdWaXNpYmxlKGluZGV4KVwiXG4gICAgICAgIFtjbGFzc109XCJtb2RlbC5jc3NDbGFzc2VzLnByZXZpZXdcIlxuICAgICAgPlxuICAgICAgICA8ZGl2ICpuZ0lmPVwidmFsLm5hbWUgJiYgbW9kZWwuY3NzQ2xhc3Nlcy5maWxlU2lnblwiIFtjbGFzc109XCJtb2RlbC5jc3NDbGFzc2VzLmZpbGVTaWduXCI+XG4gICAgICAgICAgPGFcbiAgICAgICAgICAgIChjbGljayk9XCJtb2RlbC5kb0Rvd25sb2FkRmlsZSgkZXZlbnQsIHZhbClcIlxuICAgICAgICAgICAgW2F0dHIuaHJlZl09XCJ2YWwuY29udGVudCB8IHNhZmVVcmxcIlxuICAgICAgICAgICAgW2F0dHIudGl0bGVdPVwidmFsLm5hbWVcIlxuICAgICAgICAgICAgW2F0dHIuZG93bmxvYWRdPVwidmFsLm5hbWVcIlxuICAgICAgICAgICAgW3N0eWxlLndpZHRoXT1cIm1vZGVsLmltYWdlV2lkdGhcIlxuICAgICAgICAgICAgPnt7IHZhbC5uYW1lIH19PC9hXG4gICAgICAgICAgPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBbY2xhc3NdPVwibW9kZWwuY3NzQ2xhc3Nlcy5pbWFnZVdyYXBwZXJcIj5cbiAgICAgICAgICA8aW1nXG4gICAgICAgICAgICAqbmdJZj1cIm1vZGVsLmNhblByZXZpZXdJbWFnZSh2YWwpXCJcbiAgICAgICAgICAgIFthdHRyLnNyY109XCJ2YWwuY29udGVudCB8IHNhZmVVcmxcIlxuICAgICAgICAgICAgW3N0eWxlLmhlaWdodF09XCJtb2RlbC5pbWFnZUhlaWdodFwiXG4gICAgICAgICAgICBbc3R5bGUud2lkdGhdPVwibW9kZWwuaW1hZ2VXaWR0aFwiXG4gICAgICAgICAgICBhbHQ9XCJGaWxlIHByZXZpZXdcIlxuICAgICAgICAgIC8+XG4gICAgICAgICAgPHN2ZyAqbmdJZj1cIm1vZGVsLmRlZmF1bHRJbWFnZSh2YWwpXCIgXG4gICAgICAgICAgICBbaWNvbk5hbWVdPVwibW9kZWwuY3NzQ2xhc3Nlcy5kZWZhdWx0SW1hZ2VJY29uSWRcIiBbcGFydENzc109XCJtb2RlbC5jc3NDbGFzc2VzLmRlZmF1bHRJbWFnZVwiIFtzaXplXT1cIidhdXRvJ1wiIHN2LW5nLXN2Zy1pY29uPjwvc3ZnPlxuICAgICAgICAgIDxkaXYgKm5nSWY9XCJ2YWwubmFtZSAmJiAhbW9kZWwuaXNSZWFkT25seVwiIFtjbGFzc109XCJtb2RlbC5jc3NDbGFzc2VzLnJlbW92ZUZpbGVCdXR0b25cIiAoY2xpY2spPVwibW9kZWwuZG9SZW1vdmVGaWxlKHZhbClcIj5cbiAgICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgIFtjbGFzc109XCJtb2RlbC5jc3NDbGFzc2VzLnJlbW92ZUZpbGVcIlxuICAgICAgICAgICAgICA+e3sgbW9kZWwucmVtb3ZlRmlsZUNhcHRpb24gfX08L3NwYW5cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgIDxzdmcgKm5nSWY9XCJtb2RlbC5jc3NDbGFzc2VzLnJlbW92ZUZpbGVTdmdJY29uSWRcIiBbdGl0bGVdPVwibW9kZWwucmVtb3ZlRmlsZUNhcHRpb25cIiBbcGFydENzc109XCJtb2RlbC5jc3NDbGFzc2VzLnJlbW92ZUZpbGVTdmdcIiBbaWNvbk5hbWVdPVwibW9kZWwuY3NzQ2xhc3Nlcy5yZW1vdmVGaWxlU3ZnSWNvbklkXCIgW3NpemVdPVwiJ2F1dG8nXCIgc3Ytbmctc3ZnLWljb24gPjwvc3ZnPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiAqbmdJZj1cInZhbC5uYW1lICYmIG1vZGVsLmNzc0NsYXNzZXMuZmlsZVNpZ25Cb3R0b21cIiBbY2xhc3NdPVwibW9kZWwuY3NzQ2xhc3Nlcy5maWxlU2lnbkJvdHRvbVwiPlxuICAgICAgICAgIDxhXG4gICAgICAgICAgICAoY2xpY2spPVwibW9kZWwuZG9Eb3dubG9hZEZpbGUoJGV2ZW50LCB2YWwpXCJcbiAgICAgICAgICAgIFthdHRyLmhyZWZdPVwidmFsLmNvbnRlbnQgfCBzYWZlVXJsXCJcbiAgICAgICAgICAgIFthdHRyLnRpdGxlXT1cInZhbC5uYW1lXCJcbiAgICAgICAgICAgIFthdHRyLmRvd25sb2FkXT1cInZhbC5uYW1lXCJcbiAgICAgICAgICAgIFtzdHlsZS53aWR0aF09XCJtb2RlbC5pbWFnZVdpZHRoXCJcbiAgICAgICAgICAgID57eyB2YWwubmFtZSB9fTwvYVxuICAgICAgICAgID5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L3NwYW4+XG4gICAgPC9kaXY+XG4gICAgPGJ1dHRvblxuICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAqbmdJZj1cIm1vZGVsLnNob3dSZW1vdmVCdXR0b25Cb3R0b21cIlxuICAgICAgW2NsYXNzXT1cIm1vZGVsLnNob3dSZW1vdmVCdXR0b25Cb3R0b21cIlxuICAgICAgKGNsaWNrKT1cIm1vZGVsLmRvQ2xlYW4oJGV2ZW50KVwiXG4gICAgPlxuICAgICAgPHNwYW4+e3sgbW9kZWwuY2xlYXJCdXR0b25DYXB0aW9uIH19PC9zcGFuPlxuICAgICAgPHN2ZyAqbmdJZj1cIm1vZGVsLmNzc0NsYXNzZXMucmVtb3ZlQnV0dG9uSWNvbklkXCIgW2ljb25OYW1lXT1cIm1vZGVsLmNzc0NsYXNzZXMucmVtb3ZlQnV0dG9uSWNvbklkXCIgW3NpemVdPVwiJ2F1dG8nXCIgW3RpdGxlXT1cIm1vZGVsLmNsZWFyQnV0dG9uQ2FwdGlvblwiIHN2LW5nLXN2Zy1pY29uPjwvc3ZnPlxuICAgIDwvYnV0dG9uPlxuICAgIDxzdi1hY3Rpb24tYmFyICpuZ0lmPVwibW9kZWwubW9iaWxlRmlsZU5hdmlnYXRvclZpc2libGVcIiBbbW9kZWxdPVwibW9kZWwubW9iaWxlRmlsZU5hdmlnYXRvclwiPjwvc3YtYWN0aW9uLWJhcj5cbiAgPC9kaXY+XG48L2Rpdj4iXX0=
@@ -0,0 +1,29 @@
1
+ import { Component } from "@angular/core";
2
+ import { QuestionAngular } from "../question";
3
+ import { AngularComponentFactory } from "../component-factory";
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "../utils/safe-html.pipe";
6
+ export class HtmlQuestionComponent extends QuestionAngular {
7
+ onModelChanged() {
8
+ super.onModelChanged();
9
+ this.model.locHtml.onChanged = () => {
10
+ this.detectChanges();
11
+ };
12
+ }
13
+ ngOnDestroy() {
14
+ this.model.locHtml.onChanged = () => { };
15
+ super.ngOnDestroy();
16
+ }
17
+ }
18
+ HtmlQuestionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: HtmlQuestionComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
19
+ HtmlQuestionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: HtmlQuestionComponent, selector: "sv-ng-html-question", usesInheritance: true, ngImport: i0, template: "<div [class]=\"model.renderCssRoot\" [innerHTML]=\"model.locHtml.renderedHtml | safeHtml\" #contentElement></div>", pipes: { "safeHtml": i1.SafeHtmlPipe } });
20
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: HtmlQuestionComponent, decorators: [{
21
+ type: Component,
22
+ args: [{
23
+ selector: "sv-ng-html-question",
24
+ templateUrl: "./html.component.html",
25
+ styleUrls: []
26
+ }]
27
+ }] });
28
+ AngularComponentFactory.Instance.registerComponent("html-question", HtmlQuestionComponent);
29
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHRtbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcXVlc3Rpb25zL2h0bWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vc3JjL3F1ZXN0aW9ucy9odG1sLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUU5QyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7O0FBTS9ELE1BQU0sT0FBTyxxQkFBc0IsU0FBUSxlQUFrQztJQUNsRSxjQUFjO1FBQ3JCLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUN2QixJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxTQUFTLEdBQUcsR0FBRyxFQUFFO1lBQ2xDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUN2QixDQUFDLENBQUM7SUFDSixDQUFDO0lBQ1EsV0FBVztRQUNsQixJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxTQUFTLEdBQUcsR0FBRyxFQUFFLEdBQUUsQ0FBQyxDQUFDO1FBQ3hDLEtBQUssQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUN0QixDQUFDOzttSEFWVSxxQkFBcUI7dUdBQXJCLHFCQUFxQixrRkNUbEMsbUhBQTZHOzRGRFNoRyxxQkFBcUI7a0JBTGpDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHFCQUFxQjtvQkFDL0IsV0FBVyxFQUFFLHVCQUF1QjtvQkFDcEMsU0FBUyxFQUFFLEVBQUU7aUJBQ2Q7O0FBY0QsdUJBQXVCLENBQUMsUUFBUSxDQUFDLGlCQUFpQixDQUFDLGVBQWUsRUFBRSxxQkFBcUIsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IFF1ZXN0aW9uQW5ndWxhciB9IGZyb20gXCIuLi9xdWVzdGlvblwiO1xuaW1wb3J0IHsgUXVlc3Rpb25IdG1sTW9kZWwgfSBmcm9tIFwic3VydmV5LWNvcmVcIjtcbmltcG9ydCB7IEFuZ3VsYXJDb21wb25lbnRGYWN0b3J5IH0gZnJvbSBcIi4uL2NvbXBvbmVudC1mYWN0b3J5XCI7XG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6IFwic3YtbmctaHRtbC1xdWVzdGlvblwiLFxuICB0ZW1wbGF0ZVVybDogXCIuL2h0bWwuY29tcG9uZW50Lmh0bWxcIixcbiAgc3R5bGVVcmxzOiBbXVxufSlcbmV4cG9ydCBjbGFzcyBIdG1sUXVlc3Rpb25Db21wb25lbnQgZXh0ZW5kcyBRdWVzdGlvbkFuZ3VsYXI8UXVlc3Rpb25IdG1sTW9kZWw+IHtcbiAgb3ZlcnJpZGUgb25Nb2RlbENoYW5nZWQoKTogdm9pZCB7XG4gICAgc3VwZXIub25Nb2RlbENoYW5nZWQoKTtcbiAgICB0aGlzLm1vZGVsLmxvY0h0bWwub25DaGFuZ2VkID0gKCkgPT4ge1xuICAgICAgdGhpcy5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfTtcbiAgfVxuICBvdmVycmlkZSBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLm1vZGVsLmxvY0h0bWwub25DaGFuZ2VkID0gKCkgPT4ge307XG4gICAgc3VwZXIubmdPbkRlc3Ryb3koKTtcbiAgfVxufVxuXG5Bbmd1bGFyQ29tcG9uZW50RmFjdG9yeS5JbnN0YW5jZS5yZWdpc3RlckNvbXBvbmVudChcImh0bWwtcXVlc3Rpb25cIiwgSHRtbFF1ZXN0aW9uQ29tcG9uZW50KTsiLCI8ZGl2IFtjbGFzc109XCJtb2RlbC5yZW5kZXJDc3NSb290XCIgW2lubmVySFRNTF09XCJtb2RlbC5sb2NIdG1sLnJlbmRlcmVkSHRtbCB8IHNhZmVIdG1sXCIgI2NvbnRlbnRFbGVtZW50PjwvZGl2PiJdfQ==
@@ -0,0 +1,29 @@
1
+ import { Component } from "@angular/core";
2
+ import { QuestionAngular } from "../question";
3
+ import { AngularComponentFactory } from "../component-factory";
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "@angular/common";
6
+ import * as i2 from "../utils/safe-url.pipe";
7
+ export class ImageQuestionComponent extends QuestionAngular {
8
+ ngAfterViewInit() {
9
+ this.model.locImageLink.onChanged = () => {
10
+ this.detectChanges();
11
+ };
12
+ super.ngAfterViewInit();
13
+ }
14
+ ngOnDestroy() {
15
+ this.model.locImageLink.onChanged = () => { };
16
+ super.ngOnDestroy();
17
+ }
18
+ }
19
+ ImageQuestionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ImageQuestionComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
20
+ ImageQuestionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: ImageQuestionComponent, selector: "sv-ng-image-question", usesInheritance: true, ngImport: i0, template: "<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>", directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "safeResourceUrl": i2.SafeResourceUrlPipe } });
21
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ImageQuestionComponent, decorators: [{
22
+ type: Component,
23
+ args: [{
24
+ selector: "sv-ng-image-question",
25
+ templateUrl: "./image.component.html"
26
+ }]
27
+ }] });
28
+ AngularComponentFactory.Instance.registerComponent("image-question", ImageQuestionComponent);
29
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1hZ2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3F1ZXN0aW9ucy9pbWFnZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi9zcmMvcXVlc3Rpb25zL2ltYWdlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUU5QyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7OztBQU0vRCxNQUFNLE9BQU8sc0JBQXVCLFNBQVEsZUFBbUM7SUFDcEUsZUFBZTtRQUN0QixJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxTQUFTLEdBQUcsR0FBRyxFQUFFO1lBQ3ZDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUN2QixDQUFDLENBQUM7UUFDRixLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUNRLFdBQVc7UUFDbEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsU0FBUyxHQUFHLEdBQUcsRUFBRSxHQUFFLENBQUMsQ0FBQztRQUM3QyxLQUFLLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDdEIsQ0FBQzs7b0hBVlUsc0JBQXNCO3dHQUF0QixzQkFBc0IsbUZDVG5DLGsvQkEwQk07NEZEakJPLHNCQUFzQjtrQkFKbEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsc0JBQXNCO29CQUNoQyxXQUFXLEVBQUUsd0JBQXdCO2lCQUN0Qzs7QUFjRCx1QkFBdUIsQ0FBQyxRQUFRLENBQUMsaUJBQWlCLENBQUMsZ0JBQWdCLEVBQUUsc0JBQXNCLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBRdWVzdGlvbkFuZ3VsYXIgfSBmcm9tIFwiLi4vcXVlc3Rpb25cIjtcbmltcG9ydCB7IFF1ZXN0aW9uSW1hZ2VNb2RlbCB9IGZyb20gXCJzdXJ2ZXktY29yZVwiO1xuaW1wb3J0IHsgQW5ndWxhckNvbXBvbmVudEZhY3RvcnkgfSBmcm9tIFwiLi4vY29tcG9uZW50LWZhY3RvcnlcIjtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiBcInN2LW5nLWltYWdlLXF1ZXN0aW9uXCIsXG4gIHRlbXBsYXRlVXJsOiBcIi4vaW1hZ2UuY29tcG9uZW50Lmh0bWxcIlxufSlcbmV4cG9ydCBjbGFzcyBJbWFnZVF1ZXN0aW9uQ29tcG9uZW50IGV4dGVuZHMgUXVlc3Rpb25Bbmd1bGFyPFF1ZXN0aW9uSW1hZ2VNb2RlbD4ge1xuICBvdmVycmlkZSBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgdGhpcy5tb2RlbC5sb2NJbWFnZUxpbmsub25DaGFuZ2VkID0gKCkgPT4ge1xuICAgICAgdGhpcy5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfTtcbiAgICBzdXBlci5uZ0FmdGVyVmlld0luaXQoKTtcbiAgfVxuICBvdmVycmlkZSBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLm1vZGVsLmxvY0ltYWdlTGluay5vbkNoYW5nZWQgPSAoKSA9PiB7fTtcbiAgICBzdXBlci5uZ09uRGVzdHJveSgpO1xuICB9XG59XG5cbkFuZ3VsYXJDb21wb25lbnRGYWN0b3J5Lkluc3RhbmNlLnJlZ2lzdGVyQ29tcG9uZW50KFwiaW1hZ2UtcXVlc3Rpb25cIiwgSW1hZ2VRdWVzdGlvbkNvbXBvbmVudCk7IiwiPGRpdiBbY2xhc3NdPVwibW9kZWwuY3NzQ2xhc3Nlcy5yb290XCIgI2NvbnRlbnRFbGVtZW50PlxuICA8aW1nXG4gICAgKm5nSWY9XCJtb2RlbC5yZW5kZXJlZE1vZGUgPT09ICdpbWFnZSdcIlxuICAgIFtjbGFzc109XCJtb2RlbC5nZXRJbWFnZUNzcygpXCJcbiAgICBbYXR0ci5zcmNdPVwibW9kZWwubG9jSW1hZ2VMaW5rLnJlbmRlcmVkSHRtbFwiXG4gICAgW2F0dHIuYWx0XT1cIm1vZGVsLmFsdFRleHQgfHwgbW9kZWwudGl0bGVcIlxuICAgIFthdHRyLndpZHRoXT1cIm1vZGVsLnJlbmRlcmVkV2lkdGhcIlxuICAgIFthdHRyLmhlaWdodF09XCJtb2RlbC5yZW5kZXJlZEhlaWdodFwiXG4gICAgW3N0eWxlXT1cInsgb2JqZWN0Rml0OiBtb2RlbC5pbWFnZUZpdCB9XCJcbiAgLz48dmlkZW9cbiAgICBjb250cm9sc1xuICAgICpuZ0lmPVwibW9kZWwucmVuZGVyZWRNb2RlID09PSAndmlkZW8nXCJcbiAgICBbY2xhc3NdPVwibW9kZWwuZ2V0SW1hZ2VDc3MoKVwiXG4gICAgW2F0dHIuc3JjXT1cIm1vZGVsLmxvY0ltYWdlTGluay5yZW5kZXJlZEh0bWxcIlxuICAgIFthdHRyLndpZHRoXT1cIm1vZGVsLnJlbmRlcmVkV2lkdGhcIlxuICAgIFthdHRyLmhlaWdodF09XCJtb2RlbC5yZW5kZXJlZEhlaWdodFwiXG4gICAgW3N0eWxlXT1cInsgb2JqZWN0Rml0OiBtb2RlbC5pbWFnZUZpdCB9XCJcbiAgPjwvdmlkZW8+XG4gIDxpZnJhbWVcbiAgICAqbmdJZj1cIm1vZGVsLnJlbmRlcmVkTW9kZSA9PT0gJ3lvdXR1YmUnXCJcbiAgICBbY2xhc3NdPVwibW9kZWwuZ2V0SW1hZ2VDc3MoKVwiXG4gICAgW2F0dHIuc3JjXT1cIm1vZGVsLmxvY0ltYWdlTGluay5yZW5kZXJlZEh0bWwgfCBzYWZlUmVzb3VyY2VVcmxcIlxuICAgIFthdHRyLndpZHRoXT1cIm1vZGVsLnJlbmRlcmVkV2lkdGhcIlxuICAgIFthdHRyLmhlaWdodF09XCJtb2RlbC5yZW5kZXJlZEhlaWdodFwiXG4gICAgW3N0eWxlXT1cInsgb2JqZWN0Rml0OiBtb2RlbC5pbWFnZUZpdCB9XCJcbiAgPjwvaWZyYW1lPlxuPC9kaXY+Il19
@@ -0,0 +1,52 @@
1
+ import { Component, Input } from "@angular/core";
2
+ import { BaseAngular } from "../base-angular";
3
+ import { AngularComponentFactory } from "../component-factory";
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "../components/svg-icon/svg-icon.component";
6
+ import * as i2 from "../survey-string.component";
7
+ import * as i3 from "@angular/common";
8
+ export class ImagePickerItemComponent extends BaseAngular {
9
+ getModel() {
10
+ return this.model;
11
+ }
12
+ onChange(event) {
13
+ if (this.question.multiSelect) {
14
+ if (event.target.checked) {
15
+ this.question.value = this.question.value.concat(event.target.value);
16
+ }
17
+ else {
18
+ var currValue = this.question.value;
19
+ currValue.splice(this.question.value.indexOf(event.target.value), 1);
20
+ this.question.value = currValue;
21
+ }
22
+ }
23
+ else {
24
+ this.question.value = event.target.value;
25
+ }
26
+ }
27
+ ngAfterViewInit() {
28
+ this.model.locImageLink.onChanged = () => {
29
+ this.detectChanges();
30
+ };
31
+ }
32
+ ngOnDestroy() {
33
+ super.ngOnDestroy();
34
+ this.model.locImageLink.onChanged = () => { };
35
+ }
36
+ }
37
+ ImagePickerItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ImagePickerItemComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
38
+ ImagePickerItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: ImagePickerItemComponent, selector: "sv-ng-imagepicker-item", inputs: { question: "question", model: "model" }, usesInheritance: true, ngImport: i0, template: "<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>", styles: [":host { display: none; }"], components: [{ type: i1.SvgIconComponent, selector: "'[sv-ng-svg-icon]'", inputs: ["size", "width", "height", "iconName", "partCss", "css", "title"] }, { type: i2.SurveyStringComponent, selector: "sv-ng-string, '[sv-ng-string]'", inputs: ["model"] }], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
39
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ImagePickerItemComponent, decorators: [{
40
+ type: Component,
41
+ args: [{
42
+ selector: "sv-ng-imagepicker-item",
43
+ templateUrl: "./imagepicker-item.component.html",
44
+ styles: [":host { display: none; }"]
45
+ }]
46
+ }], propDecorators: { question: [{
47
+ type: Input
48
+ }], model: [{
49
+ type: Input
50
+ }] } });
51
+ AngularComponentFactory.Instance.registerComponent("sv-ng-imagepicker-item", ImagePickerItemComponent);
52
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1hZ2VwaWNrZXItaXRlbS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcXVlc3Rpb25zL2ltYWdlcGlja2VyLWl0ZW0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vc3JjL3F1ZXN0aW9ucy9pbWFnZXBpY2tlci1pdGVtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBaUIsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNoRSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFOUMsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sc0JBQXNCLENBQUM7Ozs7O0FBTS9ELE1BQU0sT0FBTyx3QkFBeUIsU0FBUSxXQUEyQjtJQUc3RCxRQUFRO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztJQUNwQixDQUFDO0lBQ0QsUUFBUSxDQUFDLEtBQVU7UUFDakIsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsRUFBRTtZQUM3QixJQUFJLEtBQUssQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFFO2dCQUN4QixJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQzthQUN0RTtpQkFBTTtnQkFDTCxJQUFJLFNBQVMsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQztnQkFDcEMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztnQkFDckUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLEdBQUcsU0FBUyxDQUFDO2FBQ2pDO1NBQ0Y7YUFBTTtZQUNMLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDO1NBQzFDO0lBQ0gsQ0FBQztJQUNELGVBQWU7UUFDYixJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxTQUFTLEdBQUcsR0FBRyxFQUFFO1lBQ3ZDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUN2QixDQUFDLENBQUM7SUFDSixDQUFDO0lBQ1EsV0FBVztRQUNsQixLQUFLLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDcEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsU0FBUyxHQUFHLEdBQUcsRUFBRSxHQUFFLENBQUMsQ0FBQztJQUMvQyxDQUFDOztzSEEzQlUsd0JBQXdCOzBHQUF4Qix3QkFBd0IsdUlDVHJDLDJtRkF1QmM7NEZEZEQsd0JBQXdCO2tCQUxwQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSx3QkFBd0I7b0JBQ2xDLFdBQVcsRUFBRSxtQ0FBbUM7b0JBQ2hELE1BQU0sRUFBRSxDQUFDLDBCQUEwQixDQUFDO2lCQUNyQzs4QkFFVSxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSzs7QUE0QlIsdUJBQXVCLENBQUMsUUFBUSxDQUFDLGlCQUFpQixDQUFDLHdCQUF3QixFQUFFLHdCQUF3QixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlclZpZXdJbml0LCBDb21wb25lbnQsIElucHV0IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IEJhc2VBbmd1bGFyIH0gZnJvbSBcIi4uL2Jhc2UtYW5ndWxhclwiO1xuaW1wb3J0IHsgSW1hZ2VJdGVtVmFsdWUsIFF1ZXN0aW9uSW1hZ2VQaWNrZXJNb2RlbCB9IGZyb20gXCJzdXJ2ZXktY29yZVwiO1xuaW1wb3J0IHsgQW5ndWxhckNvbXBvbmVudEZhY3RvcnkgfSBmcm9tIFwiLi4vY29tcG9uZW50LWZhY3RvcnlcIjtcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogXCJzdi1uZy1pbWFnZXBpY2tlci1pdGVtXCIsXG4gIHRlbXBsYXRlVXJsOiBcIi4vaW1hZ2VwaWNrZXItaXRlbS5jb21wb25lbnQuaHRtbFwiLFxuICBzdHlsZXM6IFtcIjpob3N0IHsgZGlzcGxheTogbm9uZTsgfVwiXVxufSlcbmV4cG9ydCBjbGFzcyBJbWFnZVBpY2tlckl0ZW1Db21wb25lbnQgZXh0ZW5kcyBCYXNlQW5ndWxhcjxJbWFnZUl0ZW1WYWx1ZT4gaW1wbGVtZW50cyBBZnRlclZpZXdJbml0IHtcbiAgQElucHV0KCkgcXVlc3Rpb24hOiBRdWVzdGlvbkltYWdlUGlja2VyTW9kZWw7XG4gIEBJbnB1dCgpIG1vZGVsITogSW1hZ2VJdGVtVmFsdWU7XG4gIHByb3RlY3RlZCBnZXRNb2RlbCgpOiBJbWFnZUl0ZW1WYWx1ZSB7XG4gICAgcmV0dXJuIHRoaXMubW9kZWw7XG4gIH1cbiAgb25DaGFuZ2UoZXZlbnQ6IGFueSkge1xuICAgIGlmICh0aGlzLnF1ZXN0aW9uLm11bHRpU2VsZWN0KSB7XG4gICAgICBpZiAoZXZlbnQudGFyZ2V0LmNoZWNrZWQpIHtcbiAgICAgICAgdGhpcy5xdWVzdGlvbi52YWx1ZSA9IHRoaXMucXVlc3Rpb24udmFsdWUuY29uY2F0KGV2ZW50LnRhcmdldC52YWx1ZSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB2YXIgY3VyclZhbHVlID0gdGhpcy5xdWVzdGlvbi52YWx1ZTtcbiAgICAgICAgY3VyclZhbHVlLnNwbGljZSh0aGlzLnF1ZXN0aW9uLnZhbHVlLmluZGV4T2YoZXZlbnQudGFyZ2V0LnZhbHVlKSwgMSk7XG4gICAgICAgIHRoaXMucXVlc3Rpb24udmFsdWUgPSBjdXJyVmFsdWU7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMucXVlc3Rpb24udmFsdWUgPSBldmVudC50YXJnZXQudmFsdWU7XG4gICAgfVxuICB9XG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLm1vZGVsLmxvY0ltYWdlTGluay5vbkNoYW5nZWQgPSAoKSA9PiB7XG4gICAgICB0aGlzLmRldGVjdENoYW5nZXMoKTtcbiAgICB9O1xuICB9XG4gIG92ZXJyaWRlIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHN1cGVyLm5nT25EZXN0cm95KCk7XG4gICAgdGhpcy5tb2RlbC5sb2NJbWFnZUxpbmsub25DaGFuZ2VkID0gKCkgPT4ge307XG4gIH1cbn1cblxuQW5ndWxhckNvbXBvbmVudEZhY3RvcnkuSW5zdGFuY2UucmVnaXN0ZXJDb21wb25lbnQoXCJzdi1uZy1pbWFnZXBpY2tlci1pdGVtXCIsIEltYWdlUGlja2VySXRlbUNvbXBvbmVudCk7IiwiPG5nLXRlbXBsYXRlICN0ZW1wbGF0ZT5cbiAgPGRpdiBbY2xhc3NdPVwicXVlc3Rpb24uZ2V0SXRlbUNsYXNzKG1vZGVsKVwiPlxuICAgIDxsYWJlbCBbY2xhc3NdPVwicXVlc3Rpb24uY3NzQ2xhc3Nlcy5sYWJlbFwiPlxuICAgICAgICA8aW5wdXQgW3R5cGVdPVwicXVlc3Rpb24uaW5wdXRUeXBlXCIgW2F0dHIubmFtZV09XCJxdWVzdGlvbi5xdWVzdGlvbk5hbWVcIiBbYXR0ci52YWx1ZV09XCJtb2RlbC52YWx1ZVwiIFtpZF09XCJxdWVzdGlvbi5nZXRJdGVtSWQobW9kZWwpXCIgW2F0dHIuYXJpYS1yZXF1aXJlZF09XCJxdWVzdGlvbi5hcmlhUmVxdWlyZWRcIiBbYXR0ci5hcmlhLWxhYmVsXT1cInF1ZXN0aW9uLmFyaWFMYWJlbFwiIFthdHRyLmFyaWEtaW52YWxpZF09XCJxdWVzdGlvbi5hcmlhSW52YWxpZFwiIFthdHRyLmFyaWEtZGVzY3JpYmVkYnldPVwicXVlc3Rpb24uYXJpYURlc2NyaWJlZEJ5XCJcbiAgICAgICAgKGNoYW5nZSk9XCJvbkNoYW5nZSgkZXZlbnQpXCIgW2NoZWNrZWRdPVwicXVlc3Rpb24uaXNJdGVtU2VsZWN0ZWQobW9kZWwpXCIgW2Rpc2FibGVkXT1cIiFxdWVzdGlvbi5nZXRJdGVtRW5hYmxlZChtb2RlbClcIiBbY2xhc3NdPVwicXVlc3Rpb24uY3NzQ2xhc3Nlcy5pdGVtQ29udHJvbFwiXG4gICAgICAgIC8+XG4gICAgICAgIDxkaXYgW2NsYXNzXT1cInF1ZXN0aW9uLmNzc0NsYXNzZXMuaXRlbURlY29yYXRvclwiPlxuICAgICAgICAgICAgPGRpdiBbY2xhc3NdPVwicXVlc3Rpb24uY3NzQ2xhc3Nlcy5pbWFnZUNvbnRhaW5lclwiPlxuICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cInF1ZXN0aW9uLmNzc0NsYXNzZXMuY2hlY2tlZEl0ZW1EZWNvcmF0b3JcIiBbY2xhc3NdPVwicXVlc3Rpb24uY3NzQ2xhc3Nlcy5jaGVja2VkSXRlbURlY29yYXRvclwiPlxuICAgICAgICAgICAgICAgIDxzdmcgKm5nSWY9XCJxdWVzdGlvbi5jc3NDbGFzc2VzLmNoZWNrZWRJdGVtU3ZnSWNvbklkXCIgW2NsYXNzXT1cInF1ZXN0aW9uLmNzc0NsYXNzZXMuY2hlY2tlZEl0ZW1TdmdJY29uXCIgW2ljb25OYW1lXT1cInF1ZXN0aW9uLmNzc0NsYXNzZXMuY2hlY2tlZEl0ZW1TdmdJY29uSWRcIiBbc2l6ZV09XCInYXV0bydcIiBzdi1uZy1zdmctaWNvbj48L3N2Zz5cbiAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICA8aW1nICpuZ0lmPVwibW9kZWwubG9jSW1hZ2VMaW5rLnJlbmRlcmVkSHRtbCAmJiBxdWVzdGlvbi5jb250ZW50TW9kZSA9PT0gJ2ltYWdlJ1wiIFtjbGFzc109XCJxdWVzdGlvbi5jc3NDbGFzc2VzLmltYWdlXCIgW2F0dHIuc3JjXT1cIm1vZGVsLmxvY0ltYWdlTGluay5yZW5kZXJlZEh0bWxcIiBbYXR0ci53aWR0aF09XCJxdWVzdGlvbi5yZW5kZXJlZEltYWdlV2lkdGhcIiBbYXR0ci5oZWlnaHRdPVwicXVlc3Rpb24ucmVuZGVyZWRJbWFnZUhlaWdodFwiIFthdHRyLmFsdF09XCJtb2RlbC5sb2NUZXh0LnJlbmRlcmVkSHRtbFwiICBbc3R5bGUub2JqZWN0Rml0XT1cInF1ZXN0aW9uLmltYWdlRml0XCIgKGxvYWQpPVwicXVlc3Rpb24ub25Db250ZW50TG9hZGVkKG1vZGVsLCAkZXZlbnQpXCIvPlxuICAgICAgICAgICAgICA8dmlkZW8gKm5nSWY9XCJtb2RlbC5sb2NJbWFnZUxpbmsucmVuZGVyZWRIdG1sICYmIHF1ZXN0aW9uLmNvbnRlbnRNb2RlID09PSAndmlkZW8nXCIgY29udHJvbHMgW2NsYXNzXT1cInF1ZXN0aW9uLmNzc0NsYXNzZXMuaW1hZ2VcIiBbYXR0ci5zcmNdPVwibW9kZWwubG9jSW1hZ2VMaW5rLnJlbmRlcmVkSHRtbFwiIFthdHRyLndpZHRoXT1cInF1ZXN0aW9uLnJlbmRlcmVkSW1hZ2VXaWR0aFwiIFthdHRyLmhlaWdodF09XCJxdWVzdGlvbi5yZW5kZXJlZEltYWdlSGVpZ2h0XCIgW3N0eWxlLm9iamVjdEZpdF09XCJxdWVzdGlvbi5pbWFnZUZpdFwiIChsb2FkZWRtZXRhZGF0YSk9XCJxdWVzdGlvbi5vbkNvbnRlbnRMb2FkZWQobW9kZWwsICRldmVudClcIj48L3ZpZGVvPlxuICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiIW1vZGVsLmxvY0ltYWdlTGluay5yZW5kZXJlZEh0bWxcIiBbY2xhc3NdPVwicXVlc3Rpb24uY3NzQ2xhc3Nlcy5pdGVtTm9JbWFnZVwiIFtzdHlsZS53aWR0aF09XCJxdWVzdGlvbi5yZW5kZXJlZEltYWdlV2lkdGhcIiBbc3R5bGUuaGVpZ2h0XT1cInF1ZXN0aW9uLnJlbmRlcmVkSW1hZ2VIZWlnaHRcIiBbc3R5bGUub2JqZWN0Rml0XT1cInF1ZXN0aW9uLmltYWdlRml0XCI+XG4gICAgICAgICAgICAgICAgPHN2ZyBbY2xhc3NdPVwicXVlc3Rpb24uY3NzQ2xhc3Nlcy5pdGVtTm9JbWFnZVN2Z0ljb25cIiAqbmdJZj1cInF1ZXN0aW9uLmNzc0NsYXNzZXMuaXRlbU5vSW1hZ2VTdmdJY29uXCI+XG4gICAgICAgICAgICAgICAgICA8dXNlIFthdHRyLnhsaW5rOmhyZWZdPVwicXVlc3Rpb24uY3NzQ2xhc3Nlcy5pdGVtTm9JbWFnZVN2Z0ljb25JZFwiPjwvdXNlPlxuICAgICAgICAgICAgICAgIDwvc3ZnPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJxdWVzdGlvbi5zaG93TGFiZWxcIiBbY2xhc3NdPVwicXVlc3Rpb24uY3NzQ2xhc3Nlcy5pdGVtVGV4dFwiIFttb2RlbF09XCJtb2RlbC5sb2NUZXh0XCIgc3Ytbmctc3RyaW5nPjwvc3Bhbj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9sYWJlbD5cbiAgPC9kaXY+XG48L25nLXRlbXBsYXRlPiJdfQ==
@@ -0,0 +1,32 @@
1
+ import { Component } from "@angular/core";
2
+ import { QuestionAngular } from "../question";
3
+ import { AngularComponentFactory } from "../component-factory";
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "@angular/common";
6
+ import * as i2 from "../utils/dynamic.directive";
7
+ export class ImagePickerQuestionComponent extends QuestionAngular {
8
+ getItemValueComponentName(item) {
9
+ return this.model.getItemValueWrapperComponentName(item) || "sv-ng-imagepicker-item";
10
+ }
11
+ getItemValueComponentData(item) {
12
+ return {
13
+ componentName: "sv-ng-imagepicker-item",
14
+ componentData: {
15
+ question: this.model,
16
+ model: item,
17
+ data: this.model.getItemValueWrapperComponentData(item)
18
+ }
19
+ };
20
+ }
21
+ }
22
+ ImagePickerQuestionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ImagePickerQuestionComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
23
+ ImagePickerQuestionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: ImagePickerQuestionComponent, selector: "sv-ng-imagepicker-question", usesInheritance: true, ngImport: i0, template: " <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>", directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2.DynamicComponentDirective, selector: "[component]", inputs: ["component"] }] });
24
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ImagePickerQuestionComponent, decorators: [{
25
+ type: Component,
26
+ args: [{
27
+ selector: "sv-ng-imagepicker-question",
28
+ templateUrl: "./imagepicker.component.html"
29
+ }]
30
+ }] });
31
+ AngularComponentFactory.Instance.registerComponent("imagepicker-question", ImagePickerQuestionComponent);
32
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1hZ2VwaWNrZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3F1ZXN0aW9ucy9pbWFnZXBpY2tlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi9zcmMvcXVlc3Rpb25zL2ltYWdlcGlja2VyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUU5QyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7OztBQU0vRCxNQUFNLE9BQU8sNEJBQTZCLFNBQVEsZUFBeUM7SUFDbEYseUJBQXlCLENBQUMsSUFBZTtRQUM5QyxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsZ0NBQWdDLENBQUMsSUFBSSxDQUFDLElBQUksd0JBQXdCLENBQUM7SUFDdkYsQ0FBQztJQUNNLHlCQUF5QixDQUFDLElBQWU7UUFDOUMsT0FBTztZQUNMLGFBQWEsRUFBRSx3QkFBd0I7WUFDdkMsYUFBYSxFQUFFO2dCQUNiLFFBQVEsRUFBRSxJQUFJLENBQUMsS0FBSztnQkFDcEIsS0FBSyxFQUFFLElBQUk7Z0JBQ1gsSUFBSSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsZ0NBQWdDLENBQUMsSUFBSSxDQUFDO2FBQ3hEO1NBQ0YsQ0FBQztJQUNKLENBQUM7OzBIQWJVLDRCQUE0Qjs4R0FBNUIsNEJBQTRCLHlGQ1R6QyxrNEJBY2E7NEZETEEsNEJBQTRCO2tCQUp4QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSw0QkFBNEI7b0JBQ3RDLFdBQVcsRUFBRSw4QkFBOEI7aUJBQzVDOztBQWtCRCx1QkFBdUIsQ0FBQyxRQUFRLENBQUMsaUJBQWlCLENBQUMsc0JBQXNCLEVBQUUsNEJBQTRCLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBRdWVzdGlvbkFuZ3VsYXIgfSBmcm9tIFwiLi4vcXVlc3Rpb25cIjtcbmltcG9ydCB7IEltYWdlSXRlbVZhbHVlLCBJdGVtVmFsdWUsIFF1ZXN0aW9uSW1hZ2VQaWNrZXJNb2RlbCB9IGZyb20gXCJzdXJ2ZXktY29yZVwiO1xuaW1wb3J0IHsgQW5ndWxhckNvbXBvbmVudEZhY3RvcnkgfSBmcm9tIFwiLi4vY29tcG9uZW50LWZhY3RvcnlcIjtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiBcInN2LW5nLWltYWdlcGlja2VyLXF1ZXN0aW9uXCIsXG4gIHRlbXBsYXRlVXJsOiBcIi4vaW1hZ2VwaWNrZXIuY29tcG9uZW50Lmh0bWxcIlxufSlcbmV4cG9ydCBjbGFzcyBJbWFnZVBpY2tlclF1ZXN0aW9uQ29tcG9uZW50IGV4dGVuZHMgUXVlc3Rpb25Bbmd1bGFyPFF1ZXN0aW9uSW1hZ2VQaWNrZXJNb2RlbD4ge1xuICBwdWJsaWMgZ2V0SXRlbVZhbHVlQ29tcG9uZW50TmFtZShpdGVtOiBJdGVtVmFsdWUpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLm1vZGVsLmdldEl0ZW1WYWx1ZVdyYXBwZXJDb21wb25lbnROYW1lKGl0ZW0pIHx8IFwic3YtbmctaW1hZ2VwaWNrZXItaXRlbVwiO1xuICB9XG4gIHB1YmxpYyBnZXRJdGVtVmFsdWVDb21wb25lbnREYXRhKGl0ZW06IEl0ZW1WYWx1ZSk6IGFueSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGNvbXBvbmVudE5hbWU6IFwic3YtbmctaW1hZ2VwaWNrZXItaXRlbVwiLFxuICAgICAgY29tcG9uZW50RGF0YToge1xuICAgICAgICBxdWVzdGlvbjogdGhpcy5tb2RlbCxcbiAgICAgICAgbW9kZWw6IGl0ZW0sXG4gICAgICAgIGRhdGE6IHRoaXMubW9kZWwuZ2V0SXRlbVZhbHVlV3JhcHBlckNvbXBvbmVudERhdGEoaXRlbSlcbiAgICAgIH1cbiAgICB9O1xuICB9XG5cbn1cblxuQW5ndWxhckNvbXBvbmVudEZhY3RvcnkuSW5zdGFuY2UucmVnaXN0ZXJDb21wb25lbnQoXCJpbWFnZXBpY2tlci1xdWVzdGlvblwiLCBJbWFnZVBpY2tlclF1ZXN0aW9uQ29tcG9uZW50KTsiLCIgIDxmaWVsZHNldCBbY2xhc3NdPVwibW9kZWwuZ2V0U2VsZWN0QmFzZVJvb3RDc3MoKVwiICNjb250ZW50RWxlbWVudD5cbiAgICAgIDxsZWdlbmQgW2F0dHIuYXJpYS1sYWJlbF09XCJtb2RlbC5sb2NUaXRsZS5yZW5kZXJlZEh0bWxcIiByb2xlPVwicmFkaW9cIj48L2xlZ2VuZD5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhbW9kZWwuaGFzQ29sdW1uc1wiPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBpdGVtIG9mIG1vZGVsLnZpc2libGVDaG9pY2VzXCI+XG4gICAgICAgICAgPG5nLXRlbXBsYXRlIFtjb21wb25lbnRdPVwieyBuYW1lOiBnZXRJdGVtVmFsdWVDb21wb25lbnROYW1lKGl0ZW0pLCBkYXRhOiBnZXRJdGVtVmFsdWVDb21wb25lbnREYXRhKGl0ZW0pIH1cIj48L25nLXRlbXBsYXRlPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIm1vZGVsLmhhc0NvbHVtbnNcIj5cbiAgICAgICAgPGRpdiAqbmdGb3I9XCJsZXQgY29sdW1uIG9mIG1vZGVsLmNvbHVtbnNcIiBbY2xhc3NdPVwibW9kZWwuZ2V0Q29sdW1uQ2xhc3MoKVwiIHJvbGU9XCJwcmVzZW50YXRpb25cIj5cbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBpdGVtIG9mIGNvbHVtblwiPlxuICAgICAgICAgICAgPG5nLXRlbXBsYXRlIFtjb21wb25lbnRdPVwieyBuYW1lOiBnZXRJdGVtVmFsdWVDb21wb25lbnROYW1lKGl0ZW0pLCBkYXRhOiBnZXRJdGVtVmFsdWVDb21wb25lbnREYXRhKGl0ZW0pIH1cIj48L25nLXRlbXBsYXRlPlxuICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICA8L2ZpZWxkc2V0PiJdfQ==
@@ -0,0 +1,31 @@
1
+ import { Component, Input } from "@angular/core";
2
+ import { BaseAngular } from "../base-angular";
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "./matrixcell.component";
5
+ import * as i2 from "@angular/common";
6
+ export class MatrixRowComponent extends BaseAngular {
7
+ getModel() {
8
+ return this.model;
9
+ }
10
+ get row() {
11
+ return this.model.row;
12
+ }
13
+ trackCellBy(_, cell) {
14
+ return cell.id;
15
+ }
16
+ }
17
+ MatrixRowComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: MatrixRowComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
18
+ MatrixRowComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: MatrixRowComponent, selector: "sv-ng-matrix-row", inputs: { model: "model", question: "question" }, usesInheritance: true, ngImport: i0, template: "<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>", styles: [":host { display: none; }"], components: [{ type: i1.MatrixCellComponent, selector: "sv-ng-matrix-cell", inputs: ["question", "cell"] }], directives: [{ type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] });
19
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: MatrixRowComponent, decorators: [{
20
+ type: Component,
21
+ args: [{
22
+ selector: "sv-ng-matrix-row",
23
+ templateUrl: "./matrix-row.component.html",
24
+ styles: [":host { display: none; }"]
25
+ }]
26
+ }], propDecorators: { model: [{
27
+ type: Input
28
+ }], question: [{
29
+ type: Input
30
+ }] } });
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0cml4LXJvdy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcXVlc3Rpb25zL21hdHJpeC1yb3cuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vc3JjL3F1ZXN0aW9ucy9tYXRyaXgtcm93LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWMsS0FBSyxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7OztBQWM5QyxNQUFNLE9BQU8sa0JBQW1CLFNBQVEsV0FBOEM7SUFHMUUsUUFBUTtRQUNoQixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDcEIsQ0FBQztJQUNELElBQVcsR0FBRztRQUNaLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUM7SUFDeEIsQ0FBQztJQUNNLFdBQVcsQ0FBQyxDQUFTLEVBQUUsSUFBUztRQUNyQyxPQUFPLElBQUksQ0FBQyxFQUFFLENBQUM7SUFDakIsQ0FBQzs7Z0hBWFUsa0JBQWtCO29HQUFsQixrQkFBa0IsaUlDZi9CLDZXQVFjOzRGRE9ELGtCQUFrQjtrQkFMOUIsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsa0JBQWtCO29CQUM1QixXQUFXLEVBQUUsNkJBQTZCO29CQUMxQyxNQUFNLEVBQUUsQ0FBQywwQkFBMEIsQ0FBQztpQkFDckM7OEJBRVUsS0FBSztzQkFBYixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEVsZW1lbnRSZWYsIElucHV0LCBWaWV3Q2hpbGQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgQmFzZUFuZ3VsYXIgfSBmcm9tIFwiLi4vYmFzZS1hbmd1bGFyXCI7XG5pbXBvcnQge1xuICBNYXRyaXhEcm9wZG93blJvd01vZGVsQmFzZSxcbiAgUXVlc3Rpb24sXG4gIFF1ZXN0aW9uTWF0cml4RHJvcGRvd25Nb2RlbEJhc2UsXG4gIFF1ZXN0aW9uTWF0cml4RHJvcGRvd25SZW5kZXJlZENlbGwsXG4gIFF1ZXN0aW9uTWF0cml4RHJvcGRvd25SZW5kZXJlZFJvd1xufSBmcm9tIFwic3VydmV5LWNvcmVcIjtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiBcInN2LW5nLW1hdHJpeC1yb3dcIixcbiAgdGVtcGxhdGVVcmw6IFwiLi9tYXRyaXgtcm93LmNvbXBvbmVudC5odG1sXCIsXG4gIHN0eWxlczogW1wiOmhvc3QgeyBkaXNwbGF5OiBub25lOyB9XCJdXG59KVxuZXhwb3J0IGNsYXNzIE1hdHJpeFJvd0NvbXBvbmVudCBleHRlbmRzIEJhc2VBbmd1bGFyPFF1ZXN0aW9uTWF0cml4RHJvcGRvd25SZW5kZXJlZFJvdz4ge1xuICBASW5wdXQoKSBtb2RlbCE6IFF1ZXN0aW9uTWF0cml4RHJvcGRvd25SZW5kZXJlZFJvdztcbiAgQElucHV0KCkgcXVlc3Rpb24hOiBRdWVzdGlvbk1hdHJpeERyb3Bkb3duTW9kZWxCYXNlO1xuICBwcm90ZWN0ZWQgZ2V0TW9kZWwoKTogUXVlc3Rpb25NYXRyaXhEcm9wZG93blJlbmRlcmVkUm93IHtcbiAgICByZXR1cm4gdGhpcy5tb2RlbDtcbiAgfVxuICBwdWJsaWMgZ2V0IHJvdygpOiBNYXRyaXhEcm9wZG93blJvd01vZGVsQmFzZSB7XG4gICAgcmV0dXJuIHRoaXMubW9kZWwucm93O1xuICB9XG4gIHB1YmxpYyB0cmFja0NlbGxCeShfOiBudW1iZXIsIGNlbGw6IGFueSk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGNlbGwuaWQ7XG4gIH1cbn0iLCI8bmctdGVtcGxhdGUgI3RlbXBsYXRlPlxuICA8dHIgW2NsYXNzXT1cIm1vZGVsLmNsYXNzTmFtZVwiIChwb2ludGVyZG93bik9XCJxdWVzdGlvbi5vblBvaW50ZXJEb3duKCRldmVudCwgcm93KVwiIFthdHRyLmRhdGEtc3YtZHJvcC10YXJnZXQtbWF0cml4LXJvd109XCJyb3cgJiYgcm93LmlkXCI+XG4gICAgPHN2LW5nLW1hdHJpeC1jZWxsXG4gICAgICBbY2VsbF09XCJjZWxsXCJcbiAgICAgIFtxdWVzdGlvbl09XCJxdWVzdGlvblwiXG4gICAgICAqbmdGb3I9XCJsZXQgY2VsbCBvZiBtb2RlbC5jZWxsczsgdHJhY2tCeTogdHJhY2tDZWxsQnlcIlxuICAgID48L3N2LW5nLW1hdHJpeC1jZWxsPlxuICA8L3RyPlxuPC9uZy10ZW1wbGF0ZT4iXX0=
@@ -0,0 +1,40 @@
1
+ import { Component } from "@angular/core";
2
+ import { QuestionAngular } from "../question";
3
+ import { AngularComponentFactory } from "../component-factory";
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "../survey-string.component";
6
+ import * as i2 from "@angular/common";
7
+ import * as i3 from "../utils/dynamic.directive";
8
+ import * as i4 from "../utils/ng-show.directive";
9
+ export class MatrixQuestionComponent extends QuestionAngular {
10
+ ngOnInit() {
11
+ this.model.visibleRowsChangedCallback = () => {
12
+ this.detectChanges();
13
+ };
14
+ super.ngOnInit();
15
+ }
16
+ onChange(row, column) {
17
+ if (this.model.isInputReadOnly)
18
+ return;
19
+ row.value = column.value;
20
+ this.detectChanges();
21
+ }
22
+ trackRowByFn(i, row) {
23
+ return "column-" + row.name + "-" + i;
24
+ }
25
+ trackColumnByFn(i, column) {
26
+ return "column-" + column.value + "-" + i;
27
+ }
28
+ }
29
+ MatrixQuestionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: MatrixQuestionComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
30
+ MatrixQuestionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: MatrixQuestionComponent, selector: "sv-ng-matrix-question", usesInheritance: true, ngImport: i0, template: "<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>", styles: [":host{display:none}\n"], components: [{ type: i1.SurveyStringComponent, selector: "sv-ng-string, '[sv-ng-string]'", inputs: ["model"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i3.DynamicComponentDirective, selector: "[component]", inputs: ["component"] }, { type: i4.VisibleDirective, selector: "[visible]", inputs: ["visible"] }] });
31
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: MatrixQuestionComponent, decorators: [{
32
+ type: Component,
33
+ args: [{
34
+ selector: "sv-ng-matrix-question",
35
+ templateUrl: "./matrix.component.html",
36
+ styleUrls: ["../hide-host.scss"]
37
+ }]
38
+ }] });
39
+ AngularComponentFactory.Instance.registerComponent("matrix-question", MatrixQuestionComponent);
40
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0cml4LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9xdWVzdGlvbnMvbWF0cml4LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uL3NyYy9xdWVzdGlvbnMvbWF0cml4LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUU5QyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7Ozs7O0FBTy9ELE1BQU0sT0FBTyx1QkFBd0IsU0FBUSxlQUFvQztJQUN0RSxRQUFRO1FBQ2YsSUFBSSxDQUFDLEtBQUssQ0FBQywwQkFBMEIsR0FBRyxHQUFHLEVBQUU7WUFDM0MsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ3ZCLENBQUMsQ0FBQztRQUNGLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUNuQixDQUFDO0lBQ00sUUFBUSxDQUFDLEdBQVEsRUFBRSxNQUFXO1FBQ25DLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxlQUFlO1lBQUUsT0FBTztRQUN2QyxHQUFHLENBQUMsS0FBSyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUM7UUFDekIsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQ3ZCLENBQUM7SUFDRCxZQUFZLENBQUMsQ0FBUyxFQUFFLEdBQVE7UUFDOUIsT0FBTyxTQUFTLEdBQUcsR0FBRyxDQUFDLElBQUksR0FBRyxHQUFHLEdBQUcsQ0FBQyxDQUFDO0lBQ3hDLENBQUM7SUFDRCxlQUFlLENBQUMsQ0FBUyxFQUFFLE1BQVc7UUFDcEMsT0FBTyxTQUFTLEdBQUcsTUFBTSxDQUFDLEtBQUssR0FBRyxHQUFHLEdBQUcsQ0FBQyxDQUFDO0lBQzVDLENBQUM7O3FIQWpCVSx1QkFBdUI7eUdBQXZCLHVCQUF1QixvRkNWcEMsc2dIQStEYzs0RkRyREQsdUJBQXVCO2tCQUxuQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSx1QkFBdUI7b0JBQ2pDLFdBQVcsRUFBRSx5QkFBeUI7b0JBQ3RDLFNBQVMsRUFBRSxDQUFDLG1CQUFtQixDQUFDO2lCQUNqQzs7QUFxQkQsdUJBQXVCLENBQUMsUUFBUSxDQUFDLGlCQUFpQixDQUFDLGlCQUFpQixFQUFFLHVCQUF1QixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgUXVlc3Rpb25Bbmd1bGFyIH0gZnJvbSBcIi4uL3F1ZXN0aW9uXCI7XG5pbXBvcnQgeyBRdWVzdGlvbk1hdHJpeE1vZGVsIH0gZnJvbSBcInN1cnZleS1jb3JlXCI7XG5pbXBvcnQgeyBBbmd1bGFyQ29tcG9uZW50RmFjdG9yeSB9IGZyb20gXCIuLi9jb21wb25lbnQtZmFjdG9yeVwiO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6IFwic3YtbmctbWF0cml4LXF1ZXN0aW9uXCIsXG4gIHRlbXBsYXRlVXJsOiBcIi4vbWF0cml4LmNvbXBvbmVudC5odG1sXCIsXG4gIHN0eWxlVXJsczogW1wiLi4vaGlkZS1ob3N0LnNjc3NcIl1cbn0pXG5leHBvcnQgY2xhc3MgTWF0cml4UXVlc3Rpb25Db21wb25lbnQgZXh0ZW5kcyBRdWVzdGlvbkFuZ3VsYXI8UXVlc3Rpb25NYXRyaXhNb2RlbD4ge1xuICBvdmVycmlkZSBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLm1vZGVsLnZpc2libGVSb3dzQ2hhbmdlZENhbGxiYWNrID0gKCkgPT4ge1xuICAgICAgdGhpcy5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfTtcbiAgICBzdXBlci5uZ09uSW5pdCgpO1xuICB9XG4gIHB1YmxpYyBvbkNoYW5nZShyb3c6IGFueSwgY29sdW1uOiBhbnkpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5tb2RlbC5pc0lucHV0UmVhZE9ubHkpIHJldHVybjtcbiAgICByb3cudmFsdWUgPSBjb2x1bW4udmFsdWU7XG4gICAgdGhpcy5kZXRlY3RDaGFuZ2VzKCk7XG4gIH1cbiAgdHJhY2tSb3dCeUZuKGk6IG51bWJlciwgcm93OiBhbnkpOiBzdHJpbmcge1xuICAgIHJldHVybiBcImNvbHVtbi1cIiArIHJvdy5uYW1lICsgXCItXCIgKyBpO1xuICB9XG4gIHRyYWNrQ29sdW1uQnlGbihpOiBudW1iZXIsIGNvbHVtbjogYW55KTogc3RyaW5nIHtcbiAgICByZXR1cm4gXCJjb2x1bW4tXCIgKyBjb2x1bW4udmFsdWUgKyBcIi1cIiArIGk7XG4gIH1cbn1cblxuQW5ndWxhckNvbXBvbmVudEZhY3RvcnkuSW5zdGFuY2UucmVnaXN0ZXJDb21wb25lbnQoXCJtYXRyaXgtcXVlc3Rpb25cIiwgTWF0cml4UXVlc3Rpb25Db21wb25lbnQpOyIsIjxuZy10ZW1wbGF0ZSAjdGVtcGxhdGU+XG4gIDxkaXYgW2NsYXNzXT1cIm1vZGVsLmNzc0NsYXNzZXMudGFibGVXcmFwcGVyXCIgI2NvbnRlbnRFbGVtZW50PlxuICAgIDxmaWVsZHNldD5cbiAgICAgIDxsZWdlbmQgW2F0dHIuYXJpYS1sYWJlbF09XCJtb2RlbC5sb2NUaXRsZS5yZW5kZXJlZEh0bWxcIj48L2xlZ2VuZD5cbiAgICAgIDx0YWJsZSBbY2xhc3NdPVwibW9kZWwuZ2V0VGFibGVDc3MoKVwiPlxuICAgICAgICA8dGhlYWQgKm5nSWY9XCJtb2RlbC5zaG93SGVhZGVyXCI+XG4gICAgICAgICAgPHRyPlxuICAgICAgICAgICAgPHRkICpuZ0lmPVwibW9kZWwuaGFzUm93c1wiPjwvdGQ+XG4gICAgICAgICAgICA8dGhcbiAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IGNvbHVtbiBvZiBtb2RlbC52aXNpYmxlQ29sdW1uc1wiIFtzdHlsZV09XCJ7IG1pbldpZHRoOiBtb2RlbC5jb2x1bW5NaW5XaWR0aCwgd2lkdGg6IG1vZGVsLmNvbHVtbk1pbldpZHRoIH1cIiBbY2xhc3NdPVwibW9kZWwuY3NzQ2xhc3Nlcy5oZWFkZXJDZWxsXCI+XG4gICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBbY29tcG9uZW50XT1cInsgbmFtZTogbW9kZWwuZ2V0Q29sdW1uSGVhZGVyV3JhcHBlckNvbXBvbmVudE5hbWUoY29sdW1uKSwgZGF0YTogeyBjb21wb25lbnREYXRhOiBtb2RlbC5nZXRDb2x1bW5IZWFkZXJXcmFwcGVyQ29tcG9uZW50RGF0YShjb2x1bW4pIH0gfVwiPlxuICAgICAgICAgICAgICAgIDxzdi1uZy1zdHJpbmcgW21vZGVsXT1cImNvbHVtbi5sb2NUZXh0XCI+PC9zdi1uZy1zdHJpbmc+XG4gICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICA8L3RoPlxuICAgICAgICAgIDwvdHI+XG4gICAgICAgIDwvdGhlYWQ+XG4gICAgICAgIDx0Ym9keT5cbiAgICAgICAgICA8dHIgKm5nRm9yPVwibGV0IHJvdyBvZiBtb2RlbC52aXNpYmxlUm93czsgdHJhY2tCeTogdHJhY2tSb3dCeUZuIFwiIFtjbGFzc109XCJyb3cucm93Q2xhc3NlcyB8fCB1bmRlZmluZWRcIj5cbiAgICAgICAgICAgPHRkIFtjbGFzc109XCJtb2RlbC5jc3NDbGFzc2VzLnJvd1RleHRDZWxsXCIgW3N0eWxlXT1cInsgbWluV2lkdGg6IG1vZGVsLnJvd1RpdGxlV2lkdGgsIHdpZHRoOiBtb2RlbC5yb3dUaXRsZVdpZHRoIH1cIiAqbmdJZj1cIm1vZGVsLmhhc1Jvd3NcIj5cbiAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlIFtjb21wb25lbnRdPVwieyBuYW1lOiBtb2RlbC5nZXRSb3dIZWFkZXJXcmFwcGVyQ29tcG9uZW50TmFtZSgkYW55KHJvdykpLCBkYXRhOiB7IGNvbXBvbmVudERhdGE6IG1vZGVsLmdldFJvd0hlYWRlcldyYXBwZXJDb21wb25lbnREYXRhKCRhbnkocm93KSkgfSB9XCI+XG4gICAgICAgICAgICAgICAgPHN2LW5nLXN0cmluZyBbbW9kZWxdPVwicm93LmxvY1RleHRcIj48L3N2LW5nLXN0cmluZz5cbiAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwibW9kZWwuaGFzQ2VsbFRleHRcIj5cbiAgICAgICAgICAgICAgPHRkICpuZ0Zvcj1cImxldCBjb2x1bW4gb2YgbW9kZWwudmlzaWJsZUNvbHVtbnNcIlxuICAgICAgICAgICAgICAgIFtjbGFzc109XCJtb2RlbC5nZXRJdGVtQ2xhc3Mocm93LCBjb2x1bW4pXCJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwib25DaGFuZ2Uocm93LCBjb2x1bW4pXCIgW21vZGVsXT1cIm1vZGVsLmdldENlbGxEaXNwbGF5TG9jVGV4dChyb3cubmFtZSwgY29sdW1uKVwiIHN2LW5nLXN0cmluZz5cbiAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFtb2RlbC5oYXNDZWxsVGV4dFwiPlxuICAgICAgICAgICAgICA8dGRcbiAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IGNvbHVtbiBvZiBtb2RlbC52aXNpYmxlQ29sdW1uczsgaW5kZXggYXMgY29sdW1uSW5kZXg7IHRyYWNrQnk6IHRyYWNrQ29sdW1uQnlGblwiXG4gICAgICAgICAgICAgIFthdHRyLmRhdGEtcmVzcG9uc2l2ZS10aXRsZV09XCJjb2x1bW4ubG9jVGV4dC5yZW5kZXJlZEh0bWxcIlxuICAgICAgICAgICAgICBbY2xhc3NdPVwibW9kZWwuY3NzQ2xhc3Nlcy5jZWxsXCI+XG4gICAgICAgICAgICAgICAgPGxhYmVsIFtjbGFzc109XCJtb2RlbC5nZXRJdGVtQ2xhc3Mocm93LCBjb2x1bW4pXCI+XG4gICAgICAgICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgICAgICAgdHlwZT1cInJhZGlvXCJcbiAgICAgICAgICAgICAgICAgICAgW2NsYXNzXT1cIm1vZGVsLmNzc0NsYXNzZXMuaXRlbVZhbHVlXCJcbiAgICAgICAgICAgICAgICAgICAgW25hbWVdPVwicm93LmZ1bGxOYW1lXCJcbiAgICAgICAgICAgICAgICAgICAgW3ZhbHVlXT1cImNvbHVtbi52YWx1ZVwiXG4gICAgICAgICAgICAgICAgICAgIFtjaGVja2VkXT1cInJvdy52YWx1ZSA9PT0gY29sdW1uLnZhbHVlXCJcbiAgICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cIm1vZGVsLmlzSW5wdXRSZWFkT25seVwiXG4gICAgICAgICAgICAgICAgICAgIFthdHRyLmlkXT1cIm1vZGVsLmlucHV0SWQgKyAnXycgKyByb3cubmFtZSArICdfJyArIGNvbHVtbkluZGV4XCJcbiAgICAgICAgICAgICAgICAgICAgKGNoYW5nZSk9XCJvbkNoYW5nZShyb3csIGNvbHVtbilcIlxuICAgICAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLXJlcXVpcmVkXT1cIm1vZGVsLmFyaWFSZXF1aXJlZFwiXG4gICAgICAgICAgICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiY29sdW1uLmxvY1RleHQucmVuZGVyZWRIdG1sXCJcbiAgICAgICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1pbnZhbGlkXT1cIm1vZGVsLmFyaWFJbnZhbGlkXCJcbiAgICAgICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1kZXNjcmliZWRieV09XCJtb2RlbC5hcmlhRGVzY3JpYmVkQnlcIlxuICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgIDxzcGFuIFtjbGFzc109XCJtb2RlbC5jc3NDbGFzc2VzLm1hdGVyaWFsRGVjb3JhdG9yXCI+XG4gICAgICAgICAgICAgICAgICAgIDxzdmcgKm5nSWY9XCJtb2RlbC5pdGVtU3ZnSWNvblwiIFtjbGFzc109XCJtb2RlbC5jc3NDbGFzc2VzLml0ZW1EZWNvcmF0b3JcIj5cbiAgICAgICAgICAgICAgICAgICAgICA8dXNlIFthdHRyLnhsaW5rOmhyZWZdPVwibW9kZWwuaXRlbVN2Z0ljb25cIj48L3VzZT5cbiAgICAgICAgICAgICAgICAgICAgPC9zdmc+IFxuICAgICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgPHNwYW4gW3Zpc2libGVdPVwibW9kZWwuaXNNb2JpbGVcIiBbY2xhc3NdPVwibW9kZWwuY3NzQ2xhc3Nlcy5jZWxsUmVzcG9uc2l2ZVRpdGxlXCIgW21vZGVsXT1cImNvbHVtbi5sb2NUZXh0XCIgc3Ytbmctc3RyaW5nPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8L2xhYmVsPlxuICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgPC90cj5cbiAgICAgICAgPC90Ym9keT5cbiAgICAgIDwvdGFibGU+XG4gICAgPC9maWVsZHNldD5cbiAgPC9kaXY+XG48L25nLXRlbXBsYXRlPiJdfQ==
@@ -0,0 +1,94 @@
1
+ import { Component, Input, ViewChild } from "@angular/core";
2
+ import { BaseAngular } from "../base-angular";
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "../components/matrix-actions/drag-drop-icon/drag-drop-icon";
5
+ import * as i2 from "../components/action-bar/action-bar.component";
6
+ import * as i3 from "../errors.component";
7
+ import * as i4 from "./selectbase-item";
8
+ import * as i5 from "../comment-other.component";
9
+ import * as i6 from "../survey-string.component";
10
+ import * as i7 from "@angular/common";
11
+ import * as i8 from "../utils/dynamic.directive";
12
+ import * as i9 from "../utils/ng-show.directive";
13
+ export class MatrixCellComponent extends BaseAngular {
14
+ constructor() {
15
+ super(...arguments);
16
+ this.isVisible = false;
17
+ }
18
+ getModel() {
19
+ return this.cell.question;
20
+ }
21
+ get row() {
22
+ return this.cell.row;
23
+ }
24
+ get panelComponentName() {
25
+ const panel = this.cell.panel;
26
+ const survey = panel.survey;
27
+ if (!!survey) {
28
+ const name = survey.getElementWrapperComponentName(panel);
29
+ if (!!name) {
30
+ return name;
31
+ }
32
+ }
33
+ return "panel";
34
+ }
35
+ get panelComponentData() {
36
+ const panel = this.cell.panel;
37
+ const survey = panel.survey;
38
+ let data;
39
+ if (!!survey) {
40
+ data = survey.getElementWrapperComponentData(panel);
41
+ }
42
+ return {
43
+ componentName: "panel",
44
+ componentData: {
45
+ model: panel,
46
+ data: data
47
+ }
48
+ };
49
+ }
50
+ getComponentName(element) {
51
+ if (element.customWidget) {
52
+ return "survey-customwidget";
53
+ }
54
+ return element.getType() + "-question";
55
+ }
56
+ getHeaders() {
57
+ return this.cell.headers;
58
+ }
59
+ getCellStyle() {
60
+ if (!!this.cell.width || !!this.cell.minWidth)
61
+ return { width: this.cell.width, minWidth: this.cell.minWidth };
62
+ return null;
63
+ }
64
+ ngAfterViewInit() {
65
+ if (!this.cell.hasQuestion || !this.question || !this.question.survey)
66
+ return;
67
+ var options = {
68
+ cell: this.cell.cell,
69
+ cellQuestion: this.cell.question,
70
+ htmlElement: this.cellContainer.nativeElement,
71
+ row: this.cell.row,
72
+ column: this.cell.cell.column,
73
+ };
74
+ this.question.survey.matrixAfterCellRender(this.question, options);
75
+ }
76
+ }
77
+ MatrixCellComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: MatrixCellComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
78
+ MatrixCellComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: MatrixCellComponent, selector: "sv-ng-matrix-cell", inputs: { question: "question", cell: "cell" }, viewQueries: [{ propertyName: "cellContainer", first: true, predicate: ["cellContainer"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<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]=\"cell.question.getCommentAreaCss(true)\" [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>", styles: [":host { display: none; }"], components: [{ type: i1.MatrixDynamicDragDropIconComponent, selector: "sv-ng-matrix-drag-drop-icon", inputs: ["model"] }, { type: i2.ActionBarComponent, selector: "sv-action-bar, sv-ng-action-bar", inputs: ["model", "handleClick"] }, { type: i3.ErrorsComponent, selector: "'[sv-ng-errors]'", inputs: ["element", "location"] }, { type: i4.SelectBaseItemComponent, selector: "['sv-ng-selectbase-item'], sv-ng-selebase-item", inputs: ["question", "model", "inputType", "showLabel"] }, { type: i5.SurveyCommentOtherComponent, selector: "sv-ng-comment-other, '[sv-ng-comment-other]'", inputs: ["question"] }, { type: i6.SurveyStringComponent, selector: "sv-ng-string, '[sv-ng-string]'", inputs: ["model"] }], directives: [{ type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i8.DynamicComponentDirective, selector: "[component]", inputs: ["component"] }, { type: i9.VisibleDirective, selector: "[visible]", inputs: ["visible"] }] });
79
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: MatrixCellComponent, decorators: [{
80
+ type: Component,
81
+ args: [{
82
+ selector: "sv-ng-matrix-cell",
83
+ templateUrl: "./matrixcell.component.html",
84
+ styles: [":host { display: none; }"]
85
+ }]
86
+ }], propDecorators: { question: [{
87
+ type: Input
88
+ }], cell: [{
89
+ type: Input
90
+ }], cellContainer: [{
91
+ type: ViewChild,
92
+ args: ["cellContainer"]
93
+ }] } });
94
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0cml4Y2VsbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcXVlc3Rpb25zL21hdHJpeGNlbGwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vc3JjL3F1ZXN0aW9ucy9tYXRyaXhjZWxsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWMsS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN4RSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0saUJBQWlCLENBQUM7Ozs7Ozs7Ozs7O0FBYzlDLE1BQU0sT0FBTyxtQkFBb0IsU0FBUSxXQUFxQjtJQUw5RDs7UUFXRSxjQUFTLEdBQVksS0FBSyxDQUFDO0tBNEQ1QjtJQTFEQyxRQUFRO1FBQ04sT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUM1QixDQUFDO0lBQ0QsSUFBVyxHQUFHO1FBQ1osT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQztJQUN2QixDQUFDO0lBQ0QsSUFBVyxrQkFBa0I7UUFDM0IsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUM7UUFDOUIsTUFBTSxNQUFNLEdBQWdCLEtBQUssQ0FBQyxNQUFNLENBQUM7UUFDekMsSUFBRyxDQUFDLENBQUMsTUFBTSxFQUFFO1lBQ1gsTUFBTSxJQUFJLEdBQUcsTUFBTSxDQUFDLDhCQUE4QixDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQzFELElBQUcsQ0FBQyxDQUFDLElBQUksRUFBRTtnQkFDVCxPQUFPLElBQUksQ0FBQzthQUNiO1NBQ0Y7UUFDRCxPQUFPLE9BQU8sQ0FBQztJQUNqQixDQUFDO0lBQ0QsSUFBVyxrQkFBa0I7UUFDM0IsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUM7UUFDOUIsTUFBTSxNQUFNLEdBQWdCLEtBQUssQ0FBQyxNQUFNLENBQUM7UUFDekMsSUFBSSxJQUFTLENBQUM7UUFDZCxJQUFHLENBQUMsQ0FBQyxNQUFNLEVBQUU7WUFDWCxJQUFJLEdBQUcsTUFBTSxDQUFDLDhCQUE4QixDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQ3JEO1FBQ0QsT0FBTztZQUNMLGFBQWEsRUFBRSxPQUFPO1lBQ3RCLGFBQWEsRUFBRTtnQkFDYixLQUFLLEVBQUUsS0FBSztnQkFDWixJQUFJLEVBQUUsSUFBSTthQUNYO1NBQ0YsQ0FBQztJQUNKLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxPQUFpQjtRQUNoQyxJQUFJLE9BQU8sQ0FBQyxZQUFZLEVBQUU7WUFDeEIsT0FBTyxxQkFBcUIsQ0FBQztTQUM5QjtRQUNELE9BQU8sT0FBTyxDQUFDLE9BQU8sRUFBRSxHQUFDLFdBQVcsQ0FBQztJQUN2QyxDQUFDO0lBQ0QsVUFBVTtRQUNSLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDM0IsQ0FBQztJQUNELFlBQVk7UUFDVixJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRO1lBQzNDLE9BQU8sRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsUUFBUSxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDbEUsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBQ0QsZUFBZTtRQUNiLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU07WUFBRSxPQUFPO1FBQzlFLElBQUksT0FBTyxHQUFHO1lBQ1osSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSTtZQUNwQixZQUFZLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRO1lBQ2hDLFdBQVcsRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLGFBQWE7WUFDN0MsR0FBRyxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRztZQUNsQixNQUFNLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTTtTQUM5QixDQUFDO1FBQ0YsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMscUJBQXFCLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUNyRSxDQUFDOztpSEFqRVUsbUJBQW1CO3FHQUFuQixtQkFBbUIsZ1BDZmhDLG10RkFrQ2M7NEZEbkJELG1CQUFtQjtrQkFML0IsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsbUJBQW1CO29CQUM3QixXQUFXLEVBQUUsNkJBQTZCO29CQUMxQyxNQUFNLEVBQUUsQ0FBQywwQkFBMEIsQ0FBQztpQkFDbkM7OEJBRVEsUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBRXNCLGFBQWE7c0JBQXhDLFNBQVM7dUJBQUMsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRWxlbWVudFJlZiwgSW5wdXQsIFZpZXdDaGlsZCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBCYXNlQW5ndWxhciB9IGZyb20gXCIuLi9iYXNlLWFuZ3VsYXJcIjtcbmltcG9ydCB7XG4gIFF1ZXN0aW9uLFxuICBRdWVzdGlvbk1hdHJpeERyb3Bkb3duTW9kZWxCYXNlLFxuICBRdWVzdGlvbk1hdHJpeERyb3Bkb3duUmVuZGVyZWRDZWxsLFxuICBNYXRyaXhEcm9wZG93blJvd01vZGVsQmFzZSxcbiAgU3VydmV5TW9kZWxcbn0gZnJvbSBcInN1cnZleS1jb3JlXCI7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogXCJzdi1uZy1tYXRyaXgtY2VsbFwiLFxuICB0ZW1wbGF0ZVVybDogXCIuL21hdHJpeGNlbGwuY29tcG9uZW50Lmh0bWxcIixcbiAgc3R5bGVzOiBbXCI6aG9zdCB7IGRpc3BsYXk6IG5vbmU7IH1cIl1cbiAgfSlcbmV4cG9ydCBjbGFzcyBNYXRyaXhDZWxsQ29tcG9uZW50IGV4dGVuZHMgQmFzZUFuZ3VsYXI8UXVlc3Rpb24+IHtcbiAgQElucHV0KCkgcXVlc3Rpb24hOiBRdWVzdGlvbk1hdHJpeERyb3Bkb3duTW9kZWxCYXNlO1xuICBASW5wdXQoKSBjZWxsITogUXVlc3Rpb25NYXRyaXhEcm9wZG93blJlbmRlcmVkQ2VsbDtcblxuICBAVmlld0NoaWxkKFwiY2VsbENvbnRhaW5lclwiKSBjZWxsQ29udGFpbmVyITogRWxlbWVudFJlZjxIVE1MRWxlbWVudD47XG5cbiAgaXNWaXNpYmxlOiBib29sZWFuID0gZmFsc2U7XG5cbiAgZ2V0TW9kZWwoKSB7XG4gICAgcmV0dXJuIHRoaXMuY2VsbC5xdWVzdGlvbjtcbiAgfVxuICBwdWJsaWMgZ2V0IHJvdygpOiBNYXRyaXhEcm9wZG93blJvd01vZGVsQmFzZSB7XG4gICAgcmV0dXJuIHRoaXMuY2VsbC5yb3c7XG4gIH1cbiAgcHVibGljIGdldCBwYW5lbENvbXBvbmVudE5hbWUoKTogc3RyaW5nIHtcbiAgICBjb25zdCBwYW5lbCA9IHRoaXMuY2VsbC5wYW5lbDtcbiAgICBjb25zdCBzdXJ2ZXkgPSA8U3VydmV5TW9kZWw+cGFuZWwuc3VydmV5O1xuICAgIGlmKCEhc3VydmV5KSB7XG4gICAgICBjb25zdCBuYW1lID0gc3VydmV5LmdldEVsZW1lbnRXcmFwcGVyQ29tcG9uZW50TmFtZShwYW5lbCk7XG4gICAgICBpZighIW5hbWUpIHtcbiAgICAgICAgcmV0dXJuIG5hbWU7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBcInBhbmVsXCI7XG4gIH1cbiAgcHVibGljIGdldCBwYW5lbENvbXBvbmVudERhdGEoKTogYW55IHtcbiAgICBjb25zdCBwYW5lbCA9IHRoaXMuY2VsbC5wYW5lbDtcbiAgICBjb25zdCBzdXJ2ZXkgPSA8U3VydmV5TW9kZWw+cGFuZWwuc3VydmV5O1xuICAgIGxldCBkYXRhOiBhbnk7XG4gICAgaWYoISFzdXJ2ZXkpIHtcbiAgICAgIGRhdGEgPSBzdXJ2ZXkuZ2V0RWxlbWVudFdyYXBwZXJDb21wb25lbnREYXRhKHBhbmVsKTtcbiAgICB9XG4gICAgcmV0dXJuIHtcbiAgICAgIGNvbXBvbmVudE5hbWU6IFwicGFuZWxcIixcbiAgICAgIGNvbXBvbmVudERhdGE6IHtcbiAgICAgICAgbW9kZWw6IHBhbmVsLFxuICAgICAgICBkYXRhOiBkYXRhXG4gICAgICB9XG4gICAgfTtcbiAgfVxuXG4gIGdldENvbXBvbmVudE5hbWUoZWxlbWVudDogUXVlc3Rpb24pIHtcbiAgICBpZiAoZWxlbWVudC5jdXN0b21XaWRnZXQpIHtcbiAgICAgIHJldHVybiBcInN1cnZleS1jdXN0b213aWRnZXRcIjtcbiAgICB9XG4gICAgcmV0dXJuIGVsZW1lbnQuZ2V0VHlwZSgpK1wiLXF1ZXN0aW9uXCI7XG4gIH1cbiAgZ2V0SGVhZGVycygpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmNlbGwuaGVhZGVycztcbiAgfVxuICBnZXRDZWxsU3R5bGUoKSB7XG4gICAgaWYgKCEhdGhpcy5jZWxsLndpZHRoIHx8ICEhdGhpcy5jZWxsLm1pbldpZHRoKVxuICAgICAgcmV0dXJuIHsgd2lkdGg6IHRoaXMuY2VsbC53aWR0aCwgbWluV2lkdGg6IHRoaXMuY2VsbC5taW5XaWR0aCB9O1xuICAgIHJldHVybiBudWxsO1xuICB9XG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICBpZiAoIXRoaXMuY2VsbC5oYXNRdWVzdGlvbiB8fCAhdGhpcy5xdWVzdGlvbiB8fCAhdGhpcy5xdWVzdGlvbi5zdXJ2ZXkpIHJldHVybjtcbiAgICB2YXIgb3B0aW9ucyA9IHtcbiAgICAgIGNlbGw6IHRoaXMuY2VsbC5jZWxsLFxuICAgICAgY2VsbFF1ZXN0aW9uOiB0aGlzLmNlbGwucXVlc3Rpb24sXG4gICAgICBodG1sRWxlbWVudDogdGhpcy5jZWxsQ29udGFpbmVyLm5hdGl2ZUVsZW1lbnQsXG4gICAgICByb3c6IHRoaXMuY2VsbC5yb3csXG4gICAgICBjb2x1bW46IHRoaXMuY2VsbC5jZWxsLmNvbHVtbixcbiAgICB9O1xuICAgIHRoaXMucXVlc3Rpb24uc3VydmV5Lm1hdHJpeEFmdGVyQ2VsbFJlbmRlcih0aGlzLnF1ZXN0aW9uLCBvcHRpb25zKTtcbiAgfVxufSIsIjxuZy10ZW1wbGF0ZSAjdGVtcGxhdGU+XG4gIDx0ZCBbY2xhc3NdPVwiY2VsbC5jbGFzc05hbWVcIiBbYXR0ci5kYXRhLXJlc3BvbnNpdmUtdGl0bGVdPVwiZ2V0SGVhZGVycygpXCIgW3RpdGxlXT1cImNlbGwuZ2V0VGl0bGUoKVwiIFtzdHlsZV09XCJnZXRDZWxsU3R5bGUoKVwiIFthdHRyLmNvbHNwYW5dPVwiY2VsbC5jb2xTcGFuc1wiICNjZWxsQ29udGFpbmVyPlxuICAgIDxzdi1uZy1tYXRyaXgtZHJhZy1kcm9wLWljb24gKm5nSWY9XCJjZWxsLmlzRHJhZ0hhbmRsZXJDZWxsXCIgW21vZGVsXT1cIiRhbnkoeyBkYXRhOiB7IHJvdzogcm93LCBxdWVzdGlvbjogcXVlc3Rpb24gfSB9KVwiPjwvc3YtbmctbWF0cml4LWRyYWctZHJvcC1pY29uPlxuICAgIDxzdi1hY3Rpb24tYmFyICpuZ0lmPVwiY2VsbC5pc0FjdGlvbnNDZWxsXCIgW21vZGVsXT1cImNlbGwuaXRlbS5nZXREYXRhKClcIiBbaGFuZGxlQ2xpY2tdPVwiZmFsc2VcIj48L3N2LWFjdGlvbi1iYXI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImNlbGwuaGFzUGFuZWxcIj5cbiAgICAgIDxuZy10ZW1wbGF0ZSBbY29tcG9uZW50XT1cInsgbmFtZTogcGFuZWxDb21wb25lbnROYW1lLCBkYXRhOiBwYW5lbENvbXBvbmVudERhdGEgfVwiPjwvbmctdGVtcGxhdGU+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPGRpdiAqbmdJZj1cImNlbGwuaGFzUXVlc3Rpb25cIiBbY2xhc3NdPVwicXVlc3Rpb24uY3NzQ2xhc3Nlcy5jZWxsUXVlc3Rpb25XcmFwcGVyXCIgW3Zpc2libGVdPVwiY2VsbC5xdWVzdGlvbi5pc1Zpc2libGVcIj5cbiAgICAgIDxkaXYgKm5nSWY9XCJjZWxsLnNob3dFcnJvck9uVG9wICYmIGNlbGwucXVlc3Rpb24uaGFzVmlzaWJsZUVycm9yc1wiIFtlbGVtZW50XT1cImNlbGwucXVlc3Rpb25cIiBbbG9jYXRpb25dPVwiJ3RvcCdcIiBzdi1uZy1lcnJvcnM+PC9kaXY+XG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWNlbGwuaXNDaG9pY2UgJiYgY2VsbC5xdWVzdGlvbi5pc0RlZmF1bHRSZW5kZXJpbmcoKVwiPlxuICAgICAgICAgIDxuZy10ZW1wbGF0ZSBbY29tcG9uZW50XT1cInsgbmFtZTogcXVlc3Rpb24uZ2V0Q2VsbFdyYXBwZXJDb21wb25lbnROYW1lKGNlbGwuY2VsbCksIGRhdGE6IHsgY29tcG9uZW50RGF0YTogcXVlc3Rpb24uZ2V0Q2VsbFdyYXBwZXJDb21wb25lbnREYXRhKGNlbGwuY2VsbCl9IH1cIj5cbiAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAgW2NvbXBvbmVudF09XCJ7IG5hbWU6IGdldENvbXBvbmVudE5hbWUoY2VsbC5xdWVzdGlvbiksIGRhdGE6IHsgbW9kZWw6IGNlbGwucXVlc3Rpb24gfSB9XCI+PC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8bmctdGVtcGxhdGUgKm5nSWY9XCIhY2VsbC5pc0Nob2ljZSAmJiAhY2VsbC5xdWVzdGlvbi5pc0RlZmF1bHRSZW5kZXJpbmcoKVwiIFtjb21wb25lbnRdPVwieyBuYW1lOiBjZWxsLnF1ZXN0aW9uLmdldENvbXBvbmVudE5hbWUoKSwgZGF0YTogeyBtb2RlbDogY2VsbC5xdWVzdGlvbiB9IH1cIj5cbiAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICA8c3Ytbmctc2VsZWJhc2UtaXRlbVxuICAgICAgICAqbmdJZj1cImNlbGwuaXNJdGVtQ2hvaWNlXCJcbiAgICAgICAgW3Nob3dMYWJlbF09XCJmYWxzZVwiXG4gICAgICAgIFtpbnB1dFR5cGVdPVwiY2VsbC5pc0NoZWNrYm94ID8gJ2NoZWNrYm94JzogJ3JhZGlvJ1wiXG4gICAgICAgIFtxdWVzdGlvbl09XCJjZWxsLnF1ZXN0aW9uXCJcbiAgICAgICAgW21vZGVsXT1cImNlbGwuaXRlbVwiXG4gICAgICA+PC9zdi1uZy1zZWxlYmFzZS1pdGVtPlxuICAgICAgPGRpdiAqbmdJZj1cImNlbGwuaXNPdGhlckNob2ljZVwiIFtjbGFzc109XCJjZWxsLnF1ZXN0aW9uLmdldENvbW1lbnRBcmVhQ3NzKHRydWUpXCIgW3F1ZXN0aW9uXT1cImNlbGwucXVlc3Rpb25cIiBzdi1uZy1jb21tZW50LW90aGVyPjwvZGl2PlxuICAgICAgPGRpdiAqbmdJZj1cImNlbGwuc2hvd0Vycm9yT25Cb3R0b20gJiYgY2VsbC5xdWVzdGlvbi5oYXNWaXNpYmxlRXJyb3JzXCIgW2VsZW1lbnRdPVwiY2VsbC5xdWVzdGlvblwiIFtsb2NhdGlvbl09XCIndG9wJ1wiIHN2LW5nLWVycm9ycz48L2Rpdj5cbiAgICAgIDxkaXYgKm5nSWY9XCJjZWxsLnF1ZXN0aW9uLmlzRXJyb3JzTW9kZVRvb2x0aXAgJiYgY2VsbC5xdWVzdGlvbi5oYXNWaXNpYmxlRXJyb3JzXCIgW2VsZW1lbnRdPVwiY2VsbC5xdWVzdGlvblwiIFtsb2NhdGlvbl09XCIndG9vbHRpcCdcIiBzdi1uZy1lcnJvcnM+PC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImNlbGwuaGFzVGl0bGVcIj5cbiAgICAgIDxuZy10ZW1wbGF0ZSBbY29tcG9uZW50XT1cInsgbmFtZTogcXVlc3Rpb24uZ2V0Q2VsbFdyYXBwZXJDb21wb25lbnROYW1lKCRhbnkoY2VsbCkpLCBkYXRhOiB7IGNvbXBvbmVudERhdGE6IHF1ZXN0aW9uLmdldENlbGxXcmFwcGVyQ29tcG9uZW50RGF0YSgkYW55KGNlbGwpKX0gfVwiPlxuICAgICAgICA8c3Ytbmctc3RyaW5nIFttb2RlbF09XCJjZWxsLmxvY1RpdGxlXCI+PC9zdi1uZy1zdHJpbmc+XG4gICAgICAgIDxzcGFuICpuZ0lmPVwiISFjZWxsLnJlcXVpcmVkVGV4dFwiIFtjbGFzc109XCJxdWVzdGlvbi5jc3NDbGFzc2VzLmNlbGxSZXF1aXJlZFRleHRcIj57eyBjZWxsLnJlcXVpcmVkVGV4dCB9fTwvc3Bhbj4gIFxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8L25nLWNvbnRhaW5lcj5cbjwvdGQ+XG48L25nLXRlbXBsYXRlPiJdfQ==
@@ -0,0 +1,19 @@
1
+ import { Component } from "@angular/core";
2
+ import { QuestionAngular } from "../question";
3
+ import { AngularComponentFactory } from "../component-factory";
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "./matrixtable.component";
6
+ import * as i2 from "@angular/common";
7
+ export class MatrixDropdownComponent extends QuestionAngular {
8
+ }
9
+ MatrixDropdownComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: MatrixDropdownComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
10
+ MatrixDropdownComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: MatrixDropdownComponent, selector: "sv-ng-matrixdropdown-question", usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <sv-ng-matrix-table *ngIf=\"model.renderedTable?.showTable\" [question]=\"model\" [table]=\"model.renderedTable\"></sv-ng-matrix-table>\n</ng-template>", components: [{ type: i1.MatrixTableComponent, selector: "sv-ng-matrix-table", inputs: ["question", "table"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
11
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: MatrixDropdownComponent, decorators: [{
12
+ type: Component,
13
+ args: [{
14
+ selector: "sv-ng-matrixdropdown-question",
15
+ templateUrl: "./matrixdropdown.component.html"
16
+ }]
17
+ }] });
18
+ AngularComponentFactory.Instance.registerComponent("matrixdropdown-question", MatrixDropdownComponent);
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0cml4ZHJvcGRvd24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3F1ZXN0aW9ucy9tYXRyaXhkcm9wZG93bi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi9zcmMvcXVlc3Rpb25zL21hdHJpeGRyb3Bkb3duLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUU5QyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7OztBQU0vRCxNQUFNLE9BQU8sdUJBQXdCLFNBQVEsZUFBNEM7O3FIQUE1RSx1QkFBdUI7eUdBQXZCLHVCQUF1Qiw0RkNUcEMsc0xBRWM7NEZET0QsdUJBQXVCO2tCQUpuQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSwrQkFBK0I7b0JBQ3pDLFdBQVcsRUFBRSxpQ0FBaUM7aUJBQy9DOztBQUdELHVCQUF1QixDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyx5QkFBeUIsRUFBRSx1QkFBdUIsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IFF1ZXN0aW9uQW5ndWxhciB9IGZyb20gXCIuLi9xdWVzdGlvblwiO1xuaW1wb3J0IHsgUXVlc3Rpb25NYXRyaXhEcm9wZG93bk1vZGVsIH0gZnJvbSBcInN1cnZleS1jb3JlXCI7XG5pbXBvcnQgeyBBbmd1bGFyQ29tcG9uZW50RmFjdG9yeSB9IGZyb20gXCIuLi9jb21wb25lbnQtZmFjdG9yeVwiO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6IFwic3YtbmctbWF0cml4ZHJvcGRvd24tcXVlc3Rpb25cIixcbiAgdGVtcGxhdGVVcmw6IFwiLi9tYXRyaXhkcm9wZG93bi5jb21wb25lbnQuaHRtbFwiXG59KVxuZXhwb3J0IGNsYXNzIE1hdHJpeERyb3Bkb3duQ29tcG9uZW50IGV4dGVuZHMgUXVlc3Rpb25Bbmd1bGFyPFF1ZXN0aW9uTWF0cml4RHJvcGRvd25Nb2RlbD4ge31cblxuQW5ndWxhckNvbXBvbmVudEZhY3RvcnkuSW5zdGFuY2UucmVnaXN0ZXJDb21wb25lbnQoXCJtYXRyaXhkcm9wZG93bi1xdWVzdGlvblwiLCBNYXRyaXhEcm9wZG93bkNvbXBvbmVudCk7IiwiPG5nLXRlbXBsYXRlICN0ZW1wbGF0ZT5cbiAgICA8c3YtbmctbWF0cml4LXRhYmxlICpuZ0lmPVwibW9kZWwucmVuZGVyZWRUYWJsZT8uc2hvd1RhYmxlXCIgW3F1ZXN0aW9uXT1cIm1vZGVsXCIgW3RhYmxlXT1cIm1vZGVsLnJlbmRlcmVkVGFibGVcIj48L3N2LW5nLW1hdHJpeC10YWJsZT5cbjwvbmctdGVtcGxhdGU+Il19
@@ -0,0 +1,20 @@
1
+ import { Component } from "@angular/core";
2
+ import { QuestionAngular } from "../question";
3
+ import { AngularComponentFactory } from "../component-factory";
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "./matrixtable.component";
6
+ import * as i2 from "../survey-string.component";
7
+ import * as i3 from "@angular/common";
8
+ export class MatrixDynamicComponent extends QuestionAngular {
9
+ }
10
+ MatrixDynamicComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: MatrixDynamicComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
11
+ MatrixDynamicComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: MatrixDynamicComponent, selector: "sv-ng-matrixdynamic-question", usesInheritance: true, ngImport: i0, template: "<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>", components: [{ type: i1.MatrixTableComponent, selector: "sv-ng-matrix-table", inputs: ["question", "table"] }, { type: i2.SurveyStringComponent, selector: "sv-ng-string, '[sv-ng-string]'", inputs: ["model"] }], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }] });
12
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: MatrixDynamicComponent, decorators: [{
13
+ type: Component,
14
+ args: [{
15
+ selector: "sv-ng-matrixdynamic-question",
16
+ templateUrl: "./matrixdynamic.component.html"
17
+ }]
18
+ }] });
19
+ AngularComponentFactory.Instance.registerComponent("matrixdynamic-question", MatrixDynamicComponent);
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0cml4ZHluYW1pYy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcXVlc3Rpb25zL21hdHJpeGR5bmFtaWMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vc3JjL3F1ZXN0aW9ucy9tYXRyaXhkeW5hbWljLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUU5QyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7Ozs7QUFNL0QsTUFBTSxPQUFPLHNCQUF1QixTQUFRLGVBQTJDOztvSEFBMUUsc0JBQXNCO3dHQUF0QixzQkFBc0IsMkZDVG5DLDRvQ0FvQmM7NEZEWEQsc0JBQXNCO2tCQUpsQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSw4QkFBOEI7b0JBQ3hDLFdBQVcsRUFBRSxnQ0FBZ0M7aUJBQzlDOztBQUdELHVCQUF1QixDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyx3QkFBd0IsRUFBRSxzQkFBc0IsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IFF1ZXN0aW9uQW5ndWxhciB9IGZyb20gXCIuLi9xdWVzdGlvblwiO1xuaW1wb3J0IHsgUXVlc3Rpb25NYXRyaXhEeW5hbWljTW9kZWwgfSBmcm9tIFwic3VydmV5LWNvcmVcIjtcbmltcG9ydCB7IEFuZ3VsYXJDb21wb25lbnRGYWN0b3J5IH0gZnJvbSBcIi4uL2NvbXBvbmVudC1mYWN0b3J5XCI7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogXCJzdi1uZy1tYXRyaXhkeW5hbWljLXF1ZXN0aW9uXCIsXG4gIHRlbXBsYXRlVXJsOiBcIi4vbWF0cml4ZHluYW1pYy5jb21wb25lbnQuaHRtbFwiXG59KVxuZXhwb3J0IGNsYXNzIE1hdHJpeER5bmFtaWNDb21wb25lbnQgZXh0ZW5kcyBRdWVzdGlvbkFuZ3VsYXI8UXVlc3Rpb25NYXRyaXhEeW5hbWljTW9kZWw+IHt9XG5cbkFuZ3VsYXJDb21wb25lbnRGYWN0b3J5Lkluc3RhbmNlLnJlZ2lzdGVyQ29tcG9uZW50KFwibWF0cml4ZHluYW1pYy1xdWVzdGlvblwiLCBNYXRyaXhEeW5hbWljQ29tcG9uZW50KTsiLCI8bmctdGVtcGxhdGUgI3RlbXBsYXRlPlxuICA8ZGl2ICNjb250ZW50RWxlbWVudD5cbiAgICA8ZGl2ICpuZ0lmPVwibW9kZWwucmVuZGVyZWRUYWJsZS5zaG93QWRkUm93T25Ub3BcIiBbY2xhc3NdPVwibW9kZWwuY3NzQ2xhc3Nlcy5mb290ZXJcIj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJhZGRSb3dCdXR0b25cIj48L25nLWNvbnRhaW5lcj5cbiAgICA8L2Rpdj5cbiAgICA8c3YtbmctbWF0cml4LXRhYmxlICpuZ0lmPVwibW9kZWwucmVuZGVyZWRUYWJsZT8uc2hvd1RhYmxlXCIgW3F1ZXN0aW9uXT1cIm1vZGVsXCIgW3RhYmxlXT1cIm1vZGVsLnJlbmRlcmVkVGFibGVcIj48L3N2LW5nLW1hdHJpeC10YWJsZT5cbiAgICA8ZGl2ICpuZ0lmPVwiIW1vZGVsLnJlbmRlcmVkVGFibGUuc2hvd1RhYmxlXCIgW2NsYXNzXT1cIm1vZGVsLmNzc0NsYXNzZXMuZW1wdHlSb3dzU2VjdGlvblwiPlxuICAgICAgPGRpdiBbY2xhc3NdPVwibW9kZWwuY3NzQ2xhc3Nlcy5lbXB0eVJvd3NUZXh0XCIgW21vZGVsXT1cIm1vZGVsLmxvY0VtcHR5Um93c1RleHRcIiBzdi1uZy1zdHJpbmc+PC9kaXY+XG4gICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiYWRkUm93QnV0dG9uXCI+PC9uZy1jb250YWluZXI+XG4gICAgPC9kaXY+XG4gICAgPGRpdiAqbmdJZj1cIm1vZGVsLnJlbmRlcmVkVGFibGUuc2hvd0FkZFJvd09uQm90dG9tXCIgW2NsYXNzXT1cIm1vZGVsLmNzc0NsYXNzZXMuZm9vdGVyXCI+XG4gICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiYWRkUm93QnV0dG9uXCI+PC9uZy1jb250YWluZXI+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuICA8bmctdGVtcGxhdGUgI2FkZFJvd0J1dHRvbj5cbiAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBbY2xhc3NdPVwibW9kZWwuZ2V0QWRkUm93QnV0dG9uQ3NzKHRydWUpXCIgKGNsaWNrKT1cIm1vZGVsLmFkZFJvd1VJKClcIj5cbiAgICAgICAgPHN2LW5nLXN0cmluZyBbbW9kZWxdPVwibW9kZWwubG9jQWRkUm93VGV4dFwiID48L3N2LW5nLXN0cmluZz5cbiAgICAgICAgPHNwYW4gW2NsYXNzXT1cIm1vZGVsLmNzc0NsYXNzZXMuaWNvbkFkZFwiPjwvc3Bhbj5cbiAgICA8L2J1dHRvbj5cbiAgPC9uZy10ZW1wbGF0ZT5cbjwvbmctdGVtcGxhdGU+Il19
@@ -0,0 +1,24 @@
1
+ import { Component, Input } from "@angular/core";
2
+ import { BaseAngular } from "../base-angular";
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@angular/common";
5
+ export class MatrixRequiredHeader extends BaseAngular {
6
+ getModel() {
7
+ return this.column;
8
+ }
9
+ }
10
+ MatrixRequiredHeader.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: MatrixRequiredHeader, deps: null, target: i0.ɵɵFactoryTarget.Component });
11
+ MatrixRequiredHeader.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: MatrixRequiredHeader, selector: "sv-ng-matrixheaderrequired", inputs: { column: "column", question: "question" }, usesInheritance: true, ngImport: i0, template: "<ng-template #template><span *ngIf='column.isRenderedRequired' [class]='question.cssClasses.cellRequiredText'>{{ column.requiredText }}</span></ng-template>", isInline: true, styles: [":host { display: none; }"], directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
12
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: MatrixRequiredHeader, decorators: [{
13
+ type: Component,
14
+ args: [{
15
+ selector: "sv-ng-matrixheaderrequired",
16
+ styles: [":host { display: none; }"],
17
+ template: "<ng-template #template><span *ngIf='column.isRenderedRequired' [class]='question.cssClasses.cellRequiredText'>{{ column.requiredText }}</span></ng-template>"
18
+ }]
19
+ }], propDecorators: { column: [{
20
+ type: Input
21
+ }], question: [{
22
+ type: Input
23
+ }] } });
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0cml4cmVxdWlyZWRoZWFkZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3F1ZXN0aW9ucy9tYXRyaXhyZXF1aXJlZGhlYWRlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7QUFXOUMsTUFBTSxPQUFPLG9CQUFxQixTQUFRLFdBQWlDO0lBR3pFLFFBQVE7UUFDTixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDckIsQ0FBQzs7a0hBTFUsb0JBQW9CO3NHQUFwQixvQkFBb0IsNklBRnJCLDhKQUE4Sjs0RkFFN0osb0JBQW9CO2tCQUxoQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSw0QkFBNEI7b0JBQ3RDLE1BQU0sRUFBRSxDQUFDLDBCQUEwQixDQUFDO29CQUNwQyxRQUFRLEVBQUUsOEpBQThKO2lCQUN6Szs4QkFFVSxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgQmFzZUFuZ3VsYXIgfSBmcm9tIFwiLi4vYmFzZS1hbmd1bGFyXCI7XG5pbXBvcnQge1xuICBNYXRyaXhEcm9wZG93bkNvbHVtbixcbiAgUXVlc3Rpb25NYXRyaXhEcm9wZG93bk1vZGVsQmFzZSxcbn0gZnJvbSBcInN1cnZleS1jb3JlXCI7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogXCJzdi1uZy1tYXRyaXhoZWFkZXJyZXF1aXJlZFwiLFxuICBzdHlsZXM6IFtcIjpob3N0IHsgZGlzcGxheTogbm9uZTsgfVwiXSxcbiAgdGVtcGxhdGU6IFwiPG5nLXRlbXBsYXRlICN0ZW1wbGF0ZT48c3BhbiAqbmdJZj0nY29sdW1uLmlzUmVuZGVyZWRSZXF1aXJlZCcgW2NsYXNzXT0ncXVlc3Rpb24uY3NzQ2xhc3Nlcy5jZWxsUmVxdWlyZWRUZXh0Jz57eyBjb2x1bW4ucmVxdWlyZWRUZXh0IH19PC9zcGFuPjwvbmctdGVtcGxhdGU+XCJcbn0pXG5leHBvcnQgY2xhc3MgTWF0cml4UmVxdWlyZWRIZWFkZXIgZXh0ZW5kcyBCYXNlQW5ndWxhcjxNYXRyaXhEcm9wZG93bkNvbHVtbj4ge1xuICBASW5wdXQoKSBjb2x1bW4hOiBNYXRyaXhEcm9wZG93bkNvbHVtbjtcbiAgQElucHV0KCkgcXVlc3Rpb24hOiBRdWVzdGlvbk1hdHJpeERyb3Bkb3duTW9kZWxCYXNlO1xuICBnZXRNb2RlbCgpIHtcbiAgICByZXR1cm4gdGhpcy5jb2x1bW47XG4gIH1cbn0iXX0=