survey-angular-ui 1.9.72 → 1.9.75

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (232) hide show
  1. package/README.md +23 -192
  2. package/angular-ui.d.ts +2 -0
  3. package/angular-ui.module.d.ts +82 -80
  4. package/bundles/survey-angular-ui.umd.js +4338 -0
  5. package/bundles/survey-angular-ui.umd.js.map +1 -0
  6. package/component-factory.d.ts +2 -2
  7. package/components/character-counter/character-counter.component.d.ts +10 -0
  8. package/components/rating/rating-item.component.d.ts +13 -0
  9. package/esm2015/angular-ui.js +105 -0
  10. package/esm2015/angular-ui.module.js +188 -0
  11. package/esm2015/base-angular.js +128 -0
  12. package/esm2015/comment-other.component.js +35 -0
  13. package/esm2015/comment.component.js +24 -0
  14. package/esm2015/component-factory.js +26 -0
  15. package/esm2015/components/action-bar/action-bar-item-dropdown.component.js +36 -0
  16. package/esm2015/components/action-bar/action-bar-item.component.js +26 -0
  17. package/esm2015/components/action-bar/action-bar.component.js +47 -0
  18. package/esm2015/components/action-bar/action.component.js +31 -0
  19. package/esm2015/components/brand-info/brand-info.component.js +16 -0
  20. package/esm2015/components/character-counter/character-counter.component.js +25 -0
  21. package/esm2015/components/dropdown/dropdown.component.js +76 -0
  22. package/esm2015/components/element-header/element-header.component.js +35 -0
  23. package/esm2015/components/element-title/dynamic-head.component.js +24 -0
  24. package/esm2015/components/element-title/element-title.component.js +21 -0
  25. package/esm2015/components/element-title/title-actions.component.js +21 -0
  26. package/esm2015/components/list/list-item.component.js +52 -0
  27. package/esm2015/components/list/list.component.js +55 -0
  28. package/esm2015/components/matrix-actions/detail-button/detail-button.component.js +28 -0
  29. package/esm2015/components/matrix-actions/drag-drop-icon/drag-drop-icon.js +24 -0
  30. package/esm2015/components/matrix-actions/remove-button/remove-button.component.js +28 -0
  31. package/esm2015/components/notifier/notifier.component.js +26 -0
  32. package/esm2015/components/paneldynamic-actions/paneldynamic-add-btn.component.js +38 -0
  33. package/esm2015/components/paneldynamic-actions/paneldynamic-next-btn.component.js +21 -0
  34. package/esm2015/components/paneldynamic-actions/paneldynamic-prev-btn.component.js +21 -0
  35. package/esm2015/components/paneldynamic-actions/paneldynamic-progress-text.component.js +17 -0
  36. package/esm2015/components/paneldynamic-actions/paneldynamic-remove-btn.component.js +20 -0
  37. package/esm2015/components/popup/modal-container.component.js +46 -0
  38. package/esm2015/components/popup/popup-container.component.js +59 -0
  39. package/esm2015/components/popup/popup-pointer.component.js +25 -0
  40. package/esm2015/components/popup/popup.component.js +45 -0
  41. package/esm2015/components/popup/popup.service.js +26 -0
  42. package/esm2015/components/progress/buttons/progress.component.js +71 -0
  43. package/esm2015/components/progress/default/progress.component.js +30 -0
  44. package/esm2015/components/rating/rating-item.component.js +34 -0
  45. package/esm2015/components/renderAs/boolean-checkbox/boolean-checkbox.component.js +24 -0
  46. package/esm2015/components/renderAs/boolean-radio/boolean-radio-item.component.js +25 -0
  47. package/esm2015/components/renderAs/boolean-radio/boolean-radio.component.js +21 -0
  48. package/esm2015/components/renderAs/dropdown-select/dropdown-option-item.component.js +23 -0
  49. package/esm2015/components/renderAs/dropdown-select/dropdown-select.component.js +41 -0
  50. package/esm2015/components/renderAs/rating-dropdown/rating-dropdown.component.js +21 -0
  51. package/esm2015/components/skeleton/skeleton.component.js +20 -0
  52. package/esm2015/components/skeleton.component.js +19 -0
  53. package/esm2015/components/survey-actions/survey-nav-btn.component.js +26 -0
  54. package/esm2015/components/survey-header/logo-image.component.js +24 -0
  55. package/esm2015/components/survey-header/survey-header.component.js +33 -0
  56. package/esm2015/components/svg-icon/svg-icon.component.js +68 -0
  57. package/esm2015/components/tagbox/tagbox-filter.component.js +26 -0
  58. package/esm2015/components/tagbox/tagbox-item.component.js +30 -0
  59. package/esm2015/components/tagbox/tagbox.component.js +52 -0
  60. package/esm2015/components/timer-panel/timer-panel.component.js +35 -0
  61. package/esm2015/element.component.js +59 -0
  62. package/esm2015/embedded-view-content.component.js +25 -0
  63. package/esm2015/errors.component.js +61 -0
  64. package/esm2015/page.component.js +40 -0
  65. package/esm2015/panel.component.js +42 -0
  66. package/esm2015/popup.survey.component.js +49 -0
  67. package/esm2015/question.component.js +58 -0
  68. package/esm2015/question.js +35 -0
  69. package/esm2015/questions/boolean.component.js +23 -0
  70. package/esm2015/questions/button-group/button-group-item.component.js +33 -0
  71. package/esm2015/questions/button-group/button-group.component.js +17 -0
  72. package/esm2015/questions/checkbox-item.component.js +28 -0
  73. package/esm2015/questions/checkbox.component.js +20 -0
  74. package/esm2015/questions/comment.component.js +22 -0
  75. package/esm2015/questions/composite.component.js +21 -0
  76. package/esm2015/questions/custom.component.js +27 -0
  77. package/esm2015/questions/customwidget.component.js +54 -0
  78. package/esm2015/questions/dropdown.component.js +20 -0
  79. package/esm2015/questions/expression.component.js +17 -0
  80. package/esm2015/questions/file.component.js +29 -0
  81. package/esm2015/questions/html.component.js +29 -0
  82. package/esm2015/questions/image.component.js +29 -0
  83. package/esm2015/questions/imagepicker-item.component.js +52 -0
  84. package/esm2015/questions/imagepicker.component.js +32 -0
  85. package/esm2015/questions/matrix-row.component.js +31 -0
  86. package/esm2015/questions/matrix.component.js +40 -0
  87. package/esm2015/questions/matrixcell.component.js +94 -0
  88. package/esm2015/questions/matrixdropdown.component.js +19 -0
  89. package/esm2015/questions/matrixdynamic.component.js +20 -0
  90. package/esm2015/questions/matrixrequiredheader.component.js +24 -0
  91. package/esm2015/questions/matrixtable.component.js +34 -0
  92. package/esm2015/questions/multipletext.component.js +28 -0
  93. package/esm2015/questions/multipletextitem.component.js +26 -0
  94. package/esm2015/questions/paneldynamic.component.js +82 -0
  95. package/esm2015/questions/radiogroup-item.component.js +22 -0
  96. package/esm2015/questions/radiogroup.component.js +25 -0
  97. package/esm2015/questions/ranking-item.component.js +27 -0
  98. package/esm2015/questions/ranking.component.js +34 -0
  99. package/esm2015/questions/rating.component.js +27 -0
  100. package/esm2015/questions/selectbase-item.js +37 -0
  101. package/esm2015/questions/selectbase.component.js +53 -0
  102. package/esm2015/questions/signature.component.js +20 -0
  103. package/esm2015/questions/tagbox.component.js +20 -0
  104. package/esm2015/questions/text.component.js +21 -0
  105. package/esm2015/row.component.js +63 -0
  106. package/esm2015/string-editor.component.js +29 -0
  107. package/esm2015/string-viewer.component.js +41 -0
  108. package/esm2015/survey-angular-ui.js +5 -0
  109. package/esm2015/survey-content.component.js +72 -0
  110. package/esm2015/survey-string.component.js +17 -0
  111. package/esm2015/survey.component.js +32 -0
  112. package/esm2015/template-renderer.component.js +27 -0
  113. package/esm2015/utils/dynamic.directive.js +54 -0
  114. package/esm2015/utils/ng-key2click.directive.js +69 -0
  115. package/esm2015/utils/ng-show.directive.js +27 -0
  116. package/esm2015/utils/safe-html.pipe.js +18 -0
  117. package/esm2015/utils/safe-url.pipe.js +33 -0
  118. package/esm2020/angular-ui.mjs +103 -103
  119. package/esm2020/angular-ui.module.mjs +184 -184
  120. package/esm2020/base-angular.mjs +128 -128
  121. package/esm2020/comment-other.component.mjs +32 -32
  122. package/esm2020/comment.component.mjs +21 -21
  123. package/esm2020/component-factory.mjs +26 -26
  124. package/esm2020/components/action-bar/action-bar-item-dropdown.component.mjs +32 -32
  125. package/esm2020/components/action-bar/action-bar-item.component.mjs +22 -22
  126. package/esm2020/components/action-bar/action-bar.component.mjs +43 -43
  127. package/esm2020/components/action-bar/action.component.mjs +27 -27
  128. package/esm2020/components/brand-info/brand-info.component.mjs +13 -13
  129. package/esm2020/components/dropdown/dropdown.component.mjs +66 -66
  130. package/esm2020/components/element-header/element-header.component.mjs +32 -32
  131. package/esm2020/components/element-title/dynamic-head.component.mjs +20 -20
  132. package/esm2020/components/element-title/element-title.component.mjs +17 -17
  133. package/esm2020/components/element-title/title-actions.component.mjs +17 -17
  134. package/esm2020/components/list/list-item.component.mjs +48 -48
  135. package/esm2020/components/list/list.component.mjs +50 -50
  136. package/esm2020/components/matrix-actions/detail-button/detail-button.component.mjs +25 -25
  137. package/esm2020/components/matrix-actions/drag-drop-icon/drag-drop-icon.mjs +20 -20
  138. package/esm2020/components/matrix-actions/remove-button/remove-button.component.mjs +25 -25
  139. package/esm2020/components/notifier/notifier.component.mjs +22 -22
  140. package/esm2020/components/paneldynamic-actions/paneldynamic-add-btn.component.mjs +35 -35
  141. package/esm2020/components/paneldynamic-actions/paneldynamic-next-btn.component.mjs +18 -18
  142. package/esm2020/components/paneldynamic-actions/paneldynamic-prev-btn.component.mjs +18 -18
  143. package/esm2020/components/paneldynamic-actions/paneldynamic-progress-text.component.mjs +14 -14
  144. package/esm2020/components/paneldynamic-actions/paneldynamic-remove-btn.component.mjs +17 -17
  145. package/esm2020/components/popup/modal-container.component.mjs +42 -42
  146. package/esm2020/components/popup/popup-container.component.mjs +56 -56
  147. package/esm2020/components/popup/popup-pointer.component.mjs +22 -22
  148. package/esm2020/components/popup/popup.component.mjs +43 -43
  149. package/esm2020/components/popup/popup.service.mjs +26 -26
  150. package/esm2020/components/progress/buttons/progress.component.mjs +67 -67
  151. package/esm2020/components/progress/default/progress.component.mjs +27 -27
  152. package/esm2020/components/renderAs/boolean-checkbox/boolean-checkbox.component.mjs +21 -21
  153. package/esm2020/components/renderAs/boolean-radio/boolean-radio-item.component.mjs +22 -22
  154. package/esm2020/components/renderAs/boolean-radio/boolean-radio.component.mjs +18 -18
  155. package/esm2020/components/renderAs/dropdown-select/dropdown-option-item.component.mjs +23 -23
  156. package/esm2020/components/renderAs/dropdown-select/dropdown-select.component.mjs +38 -38
  157. package/esm2020/components/renderAs/rating-dropdown/rating-dropdown.component.mjs +18 -18
  158. package/esm2020/components/skeleton/skeleton.component.mjs +16 -16
  159. package/esm2020/components/skeleton.component.mjs +15 -15
  160. package/esm2020/components/survey-actions/survey-nav-btn.component.mjs +22 -22
  161. package/esm2020/components/survey-header/logo-image.component.mjs +20 -20
  162. package/esm2020/components/survey-header/survey-header.component.mjs +30 -30
  163. package/esm2020/components/svg-icon/svg-icon.component.mjs +68 -68
  164. package/esm2020/components/tagbox/tagbox-filter.component.mjs +22 -22
  165. package/esm2020/components/tagbox/tagbox-item.component.mjs +27 -27
  166. package/esm2020/components/tagbox/tagbox.component.mjs +44 -44
  167. package/esm2020/components/timer-panel/timer-panel.component.mjs +32 -32
  168. package/esm2020/element.component.mjs +55 -55
  169. package/esm2020/embedded-view-content.component.mjs +24 -24
  170. package/esm2020/errors.component.mjs +58 -58
  171. package/esm2020/page.component.mjs +35 -35
  172. package/esm2020/panel.component.mjs +38 -38
  173. package/esm2020/popup.survey.component.mjs +44 -44
  174. package/esm2020/question.component.mjs +54 -54
  175. package/esm2020/question.mjs +33 -33
  176. package/esm2020/questions/boolean.component.mjs +20 -20
  177. package/esm2020/questions/button-group/button-group-item.component.mjs +29 -29
  178. package/esm2020/questions/button-group/button-group.component.mjs +14 -14
  179. package/esm2020/questions/checkbox-item.component.mjs +24 -36
  180. package/esm2020/questions/checkbox.component.mjs +17 -17
  181. package/esm2020/questions/comment.component.mjs +18 -18
  182. package/esm2020/questions/composite.component.mjs +21 -21
  183. package/esm2020/questions/custom.component.mjs +27 -27
  184. package/esm2020/questions/customwidget.component.mjs +51 -51
  185. package/esm2020/questions/dropdown.component.mjs +17 -17
  186. package/esm2020/questions/expression.component.mjs +17 -17
  187. package/esm2020/questions/file.component.mjs +25 -25
  188. package/esm2020/questions/html.component.mjs +25 -25
  189. package/esm2020/questions/image.component.mjs +26 -26
  190. package/esm2020/questions/imagepicker-item.component.mjs +48 -48
  191. package/esm2020/questions/imagepicker.component.mjs +29 -29
  192. package/esm2020/questions/matrix-row.component.mjs +27 -27
  193. package/esm2020/questions/matrix.component.mjs +36 -36
  194. package/esm2020/questions/matrixcell.component.mjs +90 -90
  195. package/esm2020/questions/matrixdropdown.component.mjs +16 -16
  196. package/esm2020/questions/matrixdynamic.component.mjs +17 -17
  197. package/esm2020/questions/matrixrequiredheader.component.mjs +24 -24
  198. package/esm2020/questions/matrixtable.component.mjs +31 -31
  199. package/esm2020/questions/multipletext.component.mjs +25 -25
  200. package/esm2020/questions/multipletextitem.component.mjs +23 -23
  201. package/esm2020/questions/paneldynamic.component.mjs +79 -79
  202. package/esm2020/questions/radiogroup-item.component.mjs +18 -18
  203. package/esm2020/questions/radiogroup.component.mjs +22 -22
  204. package/esm2020/questions/ranking-item.component.mjs +24 -24
  205. package/esm2020/questions/ranking.component.mjs +31 -31
  206. package/esm2020/questions/rating.component.mjs +23 -23
  207. package/esm2020/questions/selectbase-item.mjs +33 -33
  208. package/esm2020/questions/selectbase.component.mjs +50 -47
  209. package/esm2020/questions/signature.component.mjs +17 -17
  210. package/esm2020/questions/tagbox.component.mjs +17 -17
  211. package/esm2020/questions/text.component.mjs +16 -16
  212. package/esm2020/row.component.mjs +58 -58
  213. package/esm2020/string-editor.component.mjs +26 -26
  214. package/esm2020/string-viewer.component.mjs +37 -37
  215. package/esm2020/survey-angular-ui.mjs +5 -5
  216. package/esm2020/survey-content.component.mjs +69 -69
  217. package/esm2020/survey-string.component.mjs +17 -17
  218. package/esm2020/survey.component.mjs +32 -32
  219. package/esm2020/template-renderer.component.mjs +23 -23
  220. package/esm2020/utils/dynamic.directive.mjs +52 -52
  221. package/esm2020/utils/ng-key2click.directive.mjs +69 -69
  222. package/esm2020/utils/ng-show.directive.mjs +27 -27
  223. package/esm2020/utils/safe-html.pipe.mjs +18 -18
  224. package/esm2020/utils/safe-url.pipe.mjs +33 -33
  225. package/fesm2015/survey-angular-ui.js +3206 -0
  226. package/fesm2015/survey-angular-ui.js.map +1 -0
  227. package/fesm2015/survey-angular-ui.mjs +2864 -2873
  228. package/fesm2015/survey-angular-ui.mjs.map +1 -1
  229. package/fesm2020/survey-angular-ui.mjs +2839 -2848
  230. package/fesm2020/survey-angular-ui.mjs.map +1 -1
  231. package/package.json +6 -19
  232. package/utils/dynamic.directive.d.ts +3 -2
