survey-angular-ui 1.9.43 → 1.9.44

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 (188) hide show
  1. package/README.md +214 -214
  2. package/angular-ui.d.ts +27 -0
  3. package/angular-ui.module.d.ts +92 -0
  4. package/base-angular.d.ts +25 -0
  5. package/comment.component.d.ts +8 -0
  6. package/component-factory.d.ts +9 -0
  7. package/components/action-bar/action-bar-item-dropdown.component.d.ts +12 -0
  8. package/components/action-bar/action-bar-item.component.d.ts +8 -0
  9. package/components/action-bar/action-bar.component.d.ts +16 -0
  10. package/components/action-bar/action.component.d.ts +11 -0
  11. package/components/brand-info/brand-info.component.d.ts +5 -0
  12. package/components/dropdown/dropdown.component.d.ts +16 -0
  13. package/components/element-header/element-header.component.d.ts +9 -0
  14. package/components/element-title/dynamic-head.component.d.ts +10 -0
  15. package/components/element-title/element-title.component.d.ts +7 -0
  16. package/components/list/list-item.component.d.ts +16 -0
  17. package/components/list/list.component.d.ts +11 -0
  18. package/components/matrix-actions/detail-button/detail-button.component.d.ts +11 -0
  19. package/components/matrix-actions/drag-drop-icon/drag-drop-icon.d.ts +10 -0
  20. package/components/matrix-actions/remove-button/remove-button.component.d.ts +10 -0
  21. package/components/paneldynamic-actions/paneldynamic-add-btn.component.d.ts +14 -0
  22. package/components/paneldynamic-actions/paneldynamic-next-btn.component.d.ts +7 -0
  23. package/components/paneldynamic-actions/paneldynamic-prev-btn.component.d.ts +7 -0
  24. package/components/paneldynamic-actions/paneldynamic-progress-text.component.d.ts +6 -0
  25. package/components/popup/popup-container.component.d.ts +16 -0
  26. package/components/popup/popup.component.d.ts +17 -0
  27. package/components/popup/popup.service.d.ts +13 -0
  28. package/components/progress/buttons/progress.component.d.ts +24 -0
  29. package/components/progress/default/progress.component.d.ts +9 -0
  30. package/components/renderAs/boolean-checkbox/boolean-checkbox.component.d.ts +6 -0
  31. package/components/renderAs/boolean-radio/boolean-radio-item.component.d.ts +10 -0
  32. package/components/renderAs/boolean-radio/boolean-radio.component.d.ts +7 -0
  33. package/components/renderAs/dropdown-select/dropdown-option-item.component.d.ts +8 -0
  34. package/components/renderAs/dropdown-select/dropdown-select.component.d.ts +10 -0
  35. package/components/renderAs/rating-dropdown/rating-dropdown.component.d.ts +6 -0
  36. package/components/skeleton.component.d.ts +6 -0
  37. package/components/survey-actions/survey-nav-btn.component.d.ts +10 -0
  38. package/components/survey-header/survey-header.component.d.ts +11 -0
  39. package/components/svg-icon/svg-icon.component.d.ts +20 -0
  40. package/components/tagbox/tagbox-item.component.d.ts +11 -0
  41. package/components/tagbox/tagbox.component.d.ts +16 -0
  42. package/element.component.d.ts +9 -0
  43. package/embedded-view-content.component.d.ts +11 -0
  44. package/errors.component.d.ts +19 -0
  45. package/esm2020/angular-ui.mjs +28 -0
  46. package/esm2020/angular-ui.module.mjs +138 -0
  47. package/esm2020/base-angular.mjs +101 -0
  48. package/esm2020/comment.component.mjs +16 -0
  49. package/esm2020/component-factory.mjs +26 -0
  50. package/esm2020/components/action-bar/action-bar-item-dropdown.component.mjs +32 -0
  51. package/esm2020/components/action-bar/action-bar-item.component.mjs +22 -0
  52. package/esm2020/components/action-bar/action-bar.component.mjs +43 -0
  53. package/esm2020/components/action-bar/action.component.mjs +27 -0
  54. package/esm2020/components/brand-info/brand-info.component.mjs +13 -0
  55. package/esm2020/components/dropdown/dropdown.component.mjs +39 -0
  56. package/esm2020/components/element-header/element-header.component.mjs +30 -0
  57. package/esm2020/components/element-title/dynamic-head.component.mjs +20 -0
  58. package/esm2020/components/element-title/element-title.component.mjs +18 -0
  59. package/esm2020/components/list/list-item.component.mjs +44 -0
  60. package/esm2020/components/list/list.component.mjs +32 -0
  61. package/esm2020/components/matrix-actions/detail-button/detail-button.component.mjs +25 -0
  62. package/esm2020/components/matrix-actions/drag-drop-icon/drag-drop-icon.mjs +24 -0
  63. package/esm2020/components/matrix-actions/remove-button/remove-button.component.mjs +25 -0
  64. package/esm2020/components/paneldynamic-actions/paneldynamic-add-btn.component.mjs +35 -0
  65. package/esm2020/components/paneldynamic-actions/paneldynamic-next-btn.component.mjs +18 -0
  66. package/esm2020/components/paneldynamic-actions/paneldynamic-prev-btn.component.mjs +18 -0
  67. package/esm2020/components/paneldynamic-actions/paneldynamic-progress-text.component.mjs +14 -0
  68. package/esm2020/components/popup/popup-container.component.mjs +48 -0
  69. package/esm2020/components/popup/popup.component.mjs +37 -0
  70. package/esm2020/components/popup/popup.service.mjs +26 -0
  71. package/esm2020/components/progress/buttons/progress.component.mjs +67 -0
  72. package/esm2020/components/progress/default/progress.component.mjs +27 -0
  73. package/esm2020/components/renderAs/boolean-checkbox/boolean-checkbox.component.mjs +20 -0
  74. package/esm2020/components/renderAs/boolean-radio/boolean-radio-item.component.mjs +22 -0
  75. package/esm2020/components/renderAs/boolean-radio/boolean-radio.component.mjs +18 -0
  76. package/esm2020/components/renderAs/dropdown-select/dropdown-option-item.component.mjs +23 -0
  77. package/esm2020/components/renderAs/dropdown-select/dropdown-select.component.mjs +38 -0
  78. package/esm2020/components/renderAs/rating-dropdown/rating-dropdown.component.mjs +18 -0
  79. package/esm2020/components/skeleton.component.mjs +15 -0
  80. package/esm2020/components/survey-actions/survey-nav-btn.component.mjs +22 -0
  81. package/esm2020/components/survey-header/survey-header.component.mjs +23 -0
  82. package/esm2020/components/svg-icon/svg-icon.component.mjs +68 -0
  83. package/esm2020/components/tagbox/tagbox-item.component.mjs +27 -0
  84. package/esm2020/components/tagbox/tagbox.component.mjs +40 -0
  85. package/esm2020/element.component.mjs +18 -0
  86. package/esm2020/embedded-view-content.component.mjs +24 -0
  87. package/esm2020/errors.component.mjs +58 -0
  88. package/esm2020/page.component.mjs +34 -0
  89. package/esm2020/panel.component.mjs +37 -0
  90. package/esm2020/question.component.mjs +41 -0
  91. package/esm2020/question.mjs +33 -0
  92. package/esm2020/questions/boolean.component.mjs +20 -0
  93. package/esm2020/questions/checkbox-item.component.mjs +36 -0
  94. package/esm2020/questions/checkbox.component.mjs +17 -0
  95. package/esm2020/questions/comment.component.mjs +18 -0
  96. package/esm2020/questions/composite.component.mjs +21 -0
  97. package/esm2020/questions/custom.component.mjs +27 -0
  98. package/esm2020/questions/customwidget.component.mjs +51 -0
  99. package/esm2020/questions/dropdown.component.mjs +17 -0
  100. package/esm2020/questions/expression.component.mjs +17 -0
  101. package/esm2020/questions/file.component.mjs +25 -0
  102. package/esm2020/questions/html.component.mjs +25 -0
  103. package/esm2020/questions/image.component.mjs +16 -0
  104. package/esm2020/questions/imagepicker-item.component.mjs +45 -0
  105. package/esm2020/questions/imagepicker.component.mjs +16 -0
  106. package/esm2020/questions/matrix.component.mjs +35 -0
  107. package/esm2020/questions/matrixcell.component.mjs +60 -0
  108. package/esm2020/questions/matrixdropdown.component.mjs +16 -0
  109. package/esm2020/questions/matrixdynamic.component.mjs +17 -0
  110. package/esm2020/questions/matrixrequiredheader.component.mjs +24 -0
  111. package/esm2020/questions/matrixtable.component.mjs +29 -0
  112. package/esm2020/questions/multipletext.component.mjs +25 -0
  113. package/esm2020/questions/multipletextitem.component.mjs +23 -0
  114. package/esm2020/questions/paneldynamic.component.mjs +55 -0
  115. package/esm2020/questions/radiogroup-item.component.mjs +18 -0
  116. package/esm2020/questions/radiogroup.component.mjs +22 -0
  117. package/esm2020/questions/ranking-item.component.mjs +22 -0
  118. package/esm2020/questions/ranking.component.mjs +22 -0
  119. package/esm2020/questions/rating.component.mjs +23 -0
  120. package/esm2020/questions/selectbase-item.mjs +32 -0
  121. package/esm2020/questions/selectbase.component.mjs +24 -0
  122. package/esm2020/questions/signature.component.mjs +17 -0
  123. package/esm2020/questions/tagbox.component.mjs +17 -0
  124. package/esm2020/questions/text.component.mjs +26 -0
  125. package/esm2020/row.component.mjs +22 -0
  126. package/esm2020/string-editor.component.mjs +26 -0
  127. package/esm2020/string-viewer.component.mjs +32 -0
  128. package/esm2020/survey-angular-ui.mjs +5 -0
  129. package/esm2020/survey-string.component.mjs +17 -0
  130. package/esm2020/survey.component.mjs +50 -0
  131. package/esm2020/utils/dynamic.directive.mjs +44 -0
  132. package/esm2020/utils/ng-key2click.directive.mjs +69 -0
  133. package/esm2020/utils/ng-show.directive.mjs +27 -0
  134. package/esm2020/utils/safe-html.pipe.mjs +18 -0
  135. package/esm2020/utils/safe-url.pipe.mjs +33 -0
  136. package/fesm2015/survey-angular-ui.mjs +2201 -0
  137. package/fesm2015/survey-angular-ui.mjs.map +1 -0
  138. package/fesm2020/survey-angular-ui.mjs +2181 -0
  139. package/fesm2020/survey-angular-ui.mjs.map +1 -0
  140. package/package.json +1 -11
  141. package/page.component.d.ts +14 -0
  142. package/panel.component.d.ts +13 -0
  143. package/question.component.d.ts +13 -0
  144. package/question.d.ts +13 -0
  145. package/questions/boolean.component.d.ts +8 -0
  146. package/questions/checkbox-item.component.d.ts +11 -0
  147. package/questions/checkbox.component.d.ts +7 -0
  148. package/questions/comment.component.d.ts +8 -0
  149. package/questions/composite.component.d.ts +8 -0
  150. package/questions/custom.component.d.ts +10 -0
  151. package/questions/customwidget.component.d.ts +18 -0
  152. package/questions/dropdown.component.d.ts +7 -0
  153. package/questions/expression.component.d.ts +7 -0
  154. package/questions/file.component.d.ts +8 -0
  155. package/questions/html.component.d.ts +9 -0
  156. package/questions/image.component.d.ts +7 -0
  157. package/questions/imagepicker-item.component.d.ts +14 -0
  158. package/questions/imagepicker.component.d.ts +7 -0
  159. package/questions/matrix.component.d.ts +11 -0
  160. package/questions/matrixcell.component.d.ts +20 -0
  161. package/questions/matrixdropdown.component.d.ts +7 -0
  162. package/questions/matrixdynamic.component.d.ts +7 -0
  163. package/questions/matrixrequiredheader.component.d.ts +10 -0
  164. package/questions/matrixtable.component.d.ts +12 -0
  165. package/questions/multipletext.component.d.ts +9 -0
  166. package/questions/multipletextitem.component.d.ts +10 -0
  167. package/questions/paneldynamic.component.d.ts +12 -0
  168. package/questions/radiogroup-item.component.d.ts +8 -0
  169. package/questions/radiogroup.component.d.ts +8 -0
  170. package/questions/ranking-item.component.d.ts +11 -0
  171. package/questions/ranking.component.d.ts +8 -0
  172. package/questions/rating.component.d.ts +9 -0
  173. package/questions/selectbase-item.d.ts +12 -0
  174. package/questions/selectbase.component.d.ts +10 -0
  175. package/questions/signature.component.d.ts +7 -0
  176. package/questions/tagbox.component.d.ts +7 -0
  177. package/questions/text.component.d.ts +9 -0
  178. package/row.component.d.ts +10 -0
  179. package/string-editor.component.d.ts +9 -0
  180. package/string-viewer.component.d.ts +13 -0
  181. package/survey-angular-ui.d.ts +5 -5
  182. package/survey-string.component.d.ts +7 -0
  183. package/survey.component.d.ts +16 -0
  184. package/utils/dynamic.directive.d.ts +19 -0
  185. package/utils/ng-key2click.directive.d.ts +21 -0
  186. package/utils/ng-show.directive.d.ts +12 -0
  187. package/utils/safe-html.pipe.d.ts +10 -0
  188. package/utils/safe-url.pipe.d.ts +17 -0