@@ -0,0 +1,20 @@
1
+ import { Component } from "@angular/core";
2
+ import { QuestionAngular } from "../question";
3
+ import { AngularComponentFactory } from "../component-factory";
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "../components/tagbox/tagbox.component";
6
+ import * as i2 from "../comment-other.component";
7
+ import * as i3 from "@angular/common";
8
+ export class TagboxQuestionComponent extends QuestionAngular {
9
+ }
10
+ TagboxQuestionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TagboxQuestionComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
11
+ TagboxQuestionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TagboxQuestionComponent, selector: "sv-ng-tagbox-question", usesInheritance: true, ngImport: i0, template: "<div [class]=\"model.renderCssRoot\" #contentElement>\n <sv-ng-tagbox [model]=\"model\"></sv-ng-tagbox>\n <div *ngIf=\"model.isOtherSelected\" [class]=\"model.getCommentAreaCss(true)\" [question]=\"model\" sv-ng-comment-other></div>\n</div>", components: [{ type: i1.TagboxComponent, selector: "sv-ng-tagbox, '[sv-ng-tagbox]'", inputs: ["model"] }, { type: i2.SurveyCommentOtherComponent, selector: "sv-ng-comment-other, '[sv-ng-comment-other]'", inputs: ["question"] }], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
12
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TagboxQuestionComponent, decorators: [{
13
+ type: Component,
14
+ args: [{
15
+ selector: "sv-ng-tagbox-question",
16
+ templateUrl: "./tagbox.component.html"
17
+ }]
18
+ }] });
19
+ AngularComponentFactory.Instance.registerComponent("tagbox-question", TagboxQuestionComponent);
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFnYm94LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9xdWVzdGlvbnMvdGFnYm94LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uL3NyYy9xdWVzdGlvbnMvdGFnYm94LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUM5QyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7Ozs7QUFPL0QsTUFBTSxPQUFPLHVCQUF3QixTQUFRLGVBQW9DOztxSEFBcEUsdUJBQXVCO3lHQUF2Qix1QkFBdUIsb0ZDVHBDLG9QQUdNOzRGRE1PLHVCQUF1QjtrQkFKbkMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsdUJBQXVCO29CQUNqQyxXQUFXLEVBQUUseUJBQXlCO2lCQUN2Qzs7QUFJRCx1QkFBdUIsQ0FBQyxRQUFRLENBQUMsaUJBQWlCLENBQUMsaUJBQWlCLEVBQUUsdUJBQXVCLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBRdWVzdGlvbkFuZ3VsYXIgfSBmcm9tIFwiLi4vcXVlc3Rpb25cIjtcbmltcG9ydCB7IEFuZ3VsYXJDb21wb25lbnRGYWN0b3J5IH0gZnJvbSBcIi4uL2NvbXBvbmVudC1mYWN0b3J5XCI7XG5pbXBvcnQgeyBRdWVzdGlvblRhZ2JveE1vZGVsIH0gZnJvbSBcInN1cnZleS1jb3JlXCI7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogXCJzdi1uZy10YWdib3gtcXVlc3Rpb25cIixcbiAgdGVtcGxhdGVVcmw6IFwiLi90YWdib3guY29tcG9uZW50Lmh0bWxcIlxufSlcbmV4cG9ydCBjbGFzcyBUYWdib3hRdWVzdGlvbkNvbXBvbmVudCBleHRlbmRzIFF1ZXN0aW9uQW5ndWxhcjxRdWVzdGlvblRhZ2JveE1vZGVsPiB7XG59XG5cbkFuZ3VsYXJDb21wb25lbnRGYWN0b3J5Lkluc3RhbmNlLnJlZ2lzdGVyQ29tcG9uZW50KFwidGFnYm94LXF1ZXN0aW9uXCIsIFRhZ2JveFF1ZXN0aW9uQ29tcG9uZW50KTsiLCI8ZGl2IFtjbGFzc109XCJtb2RlbC5yZW5kZXJDc3NSb290XCIgI2NvbnRlbnRFbGVtZW50PlxuICA8c3YtbmctdGFnYm94IFttb2RlbF09XCJtb2RlbFwiPjwvc3YtbmctdGFnYm94PlxuICA8ZGl2ICpuZ0lmPVwibW9kZWwuaXNPdGhlclNlbGVjdGVkXCIgW2NsYXNzXT1cIm1vZGVsLmdldENvbW1lbnRBcmVhQ3NzKHRydWUpXCIgW3F1ZXN0aW9uXT1cIm1vZGVsXCIgc3YtbmctY29tbWVudC1vdGhlcj48L2Rpdj5cbjwvZGl2PiJdfQ==
@@ -0,0 +1,21 @@
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/character-counter/character-counter.component";
6
+ import * as i2 from "@angular/common";
7
+ import * as i3 from "@angular/forms";
8
+ export class TextQuestionComponent extends QuestionAngular {
9
+ }
10
+ TextQuestionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TextQuestionComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
11
+ TextQuestionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TextQuestionComponent, selector: "sv-ng-text-question", usesInheritance: true, ngImport: i0, template: " <ng-container [ngTemplateOutlet]=\"input\" *ngIf=\"!model.dataListId && !model.isReadOnlyRenderDiv()\"></ng-container>\n <div *ngIf=\"model.dataListId && !model.isReadOnlyRenderDiv()\">\n <ng-container [ngTemplateOutlet]=\"input\"></ng-container>\n <datalist [id]=\"model.dataListId\">\n <option *ngFor=\"let dataListItem of model.dataList\" [value]=\"dataListItem\"></option>\n </datalist>\n </div>\n <div *ngIf=\"model.isReadOnlyRenderDiv()\" #contentElement>{{ model.value }}</div>\n <ng-template #input>\n <input [style]=\"model.inputStyle\" [class]=\"model.getControlClass()\" [attr.list]=\"model.dataListId\"\n (change)=\"model.onChange($event)\" [attr.value]=\"model.value\" [disabled]=\"model.isInputReadOnly\" name=\"user\" [type]=\"model.inputType\" [id]=\"model.inputId\" [attr.placeholder]=\"model.renderedPlaceholder || ''\"\n (keyup)=\"model.onKeyUp($event)\" (keydown)=\"model.onKeyDown($event)\" (blur)=\"model.onBlur($event)\" (compositionupdate)=\"model.onCompositionUpdate($event)\" \n [attr.size] = \"model.renderedInputSize\" [attr.maxlength]= \"model.getMaxLength()\" [attr.min]=\"model.renderedMin\"\n [attr.max]=\"model.renderedMax\" [attr.step]=\"model.renderedStep\" [attr.max]=\"model.renderedMax\" [attr.aria-required]=\"model.ariaRequired\"\n [attr.aria-label]=\"model.ariaLabel\" [attr.aria-invalid]=\"model.ariaInvalid\" [attr.aria-describedby]=\"model.ariaDescribedBy\" [attr.autocomplete]=\"model.autocomplete\"\n [attr.ar] #contentElement/>\n <sv-ng-character-counter *ngIf=\"model.getMaxLength()\" \n [counter]=\"model.characterCounter\"\n [remainingCharacterCounter]=\"model.cssClasses.remainingCharacterCounter\">\n </sv-ng-character-counter>\n </ng-template>", styles: [""], components: [{ type: i1.CharacterCounterComponent, selector: "sv-ng-character-counter", inputs: ["counter", "remainingCharacterCounter"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i3.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { type: i3.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }] });
12
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TextQuestionComponent, decorators: [{
13
+ type: Component,
14
+ args: [{
15
+ selector: "sv-ng-text-question",
16
+ templateUrl: "./text.component.html",
17
+ styleUrls: ["./text.component.scss"]
18
+ }]
19
+ }] });
20
+ AngularComponentFactory.Instance.registerComponent("text-question", TextQuestionComponent);
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcXVlc3Rpb25zL3RleHQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vc3JjL3F1ZXN0aW9ucy90ZXh0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUU5QyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7Ozs7QUFPL0QsTUFBTSxPQUFPLHFCQUFzQixTQUFRLGVBQWtDOzttSEFBaEUscUJBQXFCO3VHQUFyQixxQkFBcUIsa0ZDVmxDLHN0REFvQmdCOzRGRFZILHFCQUFxQjtrQkFMakMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUscUJBQXFCO29CQUMvQixXQUFXLEVBQUUsdUJBQXVCO29CQUNwQyxTQUFTLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQztpQkFDbkM7O0FBR0gsdUJBQXVCLENBQUMsUUFBUSxDQUFDLGlCQUFpQixDQUFDLGVBQWUsRUFBRSxxQkFBcUIsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IFF1ZXN0aW9uQW5ndWxhciB9IGZyb20gXCIuLi9xdWVzdGlvblwiO1xuaW1wb3J0IHsgUXVlc3Rpb25UZXh0TW9kZWwgfSBmcm9tIFwic3VydmV5LWNvcmVcIjtcbmltcG9ydCB7IEFuZ3VsYXJDb21wb25lbnRGYWN0b3J5IH0gZnJvbSBcIi4uL2NvbXBvbmVudC1mYWN0b3J5XCI7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogXCJzdi1uZy10ZXh0LXF1ZXN0aW9uXCIsXG4gIHRlbXBsYXRlVXJsOiBcIi4vdGV4dC5jb21wb25lbnQuaHRtbFwiLFxuICBzdHlsZVVybHM6IFtcIi4vdGV4dC5jb21wb25lbnQuc2Nzc1wiXVxuICB9KVxuZXhwb3J0IGNsYXNzIFRleHRRdWVzdGlvbkNvbXBvbmVudCBleHRlbmRzIFF1ZXN0aW9uQW5ndWxhcjxRdWVzdGlvblRleHRNb2RlbD4ge31cblxuQW5ndWxhckNvbXBvbmVudEZhY3RvcnkuSW5zdGFuY2UucmVnaXN0ZXJDb21wb25lbnQoXCJ0ZXh0LXF1ZXN0aW9uXCIsIFRleHRRdWVzdGlvbkNvbXBvbmVudCk7IiwiICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImlucHV0XCIgKm5nSWY9XCIhbW9kZWwuZGF0YUxpc3RJZCAmJiAhbW9kZWwuaXNSZWFkT25seVJlbmRlckRpdigpXCI+PC9uZy1jb250YWluZXI+XG4gIDxkaXYgKm5nSWY9XCJtb2RlbC5kYXRhTGlzdElkICYmICFtb2RlbC5pc1JlYWRPbmx5UmVuZGVyRGl2KClcIj5cbiAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImlucHV0XCI+PC9uZy1jb250YWluZXI+XG4gICAgPGRhdGFsaXN0IFtpZF09XCJtb2RlbC5kYXRhTGlzdElkXCI+XG4gICAgICA8b3B0aW9uICpuZ0Zvcj1cImxldCBkYXRhTGlzdEl0ZW0gb2YgbW9kZWwuZGF0YUxpc3RcIiBbdmFsdWVdPVwiZGF0YUxpc3RJdGVtXCI+PC9vcHRpb24+XG4gICAgPC9kYXRhbGlzdD5cbiAgPC9kaXY+XG4gIDxkaXYgKm5nSWY9XCJtb2RlbC5pc1JlYWRPbmx5UmVuZGVyRGl2KClcIiAjY29udGVudEVsZW1lbnQ+e3sgbW9kZWwudmFsdWUgfX08L2Rpdj5cbiAgPG5nLXRlbXBsYXRlICNpbnB1dD5cbiAgICA8aW5wdXQgW3N0eWxlXT1cIm1vZGVsLmlucHV0U3R5bGVcIiBbY2xhc3NdPVwibW9kZWwuZ2V0Q29udHJvbENsYXNzKClcIiBbYXR0ci5saXN0XT1cIm1vZGVsLmRhdGFMaXN0SWRcIlxuICAgIChjaGFuZ2UpPVwibW9kZWwub25DaGFuZ2UoJGV2ZW50KVwiIFthdHRyLnZhbHVlXT1cIm1vZGVsLnZhbHVlXCIgW2Rpc2FibGVkXT1cIm1vZGVsLmlzSW5wdXRSZWFkT25seVwiIG5hbWU9XCJ1c2VyXCIgW3R5cGVdPVwibW9kZWwuaW5wdXRUeXBlXCIgW2lkXT1cIm1vZGVsLmlucHV0SWRcIiBbYXR0ci5wbGFjZWhvbGRlcl09XCJtb2RlbC5yZW5kZXJlZFBsYWNlaG9sZGVyIHx8ICcnXCJcbiAgICAoa2V5dXApPVwibW9kZWwub25LZXlVcCgkZXZlbnQpXCIgKGtleWRvd24pPVwibW9kZWwub25LZXlEb3duKCRldmVudClcIiAoYmx1cik9XCJtb2RlbC5vbkJsdXIoJGV2ZW50KVwiIChjb21wb3NpdGlvbnVwZGF0ZSk9XCJtb2RlbC5vbkNvbXBvc2l0aW9uVXBkYXRlKCRldmVudClcIiBcbiAgICBbYXR0ci5zaXplXSA9IFwibW9kZWwucmVuZGVyZWRJbnB1dFNpemVcIiBbYXR0ci5tYXhsZW5ndGhdPSBcIm1vZGVsLmdldE1heExlbmd0aCgpXCIgW2F0dHIubWluXT1cIm1vZGVsLnJlbmRlcmVkTWluXCJcbiAgICBbYXR0ci5tYXhdPVwibW9kZWwucmVuZGVyZWRNYXhcIiBbYXR0ci5zdGVwXT1cIm1vZGVsLnJlbmRlcmVkU3RlcFwiIFthdHRyLm1heF09XCJtb2RlbC5yZW5kZXJlZE1heFwiIFthdHRyLmFyaWEtcmVxdWlyZWRdPVwibW9kZWwuYXJpYVJlcXVpcmVkXCJcbiAgICBbYXR0ci5hcmlhLWxhYmVsXT1cIm1vZGVsLmFyaWFMYWJlbFwiIFthdHRyLmFyaWEtaW52YWxpZF09XCJtb2RlbC5hcmlhSW52YWxpZFwiIFthdHRyLmFyaWEtZGVzY3JpYmVkYnldPVwibW9kZWwuYXJpYURlc2NyaWJlZEJ5XCIgW2F0dHIuYXV0b2NvbXBsZXRlXT1cIm1vZGVsLmF1dG9jb21wbGV0ZVwiXG4gICAgW2F0dHIuYXJdICNjb250ZW50RWxlbWVudC8+XG4gICAgPHN2LW5nLWNoYXJhY3Rlci1jb3VudGVyICpuZ0lmPVwibW9kZWwuZ2V0TWF4TGVuZ3RoKClcIiBcbiAgICBbY291bnRlcl09XCJtb2RlbC5jaGFyYWN0ZXJDb3VudGVyXCJcbiAgICBbcmVtYWluaW5nQ2hhcmFjdGVyQ291bnRlcl09XCJtb2RlbC5jc3NDbGFzc2VzLnJlbWFpbmluZ0NoYXJhY3RlckNvdW50ZXJcIj5cbiAgPC9zdi1uZy1jaGFyYWN0ZXItY291bnRlcj5cbiAgPC9uZy10ZW1wbGF0ZT4iXX0=
@@ -0,0 +1,63 @@
1
+ import { Component, ElementRef, Input, ViewChild } from "@angular/core";
2
+ import { BaseAngular } from "./base-angular";
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "./element.component";
5
+ import * as i2 from "@angular/common";
6
+ import * as i3 from "./utils/dynamic.directive";
7
+ export class RowComponent extends BaseAngular {
8
+ constructor(cdr, vcr, ngZone) {
9
+ super(cdr, vcr);
10
+ this.ngZone = ngZone;
11
+ }
12
+ getModel() {
13
+ return this.row;
14
+ }
15
+ trackElementBy(index, element) {
16
+ return element.name + index;
17
+ }
18
+ ngAfterViewInit() {
19
+ var _a;
20
+ const el = (_a = this.container) === null || _a === void 0 ? void 0 : _a.nativeElement;
21
+ if (!!el && !this.row.isNeedRender) {
22
+ this.ngZone.runOutsideAngular(() => {
23
+ setTimeout(() => {
24
+ this.row.startLazyRendering(el);
25
+ }, 10);
26
+ });
27
+ }
28
+ }
29
+ onModelChanged() {
30
+ super.onModelChanged();
31
+ if (!this.previousModel) {
32
+ return;
33
+ }
34
+ else {
35
+ this.row.isNeedRender = this.previousModel.isNeedRender;
36
+ this.stopLazyRendering();
37
+ }
38
+ }
39
+ stopLazyRendering() {
40
+ this.row.stopLazyRendering();
41
+ this.row.isNeedRender = !this.row.isLazyRendering();
42
+ }
43
+ ngOnDestroy() {
44
+ super.ngOnDestroy();
45
+ this.stopLazyRendering();
46
+ }
47
+ }
48
+ RowComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: RowComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ViewContainerRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
49
+ RowComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: RowComponent, selector: "sv-ng-row", inputs: { row: "row" }, viewQueries: [{ propertyName: "container", first: true, predicate: ["container"], descendants: true, read: ElementRef }], usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <div [class]=\"row.getRowCss()\" *ngIf=\"row.visible\" #container>\n <ng-container *ngFor=\"let element of row.visibleElements; trackBy: trackElementBy\">\n <sv-ng-element [model]=\"$any(element)\" *ngIf=\"row.isNeedRender\"></sv-ng-element>\n <ng-template *ngIf=\"!row.isNeedRender && element.skeletonComponentName\" [component]=\"{ name: element.skeletonComponentName, data: { element: element } }\"></ng-template>\n </ng-container>\n </div>\n</ng-template>", styles: [":host{display:none}\n"], components: [{ type: i1.ElementComponent, selector: "sv-ng-element", inputs: ["model"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i3.DynamicComponentDirective, selector: "[component]", inputs: ["component"] }] });
50
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: RowComponent, decorators: [{
51
+ type: Component,
52
+ args: [{
53
+ selector: "sv-ng-row",
54
+ templateUrl: "./row.component.html",
55
+ styleUrls: ["./hide-host.scss"]
56
+ }]
57
+ }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ViewContainerRef }, { type: i0.NgZone }]; }, propDecorators: { row: [{
58
+ type: Input
59
+ }], container: [{
60
+ type: ViewChild,
61
+ args: ["container", { read: ElementRef }]
62
+ }] } });
63
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm93LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9yb3cuY29tcG9uZW50LnRzIiwiLi4vLi4vc3JjL3Jvdy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQW9DLFNBQVMsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFVLFNBQVMsRUFBb0IsTUFBTSxlQUFlLENBQUM7QUFFcEksT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7OztBQU03QyxNQUFNLE9BQU8sWUFBYSxTQUFRLFdBQTZCO0lBRzdELFlBQVksR0FBc0IsRUFBRSxHQUFxQixFQUFVLE1BQWM7UUFDL0UsS0FBSyxDQUFDLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQztRQURpRCxXQUFNLEdBQU4sTUFBTSxDQUFRO0lBRWpGLENBQUM7SUFFUyxRQUFRO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQztJQUNsQixDQUFDO0lBQ0QsY0FBYyxDQUFFLEtBQWEsRUFBRSxPQUFpQjtRQUM5QyxPQUFPLE9BQU8sQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDO0lBQzlCLENBQUM7SUFDTSxlQUFlOztRQUNwQixNQUFNLEVBQUUsR0FBRyxNQUFBLElBQUksQ0FBQyxTQUFTLDBDQUFFLGFBQWEsQ0FBQztRQUN6QyxJQUFJLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRTtZQUNsQyxJQUFJLENBQUMsTUFBTSxDQUFDLGlCQUFpQixDQUFDLEdBQUcsRUFBRTtnQkFDakMsVUFBVSxDQUFDLEdBQUcsRUFBRTtvQkFDZCxJQUFJLENBQUMsR0FBRyxDQUFDLGtCQUFrQixDQUFDLEVBQUUsQ0FBQyxDQUFDO2dCQUNsQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDVCxDQUFDLENBQUMsQ0FBQztTQUNKO0lBQ0gsQ0FBQztJQUNrQixjQUFjO1FBQy9CLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUN2QixJQUFHLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRTtZQUN0QixPQUFPO1NBQ1I7YUFBTTtZQUNMLElBQUksQ0FBQyxHQUFHLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsWUFBWSxDQUFDO1lBQ3hELElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1NBQzFCO0lBQ0gsQ0FBQztJQUNPLGlCQUFpQjtRQUN2QixJQUFJLENBQUMsR0FBRyxDQUFDLGlCQUFpQixFQUFFLENBQUM7UUFDN0IsSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLGVBQWUsRUFBRSxDQUFDO0lBQ3RELENBQUM7SUFDZSxXQUFXO1FBQ3pCLEtBQUssQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNwQixJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztJQUMzQixDQUFDOzswR0F2Q1UsWUFBWTs4RkFBWixZQUFZLDRKQUVTLFVBQVUsb0RDVjVDLHlmQU9jOzRGRENELFlBQVk7a0JBTHhCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLFdBQVc7b0JBQ3JCLFdBQVcsRUFBRSxzQkFBc0I7b0JBQ25DLFNBQVMsRUFBRSxDQUFDLGtCQUFrQixDQUFDO2lCQUNoQzs0SkFFVSxHQUFHO3NCQUFYLEtBQUs7Z0JBQ3dDLFNBQVM7c0JBQXRELFNBQVM7dUJBQUMsV0FBVyxFQUFFLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyVmlld0luaXQsIENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIElucHV0LCBOZ1pvbmUsIFZpZXdDaGlsZCwgVmlld0NvbnRhaW5lclJlZiB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBJRWxlbWVudCwgUXVlc3Rpb25Sb3dNb2RlbCB9IGZyb20gXCJzdXJ2ZXktY29yZVwiO1xuaW1wb3J0IHsgQmFzZUFuZ3VsYXIgfSBmcm9tIFwiLi9iYXNlLWFuZ3VsYXJcIjtcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogXCJzdi1uZy1yb3dcIixcbiAgdGVtcGxhdGVVcmw6IFwiLi9yb3cuY29tcG9uZW50Lmh0bWxcIixcbiAgc3R5bGVVcmxzOiBbXCIuL2hpZGUtaG9zdC5zY3NzXCJdXG59KVxuZXhwb3J0IGNsYXNzIFJvd0NvbXBvbmVudCBleHRlbmRzIEJhc2VBbmd1bGFyPFF1ZXN0aW9uUm93TW9kZWw+IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XG4gIEBJbnB1dCgpIHJvdyE6IFF1ZXN0aW9uUm93TW9kZWw7XG4gIEBWaWV3Q2hpbGQoXCJjb250YWluZXJcIiwgeyByZWFkOiBFbGVtZW50UmVmIH0pIGNvbnRhaW5lcj86IEVsZW1lbnRSZWY8SFRNTERpdkVsZW1lbnQ+O1xuICBjb25zdHJ1Y3RvcihjZHI6IENoYW5nZURldGVjdG9yUmVmLCB2Y3I6IFZpZXdDb250YWluZXJSZWYsIHByaXZhdGUgbmdab25lOiBOZ1pvbmUpIHtcbiAgICBzdXBlcihjZHIsIHZjcik7XG4gIH1cblxuICBwcm90ZWN0ZWQgZ2V0TW9kZWwoKTogUXVlc3Rpb25Sb3dNb2RlbCB7XG4gICAgcmV0dXJuIHRoaXMucm93O1xuICB9XG4gIHRyYWNrRWxlbWVudEJ5IChpbmRleDogbnVtYmVyLCBlbGVtZW50OiBJRWxlbWVudCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGVsZW1lbnQubmFtZSArIGluZGV4O1xuICB9XG4gIHB1YmxpYyBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgY29uc3QgZWwgPSB0aGlzLmNvbnRhaW5lcj8ubmF0aXZlRWxlbWVudDtcbiAgICBpZiAoISFlbCAmJiAhdGhpcy5yb3cuaXNOZWVkUmVuZGVyKSB7XG4gICAgICB0aGlzLm5nWm9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiB7XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgIHRoaXMucm93LnN0YXJ0TGF6eVJlbmRlcmluZyhlbCk7XG4gICAgICAgIH0sIDEwKTtcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgb25Nb2RlbENoYW5nZWQoKTogdm9pZCB7XG4gICAgc3VwZXIub25Nb2RlbENoYW5nZWQoKTtcbiAgICBpZighdGhpcy5wcmV2aW91c01vZGVsKSB7XG4gICAgICByZXR1cm47XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMucm93LmlzTmVlZFJlbmRlciA9IHRoaXMucHJldmlvdXNNb2RlbC5pc05lZWRSZW5kZXI7XG4gICAgICB0aGlzLnN0b3BMYXp5UmVuZGVyaW5nKCk7XG4gICAgfVxuICB9XG4gIHByaXZhdGUgc3RvcExhenlSZW5kZXJpbmcoKSB7XG4gICAgdGhpcy5yb3cuc3RvcExhenlSZW5kZXJpbmcoKTtcbiAgICB0aGlzLnJvdy5pc05lZWRSZW5kZXIgPSAhdGhpcy5yb3cuaXNMYXp5UmVuZGVyaW5nKCk7XG4gIH1cbiAgcHVibGljIG92ZXJyaWRlIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHN1cGVyLm5nT25EZXN0cm95KCk7XG4gICAgdGhpcy5zdG9wTGF6eVJlbmRlcmluZygpO1xuICB9XG59IiwiPG5nLXRlbXBsYXRlICN0ZW1wbGF0ZT5cbiAgPGRpdiBbY2xhc3NdPVwicm93LmdldFJvd0NzcygpXCIgKm5nSWY9XCJyb3cudmlzaWJsZVwiICNjb250YWluZXI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgZWxlbWVudCBvZiByb3cudmlzaWJsZUVsZW1lbnRzOyB0cmFja0J5OiB0cmFja0VsZW1lbnRCeVwiPlxuICAgICAgPHN2LW5nLWVsZW1lbnQgW21vZGVsXT1cIiRhbnkoZWxlbWVudClcIiAqbmdJZj1cInJvdy5pc05lZWRSZW5kZXJcIj48L3N2LW5nLWVsZW1lbnQ+XG4gICAgICA8bmctdGVtcGxhdGUgKm5nSWY9XCIhcm93LmlzTmVlZFJlbmRlciAmJiBlbGVtZW50LnNrZWxldG9uQ29tcG9uZW50TmFtZVwiIFtjb21wb25lbnRdPVwieyBuYW1lOiBlbGVtZW50LnNrZWxldG9uQ29tcG9uZW50TmFtZSwgZGF0YTogeyBlbGVtZW50OiBlbGVtZW50IH0gfVwiPjwvbmctdGVtcGxhdGU+XG4gICAgPC9uZy1jb250YWluZXI+XG4gIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT4iXX0=
@@ -0,0 +1,29 @@
1
+ import { Component, Input } from "@angular/core";
2
+ import { LocalizableString } from "survey-core";
3
+ import { AngularComponentFactory } from "./component-factory";
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "@angular/common";
6
+ export class StringEditorComponent {
7
+ constructor() {
8
+ this.onInput = (event) => {
9
+ this.model.text = event.target.innerText;
10
+ };
11
+ this.onClick = (event) => {
12
+ event.preventDefault();
13
+ event.stopPropagation();
14
+ };
15
+ }
16
+ }
17
+ StringEditorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: StringEditorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
18
+ StringEditorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: StringEditorComponent, selector: "sv-ng-string-editor", inputs: { model: "model" }, ngImport: i0, template: "<span\n class=\"sv-string-editor\"\n contenteditable=\"true\"\n *ngIf=\"model.hasHtml\"\n [innerHtml]=\"model.renderedHtml\"\n (blur)=\"onInput($event)\"\n (click)=\"onClick($event)\"\n></span>\n<span\n class=\"sv-string-editor\"\n contenteditable=\"true\"\n *ngIf=\"!model.hasHtml\"\n (blur)=\"onInput($event)\"\n (click)=\"onClick($event)\"\n >{{ model.renderedHtml }}</span\n>\n", directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
19
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: StringEditorComponent, decorators: [{
20
+ type: Component,
21
+ args: [{
22
+ selector: "sv-ng-string-editor",
23
+ templateUrl: "./string-editor.component.html"
24
+ }]
25
+ }], propDecorators: { model: [{
26
+ type: Input
27
+ }] } });
28
+ AngularComponentFactory.Instance.registerComponent(LocalizableString.editableRenderer, StringEditorComponent);
29
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RyaW5nLWVkaXRvci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc3RyaW5nLWVkaXRvci5jb21wb25lbnQudHMiLCIuLi8uLi9zcmMvc3RyaW5nLWVkaXRvci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDaEQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0scUJBQXFCLENBQUM7OztBQU05RCxNQUFNLE9BQU8scUJBQXFCO0lBSmxDO1FBT0UsWUFBTyxHQUFHLENBQUMsS0FBVSxFQUFFLEVBQUU7WUFDdkIsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUM7UUFDM0MsQ0FBQyxDQUFDO1FBQ0YsWUFBTyxHQUFHLENBQUMsS0FBVSxFQUFFLEVBQUU7WUFDdkIsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQ3ZCLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUMxQixDQUFDLENBQUM7S0FDSDs7bUhBVlkscUJBQXFCO3VHQUFyQixxQkFBcUIsdUZDUmxDLDJZQWdCQTs0RkRSYSxxQkFBcUI7a0JBSmpDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHFCQUFxQjtvQkFDL0IsV0FBVyxFQUFFLGdDQUFnQztpQkFDOUM7OEJBRVUsS0FBSztzQkFBYixLQUFLOztBQVVSLHVCQUF1QixDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyxpQkFBaUIsQ0FBQyxnQkFBZ0IsRUFBRSxxQkFBcUIsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBMb2NhbGl6YWJsZVN0cmluZyB9IGZyb20gXCJzdXJ2ZXktY29yZVwiO1xuaW1wb3J0IHsgQW5ndWxhckNvbXBvbmVudEZhY3RvcnkgfSBmcm9tIFwiLi9jb21wb25lbnQtZmFjdG9yeVwiO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6IFwic3Ytbmctc3RyaW5nLWVkaXRvclwiLFxuICB0ZW1wbGF0ZVVybDogXCIuL3N0cmluZy1lZGl0b3IuY29tcG9uZW50Lmh0bWxcIlxufSlcbmV4cG9ydCBjbGFzcyBTdHJpbmdFZGl0b3JDb21wb25lbnQge1xuICBASW5wdXQoKSBtb2RlbCE6IExvY2FsaXphYmxlU3RyaW5nO1xuXG4gIG9uSW5wdXQgPSAoZXZlbnQ6IGFueSkgPT4ge1xuICAgIHRoaXMubW9kZWwudGV4dCA9IGV2ZW50LnRhcmdldC5pbm5lclRleHQ7XG4gIH07XG4gIG9uQ2xpY2sgPSAoZXZlbnQ6IGFueSkgPT4ge1xuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gIH07XG59XG5Bbmd1bGFyQ29tcG9uZW50RmFjdG9yeS5JbnN0YW5jZS5yZWdpc3RlckNvbXBvbmVudChMb2NhbGl6YWJsZVN0cmluZy5lZGl0YWJsZVJlbmRlcmVyLCBTdHJpbmdFZGl0b3JDb21wb25lbnQpOyIsIjxzcGFuXG4gIGNsYXNzPVwic3Ytc3RyaW5nLWVkaXRvclwiXG4gIGNvbnRlbnRlZGl0YWJsZT1cInRydWVcIlxuICAqbmdJZj1cIm1vZGVsLmhhc0h0bWxcIlxuICBbaW5uZXJIdG1sXT1cIm1vZGVsLnJlbmRlcmVkSHRtbFwiXG4gIChibHVyKT1cIm9uSW5wdXQoJGV2ZW50KVwiXG4gIChjbGljayk9XCJvbkNsaWNrKCRldmVudClcIlxuPjwvc3Bhbj5cbjxzcGFuXG4gIGNsYXNzPVwic3Ytc3RyaW5nLWVkaXRvclwiXG4gIGNvbnRlbnRlZGl0YWJsZT1cInRydWVcIlxuICAqbmdJZj1cIiFtb2RlbC5oYXNIdG1sXCJcbiAgKGJsdXIpPVwib25JbnB1dCgkZXZlbnQpXCJcbiAgKGNsaWNrKT1cIm9uQ2xpY2soJGV2ZW50KVwiXG4gID57eyBtb2RlbC5yZW5kZXJlZEh0bWwgfX08L3NwYW5cbj5cbiJdfQ==
@@ -0,0 +1,41 @@
1
+ import { Component, Input } from "@angular/core";
2
+ import { LocalizableString } from "survey-core";
3
+ import { AngularComponentFactory } from "./component-factory";
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "@angular/common";
6
+ export class StringViewerComponent {
7
+ constructor(changeDetectorRef) {
8
+ this.changeDetectorRef = changeDetectorRef;
9
+ }
10
+ ngDoCheck() {
11
+ if (this.model !== this.previousModel) {
12
+ if (!!this.previousModel) {
13
+ this.clearOnChanged(this.previousModel);
14
+ }
15
+ if (!!this.model) {
16
+ this.model.onChanged = () => { this.changeDetectorRef.detectChanges(); };
17
+ }
18
+ this.previousModel = this.model;
19
+ }
20
+ }
21
+ clearOnChanged(model) {
22
+ model.onChanged = () => { };
23
+ }
24
+ ngOnDestroy() {
25
+ !!this.model && this.clearOnChanged(this.model);
26
+ }
27
+ }
28
+ StringViewerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: StringViewerComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
29
+ StringViewerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: StringViewerComponent, selector: "sv-ng-string-viewer, string-viewer, '[sv-ng-string-viewer]'", inputs: { model: "model" }, ngImport: i0, template: "<span *ngIf=\"!model.hasHtml\" class=\"sv-string-viewer\">{{model.renderedHtml}}</span>\n<span *ngIf=\"model.hasHtml\" class=\"sv-string-viewer\" [innerHtml]=\"model.renderedHtml\"></span>", styles: [""], directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
30
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: StringViewerComponent, decorators: [{
31
+ type: Component,
32
+ args: [{
33
+ selector: "sv-ng-string-viewer, string-viewer, '[sv-ng-string-viewer]'",
34
+ templateUrl: "./string-viewer.component.html",
35
+ styleUrls: ["./string-viewer.component.scss"]
36
+ }]
37
+ }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { model: [{
38
+ type: Input
39
+ }] } });
40
+ AngularComponentFactory.Instance.registerComponent(LocalizableString.defaultRenderer, StringViewerComponent);
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RyaW5nLXZpZXdlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc3RyaW5nLXZpZXdlci5jb21wb25lbnQudHMiLCIuLi8uLi9zcmMvc3RyaW5nLXZpZXdlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXFCLFNBQVMsRUFBVyxLQUFLLEVBQXVDLE1BQU0sZUFBZSxDQUFDO0FBQ2xILE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUNoRCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7O0FBTzlELE1BQU0sT0FBTyxxQkFBcUI7SUFHaEMsWUFBb0IsaUJBQW9DO1FBQXBDLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7SUFBRyxDQUFDO0lBQzVELFNBQVM7UUFDUCxJQUFHLElBQUksQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLGFBQWEsRUFBRTtZQUNwQyxJQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFO2dCQUN2QixJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQzthQUN6QztZQUNELElBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUU7Z0JBQ2YsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLEdBQUcsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGFBQWEsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO2FBQzFFO1lBQ0QsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDO1NBQ2pDO0lBQ0gsQ0FBQztJQUNELGNBQWMsQ0FBQyxLQUF3QjtRQUNyQyxLQUFLLENBQUMsU0FBUyxHQUFHLEdBQUcsRUFBRSxHQUFFLENBQUMsQ0FBQztJQUM3QixDQUFDO0lBQ0QsV0FBVztRQUNULENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2xELENBQUM7O21IQXBCVSxxQkFBcUI7dUdBQXJCLHFCQUFxQiwrSENUbEMsOExBQzZGOzRGRFFoRixxQkFBcUI7a0JBTGpDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLDZEQUE2RDtvQkFDdkUsV0FBVyxFQUFFLGdDQUFnQztvQkFDN0MsU0FBUyxFQUFFLENBQUMsZ0NBQWdDLENBQUM7aUJBQzlDO3dHQUVVLEtBQUs7c0JBQWIsS0FBSzs7QUFxQlIsdUJBQXVCLENBQUMsUUFBUSxDQUFDLGlCQUFpQixDQUFDLGlCQUFpQixDQUFDLGVBQWUsRUFBRSxxQkFBcUIsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgRG9DaGVjaywgSW5wdXQsIE9uQ2hhbmdlcywgT25EZXN0cm95LCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IExvY2FsaXphYmxlU3RyaW5nIH0gZnJvbSBcInN1cnZleS1jb3JlXCI7XG5pbXBvcnQgeyBBbmd1bGFyQ29tcG9uZW50RmFjdG9yeSB9IGZyb20gXCIuL2NvbXBvbmVudC1mYWN0b3J5XCI7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogXCJzdi1uZy1zdHJpbmctdmlld2VyLCBzdHJpbmctdmlld2VyLCAnW3N2LW5nLXN0cmluZy12aWV3ZXJdJ1wiLFxuICB0ZW1wbGF0ZVVybDogXCIuL3N0cmluZy12aWV3ZXIuY29tcG9uZW50Lmh0bWxcIixcbiAgc3R5bGVVcmxzOiBbXCIuL3N0cmluZy12aWV3ZXIuY29tcG9uZW50LnNjc3NcIl1cbn0pXG5leHBvcnQgY2xhc3MgU3RyaW5nVmlld2VyQ29tcG9uZW50IGltcGxlbWVudHMgRG9DaGVjayB7XG4gIEBJbnB1dCgpIG1vZGVsITogTG9jYWxpemFibGVTdHJpbmc7XG4gIHByaXZhdGUgcHJldmlvdXNNb2RlbDogTG9jYWxpemFibGVTdHJpbmcgfCB1bmRlZmluZWQ7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmKSB7fVxuICBuZ0RvQ2hlY2soKTogdm9pZCB7XG4gICAgaWYodGhpcy5tb2RlbCAhPT0gdGhpcy5wcmV2aW91c01vZGVsKSB7XG4gICAgICBpZighIXRoaXMucHJldmlvdXNNb2RlbCkge1xuICAgICAgICB0aGlzLmNsZWFyT25DaGFuZ2VkKHRoaXMucHJldmlvdXNNb2RlbCk7XG4gICAgICB9XG4gICAgICBpZighIXRoaXMubW9kZWwpIHtcbiAgICAgICAgdGhpcy5tb2RlbC5vbkNoYW5nZWQgPSAoKSA9PiB7IHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpOyB9O1xuICAgICAgfVxuICAgICAgdGhpcy5wcmV2aW91c01vZGVsID0gdGhpcy5tb2RlbDtcbiAgICB9XG4gIH1cbiAgY2xlYXJPbkNoYW5nZWQobW9kZWw6IExvY2FsaXphYmxlU3RyaW5nKSB7XG4gICAgbW9kZWwub25DaGFuZ2VkID0gKCkgPT4ge307XG4gIH1cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgISF0aGlzLm1vZGVsICYmIHRoaXMuY2xlYXJPbkNoYW5nZWQodGhpcy5tb2RlbCk7XG4gIH1cbn1cbkFuZ3VsYXJDb21wb25lbnRGYWN0b3J5Lkluc3RhbmNlLnJlZ2lzdGVyQ29tcG9uZW50KExvY2FsaXphYmxlU3RyaW5nLmRlZmF1bHRSZW5kZXJlciwgU3RyaW5nVmlld2VyQ29tcG9uZW50KTsiLCI8c3BhbiAqbmdJZj1cIiFtb2RlbC5oYXNIdG1sXCIgY2xhc3M9XCJzdi1zdHJpbmctdmlld2VyXCI+e3ttb2RlbC5yZW5kZXJlZEh0bWx9fTwvc3Bhbj5cbjxzcGFuICpuZ0lmPVwibW9kZWwuaGFzSHRtbFwiIGNsYXNzPVwic3Ytc3RyaW5nLXZpZXdlclwiIFtpbm5lckh0bWxdPVwibW9kZWwucmVuZGVyZWRIdG1sXCI+PC9zcGFuPiJdfQ==
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './angular-ui';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VydmV5LWFuZ3VsYXItdWkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc3VydmV5LWFuZ3VsYXItdWkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9hbmd1bGFyLXVpJztcbiJdfQ==
@@ -0,0 +1,72 @@
1
+ import { Component, Input, ViewChild } from "@angular/core";
2
+ import { SvgRegistry } from "survey-core";
3
+ import { BaseAngular } from "./base-angular";
4
+ import { AngularComponentFactory } from "./component-factory";
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "./components/survey-header/survey-header.component";
7
+ import * as i2 from "./components/timer-panel/timer-panel.component";
8
+ import * as i3 from "./components/action-bar/action-bar.component";
9
+ import * as i4 from "./page.component";
10
+ import * as i5 from "./components/brand-info/brand-info.component";
11
+ import * as i6 from "./components/notifier/notifier.component";
12
+ import * as i7 from "@angular/common";
13
+ import * as i8 from "@angular/forms";
14
+ import * as i9 from "./utils/dynamic.directive";
15
+ export class SurveyContentComponent extends BaseAngular {
16
+ constructor() {
17
+ super(...arguments);
18
+ this.isSurveyUpdated = false;
19
+ }
20
+ getModel() {
21
+ return this.model;
22
+ }
23
+ onModelChanged() {
24
+ if (!!this.previousModel) {
25
+ this.previousModel.destroyResizeObserver();
26
+ this.previousModel.renderCallback = undefined;
27
+ }
28
+ if (!!this.model) {
29
+ this.model.renderCallback = () => {
30
+ this.detectChanges();
31
+ };
32
+ }
33
+ this.isSurveyUpdated = true;
34
+ }
35
+ ngOnInit() {
36
+ super.ngOnInit();
37
+ if (!!this.model && this.model["needRenderIcons"]) {
38
+ SvgRegistry.renderIcons();
39
+ }
40
+ }
41
+ ngOnDestroy() {
42
+ super.ngOnDestroy();
43
+ if (!!this.model) {
44
+ this.model.renderCallback = undefined;
45
+ }
46
+ }
47
+ ngAfterViewInit() {
48
+ this.isSurveyUpdated = true;
49
+ }
50
+ ngAfterViewChecked() {
51
+ if (!!this.model && this.isSurveyUpdated) {
52
+ this.model.afterRenderSurvey(this.rootEl.nativeElement);
53
+ }
54
+ super.ngAfterViewChecked();
55
+ }
56
+ }
57
+ SurveyContentComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: SurveyContentComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
58
+ SurveyContentComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: SurveyContentComponent, selector: "survey-content", inputs: { model: "model" }, viewQueries: [{ propertyName: "rootEl", first: true, predicate: ["surveyContainer"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <div #surveyContainer *ngIf=\"!!model\" [class]=\"model.getRootCss()\">\n <form onsubmit=\"return false;\">\n <div class=\"sv_custom_header\" [hidden]=\"model.hasLogo\"></div>\n <div [class]=\"model.css.container\">\n <div *ngIf=\"model.renderedHasHeader\" [class]=\"model.css.header\" [survey]=\"model\" sv-ng-survey-header></div>\n <ng-container *ngIf=\"model.isTimerPanelShowingOnTop && !model.isShowStartingPage\">\n <sv-timer-panel [model]=\"model.timerModel\"></sv-timer-panel>\n </ng-container>\n <ng-container *ngIf=\"model.isShowProgressBarOnTop && !model.isShowStartingPage\">\n <ng-template [component]='{ name: \"sv-progress-\" + this.model.progressBarType, data: { model } }'></ng-template>\n </ng-container>\n <div *ngIf=\"model.isShowingPage\" [class]=\"model.bodyCss\" [style.maxWidth]=\"model.renderedWidth\" [id]=\"model.activePage ? model.activePage.id : ''\">\n <sv-action-bar *ngIf=\"model.isNavigationButtonsShowingOnTop\" [model]=\"model.navigationBar\"></sv-action-bar>\n <!-- ko if: activePage -->\n <ng-container *ngIf=\"model.activePage\">\n <sv-ng-page [model]=\"model.activePage\" [survey]=\"model\"></sv-ng-page>\n </ng-container>\n <!-- ko if: activePage.rows.length == 0 && $data.emptyPageTemplate -->\n <!-- ko template: { name: emptyPageTemplate, data: $data.emptyPageTemplateData || $data } -->\n <!-- /ko -->\n <!-- /ko -->\n <!-- /ko -->\n <ng-container *ngIf=\"model.isShowProgressBarOnBottom && !model.isShowStartingPage\">\n <ng-template [component]='{ name: \"sv-progress-\" + this.model.progressBarType, data: { model } }'></ng-template>\n </ng-container>\n <sv-action-bar *ngIf=\"model.isNavigationButtonsShowingOnBottom\" [model]=\"model.navigationBar\"></sv-action-bar> \n </div>\n <ng-container *ngIf=\"model.isTimerPanelShowingOnBottom && !model.isShowStartingPage\">\n <sv-timer-panel [model]=\"model.timerModel\"></sv-timer-panel>\n </ng-container>\n <div *ngIf=\"model.state === 'completed' && model.showCompletedPage\" [class]=\"model.completedCss\"\n [innerHtml]=\"model.processedCompletedHtml\"></div>\n <div *ngIf=\"model.state === 'completedbefore'\" [class]=\"model.css.body\"\n [innerHtml]=\"model.processedCompletedBeforeHtml\"></div>\n <div *ngIf=\"model.state === 'loading'\" [class]=\"model.css.body\" [innerHtml]=\"model.processedLoadingHtml\"></div>\n <div *ngIf=\"model.state === 'empty'\" [class]=\"model.css.bodyEmpty\">{{model.emptySurveyText}}</div>\n </div>\n </form>\n <sv-brand-info *ngIf=\"model.showBrandInfo\"></sv-brand-info>\n <sv-notifier [notifier]=\"model.notifier\"></sv-notifier>\n </div>\n</ng-template>", components: [{ type: i1.SurveyHeaderComponent, selector: "'[sv-ng-survey-header]'", inputs: ["survey"] }, { type: i2.TimerPanelComponent, selector: "sv-timer-panel", inputs: ["model"] }, { type: i3.ActionBarComponent, selector: "sv-action-bar, sv-ng-action-bar", inputs: ["model", "handleClick"] }, { type: i4.PageComponent, selector: "page, sv-ng-page", inputs: ["model", "survey"] }, { type: i5.BrandInfoComponent, selector: "sv-brand-info" }, { type: i6.NotifierComponent, selector: "sv-notifier", inputs: ["notifier"] }], directives: [{ type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i8.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i8.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i8.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i9.DynamicComponentDirective, selector: "[component]", inputs: ["component"] }] });
59
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: SurveyContentComponent, decorators: [{
60
+ type: Component,
61
+ args: [{
62
+ selector: "survey-content",
63
+ templateUrl: "./survey-content.component.html"
64
+ }]
65
+ }], propDecorators: { model: [{
66
+ type: Input
67
+ }], rootEl: [{
68
+ type: ViewChild,
69
+ args: ["surveyContainer", { static: false }]
70
+ }] } });
71
+ AngularComponentFactory.Instance.registerComponent("survey", SurveyContentComponent);
72
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VydmV5LWNvbnRlbnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3N1cnZleS1jb250ZW50LmNvbXBvbmVudC50cyIsIi4uLy4uL3NyYy9zdXJ2ZXktY29udGVudC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQWlCLFNBQVMsRUFBYyxLQUFLLEVBQVUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQy9GLE9BQU8sRUFBZSxXQUFXLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDdkQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDOzs7Ozs7Ozs7OztBQUs5RCxNQUFNLE9BQU8sc0JBQXVCLFNBQVEsV0FBd0I7SUFKcEU7O1FBT1Usb0JBQWUsR0FBWSxLQUFLLENBQUM7S0FxQzFDO0lBcENXLFFBQVE7UUFDaEIsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3BCLENBQUM7SUFDa0IsY0FBYztRQUMvQixJQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFO1lBQ3ZCLElBQUksQ0FBQyxhQUFhLENBQUMscUJBQXFCLEVBQUUsQ0FBQztZQUMzQyxJQUFJLENBQUMsYUFBYSxDQUFDLGNBQWMsR0FBUSxTQUFTLENBQUM7U0FDcEQ7UUFDRCxJQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFO1lBQ2YsSUFBSSxDQUFDLEtBQUssQ0FBQyxjQUFjLEdBQUcsR0FBRyxFQUFFO2dCQUMvQixJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDdkIsQ0FBQyxDQUFDO1NBQ0g7UUFDRCxJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQztJQUM5QixDQUFDO0lBQ1EsUUFBUTtRQUNmLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNqQixJQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsaUJBQWlCLENBQUMsRUFBRTtZQUNoRCxXQUFXLENBQUMsV0FBVyxFQUFFLENBQUM7U0FDM0I7SUFDSCxDQUFDO0lBQ1EsV0FBVztRQUNsQixLQUFLLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDcEIsSUFBRyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRTtZQUNmLElBQUksQ0FBQyxLQUFLLENBQUMsY0FBYyxHQUFRLFNBQVMsQ0FBQztTQUM1QztJQUNILENBQUM7SUFDRCxlQUFlO1FBQ2IsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUM7SUFDOUIsQ0FBQztJQUNRLGtCQUFrQjtRQUN6QixJQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQyxlQUFlLEVBQUU7WUFDdkMsSUFBSSxDQUFDLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1NBQ3pEO1FBQ0QsS0FBSyxDQUFDLGtCQUFrQixFQUFFLENBQUM7SUFDN0IsQ0FBQzs7b0hBdkNVLHNCQUFzQjt3R0FBdEIsc0JBQXNCLG9OQ1RuQywrMkZBMENjOzRGRGpDRCxzQkFBc0I7a0JBSmxDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGdCQUFnQjtvQkFDMUIsV0FBVyxFQUFFLGlDQUFpQztpQkFDN0M7OEJBRVEsS0FBSztzQkFBYixLQUFLO2dCQUMyQyxNQUFNO3NCQUF0RCxTQUFTO3VCQUFDLGlCQUFpQixFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRTs7QUF3Q2pELHVCQUF1QixDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyxRQUFRLEVBQUUsc0JBQXNCLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIlxuaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBJbnB1dCwgT25Jbml0LCBWaWV3Q2hpbGQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgU3VydmV5TW9kZWwsIFN2Z1JlZ2lzdHJ5IH0gZnJvbSBcInN1cnZleS1jb3JlXCI7XG5pbXBvcnQgeyBCYXNlQW5ndWxhciB9IGZyb20gXCIuL2Jhc2UtYW5ndWxhclwiO1xuaW1wb3J0IHsgQW5ndWxhckNvbXBvbmVudEZhY3RvcnkgfSBmcm9tIFwiLi9jb21wb25lbnQtZmFjdG9yeVwiO1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiBcInN1cnZleS1jb250ZW50XCIsXG4gIHRlbXBsYXRlVXJsOiBcIi4vc3VydmV5LWNvbnRlbnQuY29tcG9uZW50Lmh0bWxcIlxuICB9KVxuZXhwb3J0IGNsYXNzIFN1cnZleUNvbnRlbnRDb21wb25lbnQgZXh0ZW5kcyBCYXNlQW5ndWxhcjxTdXJ2ZXlNb2RlbD4gaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyVmlld0luaXQge1xuICBASW5wdXQoKSBtb2RlbCE6IFN1cnZleU1vZGVsO1xuICBAVmlld0NoaWxkKFwic3VydmV5Q29udGFpbmVyXCIsIHsgc3RhdGljOiBmYWxzZSB9KSByb290RWwhOiBFbGVtZW50UmVmPEhUTUxEaXZFbGVtZW50PjtcbiAgcHJpdmF0ZSBpc1N1cnZleVVwZGF0ZWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgcHJvdGVjdGVkIGdldE1vZGVsKCk6IFN1cnZleU1vZGVsIHtcbiAgICByZXR1cm4gdGhpcy5tb2RlbDtcbiAgfVxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgb25Nb2RlbENoYW5nZWQoKTogdm9pZCB7XG4gICAgaWYoISF0aGlzLnByZXZpb3VzTW9kZWwpIHtcbiAgICAgIHRoaXMucHJldmlvdXNNb2RlbC5kZXN0cm95UmVzaXplT2JzZXJ2ZXIoKTtcbiAgICAgIHRoaXMucHJldmlvdXNNb2RlbC5yZW5kZXJDYWxsYmFjayA9IDxhbnk+dW5kZWZpbmVkO1xuICAgIH1cbiAgICBpZighIXRoaXMubW9kZWwpIHtcbiAgICAgIHRoaXMubW9kZWwucmVuZGVyQ2FsbGJhY2sgPSAoKSA9PiB7XG4gICAgICAgIHRoaXMuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgfTtcbiAgICB9XG4gICAgdGhpcy5pc1N1cnZleVVwZGF0ZWQgPSB0cnVlO1xuICB9XG4gIG92ZXJyaWRlIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHN1cGVyLm5nT25Jbml0KCk7XG4gICAgaWYoISF0aGlzLm1vZGVsICYmIHRoaXMubW9kZWxbXCJuZWVkUmVuZGVySWNvbnNcIl0pIHtcbiAgICAgIFN2Z1JlZ2lzdHJ5LnJlbmRlckljb25zKCk7XG4gICAgfVxuICB9XG4gIG92ZXJyaWRlIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHN1cGVyLm5nT25EZXN0cm95KCk7XG4gICAgaWYoISF0aGlzLm1vZGVsKSB7XG4gICAgICB0aGlzLm1vZGVsLnJlbmRlckNhbGxiYWNrID0gPGFueT51bmRlZmluZWQ7XG4gICAgfVxuICB9XG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmlzU3VydmV5VXBkYXRlZCA9IHRydWU7XG4gIH1cbiAgb3ZlcnJpZGUgbmdBZnRlclZpZXdDaGVja2VkKCk6IHZvaWQge1xuICAgIGlmKCEhdGhpcy5tb2RlbCAmJiB0aGlzLmlzU3VydmV5VXBkYXRlZCkge1xuICAgICAgdGhpcy5tb2RlbC5hZnRlclJlbmRlclN1cnZleSh0aGlzLnJvb3RFbC5uYXRpdmVFbGVtZW50KTtcbiAgICB9XG4gICAgc3VwZXIubmdBZnRlclZpZXdDaGVja2VkKCk7XG4gIH1cbn1cblxuQW5ndWxhckNvbXBvbmVudEZhY3RvcnkuSW5zdGFuY2UucmVnaXN0ZXJDb21wb25lbnQoXCJzdXJ2ZXlcIiwgU3VydmV5Q29udGVudENvbXBvbmVudCk7IiwiPG5nLXRlbXBsYXRlICN0ZW1wbGF0ZT5cbiAgPGRpdiAjc3VydmV5Q29udGFpbmVyICpuZ0lmPVwiISFtb2RlbFwiIFtjbGFzc109XCJtb2RlbC5nZXRSb290Q3NzKClcIj5cbiAgICA8Zm9ybSBvbnN1Ym1pdD1cInJldHVybiBmYWxzZTtcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJzdl9jdXN0b21faGVhZGVyXCIgW2hpZGRlbl09XCJtb2RlbC5oYXNMb2dvXCI+PC9kaXY+XG4gICAgICA8ZGl2IFtjbGFzc109XCJtb2RlbC5jc3MuY29udGFpbmVyXCI+XG4gICAgICAgIDxkaXYgKm5nSWY9XCJtb2RlbC5yZW5kZXJlZEhhc0hlYWRlclwiIFtjbGFzc109XCJtb2RlbC5jc3MuaGVhZGVyXCIgW3N1cnZleV09XCJtb2RlbFwiIHN2LW5nLXN1cnZleS1oZWFkZXI+PC9kaXY+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJtb2RlbC5pc1RpbWVyUGFuZWxTaG93aW5nT25Ub3AgJiYgIW1vZGVsLmlzU2hvd1N0YXJ0aW5nUGFnZVwiPlxuICAgICAgICAgIDxzdi10aW1lci1wYW5lbCBbbW9kZWxdPVwibW9kZWwudGltZXJNb2RlbFwiPjwvc3YtdGltZXItcGFuZWw+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwibW9kZWwuaXNTaG93UHJvZ3Jlc3NCYXJPblRvcCAmJiAhbW9kZWwuaXNTaG93U3RhcnRpbmdQYWdlXCI+XG4gICAgICAgICAgPG5nLXRlbXBsYXRlIFtjb21wb25lbnRdPSd7IG5hbWU6IFwic3YtcHJvZ3Jlc3MtXCIgKyB0aGlzLm1vZGVsLnByb2dyZXNzQmFyVHlwZSwgZGF0YTogeyBtb2RlbCB9IH0nPjwvbmctdGVtcGxhdGU+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8ZGl2ICpuZ0lmPVwibW9kZWwuaXNTaG93aW5nUGFnZVwiIFtjbGFzc109XCJtb2RlbC5ib2R5Q3NzXCIgW3N0eWxlLm1heFdpZHRoXT1cIm1vZGVsLnJlbmRlcmVkV2lkdGhcIiBbaWRdPVwibW9kZWwuYWN0aXZlUGFnZSA/IG1vZGVsLmFjdGl2ZVBhZ2UuaWQgOiAnJ1wiPlxuICAgICAgICAgIDxzdi1hY3Rpb24tYmFyICpuZ0lmPVwibW9kZWwuaXNOYXZpZ2F0aW9uQnV0dG9uc1Nob3dpbmdPblRvcFwiIFttb2RlbF09XCJtb2RlbC5uYXZpZ2F0aW9uQmFyXCI+PC9zdi1hY3Rpb24tYmFyPlxuICAgICAgICAgIDwhLS0ga28gaWY6IGFjdGl2ZVBhZ2UgLS0+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwibW9kZWwuYWN0aXZlUGFnZVwiPlxuICAgICAgICAgICAgICAgIDxzdi1uZy1wYWdlIFttb2RlbF09XCJtb2RlbC5hY3RpdmVQYWdlXCIgW3N1cnZleV09XCJtb2RlbFwiPjwvc3YtbmctcGFnZT5cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPCEtLSBrbyBpZjogYWN0aXZlUGFnZS5yb3dzLmxlbmd0aCA9PSAwICYmICRkYXRhLmVtcHR5UGFnZVRlbXBsYXRlIC0tPlxuICAgICAgICAgICAgPCEtLSBrbyB0ZW1wbGF0ZTogeyBuYW1lOiBlbXB0eVBhZ2VUZW1wbGF0ZSwgZGF0YTogJGRhdGEuZW1wdHlQYWdlVGVtcGxhdGVEYXRhIHx8ICRkYXRhIH0gLS0+XG4gICAgICAgICAgICA8IS0tIC9rbyAtLT5cbiAgICAgICAgICAgIDwhLS0gL2tvIC0tPlxuICAgICAgICAgIDwhLS0gL2tvIC0tPlxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJtb2RlbC5pc1Nob3dQcm9ncmVzc0Jhck9uQm90dG9tICYmICFtb2RlbC5pc1Nob3dTdGFydGluZ1BhZ2VcIj5cbiAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBbY29tcG9uZW50XT0neyBuYW1lOiBcInN2LXByb2dyZXNzLVwiICsgdGhpcy5tb2RlbC5wcm9ncmVzc0JhclR5cGUsIGRhdGE6IHsgbW9kZWwgfSB9Jz48L25nLXRlbXBsYXRlPlxuICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgIDxzdi1hY3Rpb24tYmFyICpuZ0lmPVwibW9kZWwuaXNOYXZpZ2F0aW9uQnV0dG9uc1Nob3dpbmdPbkJvdHRvbVwiIFttb2RlbF09XCJtb2RlbC5uYXZpZ2F0aW9uQmFyXCI+PC9zdi1hY3Rpb24tYmFyPiAgXG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwibW9kZWwuaXNUaW1lclBhbmVsU2hvd2luZ09uQm90dG9tICYmICFtb2RlbC5pc1Nob3dTdGFydGluZ1BhZ2VcIj5cbiAgICAgICAgICAgIDxzdi10aW1lci1wYW5lbCBbbW9kZWxdPVwibW9kZWwudGltZXJNb2RlbFwiPjwvc3YtdGltZXItcGFuZWw+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8ZGl2ICpuZ0lmPVwibW9kZWwuc3RhdGUgPT09ICdjb21wbGV0ZWQnICYmIG1vZGVsLnNob3dDb21wbGV0ZWRQYWdlXCIgW2NsYXNzXT1cIm1vZGVsLmNvbXBsZXRlZENzc1wiXG4gICAgICAgICAgW2lubmVySHRtbF09XCJtb2RlbC5wcm9jZXNzZWRDb21wbGV0ZWRIdG1sXCI+PC9kaXY+XG4gICAgICAgIDxkaXYgKm5nSWY9XCJtb2RlbC5zdGF0ZSA9PT0gJ2NvbXBsZXRlZGJlZm9yZSdcIiBbY2xhc3NdPVwibW9kZWwuY3NzLmJvZHlcIlxuICAgICAgICAgIFtpbm5lckh0bWxdPVwibW9kZWwucHJvY2Vzc2VkQ29tcGxldGVkQmVmb3JlSHRtbFwiPjwvZGl2PlxuICAgICAgICA8ZGl2ICpuZ0lmPVwibW9kZWwuc3RhdGUgPT09ICdsb2FkaW5nJ1wiIFtjbGFzc109XCJtb2RlbC5jc3MuYm9keVwiIFtpbm5lckh0bWxdPVwibW9kZWwucHJvY2Vzc2VkTG9hZGluZ0h0bWxcIj48L2Rpdj5cbiAgICAgICAgPGRpdiAqbmdJZj1cIm1vZGVsLnN0YXRlID09PSAnZW1wdHknXCIgW2NsYXNzXT1cIm1vZGVsLmNzcy5ib2R5RW1wdHlcIj57e21vZGVsLmVtcHR5U3VydmV5VGV4dH19PC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Zvcm0+XG4gICAgPHN2LWJyYW5kLWluZm8gKm5nSWY9XCJtb2RlbC5zaG93QnJhbmRJbmZvXCI+PC9zdi1icmFuZC1pbmZvPlxuICAgIDxzdi1ub3RpZmllciBbbm90aWZpZXJdPVwibW9kZWwubm90aWZpZXJcIj48L3N2LW5vdGlmaWVyPlxuICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+Il19
@@ -0,0 +1,17 @@
1
+ import { Component, Input } from "@angular/core";
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "./utils/dynamic.directive";
4
+ export class SurveyStringComponent {
5
+ }
6
+ SurveyStringComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: SurveyStringComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
7
+ SurveyStringComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: SurveyStringComponent, selector: "sv-ng-string, '[sv-ng-string]'", inputs: { model: "model" }, ngImport: i0, template: "<ng-template [component]='{ name: model.renderAs, data: { model: model.renderAsData } }'></ng-template>", isInline: true, directives: [{ type: i1.DynamicComponentDirective, selector: "[component]", inputs: ["component"] }] });
8
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: SurveyStringComponent, decorators: [{
9
+ type: Component,
10
+ args: [{
11
+ selector: "sv-ng-string, '[sv-ng-string]'",
12
+ template: "<ng-template [component]='{ name: model.renderAs, data: { model: model.renderAsData } }'></ng-template>"
13
+ }]
14
+ }], propDecorators: { model: [{
15
+ type: Input
16
+ }] } });
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VydmV5LXN0cmluZy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc3VydmV5LXN0cmluZy5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7OztBQVNqRCxNQUFNLE9BQU8scUJBQXFCOzttSEFBckIscUJBQXFCO3VHQUFyQixxQkFBcUIsa0dBSHBCLHlHQUF5Rzs0RkFHMUcscUJBQXFCO2tCQU5qQyxTQUFTO21CQUNSO29CQUNFLFFBQVEsRUFBRSxnQ0FBZ0M7b0JBQzFDLFFBQVEsRUFBRSx5R0FBeUc7aUJBQ3BIOzhCQUdRLEtBQUs7c0JBQWIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgTG9jYWxpemFibGVTdHJpbmcgfSBmcm9tIFwic3VydmV5LWNvcmVcIjtcblxuQENvbXBvbmVudChcbiAge1xuICAgIHNlbGVjdG9yOiBcInN2LW5nLXN0cmluZywgJ1tzdi1uZy1zdHJpbmddJ1wiLFxuICAgIHRlbXBsYXRlOiBcIjxuZy10ZW1wbGF0ZSBbY29tcG9uZW50XT0neyBuYW1lOiBtb2RlbC5yZW5kZXJBcywgZGF0YTogeyBtb2RlbDogbW9kZWwucmVuZGVyQXNEYXRhIH0gfSc+PC9uZy10ZW1wbGF0ZT5cIlxuICB9XG4pXG5leHBvcnQgY2xhc3MgU3VydmV5U3RyaW5nQ29tcG9uZW50IHtcbiAgQElucHV0KCkgbW9kZWwhOiBMb2NhbGl6YWJsZVN0cmluZztcbn0iXX0=
@@ -0,0 +1,32 @@
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 "./components/popup/modal-container.component";
5
+ import * as i2 from "./survey-content.component";
6
+ export class SurveyComponent extends BaseAngular {
7
+ constructor(changeDetectorRef) {
8
+ super(changeDetectorRef);
9
+ changeDetectorRef.detach();
10
+ }
11
+ getModel() {
12
+ return this.model;
13
+ }
14
+ getShouldReattachChangeDetector() {
15
+ return false;
16
+ }
17
+ onModelChanged() {
18
+ this.changeDetectorRef.detectChanges();
19
+ }
20
+ }
21
+ SurveyComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: SurveyComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
22
+ SurveyComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: SurveyComponent, selector: "survey", inputs: { model: "model" }, usesInheritance: true, ngImport: i0, template: "<sv-ng-modal-container></sv-ng-modal-container><survey-content [model]='model'></survey-content>", isInline: true, components: [{ type: i1.ModalComponent, selector: "sv-ng-modal-container" }, { type: i2.SurveyContentComponent, selector: "survey-content", inputs: ["model"] }] });
23
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: SurveyComponent, decorators: [{
24
+ type: Component,
25
+ args: [{
26
+ selector: "survey",
27
+ template: "<sv-ng-modal-container></sv-ng-modal-container><survey-content [model]='model'></survey-content>"
28
+ }]
29
+ }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { model: [{
30
+ type: Input
31
+ }] } });
32
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VydmV5LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zdXJ2ZXkuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBcUIsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVwRSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7QUFLN0MsTUFBTSxPQUFPLGVBQWdCLFNBQVEsV0FBd0I7SUFLM0QsWUFBWSxpQkFBb0M7UUFDOUMsS0FBSyxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFDekIsaUJBQWlCLENBQUMsTUFBTSxFQUFFLENBQUM7SUFDN0IsQ0FBQztJQU5TLFFBQVE7UUFDaEIsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3BCLENBQUM7SUFLa0IsK0JBQStCO1FBQ2hELE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUNrQixjQUFjO1FBQy9CLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUN6QyxDQUFDOzs2R0FkVSxlQUFlO2lHQUFmLGVBQWUsaUdBRmhCLGtHQUFrRzs0RkFFakcsZUFBZTtrQkFKM0IsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsUUFBUTtvQkFDbEIsUUFBUSxFQUFFLGtHQUFrRztpQkFDM0c7d0dBRVEsS0FBSztzQkFBYixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgSW5wdXQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgU3VydmV5TW9kZWwgfSBmcm9tIFwic3VydmV5LWNvcmVcIjtcbmltcG9ydCB7IEJhc2VBbmd1bGFyIH0gZnJvbSBcIi4vYmFzZS1hbmd1bGFyXCI7XG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6IFwic3VydmV5XCIsXG4gIHRlbXBsYXRlOiBcIjxzdi1uZy1tb2RhbC1jb250YWluZXI+PC9zdi1uZy1tb2RhbC1jb250YWluZXI+PHN1cnZleS1jb250ZW50IFttb2RlbF09J21vZGVsJz48L3N1cnZleS1jb250ZW50PlwiXG4gIH0pXG5leHBvcnQgY2xhc3MgU3VydmV5Q29tcG9uZW50IGV4dGVuZHMgQmFzZUFuZ3VsYXI8U3VydmV5TW9kZWw+IHtcbiAgQElucHV0KCkgbW9kZWwhOiBTdXJ2ZXlNb2RlbDtcbiAgcHJvdGVjdGVkIGdldE1vZGVsKCk6IFN1cnZleU1vZGVsIHtcbiAgICByZXR1cm4gdGhpcy5tb2RlbDtcbiAgfVxuICBjb25zdHJ1Y3RvcihjaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHtcbiAgICBzdXBlcihjaGFuZ2VEZXRlY3RvclJlZik7XG4gICAgY2hhbmdlRGV0ZWN0b3JSZWYuZGV0YWNoKCk7XG4gIH1cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIGdldFNob3VsZFJlYXR0YWNoQ2hhbmdlRGV0ZWN0b3IoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG4gIHByb3RlY3RlZCBvdmVycmlkZSBvbk1vZGVsQ2hhbmdlZCgpOiB2b2lkIHtcbiAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKTtcbiAgfVxufSJdfQ==
@@ -0,0 +1,27 @@
1
+ import { Component, Input } from "@angular/core";
2
+ import { SurveyModel } from "survey-core";
3
+ import { AngularComponentFactory } from "./component-factory";
4
+ import { EmbeddedViewContentComponent } from "./embedded-view-content.component";
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "@angular/common";
7
+ import * as i2 from "./utils/dynamic.directive";
8
+ export class TemplateRendererComponent extends EmbeddedViewContentComponent {
9
+ }
10
+ TemplateRendererComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TemplateRendererComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
11
+ TemplateRendererComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TemplateRendererComponent, selector: "sv-template-renderer", inputs: { componentName: "componentName", componentData: "componentData", contentTempl: "contentTempl" }, usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <ng-container *ngIf=\"!!componentName\">\n <ng-template [component]=\"{ name: componentName, data: componentData }\"></ng-template>\n </ng-container>\n <ng-container *ngIf=\"!componentName && contentTempl\">\n <ng-container *ngTemplateOutlet=\"contentTempl\"></ng-container>\n </ng-container>\n</ng-template>", styles: [":host{display:none}\n"], directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.DynamicComponentDirective, selector: "[component]", inputs: ["component"] }, { type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }] });
12
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TemplateRendererComponent, decorators: [{
13
+ type: Component,
14
+ args: [{
15
+ selector: "sv-template-renderer",
16
+ templateUrl: "./template-renderer.component.html",
17
+ styleUrls: ["./hide-host.scss"]
18
+ }]
19
+ }], propDecorators: { componentName: [{
20
+ type: Input
21
+ }], componentData: [{
22
+ type: Input
23
+ }], contentTempl: [{
24
+ type: Input
25
+ }] } });
26
+ AngularComponentFactory.Instance.registerComponent(SurveyModel.TemplateRendererComponentName, TemplateRendererComponent);
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVtcGxhdGUtcmVuZGVyZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3RlbXBsYXRlLXJlbmRlcmVyLmNvbXBvbmVudC50cyIsIi4uLy4uL3NyYy90ZW1wbGF0ZS1yZW5kZXJlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXFCLFNBQVMsRUFBRSxLQUFLLEVBQWlDLE1BQU0sZUFBZSxDQUFDO0FBQ25HLE9BQU8sRUFBOEMsV0FBVyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRXRGLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQzlELE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDOzs7O0FBT2pGLE1BQU0sT0FBTyx5QkFBMEIsU0FBUSw0QkFBNEI7O3VIQUE5RCx5QkFBeUI7MkdBQXpCLHlCQUF5Qiw2TENYdEMsMFZBT2M7NEZESUQseUJBQXlCO2tCQUxyQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxzQkFBc0I7b0JBQ2hDLFdBQVcsRUFBRSxvQ0FBb0M7b0JBQ2pELFNBQVMsRUFBRSxDQUFDLGtCQUFrQixDQUFDO2lCQUNoQzs4QkFFVSxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSzs7QUFFUix1QkFBdUIsQ0FBQyxRQUFRLENBQUMsaUJBQWlCLENBQUMsV0FBVyxDQUFDLDZCQUE2QixFQUFFLHlCQUF5QixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBJbnB1dCwgVGVtcGxhdGVSZWYsIFZpZXdDb250YWluZXJSZWYgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgQnV0dG9uR3JvdXBJdGVtTW9kZWwsIFBhbmVsTW9kZWwsIFF1ZXN0aW9uLCBTdXJ2ZXlNb2RlbCB9IGZyb20gXCJzdXJ2ZXktY29yZVwiO1xuaW1wb3J0IHsgQmFzZUFuZ3VsYXIgfSBmcm9tIFwiLi9iYXNlLWFuZ3VsYXJcIjtcbmltcG9ydCB7IEFuZ3VsYXJDb21wb25lbnRGYWN0b3J5IH0gZnJvbSBcIi4vY29tcG9uZW50LWZhY3RvcnlcIjtcbmltcG9ydCB7IEVtYmVkZGVkVmlld0NvbnRlbnRDb21wb25lbnQgfSBmcm9tIFwiLi9lbWJlZGRlZC12aWV3LWNvbnRlbnQuY29tcG9uZW50XCI7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogXCJzdi10ZW1wbGF0ZS1yZW5kZXJlclwiLFxuICB0ZW1wbGF0ZVVybDogXCIuL3RlbXBsYXRlLXJlbmRlcmVyLmNvbXBvbmVudC5odG1sXCIsXG4gIHN0eWxlVXJsczogW1wiLi9oaWRlLWhvc3Quc2Nzc1wiXVxufSlcbmV4cG9ydCBjbGFzcyBUZW1wbGF0ZVJlbmRlcmVyQ29tcG9uZW50IGV4dGVuZHMgRW1iZWRkZWRWaWV3Q29udGVudENvbXBvbmVudCB7XG4gIEBJbnB1dCgpIGNvbXBvbmVudE5hbWUhOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGNvbXBvbmVudERhdGEhOiBhbnk7XG4gIEBJbnB1dCgpIGNvbnRlbnRUZW1wbD86IFRlbXBsYXRlUmVmPHVua25vd24+O1xufVxuQW5ndWxhckNvbXBvbmVudEZhY3RvcnkuSW5zdGFuY2UucmVnaXN0ZXJDb21wb25lbnQoU3VydmV5TW9kZWwuVGVtcGxhdGVSZW5kZXJlckNvbXBvbmVudE5hbWUsIFRlbXBsYXRlUmVuZGVyZXJDb21wb25lbnQpOyIsIjxuZy10ZW1wbGF0ZSAjdGVtcGxhdGU+XG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCIhIWNvbXBvbmVudE5hbWVcIj5cbiAgICA8bmctdGVtcGxhdGUgW2NvbXBvbmVudF09XCJ7IG5hbWU6IGNvbXBvbmVudE5hbWUsIGRhdGE6IGNvbXBvbmVudERhdGEgfVwiPjwvbmctdGVtcGxhdGU+XG4gIDwvbmctY29udGFpbmVyPlxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWNvbXBvbmVudE5hbWUgJiYgY29udGVudFRlbXBsXCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImNvbnRlbnRUZW1wbFwiPjwvbmctY29udGFpbmVyPlxuICA8L25nLWNvbnRhaW5lcj5cbjwvbmctdGVtcGxhdGU+Il19
@@ -0,0 +1,54 @@
1
+ import { Directive, Input } from "@angular/core";
2
+ import { AngularComponentFactory } from "../component-factory";
3
+ import * as i0 from "@angular/core";
4
+ export class DynamicComponentDirective {
5
+ constructor(containerRef, templateRef, resolver) {
6
+ this.containerRef = containerRef;
7
+ this.templateRef = templateRef;
8
+ this.resolver = resolver;
9
+ }
10
+ ngOnChanges(changes) {
11
+ var _a;
12
+ const componentChanges = changes["component"];
13
+ if (componentChanges.currentValue.name !== ((_a = componentChanges.previousValue) === null || _a === void 0 ? void 0 : _a.name) ||
14
+ (componentChanges.currentValue.name === undefined && componentChanges.previousValue === undefined && !this.componentInstance)) {
15
+ this.createComponent();
16
+ }
17
+ else {
18
+ this.updateComponentData();
19
+ }
20
+ }
21
+ createComponent() {
22
+ this.containerRef.clear();
23
+ if (AngularComponentFactory.Instance.isComponentRegistered(this.component.name)) {
24
+ this.componentInstance = AngularComponentFactory.Instance.create(this.containerRef, this.component.name, this.resolver).instance;
25
+ }
26
+ else if (this.component.default) {
27
+ this.componentInstance = AngularComponentFactory.Instance.create(this.containerRef, this.component.default, this.resolver).instance;
28
+ }
29
+ if (!this.componentInstance) {
30
+ throw new Error(`Can't create component with name: ${this.component.name} and default: ${this.component.default}`);
31
+ }
32
+ else {
33
+ this.componentInstance.contentTempl = this.templateRef;
34
+ }
35
+ this.updateComponentData();
36
+ }
37
+ updateComponentData() {
38
+ const data = this.component.data;
39
+ Object.keys(data).forEach((key) => {
40
+ this.componentInstance[key] = data[key];
41
+ });
42
+ }
43
+ }
44
+ DynamicComponentDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: DynamicComponentDirective, deps: [{ token: i0.ViewContainerRef }, { token: i0.TemplateRef }, { token: i0.ComponentFactoryResolver }], target: i0.ɵɵFactoryTarget.Directive });
45
+ DynamicComponentDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.17", type: DynamicComponentDirective, selector: "[component]", inputs: { component: "component" }, usesOnChanges: true, ngImport: i0 });
46
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: DynamicComponentDirective, decorators: [{
47
+ type: Directive,
48
+ args: [{
49
+ selector: "[component]"
50
+ }]
51
+ }], ctorParameters: function () { return [{ type: i0.ViewContainerRef }, { type: i0.TemplateRef }, { type: i0.ComponentFactoryResolver }]; }, propDecorators: { component: [{
52
+ type: Input
53
+ }] } });
54
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdXRpbHMvZHluYW1pYy5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUE0QixTQUFTLEVBQWMsS0FBSyxFQUEyRCxNQUFNLGVBQWUsQ0FBQztBQUNoSixPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7QUFZL0QsTUFBTSxPQUFPLHlCQUF5QjtJQUNwQyxZQUFvQixZQUE4QixFQUFVLFdBQWlDLEVBQVUsUUFBa0M7UUFBckgsaUJBQVksR0FBWixZQUFZLENBQWtCO1FBQVUsZ0JBQVcsR0FBWCxXQUFXLENBQXNCO1FBQVUsYUFBUSxHQUFSLFFBQVEsQ0FBMEI7SUFBSSxDQUFDO0lBRzlJLFdBQVcsQ0FBQyxPQUFzQjs7UUFDaEMsTUFBTSxnQkFBZ0IsR0FBRyxPQUFPLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDOUMsSUFBRyxnQkFBZ0IsQ0FBQyxZQUFZLENBQUMsSUFBSSxNQUFLLE1BQUEsZ0JBQWdCLENBQUMsYUFBYSwwQ0FBRSxJQUFJLENBQUE7WUFDNUUsQ0FBQyxnQkFBZ0IsQ0FBQyxZQUFZLENBQUMsSUFBSSxLQUFLLFNBQVMsSUFBSSxnQkFBZ0IsQ0FBQyxhQUFhLEtBQUssU0FBUyxJQUFJLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLEVBQUU7WUFDL0gsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1NBQ3hCO2FBQU07WUFDTCxJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztTQUM1QjtJQUNILENBQUM7SUFDRCxlQUFlO1FBQ2IsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUMxQixJQUFHLHVCQUF1QixDQUFDLFFBQVEsQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQzlFLElBQUksQ0FBQyxpQkFBaUIsR0FBRyx1QkFBdUIsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLFFBQVEsQ0FBQztTQUNsSTthQUFNLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLEVBQUU7WUFDakMsSUFBSSxDQUFDLGlCQUFpQixHQUFHLHVCQUF1QixDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsUUFBUSxDQUFDO1NBQ3JJO1FBQ0QsSUFBRyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsRUFBRTtZQUMxQixNQUFNLElBQUksS0FBSyxDQUFDLHFDQUFxQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksaUJBQWlCLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQztTQUNwSDthQUFNO1lBQ0wsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDO1NBQ3hEO1FBQ0QsSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7SUFDN0IsQ0FBQztJQUNELG1CQUFtQjtRQUNqQixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQztRQUNqQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFO1lBQ2hDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDMUMsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOzt1SEFoQ1UseUJBQXlCOzJHQUF6Qix5QkFBeUI7NEZBQXpCLHlCQUF5QjtrQkFKckMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsYUFBYTtpQkFDeEI7d0tBSVUsU0FBUztzQkFBakIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudEZhY3RvcnlSZXNvbHZlciwgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBJbnB1dCwgT25DaGFuZ2VzLCBTaW1wbGVDaGFuZ2VzLCBUZW1wbGF0ZVJlZiwgVmlld0NvbnRhaW5lclJlZiB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBBbmd1bGFyQ29tcG9uZW50RmFjdG9yeSB9IGZyb20gXCIuLi9jb21wb25lbnQtZmFjdG9yeVwiO1xuXG5pbnRlcmZhY2UgSUR5bmFtaWNDb21wb25lbnQge1xuICBuYW1lOiBzdHJpbmc7XG4gIGRhdGE/OiBhbnk7XG4gIGRlZmF1bHQ/OiBzdHJpbmc7XG59XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogXCJbY29tcG9uZW50XVwiXG59KVxuXG5leHBvcnQgY2xhc3MgRHluYW1pY0NvbXBvbmVudERpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmLCBwcml2YXRlIHRlbXBsYXRlUmVmOiBUZW1wbGF0ZVJlZjx1bmtub3duPiwgcHJpdmF0ZSByZXNvbHZlcjogQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyKSB7IH1cbiAgQElucHV0KCkgY29tcG9uZW50ITogSUR5bmFtaWNDb21wb25lbnQ7XG4gIHByaXZhdGUgY29tcG9uZW50SW5zdGFuY2U6IGFueTtcbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIGNvbnN0IGNvbXBvbmVudENoYW5nZXMgPSBjaGFuZ2VzW1wiY29tcG9uZW50XCJdO1xuICAgIGlmKGNvbXBvbmVudENoYW5nZXMuY3VycmVudFZhbHVlLm5hbWUgIT09IGNvbXBvbmVudENoYW5nZXMucHJldmlvdXNWYWx1ZT8ubmFtZSB8fFxuICAgICAgKGNvbXBvbmVudENoYW5nZXMuY3VycmVudFZhbHVlLm5hbWUgPT09IHVuZGVmaW5lZCAmJiBjb21wb25lbnRDaGFuZ2VzLnByZXZpb3VzVmFsdWUgPT09IHVuZGVmaW5lZCAmJiAhdGhpcy5jb21wb25lbnRJbnN0YW5jZSkpIHtcbiAgICAgIHRoaXMuY3JlYXRlQ29tcG9uZW50KCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMudXBkYXRlQ29tcG9uZW50RGF0YSgpO1xuICAgIH1cbiAgfVxuICBjcmVhdGVDb21wb25lbnQoKTogdm9pZCB7XG4gICAgdGhpcy5jb250YWluZXJSZWYuY2xlYXIoKTtcbiAgICBpZihBbmd1bGFyQ29tcG9uZW50RmFjdG9yeS5JbnN0YW5jZS5pc0NvbXBvbmVudFJlZ2lzdGVyZWQodGhpcy5jb21wb25lbnQubmFtZSkpIHtcbiAgICAgIHRoaXMuY29tcG9uZW50SW5zdGFuY2UgPSBBbmd1bGFyQ29tcG9uZW50RmFjdG9yeS5JbnN0YW5jZS5jcmVhdGUodGhpcy5jb250YWluZXJSZWYsIHRoaXMuY29tcG9uZW50Lm5hbWUsIHRoaXMucmVzb2x2ZXIpLmluc3RhbmNlO1xuICAgIH0gZWxzZSBpZiAodGhpcy5jb21wb25lbnQuZGVmYXVsdCkge1xuICAgICAgdGhpcy5jb21wb25lbnRJbnN0YW5jZSA9IEFuZ3VsYXJDb21wb25lbnRGYWN0b3J5Lkluc3RhbmNlLmNyZWF0ZSh0aGlzLmNvbnRhaW5lclJlZiwgdGhpcy5jb21wb25lbnQuZGVmYXVsdCwgdGhpcy5yZXNvbHZlcikuaW5zdGFuY2U7XG4gICAgfVxuICAgIGlmKCF0aGlzLmNvbXBvbmVudEluc3RhbmNlKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYENhbid0IGNyZWF0ZSBjb21wb25lbnQgd2l0aCBuYW1lOiAke3RoaXMuY29tcG9uZW50Lm5hbWV9IGFuZCBkZWZhdWx0OiAke3RoaXMuY29tcG9uZW50LmRlZmF1bHR9YCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuY29tcG9uZW50SW5zdGFuY2UuY29udGVudFRlbXBsID0gdGhpcy50ZW1wbGF0ZVJlZjtcbiAgICB9XG4gICAgdGhpcy51cGRhdGVDb21wb25lbnREYXRhKCk7XG4gIH1cbiAgdXBkYXRlQ29tcG9uZW50RGF0YSgpOiB2b2lkIHtcbiAgICBjb25zdCBkYXRhID0gdGhpcy5jb21wb25lbnQuZGF0YTtcbiAgICBPYmplY3Qua2V5cyhkYXRhKS5mb3JFYWNoKChrZXkpID0+IHtcbiAgICAgIHRoaXMuY29tcG9uZW50SW5zdGFuY2Vba2V5XSA9IGRhdGFba2V5XTtcbiAgICB9KTtcbiAgfVxufSJdfQ==
@@ -0,0 +1,69 @@
1
+ import { Directive, Input } from "@angular/core";
2
+ import { doKey2ClickDown, doKey2ClickUp, doKey2ClickBlur } from "survey-core";
3
+ import * as i0 from "@angular/core";
4
+ export class Key2ClickDirective {
5
+ constructor(el) {
6
+ this.el = el;
7
+ this.isSubscribed = false;
8
+ this.options = Key2ClickDirective.defaultOptions;
9
+ this.onkeyup = (evt) => {
10
+ evt.preventDefault();
11
+ evt.stopPropagation();
12
+ doKey2ClickUp(evt, this.options);
13
+ return false;
14
+ };
15
+ this.subscribeEventListeners();
16
+ }
17
+ onkeydown(evt) {
18
+ doKey2ClickDown(evt, this.options);
19
+ }
20
+ blur(evt) {
21
+ doKey2ClickBlur(evt);
22
+ }
23
+ get element() {
24
+ return this.el.nativeElement;
25
+ }
26
+ subscribeEventListeners() {
27
+ if (this.isSubscribed)
28
+ return;
29
+ this.element.tabIndex = 0;
30
+ this.element.addEventListener("keyup", this.onkeyup);
31
+ this.element.addEventListener("keydown", this.onkeydown);
32
+ this.element.addEventListener("blur", this.blur);
33
+ this.isSubscribed = true;
34
+ }
35
+ unsubscribeEventListeners() {
36
+ if (!this.isSubscribed)
37
+ return;
38
+ this.element.tabIndex = -1;
39
+ this.element.removeEventListener("keyup", this.onkeyup);
40
+ this.element.removeEventListener("keydown", this.onkeydown);
41
+ this.element.removeEventListener("blur", this.blur);
42
+ this.isSubscribed = false;
43
+ }
44
+ ngOnChanges(changes) {
45
+ const curValue = changes["key2click"].currentValue;
46
+ if (curValue.disableTabStop) {
47
+ this.unsubscribeEventListeners();
48
+ }
49
+ else {
50
+ this.subscribeEventListeners();
51
+ }
52
+ this.options = Object.assign({}, Key2ClickDirective.defaultOptions, curValue);
53
+ }
54
+ ngOnDestroy() {
55
+ this.unsubscribeEventListeners();
56
+ }
57
+ }
58
+ Key2ClickDirective.defaultOptions = { processEsc: true, disableTabStop: false };
59
+ Key2ClickDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: Key2ClickDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
60
+ Key2ClickDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.17", type: Key2ClickDirective, selector: "[key2click]", inputs: { key2click: "key2click" }, usesOnChanges: true, ngImport: i0 });
61
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: Key2ClickDirective, decorators: [{
62
+ type: Directive,
63
+ args: [{
64
+ selector: "[key2click]"
65
+ }]
66
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { key2click: [{
67
+ type: Input
68
+ }] } });
69
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmcta2V5MmNsaWNrLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy91dGlscy9uZy1rZXkyY2xpY2suZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWMsS0FBSyxFQUF1QyxNQUFNLGVBQWUsQ0FBQztBQUNsRyxPQUFPLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBRSxlQUFlLEVBQTJCLE1BQU0sYUFBYSxDQUFDOztBQUt2RyxNQUFNLE9BQU8sa0JBQWtCO0lBbUI3QixZQUFvQixFQUFjO1FBQWQsT0FBRSxHQUFGLEVBQUUsQ0FBWTtRQWpCMUIsaUJBQVksR0FBRyxLQUFLLENBQUM7UUFFN0IsWUFBTyxHQUE2QixrQkFBa0IsQ0FBQyxjQUFjLENBQUM7UUFNOUQsWUFBTyxHQUFHLENBQUMsR0FBUSxFQUFFLEVBQUU7WUFDN0IsR0FBRyxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQ3JCLEdBQUcsQ0FBQyxlQUFlLEVBQUUsQ0FBQztZQUN0QixhQUFhLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUNqQyxPQUFPLEtBQUssQ0FBQztRQUNmLENBQUMsQ0FBQTtRQUtDLElBQUksQ0FBQyx1QkFBdUIsRUFBRSxDQUFDO0lBQ2pDLENBQUM7SUFkTyxTQUFTLENBQUUsR0FBUTtRQUN6QixlQUFlLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNyQyxDQUFDO0lBT08sSUFBSSxDQUFFLEdBQVE7UUFDcEIsZUFBZSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3ZCLENBQUM7SUFLRCxJQUFJLE9BQU87UUFDVCxPQUFPLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDO0lBQy9CLENBQUM7SUFFRCx1QkFBdUI7UUFDckIsSUFBRyxJQUFJLENBQUMsWUFBWTtZQUFFLE9BQU87UUFFN0IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLEdBQUcsQ0FBQyxDQUFDO1FBQzFCLElBQUksQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNyRCxJQUFJLENBQUMsT0FBTyxDQUFDLGdCQUFnQixDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDekQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRWpELElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDO0lBQzNCLENBQUM7SUFDRCx5QkFBeUI7UUFDdkIsSUFBRyxDQUFDLElBQUksQ0FBQyxZQUFZO1lBQUUsT0FBTztRQUU5QixJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsR0FBRyxDQUFDLENBQUMsQ0FBQztRQUMzQixJQUFJLENBQUMsT0FBTyxDQUFDLG1CQUFtQixDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDeEQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxtQkFBbUIsQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQzVELElBQUksQ0FBQyxPQUFPLENBQUMsbUJBQW1CLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUVwRCxJQUFJLENBQUMsWUFBWSxHQUFHLEtBQUssQ0FBQztJQUM1QixDQUFDO0lBRUQsV0FBVyxDQUFDLE9BQXNCO1FBQ2hDLE1BQU0sUUFBUSxHQUFHLE9BQU8sQ0FBQyxXQUFXLENBQUMsQ0FBQyxZQUFZLENBQUM7UUFDbkQsSUFBRyxRQUFRLENBQUMsY0FBYyxFQUFFO1lBQzFCLElBQUksQ0FBQyx5QkFBeUIsRUFBRSxDQUFDO1NBQ2xDO2FBQU07WUFDTCxJQUFJLENBQUMsdUJBQXVCLEVBQUUsQ0FBQztTQUNoQztRQUNELElBQUksQ0FBQyxPQUFPLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLEVBQUUsa0JBQWtCLENBQUMsY0FBYyxFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBQ2hGLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLHlCQUF5QixFQUFFLENBQUM7SUFDbkMsQ0FBQzs7QUEzRE0saUNBQWMsR0FBNEIsRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFLGNBQWMsRUFBRSxLQUFLLEVBQUUsQ0FBQztnSEFEbEYsa0JBQWtCO29HQUFsQixrQkFBa0I7NEZBQWxCLGtCQUFrQjtrQkFIOUIsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsYUFBYTtpQkFDeEI7aUdBTVUsU0FBUztzQkFBakIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgSW5wdXQsIFNpbXBsZUNoYW5nZXMsIE9uQ2hhbmdlcywgT25EZXN0cm95IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IGRvS2V5MkNsaWNrRG93biwgZG9LZXkyQ2xpY2tVcCwgZG9LZXkyQ2xpY2tCbHVyLCBJQXR0YWNoS2V5MmNsaWNrT3B0aW9ucyB9IGZyb20gXCJzdXJ2ZXktY29yZVwiO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6IFwiW2tleTJjbGlja11cIlxufSlcbmV4cG9ydCBjbGFzcyBLZXkyQ2xpY2tEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkNoYW5nZXMsIE9uRGVzdHJveSB7XG4gIHN0YXRpYyBkZWZhdWx0T3B0aW9uczogSUF0dGFjaEtleTJjbGlja09wdGlvbnMgPSB7IHByb2Nlc3NFc2M6IHRydWUsIGRpc2FibGVUYWJTdG9wOiBmYWxzZSB9O1xuICBwcml2YXRlIGlzU3Vic2NyaWJlZCA9IGZhbHNlO1xuXG4gIG9wdGlvbnM/OiBJQXR0YWNoS2V5MmNsaWNrT3B0aW9ucyA9IEtleTJDbGlja0RpcmVjdGl2ZS5kZWZhdWx0T3B0aW9ucztcbiAgQElucHV0KCkga2V5MmNsaWNrPzogSUF0dGFjaEtleTJjbGlja09wdGlvbnM7XG5cbiAgcHJpdmF0ZSBvbmtleWRvd24gKGV2dDogYW55KSB7XG4gICAgZG9LZXkyQ2xpY2tEb3duKGV2dCwgdGhpcy5vcHRpb25zKTtcbiAgfVxuICBwcml2YXRlIG9ua2V5dXAgPSAoZXZ0OiBhbnkpID0+IHtcbiAgICBldnQucHJldmVudERlZmF1bHQoKTtcbiAgICBldnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgZG9LZXkyQ2xpY2tVcChldnQsIHRoaXMub3B0aW9ucyk7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG4gIHByaXZhdGUgYmx1ciAoZXZ0OiBhbnkpIHtcbiAgICBkb0tleTJDbGlja0JsdXIoZXZ0KTtcbiAgfVxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGVsOiBFbGVtZW50UmVmKSB7XG4gICAgdGhpcy5zdWJzY3JpYmVFdmVudExpc3RlbmVycygpO1xuICB9XG5cbiAgZ2V0IGVsZW1lbnQoKSB7XG4gICAgcmV0dXJuIHRoaXMuZWwubmF0aXZlRWxlbWVudDtcbiAgfVxuXG4gIHN1YnNjcmliZUV2ZW50TGlzdGVuZXJzKCkge1xuICAgIGlmKHRoaXMuaXNTdWJzY3JpYmVkKSByZXR1cm47XG5cbiAgICB0aGlzLmVsZW1lbnQudGFiSW5kZXggPSAwO1xuICAgIHRoaXMuZWxlbWVudC5hZGRFdmVudExpc3RlbmVyKFwia2V5dXBcIiwgdGhpcy5vbmtleXVwKTtcbiAgICB0aGlzLmVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcihcImtleWRvd25cIiwgdGhpcy5vbmtleWRvd24pO1xuICAgIHRoaXMuZWxlbWVudC5hZGRFdmVudExpc3RlbmVyKFwiYmx1clwiLCB0aGlzLmJsdXIpO1xuXG4gICAgdGhpcy5pc1N1YnNjcmliZWQgPSB0cnVlO1xuICB9XG4gIHVuc3Vic2NyaWJlRXZlbnRMaXN0ZW5lcnMoKSB7XG4gICAgaWYoIXRoaXMuaXNTdWJzY3JpYmVkKSByZXR1cm47XG5cbiAgICB0aGlzLmVsZW1lbnQudGFiSW5kZXggPSAtMTtcbiAgICB0aGlzLmVsZW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcihcImtleXVwXCIsIHRoaXMub25rZXl1cCk7XG4gICAgdGhpcy5lbGVtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoXCJrZXlkb3duXCIsIHRoaXMub25rZXlkb3duKTtcbiAgICB0aGlzLmVsZW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcihcImJsdXJcIiwgdGhpcy5ibHVyKTtcblxuICAgIHRoaXMuaXNTdWJzY3JpYmVkID0gZmFsc2U7XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgY29uc3QgY3VyVmFsdWUgPSBjaGFuZ2VzW1wia2V5MmNsaWNrXCJdLmN1cnJlbnRWYWx1ZTtcbiAgICBpZihjdXJWYWx1ZS5kaXNhYmxlVGFiU3RvcCkge1xuICAgICAgdGhpcy51bnN1YnNjcmliZUV2ZW50TGlzdGVuZXJzKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuc3Vic2NyaWJlRXZlbnRMaXN0ZW5lcnMoKTtcbiAgICB9XG4gICAgdGhpcy5vcHRpb25zID0gT2JqZWN0LmFzc2lnbih7fSwgS2V5MkNsaWNrRGlyZWN0aXZlLmRlZmF1bHRPcHRpb25zLCBjdXJWYWx1ZSk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLnVuc3Vic2NyaWJlRXZlbnRMaXN0ZW5lcnMoKTtcbiAgfVxufSJdfQ==
@@ -0,0 +1,27 @@
1
+ import { Directive, Input } from "@angular/core";
2
+ import * as i0 from "@angular/core";
3
+ export class VisibleDirective {
4
+ constructor(el) {
5
+ this.el = el;
6
+ }
7
+ ngOnChanges(changes) {
8
+ changes["visible"].currentValue ? this.show() : this.hide();
9
+ }
10
+ hide() {
11
+ this.el.nativeElement.style.display = "none";
12
+ }
13
+ show() {
14
+ this.el.nativeElement.style.display = "";
15
+ }
16
+ }
17
+ VisibleDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: VisibleDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
18
+ VisibleDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.17", type: VisibleDirective, selector: "[visible]", inputs: { visible: "visible" }, usesOnChanges: true, ngImport: i0 });
19
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: VisibleDirective, decorators: [{
20
+ type: Directive,
21
+ args: [{
22
+ selector: "[visible]"
23
+ }]
24
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { visible: [{
25
+ type: Input
26
+ }] } });
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmctc2hvdy5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdXRpbHMvbmctc2hvdy5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBYyxLQUFLLEVBQTRCLE1BQU0sZUFBZSxDQUFDOztBQUt2RixNQUFNLE9BQU8sZ0JBQWdCO0lBQzNCLFlBQW9CLEVBQWM7UUFBZCxPQUFFLEdBQUYsRUFBRSxDQUFZO0lBQUksQ0FBQztJQUV2QyxXQUFXLENBQUMsT0FBc0I7UUFDaEMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDOUQsQ0FBQztJQUNPLElBQUk7UUFDVixJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsT0FBTyxHQUFHLE1BQU0sQ0FBQztJQUMvQyxDQUFDO0lBQ08sSUFBSTtRQUNWLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxPQUFPLEdBQUcsRUFBRSxDQUFDO0lBQzNDLENBQUM7OzhHQVhVLGdCQUFnQjtrR0FBaEIsZ0JBQWdCOzRGQUFoQixnQkFBZ0I7a0JBSDVCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLFdBQVc7aUJBQ3RCO2lHQUdVLE9BQU87c0JBQWYsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgSW5wdXQsIE9uQ2hhbmdlcywgU2ltcGxlQ2hhbmdlcyB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogXCJbdmlzaWJsZV1cIlxufSlcbmV4cG9ydCBjbGFzcyBWaXNpYmxlRGlyZWN0aXZlIGltcGxlbWVudHMgT25DaGFuZ2VzIHtcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBlbDogRWxlbWVudFJlZikgeyB9XG4gIEBJbnB1dCgpIHZpc2libGU/OiBib29sZWFuO1xuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgY2hhbmdlc1tcInZpc2libGVcIl0uY3VycmVudFZhbHVlID8gdGhpcy5zaG93KCkgOiB0aGlzLmhpZGUoKTtcbiAgfVxuICBwcml2YXRlIGhpZGUoKSB7XG4gICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnN0eWxlLmRpc3BsYXkgPSBcIm5vbmVcIjtcbiAgfVxuICBwcml2YXRlIHNob3coKSB7XG4gICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnN0eWxlLmRpc3BsYXkgPSBcIlwiO1xuICB9XG59Il19