@@ -0,0 +1,17 @@
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/dropdown/dropdown.component";
6
+ import * as i2 from "../comment.component";
7
+ import * as i3 from "@angular/common";
8
+ export class DropdownQuestionComponent extends QuestionAngular {
9
+ }
10
+ DropdownQuestionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: DropdownQuestionComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
11
+ DropdownQuestionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: DropdownQuestionComponent, selector: "sv-ng-dropdown-question", usesInheritance: true, ngImport: i0, template: "<div [class]=\"model.renderCssRoot\" #contentElement>\n <sv-ng-dropdown [model]=\"model\"></sv-ng-dropdown>\n <div *ngIf=\"model.hasOther && model.isOtherSelected\" class=\"form-group\" [question]=\"model\" sv-ng-comment></div>\n</div>", components: [{ type: i1.DropdownComponent, selector: "sv-ng-dropdown, '[sv-ng-dropdown]'", inputs: ["model"] }, { type: i2.SurveyCommentComponent, selector: "sv-ng-comment, '[sv-ng-comment]'", inputs: ["question"] }], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
12
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: DropdownQuestionComponent, decorators: [{
13
+ type: Component,
14
+ args: [{ selector: "sv-ng-dropdown-question", template: "<div [class]=\"model.renderCssRoot\" #contentElement>\n <sv-ng-dropdown [model]=\"model\"></sv-ng-dropdown>\n <div *ngIf=\"model.hasOther && model.isOtherSelected\" class=\"form-group\" [question]=\"model\" sv-ng-comment></div>\n</div>" }]
15
+ }] });
16
+ AngularComponentFactory.Instance.registerComponent("dropdown-question", DropdownQuestionComponent);
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvc3VydmV5LWFuZ3VsYXItdWkvc3JjL3F1ZXN0aW9ucy9kcm9wZG93bi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wYWNrYWdlcy9zdXJ2ZXktYW5ndWxhci11aS9zcmMvcXVlc3Rpb25zL2Ryb3Bkb3duLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUM5QyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7Ozs7QUFPL0QsTUFBTSxPQUFPLHlCQUEwQixTQUFRLGVBQXNDOztzSEFBeEUseUJBQXlCOzBHQUF6Qix5QkFBeUIsc0ZDVHRDLCtPQUdNOzJGRE1PLHlCQUF5QjtrQkFKckMsU0FBUzsrQkFDRSx5QkFBeUI7O0FBTXJDLHVCQUF1QixDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyxtQkFBbUIsRUFBRSx5QkFBeUIsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IFF1ZXN0aW9uQW5ndWxhciB9IGZyb20gXCIuLi9xdWVzdGlvblwiO1xuaW1wb3J0IHsgQW5ndWxhckNvbXBvbmVudEZhY3RvcnkgfSBmcm9tIFwiLi4vY29tcG9uZW50LWZhY3RvcnlcIjtcbmltcG9ydCB7IFF1ZXN0aW9uRHJvcGRvd25Nb2RlbCB9IGZyb20gXCJzdXJ2ZXktY29yZVwiO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6IFwic3YtbmctZHJvcGRvd24tcXVlc3Rpb25cIixcbiAgdGVtcGxhdGVVcmw6IFwiLi9kcm9wZG93bi5jb21wb25lbnQuaHRtbFwiXG59KVxuZXhwb3J0IGNsYXNzIERyb3Bkb3duUXVlc3Rpb25Db21wb25lbnQgZXh0ZW5kcyBRdWVzdGlvbkFuZ3VsYXI8UXVlc3Rpb25Ecm9wZG93bk1vZGVsPiB7XG59XG5cbkFuZ3VsYXJDb21wb25lbnRGYWN0b3J5Lkluc3RhbmNlLnJlZ2lzdGVyQ29tcG9uZW50KFwiZHJvcGRvd24tcXVlc3Rpb25cIiwgRHJvcGRvd25RdWVzdGlvbkNvbXBvbmVudCk7IiwiPGRpdiBbY2xhc3NdPVwibW9kZWwucmVuZGVyQ3NzUm9vdFwiICNjb250ZW50RWxlbWVudD5cbiAgPHN2LW5nLWRyb3Bkb3duIFttb2RlbF09XCJtb2RlbFwiPjwvc3YtbmctZHJvcGRvd24+XG4gIDxkaXYgKm5nSWY9XCJtb2RlbC5oYXNPdGhlciAmJiBtb2RlbC5pc090aGVyU2VsZWN0ZWRcIiBjbGFzcz1cImZvcm0tZ3JvdXBcIiBbcXVlc3Rpb25dPVwibW9kZWxcIiBzdi1uZy1jb21tZW50PjwvZGl2PlxuPC9kaXY+Il19
@@ -0,0 +1,17 @@
1
+ import { Component } from "@angular/core";
2
+ import { AngularComponentFactory } from "../component-factory";
3
+ import { QuestionAngular } from "../question";
4
+ import * as i0 from "@angular/core";
5
+ export class ExpressionComponent extends QuestionAngular {
6
+ }
7
+ ExpressionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: ExpressionComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
8
+ ExpressionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: ExpressionComponent, selector: "sv-ng-expression", usesInheritance: true, ngImport: i0, template: "<div [class]='model.cssClasses.root' #contentElement>{{ model.formatedValue }}</div>", isInline: true });
9
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: ExpressionComponent, decorators: [{
10
+ type: Component,
11
+ args: [{
12
+ selector: "sv-ng-expression",
13
+ template: "<div [class]='model.cssClasses.root' #contentElement>{{ model.formatedValue }}</div>"
14
+ }]
15
+ }] });
16
+ AngularComponentFactory.Instance.registerComponent("expression-question", ExpressionComponent);
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwcmVzc2lvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9zdXJ2ZXktYW5ndWxhci11aS9zcmMvcXVlc3Rpb25zL2V4cHJlc3Npb24uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDL0QsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGFBQWEsQ0FBQzs7QUFPOUMsTUFBTSxPQUFPLG1CQUFvQixTQUFRLGVBQXdDOztnSEFBcEUsbUJBQW1CO29HQUFuQixtQkFBbUIsK0VBRnBCLHNGQUFzRjsyRkFFckYsbUJBQW1CO2tCQUovQixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxrQkFBa0I7b0JBQzVCLFFBQVEsRUFBRSxzRkFBc0Y7aUJBQ2pHOztBQUlELHVCQUF1QixDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyxxQkFBcUIsRUFBRSxtQkFBbUIsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IEFuZ3VsYXJDb21wb25lbnRGYWN0b3J5IH0gZnJvbSBcIi4uL2NvbXBvbmVudC1mYWN0b3J5XCI7XG5pbXBvcnQgeyBRdWVzdGlvbkFuZ3VsYXIgfSBmcm9tIFwiLi4vcXVlc3Rpb25cIjtcbmltcG9ydCB7IFF1ZXN0aW9uRXhwcmVzc2lvbk1vZGVsIH0gZnJvbSBcInN1cnZleS1jb3JlXCI7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogXCJzdi1uZy1leHByZXNzaW9uXCIsXG4gIHRlbXBsYXRlOiBcIjxkaXYgW2NsYXNzXT0nbW9kZWwuY3NzQ2xhc3Nlcy5yb290JyAjY29udGVudEVsZW1lbnQ+e3sgbW9kZWwuZm9ybWF0ZWRWYWx1ZSB9fTwvZGl2PlwiXG59KVxuZXhwb3J0IGNsYXNzIEV4cHJlc3Npb25Db21wb25lbnQgZXh0ZW5kcyBRdWVzdGlvbkFuZ3VsYXI8UXVlc3Rpb25FeHByZXNzaW9uTW9kZWw+IHtcbn1cblxuQW5ndWxhckNvbXBvbmVudEZhY3RvcnkuSW5zdGFuY2UucmVnaXN0ZXJDb21wb25lbnQoXCJleHByZXNzaW9uLXF1ZXN0aW9uXCIsIEV4cHJlc3Npb25Db21wb25lbnQpOyJdfQ==
@@ -0,0 +1,25 @@
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: "13.0.3", ngImport: i0, type: FileQuestionComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
19
+ FileQuestionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", 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 type=\"file\"\n [attr.id]=\"model.inputId\"\n (change)=\"model.doChange($event)\"\n [attr.aria-required]=\"model.ariaRequired\"\n [attr.aria-label]=\"model.ariaLabel\"\n [attr.aria-invalid]=\"model.ariaInvalid\"\n [attr.aria-describedby]=\"model.ariaDescribedBy\"\n [attr.multiple]=\"model.multipleRendered\"\n [attr.title]=\"model.inputTitle\"\n [attr.accept]=\"model.acceptedTypes\"\n />\n <input\n *ngIf=\"model.isReadOnly\"\n type=\"file\"\n disabled\n [class]=\"model.getReadOnlyFileCss()\"\n [attr.multiple]=\"model.multipleRendered\"\n [attr.placeholder]=\"model.title\"\n style=\"color: transparent\"\n />\n <div\n [class]=\"model.getFileDecoratorCss()\"\n (drop)=\"model.onDrop($event)\"\n (dragover)=\"model.onDragOver($event)\"\n (dragleave)=\"model.onDragLeave($event)\"\n >\n <span [class]=\"model.cssClasses.dragAreaPlaceholder\">{{ model.dragAreaPlaceholder }}</span>\n <div [class]=\"model.cssClasses.wrapper\">\n <label\n role=\"button\"\n [class]=\"model.getChooseFileCss()\"\n [attr.for]=\"model.inputId\"\n [attr.aria-label]=\"model.chooseButtonCaption\"\n >\n <span>{{ model.chooseButtonCaption }}</span>\n <svg *ngIf=\"model.cssClasses.chooseFileIconId\" [title]=\"model.chooseButtonCaption\" [iconName]=\"model.cssClasses.chooseFileIconId\" [size]=\"'auto'\" sv-ng-svg-icon></svg>\n </label>\n <span\n [class]=\"model.cssClasses.noFileChosen\"\n *ngIf=\"model.isEmpty()\"\n >{{ model.noFileChosenCaption }}</span\n >\n </div>\n </div>\n <button\n type=\"button\"\n *ngIf=\"model.showRemoveButton\"\n [class]=\"model.cssClasses.removeButton\"\n (click)=\"model.doClean($event)\"\n >\n <span>{{ model.cleanButtonCaption }}</span>\n <svg *ngIf=\"model.cssClasses.removeButtonIconId\" [iconName]=\"model.cssClasses.removeButtonIconId\" [size]=\"'auto'\" sv-ng-svg-icon></svg>\n </button>\n <div [class]=\"model.cssClasses.fileList || undefined\" *ngIf=\"!model.isEmpty()\">\n <span\n *ngFor=\"let val of model.previewValue; index as index; trackBy: trackFilesFn\"\n [visible]=\"val && model.isPreviewVisible(index)\"\n [class]=\"model.cssClasses.preview\"\n >\n <div *ngIf=\"val.name && model.cssClasses.fileSign\" [class]=\"model.cssClasses.fileSign\">\n <a\n (click)=\"model.doDownloadFile($event, val)\"\n [attr.href]=\"val.content | safeUrl\"\n [attr.title]=\"val.name\"\n [attr.download]=\"val.name\"\n [attr.width]=\"model.imageWidth\"\n >{{ val.name }}</a\n >\n </div>\n <div [class]=\"model.cssClasses.imageWrapper\">\n <img\n *ngIf=\"model.canPreviewImage(val)\"\n [attr.src]=\"val.content | safeUrl\"\n [attr.height]=\"model.imageHeight\"\n [attr.width]=\"model.imageWidth\"\n alt=\"File preview\"\n />\n <svg *ngIf=\"model.defaultImage(val)\" \n [iconName]=\"model.cssClasses.defaultImageIconId\" [partCss]=\"model.cssClasses.defaultImage\" [size]=\"'auto'\" sv-ng-svg-icon></svg>\n <div *ngIf=\"val.name && !model.isReadOnly\" [class]=\"model.cssClasses.removeFileButton\" (click)=\"model.doRemoveFile(val)\">\n <span\n [class]=\"model.cssClasses.removeFile\"\n >{{ model.removeFileCaption }}</span\n >\n <svg *ngIf=\"model.cssClasses.removeFileSvgIconId\" [title]=\"model.removeFileCaption\" [partCss]=\"model.cssClasses.removeFileSvg\" [iconName]=\"model.cssClasses.removeFileSvgIconId\" [size]=\"'auto'\" sv-ng-svg-icon ></svg>\n </div>\n </div>\n <div *ngIf=\"val.name && model.cssClasses.fileSignBottom\" [class]=\"model.cssClasses.fileSignBottom\">\n <a\n (click)=\"model.doDownloadFile($event, val)\"\n [attr.href]=\"val.content | safeUrl\"\n [attr.title]=\"val.name\"\n [attr.download]=\"val.name\"\n [attr.width]=\"model.imageWidth\"\n >{{ val.name }}</a\n >\n </div>\n </span>\n </div>\n <button\n type=\"button\"\n *ngIf=\"model.showRemoveButtonBottom\"\n [class]=\"model.showRemoveButtonBottom\"\n (click)=\"model.doClean($event)\"\n >\n <span>{{ model.cleanButtonCaption }}</span>\n <svg *ngIf=\"model.cssClasses.removeButtonIconId\" [iconName]=\"model.cssClasses.removeButtonIconId\" [size]=\"'auto'\" sv-ng-svg-icon></svg>\n </button>\n <sv-action-bar *ngIf=\"model.mobileFileNavigatorVisible\" [model]=\"model.mobileFileNavigator\"></sv-action-bar>\n</div>", 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: "13.0.3", ngImport: i0, type: FileQuestionComponent, decorators: [{
21
+ type: Component,
22
+ args: [{ selector: "sv-ng-file-question", template: "<div [class]=\"model.fileRootCss\" #contentElement>\n <input\n [class]=\"model.cssClasses.fileInput\"\n *ngIf=\"!model.isReadOnly\"\n type=\"file\"\n [attr.id]=\"model.inputId\"\n (change)=\"model.doChange($event)\"\n [attr.aria-required]=\"model.ariaRequired\"\n [attr.aria-label]=\"model.ariaLabel\"\n [attr.aria-invalid]=\"model.ariaInvalid\"\n [attr.aria-describedby]=\"model.ariaDescribedBy\"\n [attr.multiple]=\"model.multipleRendered\"\n [attr.title]=\"model.inputTitle\"\n [attr.accept]=\"model.acceptedTypes\"\n />\n <input\n *ngIf=\"model.isReadOnly\"\n type=\"file\"\n disabled\n [class]=\"model.getReadOnlyFileCss()\"\n [attr.multiple]=\"model.multipleRendered\"\n [attr.placeholder]=\"model.title\"\n style=\"color: transparent\"\n />\n <div\n [class]=\"model.getFileDecoratorCss()\"\n (drop)=\"model.onDrop($event)\"\n (dragover)=\"model.onDragOver($event)\"\n (dragleave)=\"model.onDragLeave($event)\"\n >\n <span [class]=\"model.cssClasses.dragAreaPlaceholder\">{{ model.dragAreaPlaceholder }}</span>\n <div [class]=\"model.cssClasses.wrapper\">\n <label\n role=\"button\"\n [class]=\"model.getChooseFileCss()\"\n [attr.for]=\"model.inputId\"\n [attr.aria-label]=\"model.chooseButtonCaption\"\n >\n <span>{{ model.chooseButtonCaption }}</span>\n <svg *ngIf=\"model.cssClasses.chooseFileIconId\" [title]=\"model.chooseButtonCaption\" [iconName]=\"model.cssClasses.chooseFileIconId\" [size]=\"'auto'\" sv-ng-svg-icon></svg>\n </label>\n <span\n [class]=\"model.cssClasses.noFileChosen\"\n *ngIf=\"model.isEmpty()\"\n >{{ model.noFileChosenCaption }}</span\n >\n </div>\n </div>\n <button\n type=\"button\"\n *ngIf=\"model.showRemoveButton\"\n [class]=\"model.cssClasses.removeButton\"\n (click)=\"model.doClean($event)\"\n >\n <span>{{ model.cleanButtonCaption }}</span>\n <svg *ngIf=\"model.cssClasses.removeButtonIconId\" [iconName]=\"model.cssClasses.removeButtonIconId\" [size]=\"'auto'\" sv-ng-svg-icon></svg>\n </button>\n <div [class]=\"model.cssClasses.fileList || undefined\" *ngIf=\"!model.isEmpty()\">\n <span\n *ngFor=\"let val of model.previewValue; index as index; trackBy: trackFilesFn\"\n [visible]=\"val && model.isPreviewVisible(index)\"\n [class]=\"model.cssClasses.preview\"\n >\n <div *ngIf=\"val.name && model.cssClasses.fileSign\" [class]=\"model.cssClasses.fileSign\">\n <a\n (click)=\"model.doDownloadFile($event, val)\"\n [attr.href]=\"val.content | safeUrl\"\n [attr.title]=\"val.name\"\n [attr.download]=\"val.name\"\n [attr.width]=\"model.imageWidth\"\n >{{ val.name }}</a\n >\n </div>\n <div [class]=\"model.cssClasses.imageWrapper\">\n <img\n *ngIf=\"model.canPreviewImage(val)\"\n [attr.src]=\"val.content | safeUrl\"\n [attr.height]=\"model.imageHeight\"\n [attr.width]=\"model.imageWidth\"\n alt=\"File preview\"\n />\n <svg *ngIf=\"model.defaultImage(val)\" \n [iconName]=\"model.cssClasses.defaultImageIconId\" [partCss]=\"model.cssClasses.defaultImage\" [size]=\"'auto'\" sv-ng-svg-icon></svg>\n <div *ngIf=\"val.name && !model.isReadOnly\" [class]=\"model.cssClasses.removeFileButton\" (click)=\"model.doRemoveFile(val)\">\n <span\n [class]=\"model.cssClasses.removeFile\"\n >{{ model.removeFileCaption }}</span\n >\n <svg *ngIf=\"model.cssClasses.removeFileSvgIconId\" [title]=\"model.removeFileCaption\" [partCss]=\"model.cssClasses.removeFileSvg\" [iconName]=\"model.cssClasses.removeFileSvgIconId\" [size]=\"'auto'\" sv-ng-svg-icon ></svg>\n </div>\n </div>\n <div *ngIf=\"val.name && model.cssClasses.fileSignBottom\" [class]=\"model.cssClasses.fileSignBottom\">\n <a\n (click)=\"model.doDownloadFile($event, val)\"\n [attr.href]=\"val.content | safeUrl\"\n [attr.title]=\"val.name\"\n [attr.download]=\"val.name\"\n [attr.width]=\"model.imageWidth\"\n >{{ val.name }}</a\n >\n </div>\n </span>\n </div>\n <button\n type=\"button\"\n *ngIf=\"model.showRemoveButtonBottom\"\n [class]=\"model.showRemoveButtonBottom\"\n (click)=\"model.doClean($event)\"\n >\n <span>{{ model.cleanButtonCaption }}</span>\n <svg *ngIf=\"model.cssClasses.removeButtonIconId\" [iconName]=\"model.cssClasses.removeButtonIconId\" [size]=\"'auto'\" sv-ng-svg-icon></svg>\n </button>\n <sv-action-bar *ngIf=\"model.mobileFileNavigatorVisible\" [model]=\"model.mobileFileNavigator\"></sv-action-bar>\n</div>", styles: [] }]
23
+ }] });
24
+ AngularComponentFactory.Instance.registerComponent("file-question", FileQuestionComponent);
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9zdXJ2ZXktYW5ndWxhci11aS9zcmMvcXVlc3Rpb25zL2ZpbGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vcGFja2FnZXMvc3VydmV5LWFuZ3VsYXItdWkvc3JjL3F1ZXN0aW9ucy9maWxlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUU5QyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7Ozs7OztBQU0vRCxNQUFNLE9BQU8scUJBQXNCLFNBQVEsZUFBa0M7SUFMN0U7O1FBTUUsaUJBQVksR0FBOEIsQ0FBQyxLQUFhLEVBQVUsRUFBRTtZQUNsRSxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxHQUFHLEdBQUcsR0FBRyxLQUFLLENBQUM7UUFDMUMsQ0FBQyxDQUFBO0tBQ0Y7O2tIQUpZLHFCQUFxQjtzR0FBckIscUJBQXFCLGtGQ1RsQyxtckpBaUhNOzJGRHhHTyxxQkFBcUI7a0JBTGpDLFNBQVM7K0JBQ0UscUJBQXFCOztBQVVqQyx1QkFBdUIsQ0FBQyxRQUFRLENBQUMsaUJBQWlCLENBQUMsZUFBZSxFQUFFLHFCQUFxQixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgUXVlc3Rpb25Bbmd1bGFyIH0gZnJvbSBcIi4uL3F1ZXN0aW9uXCI7XG5pbXBvcnQgeyBRdWVzdGlvbkZpbGVNb2RlbCB9IGZyb20gXCJzdXJ2ZXktY29yZVwiO1xuaW1wb3J0IHsgQW5ndWxhckNvbXBvbmVudEZhY3RvcnkgfSBmcm9tIFwiLi4vY29tcG9uZW50LWZhY3RvcnlcIjtcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogXCJzdi1uZy1maWxlLXF1ZXN0aW9uXCIsXG4gIHRlbXBsYXRlVXJsOiBcIi4vZmlsZS5jb21wb25lbnQuaHRtbFwiLFxuICBzdHlsZVVybHM6IFtdXG59KVxuZXhwb3J0IGNsYXNzIEZpbGVRdWVzdGlvbkNvbXBvbmVudCBleHRlbmRzIFF1ZXN0aW9uQW5ndWxhcjxRdWVzdGlvbkZpbGVNb2RlbD4ge1xuICB0cmFja0ZpbGVzRm46IChpbmRleDogbnVtYmVyKSA9PiBzdHJpbmcgPSAoaW5kZXg6IG51bWJlcik6IHN0cmluZyA9PiB7XG4gICAgcmV0dXJuIHRoaXMubW9kZWwuaW5wdXRJZCArIFwiX1wiICsgaW5kZXg7XG4gIH1cbn1cblxuQW5ndWxhckNvbXBvbmVudEZhY3RvcnkuSW5zdGFuY2UucmVnaXN0ZXJDb21wb25lbnQoXCJmaWxlLXF1ZXN0aW9uXCIsIEZpbGVRdWVzdGlvbkNvbXBvbmVudCk7IiwiPGRpdiBbY2xhc3NdPVwibW9kZWwuZmlsZVJvb3RDc3NcIiAjY29udGVudEVsZW1lbnQ+XG4gIDxpbnB1dFxuICAgIFtjbGFzc109XCJtb2RlbC5jc3NDbGFzc2VzLmZpbGVJbnB1dFwiXG4gICAgKm5nSWY9XCIhbW9kZWwuaXNSZWFkT25seVwiXG4gICAgdHlwZT1cImZpbGVcIlxuICAgIFthdHRyLmlkXT1cIm1vZGVsLmlucHV0SWRcIlxuICAgIChjaGFuZ2UpPVwibW9kZWwuZG9DaGFuZ2UoJGV2ZW50KVwiXG4gICAgW2F0dHIuYXJpYS1yZXF1aXJlZF09XCJtb2RlbC5hcmlhUmVxdWlyZWRcIlxuICAgIFthdHRyLmFyaWEtbGFiZWxdPVwibW9kZWwuYXJpYUxhYmVsXCJcbiAgICBbYXR0ci5hcmlhLWludmFsaWRdPVwibW9kZWwuYXJpYUludmFsaWRcIlxuICAgIFthdHRyLmFyaWEtZGVzY3JpYmVkYnldPVwibW9kZWwuYXJpYURlc2NyaWJlZEJ5XCJcbiAgICBbYXR0ci5tdWx0aXBsZV09XCJtb2RlbC5tdWx0aXBsZVJlbmRlcmVkXCJcbiAgICBbYXR0ci50aXRsZV09XCJtb2RlbC5pbnB1dFRpdGxlXCJcbiAgICBbYXR0ci5hY2NlcHRdPVwibW9kZWwuYWNjZXB0ZWRUeXBlc1wiXG4gIC8+XG4gIDxpbnB1dFxuICAgICpuZ0lmPVwibW9kZWwuaXNSZWFkT25seVwiXG4gICAgdHlwZT1cImZpbGVcIlxuICAgIGRpc2FibGVkXG4gICAgW2NsYXNzXT1cIm1vZGVsLmdldFJlYWRPbmx5RmlsZUNzcygpXCJcbiAgICBbYXR0ci5tdWx0aXBsZV09XCJtb2RlbC5tdWx0aXBsZVJlbmRlcmVkXCJcbiAgICBbYXR0ci5wbGFjZWhvbGRlcl09XCJtb2RlbC50aXRsZVwiXG4gICAgc3R5bGU9XCJjb2xvcjogdHJhbnNwYXJlbnRcIlxuICAvPlxuICA8ZGl2XG4gICAgW2NsYXNzXT1cIm1vZGVsLmdldEZpbGVEZWNvcmF0b3JDc3MoKVwiXG4gICAgKGRyb3ApPVwibW9kZWwub25Ecm9wKCRldmVudClcIlxuICAgIChkcmFnb3Zlcik9XCJtb2RlbC5vbkRyYWdPdmVyKCRldmVudClcIlxuICAgIChkcmFnbGVhdmUpPVwibW9kZWwub25EcmFnTGVhdmUoJGV2ZW50KVwiXG4gID5cbiAgICA8c3BhbiBbY2xhc3NdPVwibW9kZWwuY3NzQ2xhc3Nlcy5kcmFnQXJlYVBsYWNlaG9sZGVyXCI+e3sgbW9kZWwuZHJhZ0FyZWFQbGFjZWhvbGRlciB9fTwvc3Bhbj5cbiAgICA8ZGl2IFtjbGFzc109XCJtb2RlbC5jc3NDbGFzc2VzLndyYXBwZXJcIj5cbiAgICAgIDxsYWJlbFxuICAgICAgICByb2xlPVwiYnV0dG9uXCJcbiAgICAgICAgW2NsYXNzXT1cIm1vZGVsLmdldENob29zZUZpbGVDc3MoKVwiXG4gICAgICAgIFthdHRyLmZvcl09XCJtb2RlbC5pbnB1dElkXCJcbiAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJtb2RlbC5jaG9vc2VCdXR0b25DYXB0aW9uXCJcbiAgICAgICAgPlxuICAgICAgICA8c3Bhbj57eyBtb2RlbC5jaG9vc2VCdXR0b25DYXB0aW9uIH19PC9zcGFuPlxuICAgICAgICA8c3ZnICpuZ0lmPVwibW9kZWwuY3NzQ2xhc3Nlcy5jaG9vc2VGaWxlSWNvbklkXCIgW3RpdGxlXT1cIm1vZGVsLmNob29zZUJ1dHRvbkNhcHRpb25cIiBbaWNvbk5hbWVdPVwibW9kZWwuY3NzQ2xhc3Nlcy5jaG9vc2VGaWxlSWNvbklkXCIgW3NpemVdPVwiJ2F1dG8nXCIgc3Ytbmctc3ZnLWljb24+PC9zdmc+XG4gICAgICA8L2xhYmVsPlxuICAgICAgPHNwYW5cbiAgICAgICAgW2NsYXNzXT1cIm1vZGVsLmNzc0NsYXNzZXMubm9GaWxlQ2hvc2VuXCJcbiAgICAgICAgKm5nSWY9XCJtb2RlbC5pc0VtcHR5KClcIlxuICAgICAgICA+e3sgbW9kZWwubm9GaWxlQ2hvc2VuQ2FwdGlvbiB9fTwvc3BhblxuICAgICAgPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbiAgPGJ1dHRvblxuICAgIHR5cGU9XCJidXR0b25cIlxuICAgICpuZ0lmPVwibW9kZWwuc2hvd1JlbW92ZUJ1dHRvblwiXG4gICAgW2NsYXNzXT1cIm1vZGVsLmNzc0NsYXNzZXMucmVtb3ZlQnV0dG9uXCJcbiAgICAoY2xpY2spPVwibW9kZWwuZG9DbGVhbigkZXZlbnQpXCJcbiAgPlxuICAgIDxzcGFuPnt7IG1vZGVsLmNsZWFuQnV0dG9uQ2FwdGlvbiB9fTwvc3Bhbj5cbiAgICA8c3ZnICpuZ0lmPVwibW9kZWwuY3NzQ2xhc3Nlcy5yZW1vdmVCdXR0b25JY29uSWRcIiBbaWNvbk5hbWVdPVwibW9kZWwuY3NzQ2xhc3Nlcy5yZW1vdmVCdXR0b25JY29uSWRcIiBbc2l6ZV09XCInYXV0bydcIiBzdi1uZy1zdmctaWNvbj48L3N2Zz5cbiAgPC9idXR0b24+XG4gIDxkaXYgW2NsYXNzXT1cIm1vZGVsLmNzc0NsYXNzZXMuZmlsZUxpc3QgfHwgdW5kZWZpbmVkXCIgKm5nSWY9XCIhbW9kZWwuaXNFbXB0eSgpXCI+XG4gICAgPHNwYW5cbiAgICAgICpuZ0Zvcj1cImxldCB2YWwgb2YgbW9kZWwucHJldmlld1ZhbHVlOyBpbmRleCBhcyBpbmRleDsgdHJhY2tCeTogdHJhY2tGaWxlc0ZuXCJcbiAgICAgIFt2aXNpYmxlXT1cInZhbCAmJiBtb2RlbC5pc1ByZXZpZXdWaXNpYmxlKGluZGV4KVwiXG4gICAgICBbY2xhc3NdPVwibW9kZWwuY3NzQ2xhc3Nlcy5wcmV2aWV3XCJcbiAgICA+XG4gICAgICA8ZGl2ICpuZ0lmPVwidmFsLm5hbWUgJiYgbW9kZWwuY3NzQ2xhc3Nlcy5maWxlU2lnblwiIFtjbGFzc109XCJtb2RlbC5jc3NDbGFzc2VzLmZpbGVTaWduXCI+XG4gICAgICAgIDxhXG4gICAgICAgICAgKGNsaWNrKT1cIm1vZGVsLmRvRG93bmxvYWRGaWxlKCRldmVudCwgdmFsKVwiXG4gICAgICAgICAgW2F0dHIuaHJlZl09XCJ2YWwuY29udGVudCB8IHNhZmVVcmxcIlxuICAgICAgICAgIFthdHRyLnRpdGxlXT1cInZhbC5uYW1lXCJcbiAgICAgICAgICBbYXR0ci5kb3dubG9hZF09XCJ2YWwubmFtZVwiXG4gICAgICAgICAgW2F0dHIud2lkdGhdPVwibW9kZWwuaW1hZ2VXaWR0aFwiXG4gICAgICAgICAgPnt7IHZhbC5uYW1lIH19PC9hXG4gICAgICAgID5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBbY2xhc3NdPVwibW9kZWwuY3NzQ2xhc3Nlcy5pbWFnZVdyYXBwZXJcIj5cbiAgICAgICAgPGltZ1xuICAgICAgICAgICpuZ0lmPVwibW9kZWwuY2FuUHJldmlld0ltYWdlKHZhbClcIlxuICAgICAgICAgIFthdHRyLnNyY109XCJ2YWwuY29udGVudCB8IHNhZmVVcmxcIlxuICAgICAgICAgIFthdHRyLmhlaWdodF09XCJtb2RlbC5pbWFnZUhlaWdodFwiXG4gICAgICAgICAgW2F0dHIud2lkdGhdPVwibW9kZWwuaW1hZ2VXaWR0aFwiXG4gICAgICAgICAgYWx0PVwiRmlsZSBwcmV2aWV3XCJcbiAgICAgICAgLz5cbiAgICAgICAgPHN2ZyAqbmdJZj1cIm1vZGVsLmRlZmF1bHRJbWFnZSh2YWwpXCIgXG4gICAgICAgICAgW2ljb25OYW1lXT1cIm1vZGVsLmNzc0NsYXNzZXMuZGVmYXVsdEltYWdlSWNvbklkXCIgW3BhcnRDc3NdPVwibW9kZWwuY3NzQ2xhc3Nlcy5kZWZhdWx0SW1hZ2VcIiBbc2l6ZV09XCInYXV0bydcIiBzdi1uZy1zdmctaWNvbj48L3N2Zz5cbiAgICAgICAgPGRpdiAqbmdJZj1cInZhbC5uYW1lICYmICFtb2RlbC5pc1JlYWRPbmx5XCIgW2NsYXNzXT1cIm1vZGVsLmNzc0NsYXNzZXMucmVtb3ZlRmlsZUJ1dHRvblwiIChjbGljayk9XCJtb2RlbC5kb1JlbW92ZUZpbGUodmFsKVwiPlxuICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICBbY2xhc3NdPVwibW9kZWwuY3NzQ2xhc3Nlcy5yZW1vdmVGaWxlXCJcbiAgICAgICAgICAgID57eyBtb2RlbC5yZW1vdmVGaWxlQ2FwdGlvbiB9fTwvc3BhblxuICAgICAgICAgID5cbiAgICAgICAgICA8c3ZnICpuZ0lmPVwibW9kZWwuY3NzQ2xhc3Nlcy5yZW1vdmVGaWxlU3ZnSWNvbklkXCIgW3RpdGxlXT1cIm1vZGVsLnJlbW92ZUZpbGVDYXB0aW9uXCIgW3BhcnRDc3NdPVwibW9kZWwuY3NzQ2xhc3Nlcy5yZW1vdmVGaWxlU3ZnXCIgW2ljb25OYW1lXT1cIm1vZGVsLmNzc0NsYXNzZXMucmVtb3ZlRmlsZVN2Z0ljb25JZFwiIFtzaXplXT1cIidhdXRvJ1wiIHN2LW5nLXN2Zy1pY29uID48L3N2Zz5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgKm5nSWY9XCJ2YWwubmFtZSAmJiBtb2RlbC5jc3NDbGFzc2VzLmZpbGVTaWduQm90dG9tXCIgW2NsYXNzXT1cIm1vZGVsLmNzc0NsYXNzZXMuZmlsZVNpZ25Cb3R0b21cIj5cbiAgICAgICAgPGFcbiAgICAgICAgICAoY2xpY2spPVwibW9kZWwuZG9Eb3dubG9hZEZpbGUoJGV2ZW50LCB2YWwpXCJcbiAgICAgICAgICBbYXR0ci5ocmVmXT1cInZhbC5jb250ZW50IHwgc2FmZVVybFwiXG4gICAgICAgICAgW2F0dHIudGl0bGVdPVwidmFsLm5hbWVcIlxuICAgICAgICAgIFthdHRyLmRvd25sb2FkXT1cInZhbC5uYW1lXCJcbiAgICAgICAgICBbYXR0ci53aWR0aF09XCJtb2RlbC5pbWFnZVdpZHRoXCJcbiAgICAgICAgICA+e3sgdmFsLm5hbWUgfX08L2FcbiAgICAgICAgPlxuICAgICAgPC9kaXY+XG4gICAgPC9zcGFuPlxuICA8L2Rpdj5cbiAgPGJ1dHRvblxuICAgIHR5cGU9XCJidXR0b25cIlxuICAgICpuZ0lmPVwibW9kZWwuc2hvd1JlbW92ZUJ1dHRvbkJvdHRvbVwiXG4gICAgW2NsYXNzXT1cIm1vZGVsLnNob3dSZW1vdmVCdXR0b25Cb3R0b21cIlxuICAgIChjbGljayk9XCJtb2RlbC5kb0NsZWFuKCRldmVudClcIlxuICA+XG4gICAgPHNwYW4+e3sgbW9kZWwuY2xlYW5CdXR0b25DYXB0aW9uIH19PC9zcGFuPlxuICAgIDxzdmcgKm5nSWY9XCJtb2RlbC5jc3NDbGFzc2VzLnJlbW92ZUJ1dHRvbkljb25JZFwiIFtpY29uTmFtZV09XCJtb2RlbC5jc3NDbGFzc2VzLnJlbW92ZUJ1dHRvbkljb25JZFwiIFtzaXplXT1cIidhdXRvJ1wiIHN2LW5nLXN2Zy1pY29uPjwvc3ZnPlxuICA8L2J1dHRvbj5cbiAgPHN2LWFjdGlvbi1iYXIgKm5nSWY9XCJtb2RlbC5tb2JpbGVGaWxlTmF2aWdhdG9yVmlzaWJsZVwiIFttb2RlbF09XCJtb2RlbC5tb2JpbGVGaWxlTmF2aWdhdG9yXCI+PC9zdi1hY3Rpb24tYmFyPlxuPC9kaXY+Il19
@@ -0,0 +1,25 @@
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: "13.0.3", ngImport: i0, type: HtmlQuestionComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
19
+ HtmlQuestionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", 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: "13.0.3", ngImport: i0, type: HtmlQuestionComponent, decorators: [{
21
+ type: Component,
22
+ args: [{ selector: "sv-ng-html-question", template: "<div [class]=\"model.renderCssRoot\" [innerHTML]=\"model.locHtml.renderedHtml | safeHtml\" #contentElement></div>", styles: [] }]
23
+ }] });
24
+ AngularComponentFactory.Instance.registerComponent("html-question", HtmlQuestionComponent);
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHRtbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9zdXJ2ZXktYW5ndWxhci11aS9zcmMvcXVlc3Rpb25zL2h0bWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vcGFja2FnZXMvc3VydmV5LWFuZ3VsYXItdWkvc3JjL3F1ZXN0aW9ucy9odG1sLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUU5QyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7O0FBTS9ELE1BQU0sT0FBTyxxQkFBc0IsU0FBUSxlQUFrQztJQUNsRSxjQUFjO1FBQ3JCLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUN2QixJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxTQUFTLEdBQUcsR0FBRyxFQUFFO1lBQ2xDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUN2QixDQUFDLENBQUM7SUFDSixDQUFDO0lBQ1EsV0FBVztRQUNsQixJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxTQUFTLEdBQUcsR0FBRyxFQUFFLEdBQUUsQ0FBQyxDQUFDO1FBQ3hDLEtBQUssQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUN0QixDQUFDOztrSEFWVSxxQkFBcUI7c0dBQXJCLHFCQUFxQixrRkNUbEMsbUhBQTZHOzJGRFNoRyxxQkFBcUI7a0JBTGpDLFNBQVM7K0JBQ0UscUJBQXFCOztBQWlCakMsdUJBQXVCLENBQUMsUUFBUSxDQUFDLGlCQUFpQixDQUFDLGVBQWUsRUFBRSxxQkFBcUIsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IFF1ZXN0aW9uQW5ndWxhciB9IGZyb20gXCIuLi9xdWVzdGlvblwiO1xuaW1wb3J0IHsgUXVlc3Rpb25IdG1sTW9kZWwgfSBmcm9tIFwic3VydmV5LWNvcmVcIjtcbmltcG9ydCB7IEFuZ3VsYXJDb21wb25lbnRGYWN0b3J5IH0gZnJvbSBcIi4uL2NvbXBvbmVudC1mYWN0b3J5XCI7XG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6IFwic3YtbmctaHRtbC1xdWVzdGlvblwiLFxuICB0ZW1wbGF0ZVVybDogXCIuL2h0bWwuY29tcG9uZW50Lmh0bWxcIixcbiAgc3R5bGVVcmxzOiBbXVxufSlcbmV4cG9ydCBjbGFzcyBIdG1sUXVlc3Rpb25Db21wb25lbnQgZXh0ZW5kcyBRdWVzdGlvbkFuZ3VsYXI8UXVlc3Rpb25IdG1sTW9kZWw+IHtcbiAgb3ZlcnJpZGUgb25Nb2RlbENoYW5nZWQoKTogdm9pZCB7XG4gICAgc3VwZXIub25Nb2RlbENoYW5nZWQoKTtcbiAgICB0aGlzLm1vZGVsLmxvY0h0bWwub25DaGFuZ2VkID0gKCkgPT4ge1xuICAgICAgdGhpcy5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfTtcbiAgfVxuICBvdmVycmlkZSBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLm1vZGVsLmxvY0h0bWwub25DaGFuZ2VkID0gKCkgPT4ge307XG4gICAgc3VwZXIubmdPbkRlc3Ryb3koKTtcbiAgfVxufVxuXG5Bbmd1bGFyQ29tcG9uZW50RmFjdG9yeS5JbnN0YW5jZS5yZWdpc3RlckNvbXBvbmVudChcImh0bWwtcXVlc3Rpb25cIiwgSHRtbFF1ZXN0aW9uQ29tcG9uZW50KTsiLCI8ZGl2IFtjbGFzc109XCJtb2RlbC5yZW5kZXJDc3NSb290XCIgW2lubmVySFRNTF09XCJtb2RlbC5sb2NIdG1sLnJlbmRlcmVkSHRtbCB8IHNhZmVIdG1sXCIgI2NvbnRlbnRFbGVtZW50PjwvZGl2PiJdfQ==
@@ -0,0 +1,16 @@
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
+ }
9
+ ImageQuestionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: ImageQuestionComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
10
+ ImageQuestionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", 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.imageLink\"\n [attr.alt]=\"model.text || model.title\"\n [attr.width]=\"model.renderedWidth\"\n [attr.height]=\"model.renderedHeight\"\n [style]=\"{ objectFit: model.imageFit }\"\n /><video\n controls\n *ngIf=\"model.renderedMode === 'video'\"\n [class]=\"model.getImageCss()\"\n [attr.src]=\"model.imageLink\"\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.imageLink | 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 } });
11
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: ImageQuestionComponent, decorators: [{
12
+ type: Component,
13
+ args: [{ selector: "sv-ng-image-question", template: "<div [class]=\"model.cssClasses.root\" #contentElement>\n <img\n *ngIf=\"model.renderedMode === 'image'\"\n [class]=\"model.getImageCss()\"\n [attr.src]=\"model.imageLink\"\n [attr.alt]=\"model.text || model.title\"\n [attr.width]=\"model.renderedWidth\"\n [attr.height]=\"model.renderedHeight\"\n [style]=\"{ objectFit: model.imageFit }\"\n /><video\n controls\n *ngIf=\"model.renderedMode === 'video'\"\n [class]=\"model.getImageCss()\"\n [attr.src]=\"model.imageLink\"\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.imageLink | safeResourceUrl\"\n [attr.width]=\"model.renderedWidth\"\n [attr.height]=\"model.renderedHeight\"\n [style]=\"{ objectFit: model.imageFit }\"\n ></iframe>\n</div>" }]
14
+ }] });
15
+ AngularComponentFactory.Instance.registerComponent("image-question", ImageQuestionComponent);
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1hZ2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvc3VydmV5LWFuZ3VsYXItdWkvc3JjL3F1ZXN0aW9ucy9pbWFnZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wYWNrYWdlcy9zdXJ2ZXktYW5ndWxhci11aS9zcmMvcXVlc3Rpb25zL2ltYWdlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUU5QyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7OztBQU0vRCxNQUFNLE9BQU8sc0JBQXVCLFNBQVEsZUFBbUM7O21IQUFsRSxzQkFBc0I7dUdBQXRCLHNCQUFzQixtRkNUbkMsKzdCQTBCTTsyRkRqQk8sc0JBQXNCO2tCQUpsQyxTQUFTOytCQUNFLHNCQUFzQjs7QUFLbEMsdUJBQXVCLENBQUMsUUFBUSxDQUFDLGlCQUFpQixDQUFDLGdCQUFnQixFQUFFLHNCQUFzQixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgUXVlc3Rpb25Bbmd1bGFyIH0gZnJvbSBcIi4uL3F1ZXN0aW9uXCI7XG5pbXBvcnQgeyBRdWVzdGlvbkltYWdlTW9kZWwgfSBmcm9tIFwic3VydmV5LWNvcmVcIjtcbmltcG9ydCB7IEFuZ3VsYXJDb21wb25lbnRGYWN0b3J5IH0gZnJvbSBcIi4uL2NvbXBvbmVudC1mYWN0b3J5XCI7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogXCJzdi1uZy1pbWFnZS1xdWVzdGlvblwiLFxuICB0ZW1wbGF0ZVVybDogXCIuL2ltYWdlLmNvbXBvbmVudC5odG1sXCJcbn0pXG5leHBvcnQgY2xhc3MgSW1hZ2VRdWVzdGlvbkNvbXBvbmVudCBleHRlbmRzIFF1ZXN0aW9uQW5ndWxhcjxRdWVzdGlvbkltYWdlTW9kZWw+IHt9XG5cbkFuZ3VsYXJDb21wb25lbnRGYWN0b3J5Lkluc3RhbmNlLnJlZ2lzdGVyQ29tcG9uZW50KFwiaW1hZ2UtcXVlc3Rpb25cIiwgSW1hZ2VRdWVzdGlvbkNvbXBvbmVudCk7IiwiPGRpdiBbY2xhc3NdPVwibW9kZWwuY3NzQ2xhc3Nlcy5yb290XCIgI2NvbnRlbnRFbGVtZW50PlxuICA8aW1nXG4gICAgKm5nSWY9XCJtb2RlbC5yZW5kZXJlZE1vZGUgPT09ICdpbWFnZSdcIlxuICAgIFtjbGFzc109XCJtb2RlbC5nZXRJbWFnZUNzcygpXCJcbiAgICBbYXR0ci5zcmNdPVwibW9kZWwuaW1hZ2VMaW5rXCJcbiAgICBbYXR0ci5hbHRdPVwibW9kZWwudGV4dCB8fCBtb2RlbC50aXRsZVwiXG4gICAgW2F0dHIud2lkdGhdPVwibW9kZWwucmVuZGVyZWRXaWR0aFwiXG4gICAgW2F0dHIuaGVpZ2h0XT1cIm1vZGVsLnJlbmRlcmVkSGVpZ2h0XCJcbiAgICBbc3R5bGVdPVwieyBvYmplY3RGaXQ6IG1vZGVsLmltYWdlRml0IH1cIlxuICAvPjx2aWRlb1xuICAgIGNvbnRyb2xzXG4gICAgKm5nSWY9XCJtb2RlbC5yZW5kZXJlZE1vZGUgPT09ICd2aWRlbydcIlxuICAgIFtjbGFzc109XCJtb2RlbC5nZXRJbWFnZUNzcygpXCJcbiAgICBbYXR0ci5zcmNdPVwibW9kZWwuaW1hZ2VMaW5rXCJcbiAgICBbYXR0ci53aWR0aF09XCJtb2RlbC5yZW5kZXJlZFdpZHRoXCJcbiAgICBbYXR0ci5oZWlnaHRdPVwibW9kZWwucmVuZGVyZWRIZWlnaHRcIlxuICAgIFtzdHlsZV09XCJ7IG9iamVjdEZpdDogbW9kZWwuaW1hZ2VGaXQgfVwiXG4gID48L3ZpZGVvPlxuICA8aWZyYW1lXG4gICAgKm5nSWY9XCJtb2RlbC5yZW5kZXJlZE1vZGUgPT09ICd5b3V0dWJlJ1wiXG4gICAgW2NsYXNzXT1cIm1vZGVsLmdldEltYWdlQ3NzKClcIlxuICAgIFthdHRyLnNyY109XCJtb2RlbC5pbWFnZUxpbmsgfCBzYWZlUmVzb3VyY2VVcmxcIlxuICAgIFthdHRyLndpZHRoXT1cIm1vZGVsLnJlbmRlcmVkV2lkdGhcIlxuICAgIFthdHRyLmhlaWdodF09XCJtb2RlbC5yZW5kZXJlZEhlaWdodFwiXG4gICAgW3N0eWxlXT1cInsgb2JqZWN0Rml0OiBtb2RlbC5pbWFnZUZpdCB9XCJcbiAgPjwvaWZyYW1lPlxuPC9kaXY+Il19
@@ -0,0 +1,45 @@
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 "../survey-string.component";
5
+ import * as i2 from "@angular/common";
6
+ export class ImagePickerItemComponent extends BaseAngular {
7
+ getModel() {
8
+ return this.model;
9
+ }
10
+ onChange(event) {
11
+ if (this.question.multiSelect) {
12
+ if (event.target.checked) {
13
+ this.question.value = this.question.value.concat(event.target.value);
14
+ }
15
+ else {
16
+ var currValue = this.question.value;
17
+ currValue.splice(this.question.value.indexOf(event.target.value), 1);
18
+ this.question.value = currValue;
19
+ }
20
+ }
21
+ else {
22
+ this.question.value = event.target.value;
23
+ }
24
+ }
25
+ ngAfterViewInit() {
26
+ this.model.locImageLink.onChanged = () => {
27
+ this.detectChanges();
28
+ };
29
+ }
30
+ ngOnDestroy() {
31
+ super.ngOnDestroy();
32
+ this.model.locImageLink.onChanged = () => { };
33
+ }
34
+ }
35
+ ImagePickerItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: ImagePickerItemComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
36
+ ImagePickerItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", 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 <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}\n"], components: [{ type: i1.SurveyStringComponent, selector: "sv-ng-string, '[sv-ng-string]'", inputs: ["model"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
37
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: ImagePickerItemComponent, decorators: [{
38
+ type: Component,
39
+ args: [{ selector: "sv-ng-imagepicker-item", styles: [":host { display: none; }"], 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 <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>" }]
40
+ }], propDecorators: { question: [{
41
+ type: Input
42
+ }], model: [{
43
+ type: Input
44
+ }] } });
45
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1hZ2VwaWNrZXItaXRlbS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9zdXJ2ZXktYW5ndWxhci11aS9zcmMvcXVlc3Rpb25zL2ltYWdlcGlja2VyLWl0ZW0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vcGFja2FnZXMvc3VydmV5LWFuZ3VsYXItdWkvc3JjL3F1ZXN0aW9ucy9pbWFnZXBpY2tlci1pdGVtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBaUIsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNoRSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0saUJBQWlCLENBQUM7Ozs7QUFPOUMsTUFBTSxPQUFPLHdCQUF5QixTQUFRLFdBQTJCO0lBRzdELFFBQVE7UUFDaEIsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3BCLENBQUM7SUFDRCxRQUFRLENBQUMsS0FBVTtRQUNqQixJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxFQUFFO1lBQzdCLElBQUksS0FBSyxDQUFDLE1BQU0sQ0FBQyxPQUFPLEVBQUU7Z0JBQ3hCLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO2FBQ3RFO2lCQUFNO2dCQUNMLElBQUksU0FBUyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDO2dCQUNwQyxTQUFTLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO2dCQUNyRSxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssR0FBRyxTQUFTLENBQUM7YUFDakM7U0FDRjthQUFNO1lBQ0wsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUM7U0FDMUM7SUFDSCxDQUFDO0lBQ0QsZUFBZTtRQUNiLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLFNBQVMsR0FBRyxHQUFHLEVBQUU7WUFDdkMsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ3ZCLENBQUMsQ0FBQztJQUNKLENBQUM7SUFDUSxXQUFXO1FBQ2xCLEtBQUssQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNwQixJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxTQUFTLEdBQUcsR0FBRyxFQUFFLEdBQUUsQ0FBQyxDQUFDO0lBQy9DLENBQUM7O3FIQTNCVSx3QkFBd0I7eUdBQXhCLHdCQUF3Qix1SUNSckMsMHZFQW9CYzsyRkRaRCx3QkFBd0I7a0JBTHBDLFNBQVM7K0JBQ0Usd0JBQXdCLFVBRTFCLENBQUMsMEJBQTBCLENBQUM7OEJBRzNCLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBCYXNlQW5ndWxhciB9IGZyb20gXCIuLi9iYXNlLWFuZ3VsYXJcIjtcbmltcG9ydCB7IEltYWdlSXRlbVZhbHVlLCBRdWVzdGlvbkltYWdlUGlja2VyTW9kZWwgfSBmcm9tIFwic3VydmV5LWNvcmVcIjtcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogXCJzdi1uZy1pbWFnZXBpY2tlci1pdGVtXCIsXG4gIHRlbXBsYXRlVXJsOiBcIi4vaW1hZ2VwaWNrZXItaXRlbS5jb21wb25lbnQuaHRtbFwiLFxuICBzdHlsZXM6IFtcIjpob3N0IHsgZGlzcGxheTogbm9uZTsgfVwiXVxufSlcbmV4cG9ydCBjbGFzcyBJbWFnZVBpY2tlckl0ZW1Db21wb25lbnQgZXh0ZW5kcyBCYXNlQW5ndWxhcjxJbWFnZUl0ZW1WYWx1ZT4gaW1wbGVtZW50cyBBZnRlclZpZXdJbml0IHtcbiAgQElucHV0KCkgcXVlc3Rpb24hOiBRdWVzdGlvbkltYWdlUGlja2VyTW9kZWw7XG4gIEBJbnB1dCgpIG1vZGVsITogSW1hZ2VJdGVtVmFsdWU7XG4gIHByb3RlY3RlZCBnZXRNb2RlbCgpOiBJbWFnZUl0ZW1WYWx1ZSB7XG4gICAgcmV0dXJuIHRoaXMubW9kZWw7XG4gIH1cbiAgb25DaGFuZ2UoZXZlbnQ6IGFueSkge1xuICAgIGlmICh0aGlzLnF1ZXN0aW9uLm11bHRpU2VsZWN0KSB7XG4gICAgICBpZiAoZXZlbnQudGFyZ2V0LmNoZWNrZWQpIHtcbiAgICAgICAgdGhpcy5xdWVzdGlvbi52YWx1ZSA9IHRoaXMucXVlc3Rpb24udmFsdWUuY29uY2F0KGV2ZW50LnRhcmdldC52YWx1ZSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB2YXIgY3VyclZhbHVlID0gdGhpcy5xdWVzdGlvbi52YWx1ZTtcbiAgICAgICAgY3VyclZhbHVlLnNwbGljZSh0aGlzLnF1ZXN0aW9uLnZhbHVlLmluZGV4T2YoZXZlbnQudGFyZ2V0LnZhbHVlKSwgMSk7XG4gICAgICAgIHRoaXMucXVlc3Rpb24udmFsdWUgPSBjdXJyVmFsdWU7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMucXVlc3Rpb24udmFsdWUgPSBldmVudC50YXJnZXQudmFsdWU7XG4gICAgfVxuICB9XG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLm1vZGVsLmxvY0ltYWdlTGluay5vbkNoYW5nZWQgPSAoKSA9PiB7XG4gICAgICB0aGlzLmRldGVjdENoYW5nZXMoKTtcbiAgICB9O1xuICB9XG4gIG92ZXJyaWRlIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHN1cGVyLm5nT25EZXN0cm95KCk7XG4gICAgdGhpcy5tb2RlbC5sb2NJbWFnZUxpbmsub25DaGFuZ2VkID0gKCkgPT4ge307XG4gIH1cbn1cbiIsIjxuZy10ZW1wbGF0ZSAjdGVtcGxhdGU+XG4gIDxkaXYgW2NsYXNzXT1cInF1ZXN0aW9uLmdldEl0ZW1DbGFzcyhtb2RlbClcIj5cbiAgICA8bGFiZWwgW2NsYXNzXT1cInF1ZXN0aW9uLmNzc0NsYXNzZXMubGFiZWxcIj5cbiAgICAgICAgPGlucHV0IFt0eXBlXT1cInF1ZXN0aW9uLmlucHV0VHlwZVwiIFthdHRyLm5hbWVdPVwicXVlc3Rpb24ucXVlc3Rpb25OYW1lXCIgW2F0dHIudmFsdWVdPVwibW9kZWwudmFsdWVcIiBbaWRdPVwicXVlc3Rpb24uZ2V0SXRlbUlkKG1vZGVsKVwiIFthdHRyLmFyaWEtcmVxdWlyZWRdPVwicXVlc3Rpb24uYXJpYVJlcXVpcmVkXCIgW2F0dHIuYXJpYS1sYWJlbF09XCJxdWVzdGlvbi5hcmlhTGFiZWxcIiBbYXR0ci5hcmlhLWludmFsaWRdPVwicXVlc3Rpb24uYXJpYUludmFsaWRcIiBbYXR0ci5hcmlhLWRlc2NyaWJlZGJ5XT1cInF1ZXN0aW9uLmFyaWFEZXNjcmliZWRCeVwiXG4gICAgICAgIChjaGFuZ2UpPVwib25DaGFuZ2UoJGV2ZW50KVwiIFtjaGVja2VkXT1cInF1ZXN0aW9uLmlzSXRlbVNlbGVjdGVkKG1vZGVsKVwiIFtkaXNhYmxlZF09XCIhcXVlc3Rpb24uZ2V0SXRlbUVuYWJsZWQobW9kZWwpXCIgW2NsYXNzXT1cInF1ZXN0aW9uLmNzc0NsYXNzZXMuaXRlbUNvbnRyb2xcIlxuICAgICAgICAvPlxuICAgICAgICA8ZGl2IFtjbGFzc109XCJxdWVzdGlvbi5jc3NDbGFzc2VzLml0ZW1EZWNvcmF0b3JcIj5cbiAgICAgICAgICAgIDxkaXYgW2NsYXNzXT1cInF1ZXN0aW9uLmNzc0NsYXNzZXMuaW1hZ2VDb250YWluZXJcIj5cbiAgICAgICAgICAgICAgPGltZyAqbmdJZj1cIm1vZGVsLmxvY0ltYWdlTGluay5yZW5kZXJlZEh0bWwgJiYgcXVlc3Rpb24uY29udGVudE1vZGUgPT09ICdpbWFnZSdcIiBbY2xhc3NdPVwicXVlc3Rpb24uY3NzQ2xhc3Nlcy5pbWFnZVwiIFthdHRyLnNyY109XCJtb2RlbC5sb2NJbWFnZUxpbmsucmVuZGVyZWRIdG1sXCIgW2F0dHIud2lkdGhdPVwicXVlc3Rpb24ucmVuZGVyZWRJbWFnZVdpZHRoXCIgW2F0dHIuaGVpZ2h0XT1cInF1ZXN0aW9uLnJlbmRlcmVkSW1hZ2VIZWlnaHRcIiBbYXR0ci5hbHRdPVwibW9kZWwubG9jVGV4dC5yZW5kZXJlZEh0bWxcIiAgW3N0eWxlLm9iamVjdEZpdF09XCJxdWVzdGlvbi5pbWFnZUZpdFwiIChsb2FkKT1cInF1ZXN0aW9uLm9uQ29udGVudExvYWRlZChtb2RlbCwgJGV2ZW50KVwiLz5cbiAgICAgICAgICAgICAgPHZpZGVvICpuZ0lmPVwibW9kZWwubG9jSW1hZ2VMaW5rLnJlbmRlcmVkSHRtbCAmJiBxdWVzdGlvbi5jb250ZW50TW9kZSA9PT0gJ3ZpZGVvJ1wiIGNvbnRyb2xzIFtjbGFzc109XCJxdWVzdGlvbi5jc3NDbGFzc2VzLmltYWdlXCIgW2F0dHIuc3JjXT1cIm1vZGVsLmxvY0ltYWdlTGluay5yZW5kZXJlZEh0bWxcIiBbYXR0ci53aWR0aF09XCJxdWVzdGlvbi5yZW5kZXJlZEltYWdlV2lkdGhcIiBbYXR0ci5oZWlnaHRdPVwicXVlc3Rpb24ucmVuZGVyZWRJbWFnZUhlaWdodFwiIFtzdHlsZS5vYmplY3RGaXRdPVwicXVlc3Rpb24uaW1hZ2VGaXRcIiAobG9hZGVkbWV0YWRhdGEpPVwicXVlc3Rpb24ub25Db250ZW50TG9hZGVkKG1vZGVsLCAkZXZlbnQpXCI+PC92aWRlbz5cbiAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cIiFtb2RlbC5sb2NJbWFnZUxpbmsucmVuZGVyZWRIdG1sXCIgW2NsYXNzXT1cInF1ZXN0aW9uLmNzc0NsYXNzZXMuaXRlbU5vSW1hZ2VcIiBbc3R5bGUud2lkdGhdPVwicXVlc3Rpb24ucmVuZGVyZWRJbWFnZVdpZHRoXCIgW3N0eWxlLmhlaWdodF09XCJxdWVzdGlvbi5yZW5kZXJlZEltYWdlSGVpZ2h0XCIgW3N0eWxlLm9iamVjdEZpdF09XCJxdWVzdGlvbi5pbWFnZUZpdFwiPlxuICAgICAgICAgICAgICAgIDxzdmcgW2NsYXNzXT1cInF1ZXN0aW9uLmNzc0NsYXNzZXMuaXRlbU5vSW1hZ2VTdmdJY29uXCIgKm5nSWY9XCJxdWVzdGlvbi5jc3NDbGFzc2VzLml0ZW1Ob0ltYWdlU3ZnSWNvblwiPlxuICAgICAgICAgICAgICAgICAgPHVzZSBbYXR0ci54bGluazpocmVmXT1cInF1ZXN0aW9uLmNzc0NsYXNzZXMuaXRlbU5vSW1hZ2VTdmdJY29uSWRcIj48L3VzZT5cbiAgICAgICAgICAgICAgICA8L3N2Zz5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwicXVlc3Rpb24uc2hvd0xhYmVsXCIgW2NsYXNzXT1cInF1ZXN0aW9uLmNzc0NsYXNzZXMuaXRlbVRleHRcIiBbbW9kZWxdPVwibW9kZWwubG9jVGV4dFwiIHN2LW5nLXN0cmluZz48L3NwYW4+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvbGFiZWw+XG4gIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT4iXX0=
@@ -0,0 +1,16 @@
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 "./imagepicker-item.component";
6
+ import * as i2 from "@angular/common";
7
+ export class ImagePickerQuestionComponent extends QuestionAngular {
8
+ }
9
+ ImagePickerQuestionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: ImagePickerQuestionComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
10
+ ImagePickerQuestionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", 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 <sv-ng-imagepicker-item *ngFor=\"let item of model.visibleChoices\" [model]=\"$any(item)\" [question]=\"model\"></sv-ng-imagepicker-item>\n </ng-container>\n <ng-container *ngIf=\"model.hasColumns\">\n <div *ngFor=\"let column of model.columns\" [class]=\"model.getColumnClass()\" role=\"presentation\">\n <sv-ng-imagepicker-item *ngFor=\"let item of column\" [model]=\"item\" [question]=\"model\"></sv-ng-imagepicker-item>\n </div>\n </ng-container>\n </fieldset>", components: [{ type: i1.ImagePickerItemComponent, selector: "sv-ng-imagepicker-item", inputs: ["question", "model"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] });
11
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: ImagePickerQuestionComponent, decorators: [{
12
+ type: Component,
13
+ args: [{ selector: "sv-ng-imagepicker-question", template: " <fieldset [class]=\"model.getSelectBaseRootCss()\" #contentElement>\n <legend [attr.aria-label]=\"model.locTitle.renderedHtml\" role=\"radio\"></legend>\n <ng-container *ngIf=\"!model.hasColumns\">\n <sv-ng-imagepicker-item *ngFor=\"let item of model.visibleChoices\" [model]=\"$any(item)\" [question]=\"model\"></sv-ng-imagepicker-item>\n </ng-container>\n <ng-container *ngIf=\"model.hasColumns\">\n <div *ngFor=\"let column of model.columns\" [class]=\"model.getColumnClass()\" role=\"presentation\">\n <sv-ng-imagepicker-item *ngFor=\"let item of column\" [model]=\"item\" [question]=\"model\"></sv-ng-imagepicker-item>\n </div>\n </ng-container>\n </fieldset>" }]
14
+ }] });
15
+ AngularComponentFactory.Instance.registerComponent("imagepicker-question", ImagePickerQuestionComponent);
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1hZ2VwaWNrZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvc3VydmV5LWFuZ3VsYXItdWkvc3JjL3F1ZXN0aW9ucy9pbWFnZXBpY2tlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wYWNrYWdlcy9zdXJ2ZXktYW5ndWxhci11aS9zcmMvcXVlc3Rpb25zL2ltYWdlcGlja2VyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUU5QyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7OztBQU0vRCxNQUFNLE9BQU8sNEJBQTZCLFNBQVEsZUFBeUM7O3lIQUE5RSw0QkFBNEI7NkdBQTVCLDRCQUE0Qix5RkNUekMsb3RCQVVhOzJGRERBLDRCQUE0QjtrQkFKeEMsU0FBUzsrQkFDRSw0QkFBNEI7O0FBS3hDLHVCQUF1QixDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyxzQkFBc0IsRUFBRSw0QkFBNEIsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IFF1ZXN0aW9uQW5ndWxhciB9IGZyb20gXCIuLi9xdWVzdGlvblwiO1xuaW1wb3J0IHsgUXVlc3Rpb25JbWFnZVBpY2tlck1vZGVsIH0gZnJvbSBcInN1cnZleS1jb3JlXCI7XG5pbXBvcnQgeyBBbmd1bGFyQ29tcG9uZW50RmFjdG9yeSB9IGZyb20gXCIuLi9jb21wb25lbnQtZmFjdG9yeVwiO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6IFwic3YtbmctaW1hZ2VwaWNrZXItcXVlc3Rpb25cIixcbiAgdGVtcGxhdGVVcmw6IFwiLi9pbWFnZXBpY2tlci5jb21wb25lbnQuaHRtbFwiXG59KVxuZXhwb3J0IGNsYXNzIEltYWdlUGlja2VyUXVlc3Rpb25Db21wb25lbnQgZXh0ZW5kcyBRdWVzdGlvbkFuZ3VsYXI8UXVlc3Rpb25JbWFnZVBpY2tlck1vZGVsPiB7fVxuXG5Bbmd1bGFyQ29tcG9uZW50RmFjdG9yeS5JbnN0YW5jZS5yZWdpc3RlckNvbXBvbmVudChcImltYWdlcGlja2VyLXF1ZXN0aW9uXCIsIEltYWdlUGlja2VyUXVlc3Rpb25Db21wb25lbnQpOyIsIiAgPGZpZWxkc2V0IFtjbGFzc109XCJtb2RlbC5nZXRTZWxlY3RCYXNlUm9vdENzcygpXCIgI2NvbnRlbnRFbGVtZW50PlxuICAgICAgPGxlZ2VuZCBbYXR0ci5hcmlhLWxhYmVsXT1cIm1vZGVsLmxvY1RpdGxlLnJlbmRlcmVkSHRtbFwiIHJvbGU9XCJyYWRpb1wiPjwvbGVnZW5kPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFtb2RlbC5oYXNDb2x1bW5zXCI+XG4gICAgICAgIDxzdi1uZy1pbWFnZXBpY2tlci1pdGVtICpuZ0Zvcj1cImxldCBpdGVtIG9mIG1vZGVsLnZpc2libGVDaG9pY2VzXCIgW21vZGVsXT1cIiRhbnkoaXRlbSlcIiBbcXVlc3Rpb25dPVwibW9kZWxcIj48L3N2LW5nLWltYWdlcGlja2VyLWl0ZW0+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJtb2RlbC5oYXNDb2x1bW5zXCI+XG4gICAgICAgIDxkaXYgKm5nRm9yPVwibGV0IGNvbHVtbiBvZiBtb2RlbC5jb2x1bW5zXCIgW2NsYXNzXT1cIm1vZGVsLmdldENvbHVtbkNsYXNzKClcIiByb2xlPVwicHJlc2VudGF0aW9uXCI+XG4gICAgICAgICAgPHN2LW5nLWltYWdlcGlja2VyLWl0ZW0gKm5nRm9yPVwibGV0IGl0ZW0gb2YgY29sdW1uXCIgW21vZGVsXT1cIml0ZW1cIiBbcXVlc3Rpb25dPVwibW9kZWxcIj48L3N2LW5nLWltYWdlcGlja2VyLWl0ZW0+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gIDwvZmllbGRzZXQ+Il19
@@ -0,0 +1,35 @@
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/ng-show.directive";
8
+ export class MatrixQuestionComponent extends QuestionAngular {
9
+ ngOnInit() {
10
+ this.model.visibleRowsChangedCallback = () => {
11
+ this.detectChanges();
12
+ };
13
+ super.ngOnInit();
14
+ }
15
+ onChange(row, column) {
16
+ if (this.model.isInputReadOnly)
17
+ return;
18
+ row.value = column.value;
19
+ this.detectChanges();
20
+ }
21
+ trackRowByFn(i, row) {
22
+ return "column-" + row.name + "-" + i;
23
+ }
24
+ trackColumnByFn(i, column) {
25
+ return "column-" + column.value + "-" + i;
26
+ }
27
+ }
28
+ MatrixQuestionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: MatrixQuestionComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
29
+ MatrixQuestionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", 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 [visible]=\"model.hasRows\"></td>\n <th\n *ngFor=\"let column of model.visibleColumns\" [class]=\"model.cssClasses.headerCell\" \n [model]=\"column.locText\" sv-ng-string>\n </th>\n </tr>\n </thead>\n <tbody>\n <tr *ngFor=\"let row of model.visibleRows; trackBy: trackRowByFn \" [class]=\"row.rowClasses || undefined\">\n <td [class]=\"model.cssClasses.rowTextCell\" *ngIf=\"model.hasRows\" [model]=\"row.locText\" sv-ng-string></td>\n <ng-container *ngIf=\"model.hasCellText\">\n <td *ngFor=\"let column of model.visibleColumns\"\n [class]=\"model.getItemClass(row, column)\"\n (click)=\"onChange(row, column)\" [model]=\"model.getCellDisplayLocText(row.name, column)\" sv-ng-string>\n </td>\n </ng-container>\n <ng-container *ngIf=\"!model.hasCellText\">\n <td\n *ngFor=\"let column of model.visibleColumns; index as columnIndex; trackBy: trackColumnByFn\"\n [attr.data-responsive-title]=\"column.locText.renderedHtml\"\n [class]=\"model.cssClasses.cell\">\n <label [class]=\"model.getItemClass(row, column)\">\n <input\n type=\"radio\"\n [class]=\"model.cssClasses.itemValue\"\n [name]=\"row.fullName\"\n [value]=\"column.value\"\n [checked]=\"row.value === column.value\"\n [disabled]=\"model.isInputReadOnly\"\n [attr.id]=\"model.inputId + '_' + row.name + '_' + columnIndex\"\n (change)=\"onChange(row, column)\"\n [attr.aria-required]=\"model.ariaRequired\"\n [attr.aria-label]=\"column.locText.renderedHtml\"\n [attr.aria-invalid]=\"model.ariaInvalid\"\n [attr.aria-describedby]=\"model.ariaDescribedBy\"\n />\n <span [class]=\"model.cssClasses.materialDecorator\">\n <svg *ngIf=\"model.itemSvgIcon\" [class]=\"model.cssClasses.itemDecorator\">\n <use [attr.xlink:href]=\"model.itemSvgIcon\"></use>\n </svg> \n </span>\n <span [visible]=\"model.isMobile\" [class]=\"model.cssClasses.cellResponsiveTitle\" [model]=\"column.locText\" sv-ng-string></span>\n </label>\n </td>\n </ng-container>\n </tr>\n </tbody>\n </table>\n </fieldset>\n </div>\n</ng-template>", 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: i3.VisibleDirective, selector: "[visible]", inputs: ["visible"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] });
30
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: MatrixQuestionComponent, decorators: [{
31
+ type: Component,
32
+ args: [{ selector: "sv-ng-matrix-question", 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 [visible]=\"model.hasRows\"></td>\n <th\n *ngFor=\"let column of model.visibleColumns\" [class]=\"model.cssClasses.headerCell\" \n [model]=\"column.locText\" sv-ng-string>\n </th>\n </tr>\n </thead>\n <tbody>\n <tr *ngFor=\"let row of model.visibleRows; trackBy: trackRowByFn \" [class]=\"row.rowClasses || undefined\">\n <td [class]=\"model.cssClasses.rowTextCell\" *ngIf=\"model.hasRows\" [model]=\"row.locText\" sv-ng-string></td>\n <ng-container *ngIf=\"model.hasCellText\">\n <td *ngFor=\"let column of model.visibleColumns\"\n [class]=\"model.getItemClass(row, column)\"\n (click)=\"onChange(row, column)\" [model]=\"model.getCellDisplayLocText(row.name, column)\" sv-ng-string>\n </td>\n </ng-container>\n <ng-container *ngIf=\"!model.hasCellText\">\n <td\n *ngFor=\"let column of model.visibleColumns; index as columnIndex; trackBy: trackColumnByFn\"\n [attr.data-responsive-title]=\"column.locText.renderedHtml\"\n [class]=\"model.cssClasses.cell\">\n <label [class]=\"model.getItemClass(row, column)\">\n <input\n type=\"radio\"\n [class]=\"model.cssClasses.itemValue\"\n [name]=\"row.fullName\"\n [value]=\"column.value\"\n [checked]=\"row.value === column.value\"\n [disabled]=\"model.isInputReadOnly\"\n [attr.id]=\"model.inputId + '_' + row.name + '_' + columnIndex\"\n (change)=\"onChange(row, column)\"\n [attr.aria-required]=\"model.ariaRequired\"\n [attr.aria-label]=\"column.locText.renderedHtml\"\n [attr.aria-invalid]=\"model.ariaInvalid\"\n [attr.aria-describedby]=\"model.ariaDescribedBy\"\n />\n <span [class]=\"model.cssClasses.materialDecorator\">\n <svg *ngIf=\"model.itemSvgIcon\" [class]=\"model.cssClasses.itemDecorator\">\n <use [attr.xlink:href]=\"model.itemSvgIcon\"></use>\n </svg> \n </span>\n <span [visible]=\"model.isMobile\" [class]=\"model.cssClasses.cellResponsiveTitle\" [model]=\"column.locText\" sv-ng-string></span>\n </label>\n </td>\n </ng-container>\n </tr>\n </tbody>\n </table>\n </fieldset>\n </div>\n</ng-template>", styles: [":host{display:none}\n"] }]
33
+ }] });
34
+ AngularComponentFactory.Instance.registerComponent("matrix-question", MatrixQuestionComponent);
35
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0cml4LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL3N1cnZleS1hbmd1bGFyLXVpL3NyYy9xdWVzdGlvbnMvbWF0cml4LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL3BhY2thZ2VzL3N1cnZleS1hbmd1bGFyLXVpL3NyYy9xdWVzdGlvbnMvbWF0cml4LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUU5QyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7Ozs7QUFPL0QsTUFBTSxPQUFPLHVCQUF3QixTQUFRLGVBQW9DO0lBQ3RFLFFBQVE7UUFDZixJQUFJLENBQUMsS0FBSyxDQUFDLDBCQUEwQixHQUFHLEdBQUcsRUFBRTtZQUMzQyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDdkIsQ0FBQyxDQUFDO1FBQ0YsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ25CLENBQUM7SUFDTSxRQUFRLENBQUMsR0FBUSxFQUFFLE1BQVc7UUFDbkMsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLGVBQWU7WUFBRSxPQUFPO1FBQ3ZDLEdBQUcsQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQztRQUN6QixJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDdkIsQ0FBQztJQUNELFlBQVksQ0FBQyxDQUFTLEVBQUUsR0FBUTtRQUM5QixPQUFPLFNBQVMsR0FBRyxHQUFHLENBQUMsSUFBSSxHQUFHLEdBQUcsR0FBRyxDQUFDLENBQUM7SUFDeEMsQ0FBQztJQUNELGVBQWUsQ0FBQyxDQUFTLEVBQUUsTUFBVztRQUNwQyxPQUFPLFNBQVMsR0FBRyxNQUFNLENBQUMsS0FBSyxHQUFHLEdBQUcsR0FBRyxDQUFDLENBQUM7SUFDNUMsQ0FBQzs7b0hBakJVLHVCQUF1Qjt3R0FBdkIsdUJBQXVCLG9GQ1ZwQyw2NEZBeURjOzJGRC9DRCx1QkFBdUI7a0JBTG5DLFNBQVM7K0JBQ0UsdUJBQXVCOztBQXdCbkMsdUJBQXVCLENBQUMsUUFBUSxDQUFDLGlCQUFpQixDQUFDLGlCQUFpQixFQUFFLHVCQUF1QixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgUXVlc3Rpb25Bbmd1bGFyIH0gZnJvbSBcIi4uL3F1ZXN0aW9uXCI7XG5pbXBvcnQgeyBRdWVzdGlvbk1hdHJpeE1vZGVsIH0gZnJvbSBcInN1cnZleS1jb3JlXCI7XG5pbXBvcnQgeyBBbmd1bGFyQ29tcG9uZW50RmFjdG9yeSB9IGZyb20gXCIuLi9jb21wb25lbnQtZmFjdG9yeVwiO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6IFwic3YtbmctbWF0cml4LXF1ZXN0aW9uXCIsXG4gIHRlbXBsYXRlVXJsOiBcIi4vbWF0cml4LmNvbXBvbmVudC5odG1sXCIsXG4gIHN0eWxlVXJsczogW1wiLi4vaGlkZS1ob3N0LnNjc3NcIl1cbn0pXG5leHBvcnQgY2xhc3MgTWF0cml4UXVlc3Rpb25Db21wb25lbnQgZXh0ZW5kcyBRdWVzdGlvbkFuZ3VsYXI8UXVlc3Rpb25NYXRyaXhNb2RlbD4ge1xuICBvdmVycmlkZSBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLm1vZGVsLnZpc2libGVSb3dzQ2hhbmdlZENhbGxiYWNrID0gKCkgPT4ge1xuICAgICAgdGhpcy5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfTtcbiAgICBzdXBlci5uZ09uSW5pdCgpO1xuICB9XG4gIHB1YmxpYyBvbkNoYW5nZShyb3c6IGFueSwgY29sdW1uOiBhbnkpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5tb2RlbC5pc0lucHV0UmVhZE9ubHkpIHJldHVybjtcbiAgICByb3cudmFsdWUgPSBjb2x1bW4udmFsdWU7XG4gICAgdGhpcy5kZXRlY3RDaGFuZ2VzKCk7XG4gIH1cbiAgdHJhY2tSb3dCeUZuKGk6IG51bWJlciwgcm93OiBhbnkpOiBzdHJpbmcge1xuICAgIHJldHVybiBcImNvbHVtbi1cIiArIHJvdy5uYW1lICsgXCItXCIgKyBpO1xuICB9XG4gIHRyYWNrQ29sdW1uQnlGbihpOiBudW1iZXIsIGNvbHVtbjogYW55KTogc3RyaW5nIHtcbiAgICByZXR1cm4gXCJjb2x1bW4tXCIgKyBjb2x1bW4udmFsdWUgKyBcIi1cIiArIGk7XG4gIH1cbn1cblxuQW5ndWxhckNvbXBvbmVudEZhY3RvcnkuSW5zdGFuY2UucmVnaXN0ZXJDb21wb25lbnQoXCJtYXRyaXgtcXVlc3Rpb25cIiwgTWF0cml4UXVlc3Rpb25Db21wb25lbnQpOyIsIjxuZy10ZW1wbGF0ZSAjdGVtcGxhdGU+XG4gIDxkaXYgW2NsYXNzXT1cIm1vZGVsLmNzc0NsYXNzZXMudGFibGVXcmFwcGVyXCIgI2NvbnRlbnRFbGVtZW50PlxuICAgIDxmaWVsZHNldD5cbiAgICAgIDxsZWdlbmQgW2F0dHIuYXJpYS1sYWJlbF09XCJtb2RlbC5sb2NUaXRsZS5yZW5kZXJlZEh0bWxcIj48L2xlZ2VuZD5cbiAgICAgIDx0YWJsZSBbY2xhc3NdPVwibW9kZWwuZ2V0VGFibGVDc3MoKVwiPlxuICAgICAgICA8dGhlYWQgKm5nSWY9XCJtb2RlbC5zaG93SGVhZGVyXCI+XG4gICAgICAgICAgPHRyPlxuICAgICAgICAgICAgPHRkIFt2aXNpYmxlXT1cIm1vZGVsLmhhc1Jvd3NcIj48L3RkPlxuICAgICAgICAgICAgPHRoXG4gICAgICAgICAgICAgICpuZ0Zvcj1cImxldCBjb2x1bW4gb2YgbW9kZWwudmlzaWJsZUNvbHVtbnNcIiBbY2xhc3NdPVwibW9kZWwuY3NzQ2xhc3Nlcy5oZWFkZXJDZWxsXCIgXG4gICAgICAgICAgICAgIFttb2RlbF09XCJjb2x1bW4ubG9jVGV4dFwiIHN2LW5nLXN0cmluZz5cbiAgICAgICAgICAgIDwvdGg+XG4gICAgICAgICAgPC90cj5cbiAgICAgICAgPC90aGVhZD5cbiAgICAgICAgPHRib2R5PlxuICAgICAgICAgIDx0ciAqbmdGb3I9XCJsZXQgcm93IG9mIG1vZGVsLnZpc2libGVSb3dzOyB0cmFja0J5OiB0cmFja1Jvd0J5Rm4gXCIgW2NsYXNzXT1cInJvdy5yb3dDbGFzc2VzIHx8IHVuZGVmaW5lZFwiPlxuICAgICAgICAgICAgPHRkIFtjbGFzc109XCJtb2RlbC5jc3NDbGFzc2VzLnJvd1RleHRDZWxsXCIgKm5nSWY9XCJtb2RlbC5oYXNSb3dzXCIgW21vZGVsXT1cInJvdy5sb2NUZXh0XCIgc3Ytbmctc3RyaW5nPjwvdGQ+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwibW9kZWwuaGFzQ2VsbFRleHRcIj5cbiAgICAgICAgICAgICAgPHRkICpuZ0Zvcj1cImxldCBjb2x1bW4gb2YgbW9kZWwudmlzaWJsZUNvbHVtbnNcIlxuICAgICAgICAgICAgICAgIFtjbGFzc109XCJtb2RlbC5nZXRJdGVtQ2xhc3Mocm93LCBjb2x1bW4pXCJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwib25DaGFuZ2Uocm93LCBjb2x1bW4pXCIgW21vZGVsXT1cIm1vZGVsLmdldENlbGxEaXNwbGF5TG9jVGV4dChyb3cubmFtZSwgY29sdW1uKVwiIHN2LW5nLXN0cmluZz5cbiAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFtb2RlbC5oYXNDZWxsVGV4dFwiPlxuICAgICAgICAgICAgICA8dGRcbiAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IGNvbHVtbiBvZiBtb2RlbC52aXNpYmxlQ29sdW1uczsgaW5kZXggYXMgY29sdW1uSW5kZXg7IHRyYWNrQnk6IHRyYWNrQ29sdW1uQnlGblwiXG4gICAgICAgICAgICAgIFthdHRyLmRhdGEtcmVzcG9uc2l2ZS10aXRsZV09XCJjb2x1bW4ubG9jVGV4dC5yZW5kZXJlZEh0bWxcIlxuICAgICAgICAgICAgICBbY2xhc3NdPVwibW9kZWwuY3NzQ2xhc3Nlcy5jZWxsXCI+XG4gICAgICAgICAgICAgICAgPGxhYmVsIFtjbGFzc109XCJtb2RlbC5nZXRJdGVtQ2xhc3Mocm93LCBjb2x1bW4pXCI+XG4gICAgICAgICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgICAgICAgdHlwZT1cInJhZGlvXCJcbiAgICAgICAgICAgICAgICAgICAgW2NsYXNzXT1cIm1vZGVsLmNzc0NsYXNzZXMuaXRlbVZhbHVlXCJcbiAgICAgICAgICAgICAgICAgICAgW25hbWVdPVwicm93LmZ1bGxOYW1lXCJcbiAgICAgICAgICAgICAgICAgICAgW3ZhbHVlXT1cImNvbHVtbi52YWx1ZVwiXG4gICAgICAgICAgICAgICAgICAgIFtjaGVja2VkXT1cInJvdy52YWx1ZSA9PT0gY29sdW1uLnZhbHVlXCJcbiAgICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cIm1vZGVsLmlzSW5wdXRSZWFkT25seVwiXG4gICAgICAgICAgICAgICAgICAgIFthdHRyLmlkXT1cIm1vZGVsLmlucHV0SWQgKyAnXycgKyByb3cubmFtZSArICdfJyArIGNvbHVtbkluZGV4XCJcbiAgICAgICAgICAgICAgICAgICAgKGNoYW5nZSk9XCJvbkNoYW5nZShyb3csIGNvbHVtbilcIlxuICAgICAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLXJlcXVpcmVkXT1cIm1vZGVsLmFyaWFSZXF1aXJlZFwiXG4gICAgICAgICAgICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiY29sdW1uLmxvY1RleHQucmVuZGVyZWRIdG1sXCJcbiAgICAgICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1pbnZhbGlkXT1cIm1vZGVsLmFyaWFJbnZhbGlkXCJcbiAgICAgICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1kZXNjcmliZWRieV09XCJtb2RlbC5hcmlhRGVzY3JpYmVkQnlcIlxuICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgIDxzcGFuIFtjbGFzc109XCJtb2RlbC5jc3NDbGFzc2VzLm1hdGVyaWFsRGVjb3JhdG9yXCI+XG4gICAgICAgICAgICAgICAgICAgIDxzdmcgKm5nSWY9XCJtb2RlbC5pdGVtU3ZnSWNvblwiIFtjbGFzc109XCJtb2RlbC5jc3NDbGFzc2VzLml0ZW1EZWNvcmF0b3JcIj5cbiAgICAgICAgICAgICAgICAgICAgICA8dXNlIFthdHRyLnhsaW5rOmhyZWZdPVwibW9kZWwuaXRlbVN2Z0ljb25cIj48L3VzZT5cbiAgICAgICAgICAgICAgICAgICAgPC9zdmc+IFxuICAgICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgPHNwYW4gW3Zpc2libGVdPVwibW9kZWwuaXNNb2JpbGVcIiBbY2xhc3NdPVwibW9kZWwuY3NzQ2xhc3Nlcy5jZWxsUmVzcG9uc2l2ZVRpdGxlXCIgW21vZGVsXT1cImNvbHVtbi5sb2NUZXh0XCIgc3Ytbmctc3RyaW5nPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8L2xhYmVsPlxuICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgPC90cj5cbiAgICAgICAgPC90Ym9keT5cbiAgICAgIDwvdGFibGU+XG4gICAgPC9maWVsZHNldD5cbiAgPC9kaXY+XG48L25nLXRlbXBsYXRlPiJdfQ==
@@ -0,0 +1,60 @@
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/action-bar/action-bar.component";
5
+ import * as i2 from "../panel.component";
6
+ import * as i3 from "../errors.component";
7
+ import * as i4 from "./selectbase-item";
8
+ import * as i5 from "../survey-string.component";
9
+ import * as i6 from "@angular/common";
10
+ import * as i7 from "../utils/ng-show.directive";
11
+ import * as i8 from "../utils/dynamic.directive";
12
+ export class MatrixCellComponent extends BaseAngular {
13
+ constructor() {
14
+ super(...arguments);
15
+ this.isVisible = false;
16
+ }
17
+ getModel() {
18
+ return this.cell.question;
19
+ }
20
+ getComponentName(element) {
21
+ if (element.customWidget) {
22
+ return "survey-customwidget";
23
+ }
24
+ return element.getType() + "-question";
25
+ }
26
+ getHeaders() {
27
+ return this.cell.headers;
28
+ }
29
+ getCellStyle() {
30
+ if (!!this.cell.width || !!this.cell.minWidth)
31
+ return { width: this.cell.width, minWidth: this.cell.minWidth };
32
+ return null;
33
+ }
34
+ ngAfterViewInit() {
35
+ if (!this.cell.hasQuestion || !this.question || !this.question.survey)
36
+ return;
37
+ var options = {
38
+ cell: this.cell.cell,
39
+ cellQuestion: this.cell.question,
40
+ htmlElement: this.cellContainer.nativeElement,
41
+ row: this.cell.row,
42
+ column: this.cell.cell.column,
43
+ };
44
+ this.question.survey.matrixAfterCellRender(this.question, options);
45
+ }
46
+ }
47
+ MatrixCellComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: MatrixCellComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
48
+ MatrixCellComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", 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-action-bar *ngIf=\"cell.isActionsCell\" [model]=\"cell.item.getData()\" [handleClick]=\"false\"></sv-action-bar>\n <sv-ng-panel *ngIf=\"cell.hasPanel\" [model]=\"cell.panel\"></sv-ng-panel>\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-template *ngIf=\"!cell.isChoice && cell.question.isDefaultRendering()\" [component]=\"{ name: getComponentName(cell.question), data: { model: cell.question } }\"></ng-template>\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.isChoice\"\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.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 <sv-ng-string *ngIf=\"cell.hasTitle\" [model]=\"cell.locTitle\"></sv-ng-string>\n <span *ngIf=\"!!cell.requiredText\" [class]=\"question.cssClasses.cellRequiredText\">{{ cell.requiredText }}</span>\n</td>\n</ng-template>", styles: [":host{display:none}\n"], components: [{ type: i1.ActionBarComponent, selector: "sv-action-bar, sv-ng-action-bar", inputs: ["model", "handleClick"] }, { type: i2.PanelComponent, selector: "sv-ng-panel, '[sv-ng-panel]'", inputs: ["model"] }, { 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.SurveyStringComponent, selector: "sv-ng-string, '[sv-ng-string]'", inputs: ["model"] }], directives: [{ type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i7.VisibleDirective, selector: "[visible]", inputs: ["visible"] }, { type: i8.DynamicComponentDirective, selector: "[component]", inputs: ["component"] }] });
49
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: MatrixCellComponent, decorators: [{
50
+ type: Component,
51
+ args: [{ selector: "sv-ng-matrix-cell", styles: [":host { display: none; }"], 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-action-bar *ngIf=\"cell.isActionsCell\" [model]=\"cell.item.getData()\" [handleClick]=\"false\"></sv-action-bar>\n <sv-ng-panel *ngIf=\"cell.hasPanel\" [model]=\"cell.panel\"></sv-ng-panel>\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-template *ngIf=\"!cell.isChoice && cell.question.isDefaultRendering()\" [component]=\"{ name: getComponentName(cell.question), data: { model: cell.question } }\"></ng-template>\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.isChoice\"\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.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 <sv-ng-string *ngIf=\"cell.hasTitle\" [model]=\"cell.locTitle\"></sv-ng-string>\n <span *ngIf=\"!!cell.requiredText\" [class]=\"question.cssClasses.cellRequiredText\">{{ cell.requiredText }}</span>\n</td>\n</ng-template>" }]
52
+ }], propDecorators: { question: [{
53
+ type: Input
54
+ }], cell: [{
55
+ type: Input
56
+ }], cellContainer: [{
57
+ type: ViewChild,
58
+ args: ["cellContainer"]
59
+ }] } });
60
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0cml4Y2VsbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9zdXJ2ZXktYW5ndWxhci11aS9zcmMvcXVlc3Rpb25zL21hdHJpeGNlbGwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vcGFja2FnZXMvc3VydmV5LWFuZ3VsYXItdWkvc3JjL3F1ZXN0aW9ucy9tYXRyaXhjZWxsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWMsS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN4RSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0saUJBQWlCLENBQUM7Ozs7Ozs7Ozs7QUFXOUMsTUFBTSxPQUFPLG1CQUFvQixTQUFRLFdBQXFCO0lBTDlEOztRQVdFLGNBQVMsR0FBWSxLQUFLLENBQUM7S0ErQjVCO0lBN0JDLFFBQVE7UUFDTixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQzVCLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxPQUFpQjtRQUNoQyxJQUFJLE9BQU8sQ0FBQyxZQUFZLEVBQUU7WUFDeEIsT0FBTyxxQkFBcUIsQ0FBQztTQUM5QjtRQUNELE9BQU8sT0FBTyxDQUFDLE9BQU8sRUFBRSxHQUFDLFdBQVcsQ0FBQztJQUN2QyxDQUFDO0lBQ0QsVUFBVTtRQUNSLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDM0IsQ0FBQztJQUNELFlBQVk7UUFDVixJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRO1lBQzNDLE9BQU8sRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsUUFBUSxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDbEUsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBQ0QsZUFBZTtRQUNiLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU07WUFBRSxPQUFPO1FBQzlFLElBQUksT0FBTyxHQUFHO1lBQ1osSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSTtZQUNwQixZQUFZLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRO1lBQ2hDLFdBQVcsRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLGFBQWE7WUFDN0MsR0FBRyxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRztZQUNsQixNQUFNLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTTtTQUM5QixDQUFDO1FBQ0YsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMscUJBQXFCLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUNyRSxDQUFDOztnSEFwQ1UsbUJBQW1CO29HQUFuQixtQkFBbUIsZ1BDWmhDLHExREFzQmM7MkZEVkQsbUJBQW1CO2tCQUwvQixTQUFTOytCQUNFLG1CQUFtQixVQUVyQixDQUFDLDBCQUEwQixDQUFDOzhCQUczQixRQUFRO3NCQUFoQixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFFc0IsYUFBYTtzQkFBeEMsU0FBUzt1QkFBQyxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBJbnB1dCwgVmlld0NoaWxkIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IEJhc2VBbmd1bGFyIH0gZnJvbSBcIi4uL2Jhc2UtYW5ndWxhclwiO1xuaW1wb3J0IHtcbiAgUXVlc3Rpb24sXG4gIFF1ZXN0aW9uTWF0cml4RHJvcGRvd25SZW5kZXJlZENlbGxcbn0gZnJvbSBcInN1cnZleS1jb3JlXCI7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogXCJzdi1uZy1tYXRyaXgtY2VsbFwiLFxuICB0ZW1wbGF0ZVVybDogXCIuL21hdHJpeGNlbGwuY29tcG9uZW50Lmh0bWxcIixcbiAgc3R5bGVzOiBbXCI6aG9zdCB7IGRpc3BsYXk6IG5vbmU7IH1cIl1cbn0pXG5leHBvcnQgY2xhc3MgTWF0cml4Q2VsbENvbXBvbmVudCBleHRlbmRzIEJhc2VBbmd1bGFyPFF1ZXN0aW9uPiB7XG4gIEBJbnB1dCgpIHF1ZXN0aW9uITogUXVlc3Rpb247XG4gIEBJbnB1dCgpIGNlbGwhOiBRdWVzdGlvbk1hdHJpeERyb3Bkb3duUmVuZGVyZWRDZWxsO1xuXG4gIEBWaWV3Q2hpbGQoXCJjZWxsQ29udGFpbmVyXCIpIGNlbGxDb250YWluZXIhOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PjtcblxuICBpc1Zpc2libGU6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBnZXRNb2RlbCgpIHtcbiAgICByZXR1cm4gdGhpcy5jZWxsLnF1ZXN0aW9uO1xuICB9XG5cbiAgZ2V0Q29tcG9uZW50TmFtZShlbGVtZW50OiBRdWVzdGlvbikge1xuICAgIGlmIChlbGVtZW50LmN1c3RvbVdpZGdldCkge1xuICAgICAgcmV0dXJuIFwic3VydmV5LWN1c3RvbXdpZGdldFwiO1xuICAgIH1cbiAgICByZXR1cm4gZWxlbWVudC5nZXRUeXBlKCkrXCItcXVlc3Rpb25cIjtcbiAgfVxuICBnZXRIZWFkZXJzKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuY2VsbC5oZWFkZXJzO1xuICB9XG4gIGdldENlbGxTdHlsZSgpIHtcbiAgICBpZiAoISF0aGlzLmNlbGwud2lkdGggfHwgISF0aGlzLmNlbGwubWluV2lkdGgpXG4gICAgICByZXR1cm4geyB3aWR0aDogdGhpcy5jZWxsLndpZHRoLCBtaW5XaWR0aDogdGhpcy5jZWxsLm1pbldpZHRoIH07XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cbiAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIGlmICghdGhpcy5jZWxsLmhhc1F1ZXN0aW9uIHx8ICF0aGlzLnF1ZXN0aW9uIHx8ICF0aGlzLnF1ZXN0aW9uLnN1cnZleSkgcmV0dXJuO1xuICAgIHZhciBvcHRpb25zID0ge1xuICAgICAgY2VsbDogdGhpcy5jZWxsLmNlbGwsXG4gICAgICBjZWxsUXVlc3Rpb246IHRoaXMuY2VsbC5xdWVzdGlvbixcbiAgICAgIGh0bWxFbGVtZW50OiB0aGlzLmNlbGxDb250YWluZXIubmF0aXZlRWxlbWVudCxcbiAgICAgIHJvdzogdGhpcy5jZWxsLnJvdyxcbiAgICAgIGNvbHVtbjogdGhpcy5jZWxsLmNlbGwuY29sdW1uLFxuICAgIH07XG4gICAgdGhpcy5xdWVzdGlvbi5zdXJ2ZXkubWF0cml4QWZ0ZXJDZWxsUmVuZGVyKHRoaXMucXVlc3Rpb24sIG9wdGlvbnMpO1xuICB9XG59IiwiPG5nLXRlbXBsYXRlICN0ZW1wbGF0ZT5cbiAgPHRkIFtjbGFzc109XCJjZWxsLmNsYXNzTmFtZVwiIFthdHRyLmRhdGEtcmVzcG9uc2l2ZS10aXRsZV09XCJnZXRIZWFkZXJzKClcIiBbdGl0bGVdPVwiY2VsbC5nZXRUaXRsZSgpXCIgW3N0eWxlXT1cImdldENlbGxTdHlsZSgpXCIgW2F0dHIuY29sc3Bhbl09XCJjZWxsLmNvbFNwYW5zXCIgI2NlbGxDb250YWluZXI+XG4gICAgPHN2LWFjdGlvbi1iYXIgKm5nSWY9XCJjZWxsLmlzQWN0aW9uc0NlbGxcIiBbbW9kZWxdPVwiY2VsbC5pdGVtLmdldERhdGEoKVwiIFtoYW5kbGVDbGlja109XCJmYWxzZVwiPjwvc3YtYWN0aW9uLWJhcj5cbiAgICA8c3YtbmctcGFuZWwgKm5nSWY9XCJjZWxsLmhhc1BhbmVsXCIgW21vZGVsXT1cImNlbGwucGFuZWxcIj48L3N2LW5nLXBhbmVsPlxuICAgIDxkaXYgKm5nSWY9XCJjZWxsLmhhc1F1ZXN0aW9uXCIgW2NsYXNzXT1cInF1ZXN0aW9uLmNzc0NsYXNzZXMuY2VsbFF1ZXN0aW9uV3JhcHBlclwiIFt2aXNpYmxlXT1cImNlbGwucXVlc3Rpb24uaXNWaXNpYmxlXCI+XG4gICAgICA8ZGl2ICpuZ0lmPVwiY2VsbC5zaG93RXJyb3JPblRvcCAmJiBjZWxsLnF1ZXN0aW9uLmhhc1Zpc2libGVFcnJvcnNcIiBbZWxlbWVudF09XCJjZWxsLnF1ZXN0aW9uXCIgW2xvY2F0aW9uXT1cIid0b3AnXCIgc3YtbmctZXJyb3JzPjwvZGl2PlxuICAgICAgPG5nLXRlbXBsYXRlICpuZ0lmPVwiIWNlbGwuaXNDaG9pY2UgJiYgY2VsbC5xdWVzdGlvbi5pc0RlZmF1bHRSZW5kZXJpbmcoKVwiIFtjb21wb25lbnRdPVwieyBuYW1lOiBnZXRDb21wb25lbnROYW1lKGNlbGwucXVlc3Rpb24pLCBkYXRhOiB7IG1vZGVsOiBjZWxsLnF1ZXN0aW9uIH0gfVwiPjwvbmctdGVtcGxhdGU+XG4gICAgICA8bmctdGVtcGxhdGUgKm5nSWY9XCIhY2VsbC5pc0Nob2ljZSAmJiAhY2VsbC5xdWVzdGlvbi5pc0RlZmF1bHRSZW5kZXJpbmcoKVwiIFtjb21wb25lbnRdPVwieyBuYW1lOiBjZWxsLnF1ZXN0aW9uLmdldENvbXBvbmVudE5hbWUoKSwgZGF0YTogeyBtb2RlbDogY2VsbC5xdWVzdGlvbiB9IH1cIj5cbiAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICA8c3Ytbmctc2VsZWJhc2UtaXRlbVxuICAgICAgICAqbmdJZj1cImNlbGwuaXNDaG9pY2VcIlxuICAgICAgICBbc2hvd0xhYmVsXT1cImZhbHNlXCJcbiAgICAgICAgW2lucHV0VHlwZV09XCJjZWxsLmlzQ2hlY2tib3ggPyAnY2hlY2tib3gnOiAncmFkaW8nXCJcbiAgICAgICAgW3F1ZXN0aW9uXT1cImNlbGwucXVlc3Rpb25cIlxuICAgICAgICBbbW9kZWxdPVwiY2VsbC5pdGVtXCJcbiAgICAgID48L3N2LW5nLXNlbGViYXNlLWl0ZW0+XG4gICAgICA8ZGl2ICpuZ0lmPVwiY2VsbC5zaG93RXJyb3JPbkJvdHRvbSAmJiBjZWxsLnF1ZXN0aW9uLmhhc1Zpc2libGVFcnJvcnNcIiBbZWxlbWVudF09XCJjZWxsLnF1ZXN0aW9uXCIgW2xvY2F0aW9uXT1cIid0b3AnXCIgc3YtbmctZXJyb3JzPjwvZGl2PlxuICAgICAgPGRpdiAqbmdJZj1cImNlbGwucXVlc3Rpb24uaXNFcnJvcnNNb2RlVG9vbHRpcCAmJiBjZWxsLnF1ZXN0aW9uLmhhc1Zpc2libGVFcnJvcnNcIiBbZWxlbWVudF09XCJjZWxsLnF1ZXN0aW9uXCIgW2xvY2F0aW9uXT1cIid0b29sdGlwJ1wiIHN2LW5nLWVycm9ycz48L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8c3Ytbmctc3RyaW5nICpuZ0lmPVwiY2VsbC5oYXNUaXRsZVwiIFttb2RlbF09XCJjZWxsLmxvY1RpdGxlXCI+PC9zdi1uZy1zdHJpbmc+XG4gICAgPHNwYW4gKm5nSWY9XCIhIWNlbGwucmVxdWlyZWRUZXh0XCIgW2NsYXNzXT1cInF1ZXN0aW9uLmNzc0NsYXNzZXMuY2VsbFJlcXVpcmVkVGV4dFwiPnt7IGNlbGwucmVxdWlyZWRUZXh0IH19PC9zcGFuPlxuPC90ZD5cbjwvbmctdGVtcGxhdGU+Il19
@@ -0,0 +1,16 @@
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: "13.0.3", ngImport: i0, type: MatrixDropdownComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
10
+ MatrixDropdownComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: MatrixDropdownComponent, selector: "sv-ng-matrixdropdown-question", usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <div [style]=\"{ overflowX: model.showHorizontalScroll ? 'scroll' : '' }\" #contentElement>\n <sv-ng-matrix-table *ngIf=\"model.renderedTable?.showTable\" [question]=\"model\" [table]=\"model.renderedTable\"></sv-ng-matrix-table>\n </div>\n</ng-template>", 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: "13.0.3", ngImport: i0, type: MatrixDropdownComponent, decorators: [{
12
+ type: Component,
13
+ args: [{ selector: "sv-ng-matrixdropdown-question", template: "<ng-template #template>\n <div [style]=\"{ overflowX: model.showHorizontalScroll ? 'scroll' : '' }\" #contentElement>\n <sv-ng-matrix-table *ngIf=\"model.renderedTable?.showTable\" [question]=\"model\" [table]=\"model.renderedTable\"></sv-ng-matrix-table>\n </div>\n</ng-template>" }]
14
+ }] });
15
+ AngularComponentFactory.Instance.registerComponent("matrixdropdown-question", MatrixDropdownComponent);
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0cml4ZHJvcGRvd24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvc3VydmV5LWFuZ3VsYXItdWkvc3JjL3F1ZXN0aW9ucy9tYXRyaXhkcm9wZG93bi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wYWNrYWdlcy9zdXJ2ZXktYW5ndWxhci11aS9zcmMvcXVlc3Rpb25zL21hdHJpeGRyb3Bkb3duLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUU5QyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7OztBQU0vRCxNQUFNLE9BQU8sdUJBQXdCLFNBQVEsZUFBNEM7O29IQUE1RSx1QkFBdUI7d0dBQXZCLHVCQUF1Qiw0RkNUcEMsK1JBSWM7MkZES0QsdUJBQXVCO2tCQUpuQyxTQUFTOytCQUNFLCtCQUErQjs7QUFLM0MsdUJBQXVCLENBQUMsUUFBUSxDQUFDLGlCQUFpQixDQUFDLHlCQUF5QixFQUFFLHVCQUF1QixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgUXVlc3Rpb25Bbmd1bGFyIH0gZnJvbSBcIi4uL3F1ZXN0aW9uXCI7XG5pbXBvcnQgeyBRdWVzdGlvbk1hdHJpeERyb3Bkb3duTW9kZWwgfSBmcm9tIFwic3VydmV5LWNvcmVcIjtcbmltcG9ydCB7IEFuZ3VsYXJDb21wb25lbnRGYWN0b3J5IH0gZnJvbSBcIi4uL2NvbXBvbmVudC1mYWN0b3J5XCI7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogXCJzdi1uZy1tYXRyaXhkcm9wZG93bi1xdWVzdGlvblwiLFxuICB0ZW1wbGF0ZVVybDogXCIuL21hdHJpeGRyb3Bkb3duLmNvbXBvbmVudC5odG1sXCJcbn0pXG5leHBvcnQgY2xhc3MgTWF0cml4RHJvcGRvd25Db21wb25lbnQgZXh0ZW5kcyBRdWVzdGlvbkFuZ3VsYXI8UXVlc3Rpb25NYXRyaXhEcm9wZG93bk1vZGVsPiB7fVxuXG5Bbmd1bGFyQ29tcG9uZW50RmFjdG9yeS5JbnN0YW5jZS5yZWdpc3RlckNvbXBvbmVudChcIm1hdHJpeGRyb3Bkb3duLXF1ZXN0aW9uXCIsIE1hdHJpeERyb3Bkb3duQ29tcG9uZW50KTsiLCI8bmctdGVtcGxhdGUgI3RlbXBsYXRlPlxuICA8ZGl2IFtzdHlsZV09XCJ7IG92ZXJmbG93WDogbW9kZWwuc2hvd0hvcml6b250YWxTY3JvbGwgPyAnc2Nyb2xsJyA6ICcnIH1cIiAjY29udGVudEVsZW1lbnQ+XG4gICAgPHN2LW5nLW1hdHJpeC10YWJsZSAqbmdJZj1cIm1vZGVsLnJlbmRlcmVkVGFibGU/LnNob3dUYWJsZVwiIFtxdWVzdGlvbl09XCJtb2RlbFwiIFt0YWJsZV09XCJtb2RlbC5yZW5kZXJlZFRhYmxlXCI+PC9zdi1uZy1tYXRyaXgtdGFibGU+XG4gIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT4iXX0=
@@ -0,0 +1,17 @@
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: "13.0.3", ngImport: i0, type: MatrixDynamicComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
11
+ MatrixDynamicComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: MatrixDynamicComponent, selector: "sv-ng-matrixdynamic-question", usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <div [style]=\"{ overflowX: model.showHorizontalScroll ? 'scroll' : '' }\" #contentElement>\n <div *ngIf=\"model.renderedTable.showAddRowOnTop\" [class]=\"model.cssClasses.footer\">\n <ng-container *ngTemplateOutlet=\"addRowButton\"></ng-container>\n </div>\n <sv-ng-matrix-table *ngIf=\"model.renderedTable?.showTable\" [question]=\"model\" [table]=\"model.renderedTable\"></sv-ng-matrix-table>\n <div *ngIf=\"!model.renderedTable.showTable\" [class]=\"model.cssClasses.emptyRowsSection\">\n <div [class]=\"model.cssClasses.emptyRowsText\" [model]=\"model.locEmptyRowsText\" sv-ng-string></div>\n <ng-container *ngTemplateOutlet=\"addRowButton\"></ng-container>\n </div>\n <div *ngIf=\"model.renderedTable.showAddRowOnBottom\" [class]=\"model.cssClasses.footer\">\n <ng-container *ngTemplateOutlet=\"addRowButton\"></ng-container>\n </div>\n </div>\n <ng-template #addRowButton>\n <button type=\"button\" [class]=\"model.getAddRowButtonCss(true)\" (click)=\"model.addRowUI()\">\n <sv-ng-string [model]=\"model.locAddRowText\" ></sv-ng-string>\n <span [class]=\"model.cssClasses.iconAdd\"></span>\n </button>\n </ng-template>\n</ng-template>", 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: "13.0.3", ngImport: i0, type: MatrixDynamicComponent, decorators: [{
13
+ type: Component,
14
+ args: [{ selector: "sv-ng-matrixdynamic-question", template: "<ng-template #template>\n <div [style]=\"{ overflowX: model.showHorizontalScroll ? 'scroll' : '' }\" #contentElement>\n <div *ngIf=\"model.renderedTable.showAddRowOnTop\" [class]=\"model.cssClasses.footer\">\n <ng-container *ngTemplateOutlet=\"addRowButton\"></ng-container>\n </div>\n <sv-ng-matrix-table *ngIf=\"model.renderedTable?.showTable\" [question]=\"model\" [table]=\"model.renderedTable\"></sv-ng-matrix-table>\n <div *ngIf=\"!model.renderedTable.showTable\" [class]=\"model.cssClasses.emptyRowsSection\">\n <div [class]=\"model.cssClasses.emptyRowsText\" [model]=\"model.locEmptyRowsText\" sv-ng-string></div>\n <ng-container *ngTemplateOutlet=\"addRowButton\"></ng-container>\n </div>\n <div *ngIf=\"model.renderedTable.showAddRowOnBottom\" [class]=\"model.cssClasses.footer\">\n <ng-container *ngTemplateOutlet=\"addRowButton\"></ng-container>\n </div>\n </div>\n <ng-template #addRowButton>\n <button type=\"button\" [class]=\"model.getAddRowButtonCss(true)\" (click)=\"model.addRowUI()\">\n <sv-ng-string [model]=\"model.locAddRowText\" ></sv-ng-string>\n <span [class]=\"model.cssClasses.iconAdd\"></span>\n </button>\n </ng-template>\n</ng-template>" }]
15
+ }] });
16
+ AngularComponentFactory.Instance.registerComponent("matrixdynamic-question", MatrixDynamicComponent);
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0cml4ZHluYW1pYy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9zdXJ2ZXktYW5ndWxhci11aS9zcmMvcXVlc3Rpb25zL21hdHJpeGR5bmFtaWMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vcGFja2FnZXMvc3VydmV5LWFuZ3VsYXItdWkvc3JjL3F1ZXN0aW9ucy9tYXRyaXhkeW5hbWljLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUU5QyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7Ozs7QUFNL0QsTUFBTSxPQUFPLHNCQUF1QixTQUFRLGVBQTJDOzttSEFBMUUsc0JBQXNCO3VHQUF0QixzQkFBc0IsMkZDVG5DLGt0Q0FvQmM7MkZEWEQsc0JBQXNCO2tCQUpsQyxTQUFTOytCQUNFLDhCQUE4Qjs7QUFLMUMsdUJBQXVCLENBQUMsUUFBUSxDQUFDLGlCQUFpQixDQUFDLHdCQUF3QixFQUFFLHNCQUFzQixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgUXVlc3Rpb25Bbmd1bGFyIH0gZnJvbSBcIi4uL3F1ZXN0aW9uXCI7XG5pbXBvcnQgeyBRdWVzdGlvbk1hdHJpeER5bmFtaWNNb2RlbCB9IGZyb20gXCJzdXJ2ZXktY29yZVwiO1xuaW1wb3J0IHsgQW5ndWxhckNvbXBvbmVudEZhY3RvcnkgfSBmcm9tIFwiLi4vY29tcG9uZW50LWZhY3RvcnlcIjtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiBcInN2LW5nLW1hdHJpeGR5bmFtaWMtcXVlc3Rpb25cIixcbiAgdGVtcGxhdGVVcmw6IFwiLi9tYXRyaXhkeW5hbWljLmNvbXBvbmVudC5odG1sXCJcbn0pXG5leHBvcnQgY2xhc3MgTWF0cml4RHluYW1pY0NvbXBvbmVudCBleHRlbmRzIFF1ZXN0aW9uQW5ndWxhcjxRdWVzdGlvbk1hdHJpeER5bmFtaWNNb2RlbD4ge31cblxuQW5ndWxhckNvbXBvbmVudEZhY3RvcnkuSW5zdGFuY2UucmVnaXN0ZXJDb21wb25lbnQoXCJtYXRyaXhkeW5hbWljLXF1ZXN0aW9uXCIsIE1hdHJpeER5bmFtaWNDb21wb25lbnQpOyIsIjxuZy10ZW1wbGF0ZSAjdGVtcGxhdGU+XG4gIDxkaXYgW3N0eWxlXT1cInsgb3ZlcmZsb3dYOiBtb2RlbC5zaG93SG9yaXpvbnRhbFNjcm9sbCA/ICdzY3JvbGwnIDogJycgfVwiICNjb250ZW50RWxlbWVudD5cbiAgICA8ZGl2ICpuZ0lmPVwibW9kZWwucmVuZGVyZWRUYWJsZS5zaG93QWRkUm93T25Ub3BcIiBbY2xhc3NdPVwibW9kZWwuY3NzQ2xhc3Nlcy5mb290ZXJcIj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJhZGRSb3dCdXR0b25cIj48L25nLWNvbnRhaW5lcj5cbiAgICA8L2Rpdj5cbiAgICA8c3YtbmctbWF0cml4LXRhYmxlICpuZ0lmPVwibW9kZWwucmVuZGVyZWRUYWJsZT8uc2hvd1RhYmxlXCIgW3F1ZXN0aW9uXT1cIm1vZGVsXCIgW3RhYmxlXT1cIm1vZGVsLnJlbmRlcmVkVGFibGVcIj48L3N2LW5nLW1hdHJpeC10YWJsZT5cbiAgICA8ZGl2ICpuZ0lmPVwiIW1vZGVsLnJlbmRlcmVkVGFibGUuc2hvd1RhYmxlXCIgW2NsYXNzXT1cIm1vZGVsLmNzc0NsYXNzZXMuZW1wdHlSb3dzU2VjdGlvblwiPlxuICAgICAgPGRpdiBbY2xhc3NdPVwibW9kZWwuY3NzQ2xhc3Nlcy5lbXB0eVJvd3NUZXh0XCIgW21vZGVsXT1cIm1vZGVsLmxvY0VtcHR5Um93c1RleHRcIiBzdi1uZy1zdHJpbmc+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: "13.0.3", ngImport: i0, type: MatrixRequiredHeader, deps: null, target: i0.ɵɵFactoryTarget.Component });
11
+ MatrixRequiredHeader.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", 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}\n"], directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
12
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", 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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0cml4cmVxdWlyZWRoZWFkZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvc3VydmV5LWFuZ3VsYXItdWkvc3JjL3F1ZXN0aW9ucy9tYXRyaXhyZXF1aXJlZGhlYWRlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7QUFXOUMsTUFBTSxPQUFPLG9CQUFxQixTQUFRLFdBQWlDO0lBR3pFLFFBQVE7UUFDTixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDckIsQ0FBQzs7aUhBTFUsb0JBQW9CO3FHQUFwQixvQkFBb0IsNklBRnJCLDhKQUE4SjsyRkFFN0osb0JBQW9CO2tCQUxoQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSw0QkFBNEI7b0JBQ3RDLE1BQU0sRUFBRSxDQUFDLDBCQUEwQixDQUFDO29CQUNwQyxRQUFRLEVBQUUsOEpBQThKO2lCQUN6Szs4QkFFVSxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgQmFzZUFuZ3VsYXIgfSBmcm9tIFwiLi4vYmFzZS1hbmd1bGFyXCI7XG5pbXBvcnQge1xuICBNYXRyaXhEcm9wZG93bkNvbHVtbixcbiAgUXVlc3Rpb25NYXRyaXhEcm9wZG93bk1vZGVsQmFzZSxcbn0gZnJvbSBcInN1cnZleS1jb3JlXCI7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogXCJzdi1uZy1tYXRyaXhoZWFkZXJyZXF1aXJlZFwiLFxuICBzdHlsZXM6IFtcIjpob3N0IHsgZGlzcGxheTogbm9uZTsgfVwiXSxcbiAgdGVtcGxhdGU6IFwiPG5nLXRlbXBsYXRlICN0ZW1wbGF0ZT48c3BhbiAqbmdJZj0nY29sdW1uLmlzUmVuZGVyZWRSZXF1aXJlZCcgW2NsYXNzXT0ncXVlc3Rpb24uY3NzQ2xhc3Nlcy5jZWxsUmVxdWlyZWRUZXh0Jz57eyBjb2x1bW4ucmVxdWlyZWRUZXh0IH19PC9zcGFuPjwvbmctdGVtcGxhdGU+XCJcbn0pXG5leHBvcnQgY2xhc3MgTWF0cml4UmVxdWlyZWRIZWFkZXIgZXh0ZW5kcyBCYXNlQW5ndWxhcjxNYXRyaXhEcm9wZG93bkNvbHVtbj4ge1xuICBASW5wdXQoKSBjb2x1bW4hOiBNYXRyaXhEcm9wZG93bkNvbHVtbjtcbiAgQElucHV0KCkgcXVlc3Rpb24hOiBRdWVzdGlvbk1hdHJpeERyb3Bkb3duTW9kZWxCYXNlO1xuICBnZXRNb2RlbCgpIHtcbiAgICByZXR1cm4gdGhpcy5jb2x1bW47XG4gIH1cbn0iXX0=
@@ -0,0 +1,29 @@
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 "../survey-string.component";
5
+ import * as i2 from "./matrixrequiredheader.component";
6
+ import * as i3 from "./matrixcell.component";
7
+ import * as i4 from "@angular/common";
8
+ export class MatrixTableComponent extends BaseAngular {
9
+ getModel() {
10
+ return this.table;
11
+ }
12
+ trackCellBy(_, cell) {
13
+ return cell.id;
14
+ }
15
+ trackRowBy(index, row) {
16
+ return row.id;
17
+ }
18
+ }
19
+ MatrixTableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: MatrixTableComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
20
+ MatrixTableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: MatrixTableComponent, selector: "sv-ng-matrix-table", inputs: { question: "question", table: "table" }, usesInheritance: true, ngImport: i0, template: "<table [class]=\"question.getTableCss()\">\n <thead *ngIf=\"table.showHeader\">\n <tr>\n <th\n [class]=\"cell.className\"\n *ngFor=\"let cell of table.headerRow.cells; trackBy: trackCellBy\"\n [style]=\"{ minWidth: cell.minWidth, width: cell.width }\"\n >\n <sv-ng-string *ngIf=\"cell.hasTitle\" [model]=\"cell.locTitle\"></sv-ng-string>\n <sv-ng-matrixheaderrequired *ngIf=\"!!cell.column\" [column]=\"cell.column\" [question]=\"question\"></sv-ng-matrixheaderrequired>\n </th>\n </tr>\n </thead>\n <tbody>\n <tr *ngFor=\"let row of table.rows; trackBy: trackRowBy\" [class]=\"row.className\">\n <sv-ng-matrix-cell\n [cell]=\"cell\"\n [question]=\"question\"\n *ngFor=\"let cell of row.cells; trackBy: trackCellBy\"\n ></sv-ng-matrix-cell>\n </tr>\n </tbody>\n <tfoot *ngIf=\"table.showFooter\">\n <tr>\n <sv-ng-matrix-cell [cell]=\"cell\" [question]=\"question\" *ngFor=\"let cell of table.footerRow.cells; trackBy: trackCellBy\">\n </sv-ng-matrix-cell>\n </tr>\n </tfoot>\n</table>", components: [{ type: i1.SurveyStringComponent, selector: "sv-ng-string, '[sv-ng-string]'", inputs: ["model"] }, { type: i2.MatrixRequiredHeader, selector: "sv-ng-matrixheaderrequired", inputs: ["column", "question"] }, { type: i3.MatrixCellComponent, selector: "sv-ng-matrix-cell", inputs: ["question", "cell"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] });
21
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: MatrixTableComponent, decorators: [{
22
+ type: Component,
23
+ args: [{ selector: "sv-ng-matrix-table", template: "<table [class]=\"question.getTableCss()\">\n <thead *ngIf=\"table.showHeader\">\n <tr>\n <th\n [class]=\"cell.className\"\n *ngFor=\"let cell of table.headerRow.cells; trackBy: trackCellBy\"\n [style]=\"{ minWidth: cell.minWidth, width: cell.width }\"\n >\n <sv-ng-string *ngIf=\"cell.hasTitle\" [model]=\"cell.locTitle\"></sv-ng-string>\n <sv-ng-matrixheaderrequired *ngIf=\"!!cell.column\" [column]=\"cell.column\" [question]=\"question\"></sv-ng-matrixheaderrequired>\n </th>\n </tr>\n </thead>\n <tbody>\n <tr *ngFor=\"let row of table.rows; trackBy: trackRowBy\" [class]=\"row.className\">\n <sv-ng-matrix-cell\n [cell]=\"cell\"\n [question]=\"question\"\n *ngFor=\"let cell of row.cells; trackBy: trackCellBy\"\n ></sv-ng-matrix-cell>\n </tr>\n </tbody>\n <tfoot *ngIf=\"table.showFooter\">\n <tr>\n <sv-ng-matrix-cell [cell]=\"cell\" [question]=\"question\" *ngFor=\"let cell of table.footerRow.cells; trackBy: trackCellBy\">\n </sv-ng-matrix-cell>\n </tr>\n </tfoot>\n</table>" }]
24
+ }], propDecorators: { question: [{
25
+ type: Input
26
+ }], table: [{
27
+ type: Input
28
+ }] } });
29
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0cml4dGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvc3VydmV5LWFuZ3VsYXItdWkvc3JjL3F1ZXN0aW9ucy9tYXRyaXh0YWJsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wYWNrYWdlcy9zdXJ2ZXktYW5ndWxhci11aS9zcmMvcXVlc3Rpb25zL21hdHJpeHRhYmxlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7Ozs7O0FBTzlDLE1BQU0sT0FBTyxvQkFBcUIsU0FBUSxXQUFnRDtJQUc5RSxRQUFRO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztJQUNwQixDQUFDO0lBQ00sV0FBVyxDQUFDLENBQVMsRUFBRSxJQUFTO1FBQ3JDLE9BQU8sSUFBSSxDQUFDLEVBQUUsQ0FBQztJQUNqQixDQUFDO0lBQ00sVUFBVSxDQUFDLEtBQWEsRUFBRSxHQUFRO1FBQ3ZDLE9BQU8sR0FBRyxDQUFDLEVBQUUsQ0FBQztJQUNoQixDQUFDOztpSEFYVSxvQkFBb0I7cUdBQXBCLG9CQUFvQixtSUNSakMsNmtDQTRCUTsyRkRwQkssb0JBQW9CO2tCQUpoQyxTQUFTOytCQUNFLG9CQUFvQjs4QkFJckIsUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IEJhc2VBbmd1bGFyIH0gZnJvbSBcIi4uL2Jhc2UtYW5ndWxhclwiO1xuaW1wb3J0IHsgUXVlc3Rpb25NYXRyaXhEcm9wZG93bk1vZGVsQmFzZSwgUXVlc3Rpb25NYXRyaXhEcm9wZG93blJlbmRlcmVkVGFibGUgfSBmcm9tIFwic3VydmV5LWNvcmVcIjtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiBcInN2LW5nLW1hdHJpeC10YWJsZVwiLFxuICB0ZW1wbGF0ZVVybDogXCIuL21hdHJpeHRhYmxlLmNvbXBvbmVudC5odG1sXCJcbn0pXG5leHBvcnQgY2xhc3MgTWF0cml4VGFibGVDb21wb25lbnQgZXh0ZW5kcyBCYXNlQW5ndWxhcjxRdWVzdGlvbk1hdHJpeERyb3Bkb3duUmVuZGVyZWRUYWJsZT4ge1xuICBASW5wdXQoKSBxdWVzdGlvbiE6IFF1ZXN0aW9uTWF0cml4RHJvcGRvd25Nb2RlbEJhc2U7XG4gIEBJbnB1dCgpIHRhYmxlITogUXVlc3Rpb25NYXRyaXhEcm9wZG93blJlbmRlcmVkVGFibGU7XG4gIHByb3RlY3RlZCBnZXRNb2RlbCgpOiBRdWVzdGlvbk1hdHJpeERyb3Bkb3duUmVuZGVyZWRUYWJsZSB7XG4gICAgcmV0dXJuIHRoaXMudGFibGU7XG4gIH1cbiAgcHVibGljIHRyYWNrQ2VsbEJ5KF86IG51bWJlciwgY2VsbDogYW55KTogc3RyaW5nIHtcbiAgICByZXR1cm4gY2VsbC5pZDtcbiAgfVxuICBwdWJsaWMgdHJhY2tSb3dCeShpbmRleDogbnVtYmVyLCByb3c6IGFueSk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHJvdy5pZDtcbiAgfVxufVxuIiwiPHRhYmxlIFtjbGFzc109XCJxdWVzdGlvbi5nZXRUYWJsZUNzcygpXCI+XG4gIDx0aGVhZCAqbmdJZj1cInRhYmxlLnNob3dIZWFkZXJcIj5cbiAgICA8dHI+XG4gICAgICA8dGhcbiAgICAgICAgW2NsYXNzXT1cImNlbGwuY2xhc3NOYW1lXCJcbiAgICAgICAgKm5nRm9yPVwibGV0IGNlbGwgb2YgdGFibGUuaGVhZGVyUm93LmNlbGxzOyB0cmFja0J5OiB0cmFja0NlbGxCeVwiXG4gICAgICAgIFtzdHlsZV09XCJ7IG1pbldpZHRoOiBjZWxsLm1pbldpZHRoLCB3aWR0aDogY2VsbC53aWR0aCB9XCJcbiAgICAgID5cbiAgICAgICAgPHN2LW5nLXN0cmluZyAqbmdJZj1cImNlbGwuaGFzVGl0bGVcIiBbbW9kZWxdPVwiY2VsbC5sb2NUaXRsZVwiPjwvc3Ytbmctc3RyaW5nPlxuICAgICAgICA8c3YtbmctbWF0cml4aGVhZGVycmVxdWlyZWQgKm5nSWY9XCIhIWNlbGwuY29sdW1uXCIgW2NvbHVtbl09XCJjZWxsLmNvbHVtblwiIFtxdWVzdGlvbl09XCJxdWVzdGlvblwiPjwvc3YtbmctbWF0cml4aGVhZGVycmVxdWlyZWQ+XG4gICAgICA8L3RoPlxuICAgIDwvdHI+XG4gIDwvdGhlYWQ+XG4gIDx0Ym9keT5cbiAgICA8dHIgKm5nRm9yPVwibGV0IHJvdyBvZiB0YWJsZS5yb3dzOyB0cmFja0J5OiB0cmFja1Jvd0J5XCIgW2NsYXNzXT1cInJvdy5jbGFzc05hbWVcIj5cbiAgICAgIDxzdi1uZy1tYXRyaXgtY2VsbFxuICAgICAgICBbY2VsbF09XCJjZWxsXCJcbiAgICAgICAgW3F1ZXN0aW9uXT1cInF1ZXN0aW9uXCJcbiAgICAgICAgKm5nRm9yPVwibGV0IGNlbGwgb2Ygcm93LmNlbGxzOyB0cmFja0J5OiB0cmFja0NlbGxCeVwiXG4gICAgICA+PC9zdi1uZy1tYXRyaXgtY2VsbD5cbiAgICA8L3RyPlxuICA8L3Rib2R5PlxuICA8dGZvb3QgKm5nSWY9XCJ0YWJsZS5zaG93Rm9vdGVyXCI+XG4gICAgPHRyPlxuICAgICAgPHN2LW5nLW1hdHJpeC1jZWxsIFtjZWxsXT1cImNlbGxcIiBbcXVlc3Rpb25dPVwicXVlc3Rpb25cIiAqbmdGb3I9XCJsZXQgY2VsbCBvZiB0YWJsZS5mb290ZXJSb3cuY2VsbHM7IHRyYWNrQnk6IHRyYWNrQ2VsbEJ5XCI+XG4gICAgICA8L3N2LW5nLW1hdHJpeC1jZWxsPlxuICAgIDwvdHI+XG4gIDwvdGZvb3Q+XG48L3RhYmxlPiJdfQ==