@sunbird-cb/toc 0.0.9 → 0.0.10

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 (495) hide show
  1. package/esm2022/lib/_collection/_common/attendance-card/attendance-card.component.mjs +55 -55
  2. package/esm2022/lib/_collection/_common/attendance-card/attendance-card.module.mjs +126 -126
  3. package/esm2022/lib/_collection/_common/attendance-helper/attendance-helper.component.mjs +32 -32
  4. package/esm2022/lib/_collection/_common/attendance-helper/attendance-helper.module.mjs +85 -85
  5. package/esm2022/lib/_collection/_common/avatar-photo/avatar-photo.component.mjs +100 -100
  6. package/esm2022/lib/_collection/_common/avatar-photo/avatar-photo.module.mjs +48 -48
  7. package/esm2022/lib/_collection/_common/certificate-dialog/certificate-dialog.component.mjs +120 -120
  8. package/esm2022/lib/_collection/_common/certificate-dialog/certificate-dialog.module.mjs +92 -92
  9. package/esm2022/lib/_collection/_common/certificate-dialog/svg-to-pdf.component.mjs +48 -48
  10. package/esm2022/lib/_collection/_common/confirm-dialog/confirm-dialog.component.mjs +25 -25
  11. package/esm2022/lib/_collection/_common/confirm-dialog/confirm-dialog.module.mjs +41 -41
  12. package/esm2022/lib/_collection/_common/connection-hover-card/connection-hover-card.component.mjs +89 -89
  13. package/esm2022/lib/_collection/_common/connection-hover-card/connection-hover.module.mjs +42 -42
  14. package/esm2022/lib/_collection/_common/connection-hover-card/connection-hover.servive.mjs +41 -41
  15. package/esm2022/lib/_collection/_common/connection-name/connection-name.component.mjs +78 -78
  16. package/esm2022/lib/_collection/_common/connection-name/connection-name.module.mjs +45 -45
  17. package/esm2022/lib/_collection/_common/connection-name/profile-v2.model.mjs +2 -2
  18. package/esm2022/lib/_collection/_common/content-progress/content-progress.component.mjs +70 -70
  19. package/esm2022/lib/_collection/_common/content-progress/content-progress.module.mjs +28 -28
  20. package/esm2022/lib/_collection/_common/content-rating-v2-dialog/content-rating-v2-dialog.component.mjs +187 -187
  21. package/esm2022/lib/_collection/_common/content-rating-v2-dialog/content-rating-v2-dialog.module.mjs +86 -86
  22. package/esm2022/lib/_collection/_common/content-toc/ai-tutor-confirm-popup/ai-tutor-confirm-popup.component.mjs +31 -31
  23. package/esm2022/lib/_collection/_common/content-toc/app-toc-about/app-toc-about.component.mjs +941 -941
  24. package/esm2022/lib/_collection/_common/content-toc/app-toc-assignment-viewer/app-toc-assignment-viewer.component.mjs +183 -183
  25. package/esm2022/lib/_collection/_common/content-toc/app-toc-assignment-viewerV2/app-toc-assignment-viewerV2.component.mjs +327 -327
  26. package/esm2022/lib/_collection/_common/content-toc/app-toc-batch-assignments/app-toc-batch-assignments.component.mjs +297 -297
  27. package/esm2022/lib/_collection/_common/content-toc/app-toc-content/app-toc-content.component.mjs +261 -248
  28. package/esm2022/lib/_collection/_common/content-toc/app-toc-content-card-v2/app-toc-content-card-v2.component.mjs +1177 -1148
  29. package/esm2022/lib/_collection/_common/content-toc/app-toc-content-card-v2-skeleton/app-toc-content-card-v2-skeleton.component.mjs +16 -16
  30. package/esm2022/lib/_collection/_common/content-toc/app-toc-reference-notes/app-toc-reference-notes.component.mjs +43 -43
  31. package/esm2022/lib/_collection/_common/content-toc/app-toc-session-card-new/app-toc-session-card-new.component.mjs +133 -133
  32. package/esm2022/lib/_collection/_common/content-toc/app-toc-sessions-new/app-toc-sessions-new.component.mjs +66 -66
  33. package/esm2022/lib/_collection/_common/content-toc/app-toc-teachers-notes/app-toc-teachers-notes.component.mjs +278 -278
  34. package/esm2022/lib/_collection/_common/content-toc/content-services/handle-claim.service.mjs +21 -21
  35. package/esm2022/lib/_collection/_common/content-toc/content-services/review-component-data.service.mjs +21 -21
  36. package/esm2022/lib/_collection/_common/content-toc/content-toc.component.mjs +847 -847
  37. package/esm2022/lib/_collection/_common/content-toc/content-toc.module.mjs +219 -219
  38. package/esm2022/lib/_collection/_common/content-toc/karma-points/karma-points.component.mjs +209 -209
  39. package/esm2022/lib/_collection/_common/content-toc/karma-points/karma-points.module.mjs +26 -26
  40. package/esm2022/lib/_collection/_common/content-toc/pipes/replace-nbsp.pipe.mjs +19 -19
  41. package/esm2022/lib/_collection/_common/content-toc/pipes/truncate.pipe.mjs +23 -23
  42. package/esm2022/lib/_collection/_common/content-toc/reviews-content/reviews-content.component.mjs +113 -113
  43. package/esm2022/lib/_collection/_common/content-toc/samuhik-charcha-content/samuhik-charcha-content/samuhik-charcha-content.component.mjs +110 -110
  44. package/esm2022/lib/_collection/_common/display-content-type/display-content-type.component.mjs +26 -26
  45. package/esm2022/lib/_collection/_common/display-content-type/display-content-type.module.mjs +19 -19
  46. package/esm2022/lib/_collection/_common/display-content-type-icon/display-content-type-icon.component.mjs +67 -67
  47. package/esm2022/lib/_collection/_common/display-content-type-icon/display-content-type-icon.module.mjs +28 -28
  48. package/esm2022/lib/_collection/_common/mark-as-complete/mark-as-complete.component.mjs +77 -77
  49. package/esm2022/lib/_collection/_common/mark-as-complete/mark-as-complete.model.mjs +2 -2
  50. package/esm2022/lib/_collection/_common/mark-as-complete/mark-as-complete.module.mjs +61 -61
  51. package/esm2022/lib/_collection/_common/pipe-content-route/pipe-content-route.module.mjs +20 -20
  52. package/esm2022/lib/_collection/_common/pipe-content-route/pipe-content-route.pipe.mjs +67 -67
  53. package/esm2022/lib/_collection/_common/player-brief/player-brief.component.mjs +139 -139
  54. package/esm2022/lib/_collection/_common/player-brief/player-brief.module.mjs +71 -71
  55. package/esm2022/lib/_collection/_common/rating-summary/rating-summary.component.mjs +34 -34
  56. package/esm2022/lib/_collection/_common/rating-summary/rating-summary.module.mjs +56 -56
  57. package/esm2022/lib/_collection/_common/skeleton-loader/skeleton-loader.component.mjs +25 -25
  58. package/esm2022/lib/_collection/_common/skeleton-loader/skeleton-loader.module.mjs +37 -37
  59. package/esm2022/lib/_collection/_common/tips-for-learner/tips-for-learner-card/tips-for-learner-card.component.mjs +32 -32
  60. package/esm2022/lib/_collection/_common/tips-for-learner/tips-for-learner.module.mjs +30 -30
  61. package/esm2022/lib/_collection/_common/toc-kpi-values/toc-kpi-values.component.mjs +38 -38
  62. package/esm2022/lib/_collection/_common/toc-kpi-values/toc-kpi-values.module.mjs +51 -51
  63. package/esm2022/lib/_collection/_common/user-autocomplete/user-autocomplete.component.mjs +115 -115
  64. package/esm2022/lib/_collection/_common/user-autocomplete/user-autocomplete.model.mjs +12 -12
  65. package/esm2022/lib/_collection/_common/user-autocomplete/user-autocomplete.module.mjs +51 -51
  66. package/esm2022/lib/_collection/_common/user-autocomplete/user-autocomplete.service.mjs +61 -61
  67. package/esm2022/lib/_collection/_common/user-content-rating/user-content-rating.component.mjs +87 -87
  68. package/esm2022/lib/_collection/_common/user-content-rating/user-content-rating.module.mjs +36 -36
  69. package/esm2022/lib/_collection/_common/user-image/user-image.component.mjs +62 -62
  70. package/esm2022/lib/_collection/_common/user-image/user-image.module.mjs +24 -24
  71. package/esm2022/lib/_collection/btn-page-back/btn-page-back.component.mjs +192 -192
  72. package/esm2022/lib/_collection/btn-page-back/btn-page-back.module.mjs +44 -44
  73. package/esm2022/lib/_collection/btn-page-back/btn-page-back.service.mjs +99 -99
  74. package/esm2022/lib/_collection/card-rating-comment/card-rating-comment.component.mjs +58 -58
  75. package/esm2022/lib/_collection/card-rating-comment/card-rating-comment.module.mjs +67 -67
  76. package/esm2022/lib/_collection/sliders-dynamic/sliders-dynamic.component.mjs +112 -112
  77. package/esm2022/lib/_collection/sliders-dynamic/sliders-dynamic.model.mjs +2 -2
  78. package/esm2022/lib/_collection/sliders-dynamic/sliders-dynamic.module.mjs +69 -69
  79. package/esm2022/lib/_collection-api.mjs +57 -57
  80. package/esm2022/lib/_constants/widget-content.constants.mjs +19 -19
  81. package/esm2022/lib/_directives/tooltip.directive.mjs +68 -68
  82. package/esm2022/lib/_models/common.model.mjs +2 -2
  83. package/esm2022/lib/_models/error.model.mjs +2 -2
  84. package/esm2022/lib/_pipes/highlight.pipe.mjs +24 -24
  85. package/esm2022/lib/_services/rating.service.mjs +89 -89
  86. package/esm2022/lib/_services/samuhik-charcha.service.mjs +29 -29
  87. package/esm2022/lib/_services/viewer-route-util.mjs +103 -103
  88. package/esm2022/lib/_services/widget-content.model.mjs +247 -247
  89. package/esm2022/lib/_services/widget-content.service.mjs +594 -594
  90. package/esm2022/lib/_shared/translate-loader.factory.mjs +9 -9
  91. package/esm2022/lib/app-toc-lib.module.mjs +499 -499
  92. package/esm2022/lib/collection.config.mjs +161 -161
  93. package/esm2022/lib/components/app-toc-analytics-tiles/app-toc-analytics-tiles.component.mjs +37 -37
  94. package/esm2022/lib/components/app-toc-banner/app-toc-banner.component.mjs +1436 -1436
  95. package/esm2022/lib/components/app-toc-cios-home/app-toc-cios-home.component.mjs +475 -475
  96. package/esm2022/lib/components/app-toc-cios-home/consent-dialog.component.mjs +119 -119
  97. package/esm2022/lib/components/app-toc-cohorts/app-toc-cohorts.component.mjs +80 -80
  98. package/esm2022/lib/components/app-toc-content-card/app-toc-content-card.component.mjs +249 -249
  99. package/esm2022/lib/components/app-toc-dialog-intro-video/app-toc-dialog-intro-video.component.mjs +39 -39
  100. package/esm2022/lib/components/app-toc-discussion/app-toc-discussion.component.mjs +58 -58
  101. package/esm2022/lib/components/app-toc-home/app-toc-home.component.mjs +2229 -2229
  102. package/esm2022/lib/components/app-toc-home-v2/app-toc-home-v2.component.mjs +2938 -2907
  103. package/esm2022/lib/components/app-toc-overview/app-toc-overview.component.mjs +157 -157
  104. package/esm2022/lib/components/app-toc-session-card/app-toc-session-card.component.mjs +48 -48
  105. package/esm2022/lib/components/app-toc-sessions/app-toc-sessions.component.mjs +47 -47
  106. package/esm2022/lib/components/app-toc-single-page/app-toc-single-page.component.mjs +766 -766
  107. package/esm2022/lib/components/completion-survey-form/completion-survey-form.component.mjs +243 -243
  108. package/esm2022/lib/components/create-batch-dialog/create-batch-dialog.component.mjs +116 -116
  109. package/esm2022/lib/components/enroll-language-dialogue/enroll-language-dialogue.component.mjs +44 -44
  110. package/esm2022/lib/components/enroll-profile-form/enroll-profile-form.component.mjs +1838 -1838
  111. package/esm2022/lib/components/enroll-questionnaire/enroll-questionnaire.component.mjs +236 -236
  112. package/esm2022/lib/components/knowledge-artifact-details/knowledge-artifact-details.component.mjs +213 -213
  113. package/esm2022/lib/components/non-relevent-feedback-dialog/non-relevent-feedback-dialog.component.mjs +36 -36
  114. package/esm2022/lib/components/public-survey-form/public-survey-form.component.mjs +256 -256
  115. package/esm2022/lib/components/survey-form-question/survey-form-question.component.mjs +133 -133
  116. package/esm2022/lib/components/survey-form-section/survey-form-section.component.mjs +36 -36
  117. package/esm2022/lib/models/app-toc-analytics.model.mjs +2 -2
  118. package/esm2022/lib/models/app-toc.model.mjs +38 -38
  119. package/esm2022/lib/models/auto-complete.model.mjs +2 -2
  120. package/esm2022/lib/models/card-content.model.mjs +13 -13
  121. package/esm2022/lib/models/content-strip-with-tabs.model.mjs +2 -2
  122. package/esm2022/lib/models/discussion-forum.model.mjs +14 -14
  123. package/esm2022/lib/models/goal.model.mjs +2 -2
  124. package/esm2022/lib/models/meta-tag.model.mjs +8 -8
  125. package/esm2022/lib/models/playlist.model.mjs +2 -2
  126. package/esm2022/lib/models/profile-revamp.model.mjs +2 -2
  127. package/esm2022/lib/models/rating.model.mjs +2 -2
  128. package/esm2022/lib/models/user-profile.model.mjs +21 -21
  129. package/esm2022/lib/resolvers/app-toc-cios-resolver.service.mjs +24 -24
  130. package/esm2022/lib/resolvers/app-toc-cios-user-enroll-resolver.service.mjs +24 -24
  131. package/esm2022/lib/resolvers/app-toc-content-read-resolver.service.mjs +60 -60
  132. package/esm2022/lib/resolvers/app-toc-ext-public-resolver.service.mjs +25 -25
  133. package/esm2022/lib/resolvers/app-toc-resolver.service.mjs +106 -106
  134. package/esm2022/lib/resolvers/config-resolver.service.mjs +25 -25
  135. package/esm2022/lib/resolvers/profile-resolver.service.mjs +25 -25
  136. package/esm2022/lib/resolvers/restricted-features-resolver.service.mjs +25 -25
  137. package/esm2022/lib/routes/app-toc-home/app-toc-home.component.mjs +51 -51
  138. package/esm2022/lib/routes/app-toc-home/app-toc-home.directive.mjs +16 -16
  139. package/esm2022/lib/routes/app-toc-home/app-toc-home.service.mjs +18 -18
  140. package/esm2022/lib/services/access-control.service.mjs +56 -56
  141. package/esm2022/lib/services/action.service.mjs +23 -23
  142. package/esm2022/lib/services/app-toc-v2.service.mjs +332 -313
  143. package/esm2022/lib/services/app-toc.service.mjs +1647 -1613
  144. package/esm2022/lib/services/certificate.service.mjs +69 -69
  145. package/esm2022/lib/services/discuss-utils.service.mjs +58 -58
  146. package/esm2022/lib/services/editor.service.mjs +34 -34
  147. package/esm2022/lib/services/load-check.service.mjs +21 -21
  148. package/esm2022/lib/services/loader.service.mjs +33 -33
  149. package/esm2022/lib/services/mobile-apps.service.mjs +67 -67
  150. package/esm2022/lib/services/netcore.service.mjs +56 -56
  151. package/esm2022/lib/services/nps-grid.service.mjs +31 -31
  152. package/esm2022/lib/services/otp.service.mjs +43 -43
  153. package/esm2022/lib/services/profile-v2.service.mjs +43 -43
  154. package/esm2022/lib/services/reset-ratings.service.mjs +19 -19
  155. package/esm2022/lib/services/resource-download-helper.service.mjs +64 -64
  156. package/esm2022/lib/services/timer.service.mjs +23 -23
  157. package/esm2022/lib/services/title-tag.service.mjs +71 -71
  158. package/esm2022/lib/services/user-profile.service.mjs +55 -55
  159. package/esm2022/lib/services/viewer-data.service.mjs +64 -64
  160. package/esm2022/lib/services/viewer-util.service.mjs +599 -590
  161. package/esm2022/lib/share-toc/share-toc/share-toc.component.mjs +291 -291
  162. package/esm2022/lib/share-toc/share-toc.module.mjs +119 -119
  163. package/esm2022/public-api.mjs +73 -71
  164. package/esm2022/sunbird-cb-toc.mjs +4 -4
  165. package/fesm2022/sunbird-cb-toc.mjs +24901 -24766
  166. package/fesm2022/sunbird-cb-toc.mjs.map +1 -1
  167. package/index.d.ts +6 -5
  168. package/lib/_collection/_common/attendance-card/attendance-card.component.d.ts +17 -16
  169. package/lib/_collection/_common/attendance-card/attendance-card.component.d.ts.map +1 -0
  170. package/lib/_collection/_common/attendance-card/attendance-card.module.d.ts +32 -31
  171. package/lib/_collection/_common/attendance-card/attendance-card.module.d.ts.map +1 -0
  172. package/lib/_collection/_common/attendance-helper/attendance-helper.component.d.ts +16 -15
  173. package/lib/_collection/_common/attendance-helper/attendance-helper.component.d.ts.map +1 -0
  174. package/lib/_collection/_common/attendance-helper/attendance-helper.module.d.ts +21 -20
  175. package/lib/_collection/_common/attendance-helper/attendance-helper.module.d.ts.map +1 -0
  176. package/lib/_collection/_common/avatar-photo/avatar-photo.component.d.ts +23 -22
  177. package/lib/_collection/_common/avatar-photo/avatar-photo.component.d.ts.map +1 -0
  178. package/lib/_collection/_common/avatar-photo/avatar-photo.module.d.ts +16 -15
  179. package/lib/_collection/_common/avatar-photo/avatar-photo.module.d.ts.map +1 -0
  180. package/lib/_collection/_common/certificate-dialog/certificate-dialog.component.d.ts +23 -22
  181. package/lib/_collection/_common/certificate-dialog/certificate-dialog.component.d.ts.map +1 -0
  182. package/lib/_collection/_common/certificate-dialog/certificate-dialog.module.d.ts +23 -22
  183. package/lib/_collection/_common/certificate-dialog/certificate-dialog.module.d.ts.map +1 -0
  184. package/lib/_collection/_common/certificate-dialog/svg-to-pdf.component.d.ts +10 -9
  185. package/lib/_collection/_common/certificate-dialog/svg-to-pdf.component.d.ts.map +1 -0
  186. package/lib/_collection/_common/confirm-dialog/confirm-dialog.component.d.ts +12 -11
  187. package/lib/_collection/_common/confirm-dialog/confirm-dialog.component.d.ts.map +1 -0
  188. package/lib/_collection/_common/confirm-dialog/confirm-dialog.module.d.ts +13 -12
  189. package/lib/_collection/_common/confirm-dialog/confirm-dialog.module.d.ts.map +1 -0
  190. package/lib/_collection/_common/connection-hover-card/connection-hover-card.component.d.ts +19 -18
  191. package/lib/_collection/_common/connection-hover-card/connection-hover-card.component.d.ts.map +1 -0
  192. package/lib/_collection/_common/connection-hover-card/connection-hover.module.d.ts +15 -14
  193. package/lib/_collection/_common/connection-hover-card/connection-hover.module.d.ts.map +1 -0
  194. package/lib/_collection/_common/connection-hover-card/connection-hover.servive.d.ts +12 -11
  195. package/lib/_collection/_common/connection-hover-card/connection-hover.servive.d.ts.map +1 -0
  196. package/lib/_collection/_common/connection-name/connection-name.component.d.ts +18 -17
  197. package/lib/_collection/_common/connection-name/connection-name.component.d.ts.map +1 -0
  198. package/lib/_collection/_common/connection-name/connection-name.module.d.ts +15 -14
  199. package/lib/_collection/_common/connection-name/connection-name.module.d.ts.map +1 -0
  200. package/lib/_collection/_common/connection-name/profile-v2.model.d.ts +200 -199
  201. package/lib/_collection/_common/connection-name/profile-v2.model.d.ts.map +1 -0
  202. package/lib/_collection/_common/content-progress/content-progress.component.d.ts +17 -16
  203. package/lib/_collection/_common/content-progress/content-progress.component.d.ts.map +1 -0
  204. package/lib/_collection/_common/content-progress/content-progress.module.d.ts +11 -10
  205. package/lib/_collection/_common/content-progress/content-progress.module.d.ts.map +1 -0
  206. package/lib/_collection/_common/content-rating-v2-dialog/content-rating-v2-dialog.component.d.ts +39 -38
  207. package/lib/_collection/_common/content-rating-v2-dialog/content-rating-v2-dialog.component.d.ts.map +1 -0
  208. package/lib/_collection/_common/content-rating-v2-dialog/content-rating-v2-dialog.module.d.ts +20 -19
  209. package/lib/_collection/_common/content-rating-v2-dialog/content-rating-v2-dialog.module.d.ts.map +1 -0
  210. package/lib/_collection/_common/content-toc/ai-tutor-confirm-popup/ai-tutor-confirm-popup.component.d.ts +12 -11
  211. package/lib/_collection/_common/content-toc/ai-tutor-confirm-popup/ai-tutor-confirm-popup.component.d.ts.map +1 -0
  212. package/lib/_collection/_common/content-toc/app-toc-about/app-toc-about.component.d.ts +184 -183
  213. package/lib/_collection/_common/content-toc/app-toc-about/app-toc-about.component.d.ts.map +1 -0
  214. package/lib/_collection/_common/content-toc/app-toc-assignment-viewer/app-toc-assignment-viewer.component.d.ts +42 -41
  215. package/lib/_collection/_common/content-toc/app-toc-assignment-viewer/app-toc-assignment-viewer.component.d.ts.map +1 -0
  216. package/lib/_collection/_common/content-toc/app-toc-assignment-viewerV2/app-toc-assignment-viewerV2.component.d.ts +55 -54
  217. package/lib/_collection/_common/content-toc/app-toc-assignment-viewerV2/app-toc-assignment-viewerV2.component.d.ts.map +1 -0
  218. package/lib/_collection/_common/content-toc/app-toc-batch-assignments/app-toc-batch-assignments.component.d.ts +48 -47
  219. package/lib/_collection/_common/content-toc/app-toc-batch-assignments/app-toc-batch-assignments.component.d.ts.map +1 -0
  220. package/lib/_collection/_common/content-toc/app-toc-content/app-toc-content.component.d.ts +51 -49
  221. package/lib/_collection/_common/content-toc/app-toc-content/app-toc-content.component.d.ts.map +1 -0
  222. package/lib/_collection/_common/content-toc/app-toc-content-card-v2/app-toc-content-card-v2.component.d.ts +175 -171
  223. package/lib/_collection/_common/content-toc/app-toc-content-card-v2/app-toc-content-card-v2.component.d.ts.map +1 -0
  224. package/lib/_collection/_common/content-toc/app-toc-content-card-v2-skeleton/app-toc-content-card-v2-skeleton.component.d.ts +9 -8
  225. package/lib/_collection/_common/content-toc/app-toc-content-card-v2-skeleton/app-toc-content-card-v2-skeleton.component.d.ts.map +1 -0
  226. package/lib/_collection/_common/content-toc/app-toc-reference-notes/app-toc-reference-notes.component.d.ts +17 -16
  227. package/lib/_collection/_common/content-toc/app-toc-reference-notes/app-toc-reference-notes.component.d.ts.map +1 -0
  228. package/lib/_collection/_common/content-toc/app-toc-session-card-new/app-toc-session-card-new.component.d.ts +41 -40
  229. package/lib/_collection/_common/content-toc/app-toc-session-card-new/app-toc-session-card-new.component.d.ts.map +1 -0
  230. package/lib/_collection/_common/content-toc/app-toc-sessions-new/app-toc-sessions-new.component.d.ts +22 -21
  231. package/lib/_collection/_common/content-toc/app-toc-sessions-new/app-toc-sessions-new.component.d.ts.map +1 -0
  232. package/lib/_collection/_common/content-toc/app-toc-teachers-notes/app-toc-teachers-notes.component.d.ts +46 -45
  233. package/lib/_collection/_common/content-toc/app-toc-teachers-notes/app-toc-teachers-notes.component.d.ts.map +1 -0
  234. package/lib/_collection/_common/content-toc/content-services/handle-claim.service.d.ts +11 -10
  235. package/lib/_collection/_common/content-toc/content-services/handle-claim.service.d.ts.map +1 -0
  236. package/lib/_collection/_common/content-toc/content-services/review-component-data.service.d.ts +11 -10
  237. package/lib/_collection/_common/content-toc/content-services/review-component-data.service.d.ts.map +1 -0
  238. package/lib/_collection/_common/content-toc/content-toc.component.d.ts +129 -128
  239. package/lib/_collection/_common/content-toc/content-toc.component.d.ts.map +1 -0
  240. package/lib/_collection/_common/content-toc/content-toc.module.d.ts +52 -51
  241. package/lib/_collection/_common/content-toc/content-toc.module.d.ts.map +1 -0
  242. package/lib/_collection/_common/content-toc/karma-points/karma-points.component.d.ts +30 -29
  243. package/lib/_collection/_common/content-toc/karma-points/karma-points.component.d.ts.map +1 -0
  244. package/lib/_collection/_common/content-toc/karma-points/karma-points.module.d.ts +10 -9
  245. package/lib/_collection/_common/content-toc/karma-points/karma-points.module.d.ts.map +1 -0
  246. package/lib/_collection/_common/content-toc/pipes/replace-nbsp.pipe.d.ts +8 -7
  247. package/lib/_collection/_common/content-toc/pipes/replace-nbsp.pipe.d.ts.map +1 -0
  248. package/lib/_collection/_common/content-toc/pipes/truncate.pipe.d.ts +8 -7
  249. package/lib/_collection/_common/content-toc/pipes/truncate.pipe.d.ts.map +1 -0
  250. package/lib/_collection/_common/content-toc/reviews-content/reviews-content.component.d.ts +29 -28
  251. package/lib/_collection/_common/content-toc/reviews-content/reviews-content.component.d.ts.map +1 -0
  252. package/lib/_collection/_common/content-toc/samuhik-charcha-content/samuhik-charcha-content/samuhik-charcha-content.component.d.ts +25 -24
  253. package/lib/_collection/_common/content-toc/samuhik-charcha-content/samuhik-charcha-content/samuhik-charcha-content.component.d.ts.map +1 -0
  254. package/lib/_collection/_common/display-content-type/display-content-type.component.d.ts +15 -14
  255. package/lib/_collection/_common/display-content-type/display-content-type.component.d.ts.map +1 -0
  256. package/lib/_collection/_common/display-content-type/display-content-type.module.d.ts +10 -9
  257. package/lib/_collection/_common/display-content-type/display-content-type.module.d.ts.map +1 -0
  258. package/lib/_collection/_common/display-content-type-icon/display-content-type-icon.component.d.ts +13 -12
  259. package/lib/_collection/_common/display-content-type-icon/display-content-type-icon.component.d.ts.map +1 -0
  260. package/lib/_collection/_common/display-content-type-icon/display-content-type-icon.module.d.ts +11 -10
  261. package/lib/_collection/_common/display-content-type-icon/display-content-type-icon.module.d.ts.map +1 -0
  262. package/lib/_collection/_common/mark-as-complete/mark-as-complete.component.d.ts +23 -22
  263. package/lib/_collection/_common/mark-as-complete/mark-as-complete.component.d.ts.map +1 -0
  264. package/lib/_collection/_common/mark-as-complete/mark-as-complete.model.d.ts +9 -8
  265. package/lib/_collection/_common/mark-as-complete/mark-as-complete.model.d.ts.map +1 -0
  266. package/lib/_collection/_common/mark-as-complete/mark-as-complete.module.d.ts +19 -18
  267. package/lib/_collection/_common/mark-as-complete/mark-as-complete.module.d.ts.map +1 -0
  268. package/lib/_collection/_common/pipe-content-route/pipe-content-route.module.d.ts +9 -8
  269. package/lib/_collection/_common/pipe-content-route/pipe-content-route.module.d.ts.map +1 -0
  270. package/lib/_collection/_common/pipe-content-route/pipe-content-route.pipe.d.ts +16 -15
  271. package/lib/_collection/_common/pipe-content-route/pipe-content-route.pipe.d.ts.map +1 -0
  272. package/lib/_collection/_common/player-brief/player-brief.component.d.ts +36 -35
  273. package/lib/_collection/_common/player-brief/player-brief.component.d.ts.map +1 -0
  274. package/lib/_collection/_common/player-brief/player-brief.module.d.ts +20 -19
  275. package/lib/_collection/_common/player-brief/player-brief.module.d.ts.map +1 -0
  276. package/lib/_collection/_common/rating-summary/rating-summary.component.d.ts +15 -14
  277. package/lib/_collection/_common/rating-summary/rating-summary.component.d.ts.map +1 -0
  278. package/lib/_collection/_common/rating-summary/rating-summary.module.d.ts +14 -13
  279. package/lib/_collection/_common/rating-summary/rating-summary.module.d.ts.map +1 -0
  280. package/lib/_collection/_common/skeleton-loader/skeleton-loader.component.d.ts +12 -11
  281. package/lib/_collection/_common/skeleton-loader/skeleton-loader.component.d.ts.map +1 -0
  282. package/lib/_collection/_common/skeleton-loader/skeleton-loader.module.d.ts +12 -11
  283. package/lib/_collection/_common/skeleton-loader/skeleton-loader.module.d.ts.map +1 -0
  284. package/lib/_collection/_common/tips-for-learner/tips-for-learner-card/tips-for-learner-card.component.d.ts +16 -15
  285. package/lib/_collection/_common/tips-for-learner/tips-for-learner-card/tips-for-learner-card.component.d.ts.map +1 -0
  286. package/lib/_collection/_common/tips-for-learner/tips-for-learner.module.d.ts +11 -10
  287. package/lib/_collection/_common/tips-for-learner/tips-for-learner.module.d.ts.map +1 -0
  288. package/lib/_collection/_common/toc-kpi-values/toc-kpi-values.component.d.ts +17 -16
  289. package/lib/_collection/_common/toc-kpi-values/toc-kpi-values.component.d.ts.map +1 -0
  290. package/lib/_collection/_common/toc-kpi-values/toc-kpi-values.module.d.ts +12 -11
  291. package/lib/_collection/_common/toc-kpi-values/toc-kpi-values.module.d.ts.map +1 -0
  292. package/lib/_collection/_common/user-autocomplete/user-autocomplete.component.d.ts +35 -34
  293. package/lib/_collection/_common/user-autocomplete/user-autocomplete.component.d.ts.map +1 -0
  294. package/lib/_collection/_common/user-autocomplete/user-autocomplete.model.d.ts +18 -17
  295. package/lib/_collection/_common/user-autocomplete/user-autocomplete.model.d.ts.map +1 -0
  296. package/lib/_collection/_common/user-autocomplete/user-autocomplete.module.d.ts +16 -15
  297. package/lib/_collection/_common/user-autocomplete/user-autocomplete.module.d.ts.map +1 -0
  298. package/lib/_collection/_common/user-autocomplete/user-autocomplete.service.d.ts +16 -15
  299. package/lib/_collection/_common/user-autocomplete/user-autocomplete.service.d.ts.map +1 -0
  300. package/lib/_collection/_common/user-content-rating/user-content-rating.component.d.ts +22 -21
  301. package/lib/_collection/_common/user-content-rating/user-content-rating.component.d.ts.map +1 -0
  302. package/lib/_collection/_common/user-content-rating/user-content-rating.module.d.ts +13 -12
  303. package/lib/_collection/_common/user-content-rating/user-content-rating.module.d.ts.map +1 -0
  304. package/lib/_collection/_common/user-image/user-image.component.d.ts +22 -21
  305. package/lib/_collection/_common/user-image/user-image.component.d.ts.map +1 -0
  306. package/lib/_collection/_common/user-image/user-image.module.d.ts +10 -9
  307. package/lib/_collection/_common/user-image/user-image.module.d.ts.map +1 -0
  308. package/lib/_collection/btn-page-back/btn-page-back.component.d.ts +48 -47
  309. package/lib/_collection/btn-page-back/btn-page-back.component.d.ts.map +1 -0
  310. package/lib/_collection/btn-page-back/btn-page-back.module.d.ts +15 -14
  311. package/lib/_collection/btn-page-back/btn-page-back.module.d.ts.map +1 -0
  312. package/lib/_collection/btn-page-back/btn-page-back.service.d.ts +23 -22
  313. package/lib/_collection/btn-page-back/btn-page-back.service.d.ts.map +1 -0
  314. package/lib/_collection/card-rating-comment/card-rating-comment.component.d.ts +20 -19
  315. package/lib/_collection/card-rating-comment/card-rating-comment.component.d.ts.map +1 -0
  316. package/lib/_collection/card-rating-comment/card-rating-comment.module.d.ts +16 -15
  317. package/lib/_collection/card-rating-comment/card-rating-comment.module.d.ts.map +1 -0
  318. package/lib/_collection/sliders-dynamic/sliders-dynamic.component.d.ts +26 -25
  319. package/lib/_collection/sliders-dynamic/sliders-dynamic.component.d.ts.map +1 -0
  320. package/lib/_collection/sliders-dynamic/sliders-dynamic.model.d.ts +22 -21
  321. package/lib/_collection/sliders-dynamic/sliders-dynamic.model.d.ts.map +1 -0
  322. package/lib/_collection/sliders-dynamic/sliders-dynamic.module.d.ts +19 -18
  323. package/lib/_collection/sliders-dynamic/sliders-dynamic.module.d.ts.map +1 -0
  324. package/lib/_collection-api.d.ts +35 -34
  325. package/lib/_collection-api.d.ts.map +1 -0
  326. package/lib/_constants/widget-content.constants.d.ts +8 -7
  327. package/lib/_constants/widget-content.constants.d.ts.map +1 -0
  328. package/lib/_directives/tooltip.directive.d.ts +18 -17
  329. package/lib/_directives/tooltip.directive.d.ts.map +1 -0
  330. package/lib/_models/common.model.d.ts +4 -3
  331. package/lib/_models/common.model.d.ts.map +1 -0
  332. package/lib/_models/error.model.d.ts +6 -5
  333. package/lib/_models/error.model.d.ts.map +1 -0
  334. package/lib/_pipes/highlight.pipe.d.ts +11 -10
  335. package/lib/_pipes/highlight.pipe.d.ts.map +1 -0
  336. package/lib/_services/rating.service.d.ts +19 -18
  337. package/lib/_services/rating.service.d.ts.map +1 -0
  338. package/lib/_services/samuhik-charcha.service.d.ts +14 -13
  339. package/lib/_services/samuhik-charcha.service.d.ts.map +1 -0
  340. package/lib/_services/viewer-route-util.d.ts +9 -8
  341. package/lib/_services/viewer-route-util.d.ts.map +1 -0
  342. package/lib/_services/widget-content.model.d.ts +516 -515
  343. package/lib/_services/widget-content.model.d.ts.map +1 -0
  344. package/lib/_services/widget-content.service.d.ts +102 -101
  345. package/lib/_services/widget-content.service.d.ts.map +1 -0
  346. package/lib/_shared/translate-loader.factory.d.ts +8 -7
  347. package/lib/_shared/translate-loader.factory.d.ts.map +1 -0
  348. package/lib/app-toc-lib.module.d.ts +89 -88
  349. package/lib/app-toc-lib.module.d.ts.map +1 -0
  350. package/lib/collection.config.d.ts +160 -159
  351. package/lib/collection.config.d.ts.map +1 -0
  352. package/lib/components/app-toc-analytics-tiles/app-toc-analytics-tiles.component.d.ts +18 -17
  353. package/lib/components/app-toc-analytics-tiles/app-toc-analytics-tiles.component.d.ts.map +1 -0
  354. package/lib/components/app-toc-banner/app-toc-banner.component.d.ts +226 -225
  355. package/lib/components/app-toc-banner/app-toc-banner.component.d.ts.map +1 -0
  356. package/lib/components/app-toc-cios-home/app-toc-cios-home.component.d.ts +79 -78
  357. package/lib/components/app-toc-cios-home/app-toc-cios-home.component.d.ts.map +1 -0
  358. package/lib/components/app-toc-cios-home/consent-dialog.component.d.ts +23 -22
  359. package/lib/components/app-toc-cios-home/consent-dialog.component.d.ts.map +1 -0
  360. package/lib/components/app-toc-cohorts/app-toc-cohorts.component.d.ts +32 -31
  361. package/lib/components/app-toc-cohorts/app-toc-cohorts.component.d.ts.map +1 -0
  362. package/lib/components/app-toc-content-card/app-toc-content-card.component.d.ts +48 -47
  363. package/lib/components/app-toc-content-card/app-toc-content-card.component.d.ts.map +1 -0
  364. package/lib/components/app-toc-dialog-intro-video/app-toc-dialog-intro-video.component.d.ts +15 -14
  365. package/lib/components/app-toc-dialog-intro-video/app-toc-dialog-intro-video.component.d.ts.map +1 -0
  366. package/lib/components/app-toc-discussion/app-toc-discussion.component.d.ts +22 -21
  367. package/lib/components/app-toc-discussion/app-toc-discussion.component.d.ts.map +1 -0
  368. package/lib/components/app-toc-home/app-toc-home.component.d.ts +315 -314
  369. package/lib/components/app-toc-home/app-toc-home.component.d.ts.map +1 -0
  370. package/lib/components/app-toc-home-v2/app-toc-home-v2.component.d.ts +415 -408
  371. package/lib/components/app-toc-home-v2/app-toc-home-v2.component.d.ts.map +1 -0
  372. package/lib/components/app-toc-overview/app-toc-overview.component.d.ts +48 -47
  373. package/lib/components/app-toc-overview/app-toc-overview.component.d.ts.map +1 -0
  374. package/lib/components/app-toc-session-card/app-toc-session-card.component.d.ts +23 -22
  375. package/lib/components/app-toc-session-card/app-toc-session-card.component.d.ts.map +1 -0
  376. package/lib/components/app-toc-sessions/app-toc-sessions.component.d.ts +15 -14
  377. package/lib/components/app-toc-sessions/app-toc-sessions.component.d.ts.map +1 -0
  378. package/lib/components/app-toc-single-page/app-toc-single-page.component.d.ts +150 -149
  379. package/lib/components/app-toc-single-page/app-toc-single-page.component.d.ts.map +1 -0
  380. package/lib/components/completion-survey-form/completion-survey-form.component.d.ts +43 -42
  381. package/lib/components/completion-survey-form/completion-survey-form.component.d.ts.map +1 -0
  382. package/lib/components/create-batch-dialog/create-batch-dialog.component.d.ts +28 -27
  383. package/lib/components/create-batch-dialog/create-batch-dialog.component.d.ts.map +1 -0
  384. package/lib/components/enroll-language-dialogue/enroll-language-dialogue.component.d.ts +16 -15
  385. package/lib/components/enroll-language-dialogue/enroll-language-dialogue.component.d.ts.map +1 -0
  386. package/lib/components/enroll-profile-form/enroll-profile-form.component.d.ts +196 -195
  387. package/lib/components/enroll-profile-form/enroll-profile-form.component.d.ts.map +1 -0
  388. package/lib/components/enroll-questionnaire/enroll-questionnaire.component.d.ts +45 -44
  389. package/lib/components/enroll-questionnaire/enroll-questionnaire.component.d.ts.map +1 -0
  390. package/lib/components/knowledge-artifact-details/knowledge-artifact-details.component.d.ts +55 -54
  391. package/lib/components/knowledge-artifact-details/knowledge-artifact-details.component.d.ts.map +1 -0
  392. package/lib/components/non-relevent-feedback-dialog/non-relevent-feedback-dialog.component.d.ts +19 -18
  393. package/lib/components/non-relevent-feedback-dialog/non-relevent-feedback-dialog.component.d.ts.map +1 -0
  394. package/lib/components/public-survey-form/public-survey-form.component.d.ts +44 -43
  395. package/lib/components/public-survey-form/public-survey-form.component.d.ts.map +1 -0
  396. package/lib/components/survey-form-question/survey-form-question.component.d.ts +21 -20
  397. package/lib/components/survey-form-question/survey-form-question.component.d.ts.map +1 -0
  398. package/lib/components/survey-form-section/survey-form-section.component.d.ts +14 -13
  399. package/lib/components/survey-form-section/survey-form-section.component.d.ts.map +1 -0
  400. package/lib/models/app-toc-analytics.model.d.ts +153 -152
  401. package/lib/models/app-toc-analytics.model.d.ts.map +1 -0
  402. package/lib/models/app-toc.model.d.ts +85 -84
  403. package/lib/models/app-toc.model.d.ts.map +1 -0
  404. package/lib/models/auto-complete.model.d.ts +28 -27
  405. package/lib/models/auto-complete.model.d.ts.map +1 -0
  406. package/lib/models/card-content.model.d.ts +20 -19
  407. package/lib/models/card-content.model.d.ts.map +1 -0
  408. package/lib/models/content-strip-with-tabs.model.d.ts +45 -44
  409. package/lib/models/content-strip-with-tabs.model.d.ts.map +1 -0
  410. package/lib/models/discussion-forum.model.d.ts +41 -40
  411. package/lib/models/discussion-forum.model.d.ts.map +1 -0
  412. package/lib/models/goal.model.d.ts +23 -22
  413. package/lib/models/goal.model.d.ts.map +1 -0
  414. package/lib/models/meta-tag.model.d.ts +7 -6
  415. package/lib/models/meta-tag.model.d.ts.map +1 -0
  416. package/lib/models/playlist.model.d.ts +24 -23
  417. package/lib/models/playlist.model.d.ts.map +1 -0
  418. package/lib/models/profile-revamp.model.d.ts +15 -14
  419. package/lib/models/profile-revamp.model.d.ts.map +1 -0
  420. package/lib/models/rating.model.d.ts +18 -17
  421. package/lib/models/rating.model.d.ts.map +1 -0
  422. package/lib/models/user-profile.model.d.ts +38 -37
  423. package/lib/models/user-profile.model.d.ts.map +1 -0
  424. package/lib/resolvers/app-toc-cios-resolver.service.d.ts +13 -12
  425. package/lib/resolvers/app-toc-cios-resolver.service.d.ts.map +1 -0
  426. package/lib/resolvers/app-toc-cios-user-enroll-resolver.service.d.ts +13 -12
  427. package/lib/resolvers/app-toc-cios-user-enroll-resolver.service.d.ts.map +1 -0
  428. package/lib/resolvers/app-toc-content-read-resolver.service.d.ts +17 -16
  429. package/lib/resolvers/app-toc-content-read-resolver.service.d.ts.map +1 -0
  430. package/lib/resolvers/app-toc-ext-public-resolver.service.d.ts +13 -12
  431. package/lib/resolvers/app-toc-ext-public-resolver.service.d.ts.map +1 -0
  432. package/lib/resolvers/app-toc-resolver.service.d.ts +17 -16
  433. package/lib/resolvers/app-toc-resolver.service.d.ts.map +1 -0
  434. package/lib/resolvers/config-resolver.service.d.ts +12 -11
  435. package/lib/resolvers/config-resolver.service.d.ts.map +1 -0
  436. package/lib/resolvers/profile-resolver.service.d.ts +12 -11
  437. package/lib/resolvers/profile-resolver.service.d.ts.map +1 -0
  438. package/lib/resolvers/restricted-features-resolver.service.d.ts +12 -11
  439. package/lib/resolvers/restricted-features-resolver.service.d.ts.map +1 -0
  440. package/lib/routes/app-toc-home/app-toc-home.component.d.ts +20 -19
  441. package/lib/routes/app-toc-home/app-toc-home.component.d.ts.map +1 -0
  442. package/lib/routes/app-toc-home/app-toc-home.directive.d.ts +9 -8
  443. package/lib/routes/app-toc-home/app-toc-home.directive.d.ts.map +1 -0
  444. package/lib/routes/app-toc-home/app-toc-home.service.d.ts +9 -8
  445. package/lib/routes/app-toc-home/app-toc-home.service.d.ts.map +1 -0
  446. package/lib/services/access-control.service.d.ts +30 -29
  447. package/lib/services/access-control.service.d.ts.map +1 -0
  448. package/lib/services/action.service.d.ts +10 -9
  449. package/lib/services/action.service.d.ts.map +1 -0
  450. package/lib/services/app-toc-v2.service.d.ts +17 -16
  451. package/lib/services/app-toc-v2.service.d.ts.map +1 -0
  452. package/lib/services/app-toc.service.d.ts +241 -235
  453. package/lib/services/app-toc.service.d.ts.map +1 -0
  454. package/lib/services/certificate.service.d.ts +43 -42
  455. package/lib/services/certificate.service.d.ts.map +1 -0
  456. package/lib/services/discuss-utils.service.d.ts +34 -33
  457. package/lib/services/discuss-utils.service.d.ts.map +1 -0
  458. package/lib/services/editor.service.d.ts +18 -17
  459. package/lib/services/editor.service.d.ts.map +1 -0
  460. package/lib/services/load-check.service.d.ts +9 -8
  461. package/lib/services/load-check.service.d.ts.map +1 -0
  462. package/lib/services/loader.service.d.ts +17 -16
  463. package/lib/services/loader.service.d.ts.map +1 -0
  464. package/lib/services/mobile-apps.service.d.ts +39 -38
  465. package/lib/services/mobile-apps.service.d.ts.map +1 -0
  466. package/lib/services/netcore.service.d.ts +34 -33
  467. package/lib/services/netcore.service.d.ts.map +1 -0
  468. package/lib/services/nps-grid.service.d.ts +16 -15
  469. package/lib/services/nps-grid.service.d.ts.map +1 -0
  470. package/lib/services/otp.service.d.ts +21 -20
  471. package/lib/services/otp.service.d.ts.map +1 -0
  472. package/lib/services/profile-v2.service.d.ts +21 -20
  473. package/lib/services/profile-v2.service.d.ts.map +1 -0
  474. package/lib/services/reset-ratings.service.d.ts +9 -8
  475. package/lib/services/reset-ratings.service.d.ts.map +1 -0
  476. package/lib/services/resource-download-helper.service.d.ts +30 -29
  477. package/lib/services/resource-download-helper.service.d.ts.map +1 -0
  478. package/lib/services/timer.service.d.ts +10 -9
  479. package/lib/services/timer.service.d.ts.map +1 -0
  480. package/lib/services/title-tag.service.d.ts +22 -21
  481. package/lib/services/title-tag.service.d.ts.map +1 -0
  482. package/lib/services/user-profile.service.d.ts +25 -24
  483. package/lib/services/user-profile.service.d.ts.map +1 -0
  484. package/lib/services/viewer-data.service.d.ts +59 -58
  485. package/lib/services/viewer-data.service.d.ts.map +1 -0
  486. package/lib/services/viewer-util.service.d.ts +77 -76
  487. package/lib/services/viewer-util.service.d.ts.map +1 -0
  488. package/lib/share-toc/share-toc/share-toc.component.d.ts +57 -56
  489. package/lib/share-toc/share-toc/share-toc.component.d.ts.map +1 -0
  490. package/lib/share-toc/share-toc.module.d.ts +33 -32
  491. package/lib/share-toc/share-toc.module.d.ts.map +1 -0
  492. package/package.json +1 -1
  493. package/public-api.d.ts +59 -56
  494. package/public-api.d.ts.map +1 -0
  495. package/sunbird-cb-toc.d.ts.map +1 -0
@@ -1,133 +1,133 @@
1
- import { CommonModule } from '@angular/common';
2
- import { Component, EventEmitter, Input, Output } from '@angular/core';
3
- import { FormsModule, ReactiveFormsModule, Validators } from '@angular/forms';
4
- import { MatDatepickerModule } from '@angular/material/datepicker';
5
- import { MatIconModule } from '@angular/material/icon';
6
- import { MatLegacyInputModule as MatInputModule } from '@angular/material/legacy-input';
7
- import { MatLegacyCheckboxModule } from '@angular/material/legacy-checkbox';
8
- import { MatLegacyInputModule } from '@angular/material/legacy-input';
9
- import { MatLegacyRadioModule } from '@angular/material/legacy-radio';
10
- import { MatLegacySelectModule } from '@angular/material/legacy-select';
11
- import { MatLegacyFormFieldModule as MatFormFieldModule } from '@angular/material/legacy-form-field';
12
- import { TranslateModule } from '@ngx-translate/core';
13
- import * as i0 from "@angular/core";
14
- import * as i1 from "@angular/common";
15
- import * as i2 from "@angular/material/legacy-form-field";
16
- import * as i3 from "@angular/material/legacy-input";
17
- import * as i4 from "@angular/material/legacy-radio";
18
- import * as i5 from "@angular/material/legacy-select";
19
- import * as i6 from "@angular/material/legacy-core";
20
- import * as i7 from "@angular/material/legacy-checkbox";
21
- import * as i8 from "@angular/material/datepicker";
22
- import * as i9 from "@angular/material/icon";
23
- import * as i10 from "@angular/forms";
24
- import * as i11 from "@ngx-translate/core";
25
- export class SurveyFormQuestionComponent {
26
- constructor() {
27
- this.questionValues = new EventEmitter();
28
- this.otherFieldType = ['radio', 'boolean', 'rating'];
29
- this.stars = Array(5).fill(0);
30
- this.previesAnswer = '';
31
- }
32
- ngOnInit() {
33
- if (this.questionForm) {
34
- this.answerControl.valueChanges.subscribe((value) => {
35
- if (value !== this.previesAnswer && value !== null) {
36
- if (this.fieldDetails['fieldType'] === 'numeric') {
37
- let modifiedValue = value.replace(/[^0-9.]/g, ''); // Remove all non-numeric and non-decimal characters
38
- const decimalCount = (modifiedValue.match(/\./g) || []).length;
39
- if (decimalCount > 1) {
40
- modifiedValue = modifiedValue.replace(/\.$/, ''); // Remove the last decimal point
41
- }
42
- if (value !== modifiedValue) {
43
- this.answerControl.patchValue(modifiedValue);
44
- }
45
- }
46
- if (this.fieldDetails['validatorsArray'] && this.questionForm.controls.isNA.value) {
47
- this.answerControl.setValidators(this.fieldDetails['validatorsArray']);
48
- this.questionForm.controls.isNA.patchValue(false);
49
- this.answerControl.markAllAsTouched();
50
- this.answerControl.updateValueAndValidity();
51
- }
52
- this.questionForm.updateValueAndValidity();
53
- this.emitAnswer();
54
- }
55
- this.previesAnswer = value;
56
- });
57
- }
58
- }
59
- get answerControl() {
60
- return this.questionForm.controls.answer;
61
- }
62
- sectionChange() {
63
- if (this.questionForm.controls.isNA.value) {
64
- this.answerControl.reset();
65
- this.answerControl.clearValidators();
66
- const validatorsArray = this.fieldDetails['validatorsArray'] ? this.fieldDetails['validatorsArray'].filter((validator) => validator !== Validators.required) : [];
67
- this.answerControl.setValidators(validatorsArray);
68
- this.answerControl.updateValueAndValidity();
69
- this.resetCheckboxes();
70
- this.emitAnswer();
71
- }
72
- }
73
- resetCheckboxes() {
74
- if (this.fieldDetails && this.fieldDetails.values) {
75
- this.fieldDetails.values.forEach((e) => {
76
- e['checked'] = false;
77
- });
78
- }
79
- }
80
- setRating(rating) {
81
- if (this.answerControl) {
82
- this.answerControl.patchValue(rating);
83
- this.emitAnswer();
84
- }
85
- }
86
- checkboxClicked(event, index) {
87
- let checkedList = this.answerControl.value ? this.answerControl.value : [];
88
- if (event.checked) {
89
- checkedList.push(event.source.value);
90
- }
91
- else {
92
- checkedList = checkedList.filter((e) => e !== event.source.value);
93
- }
94
- if (this.fieldDetails.values && this.fieldDetails.values[index]) {
95
- this.fieldDetails.values[index]['checked'] = event.checked;
96
- }
97
- this.answerControl.patchValue(checkedList);
98
- this.answerControl.updateValueAndValidity();
99
- this.questionForm.updateValueAndValidity();
100
- this.emitAnswer();
101
- }
102
- emitAnswer() {
103
- const answerDetails = this.questionForm.value;
104
- this.questionValues.emit(answerDetails);
105
- }
106
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SurveyFormQuestionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
107
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SurveyFormQuestionComponent, isStandalone: true, selector: "ws-app-survey-form-question", inputs: { questionForm: "questionForm", fieldDetails: "fieldDetails" }, outputs: { questionValues: "questionValues" }, ngImport: i0, template: "<form [formGroup]=\"questionForm\" class=\"pb-2 q-element mb-4 question-container\">\r\n <div class=\"flex items-start\">\r\n <div class=\"font-semibold margin-remove flex\"\r\n [ngClass]=\"{'required' : fieldDetails.isRequired, 'pb-3': otherFieldType.includes(fieldDetails.fieldType)}\"\r\n i18n=\"Title label|Label which explains the user to enter title\">\r\n {{questionForm.value?.question}}\r\n </div>\r\n </div>\r\n <ng-container [ngSwitch]=\"fieldDetails.fieldType\">\r\n <ng-container *ngSwitchCase=\"'dropdown'\">\r\n <mat-form-field appearance=\"outline\" class=\"w-full\">\r\n <mat-select placeholder=\"Select...\" formControlName=\"answer\">\r\n <mat-option value=\"{{obj.value}}\"\r\n *ngFor=\" let obj of fieldDetails?.values\">{{obj?.key}}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'phone number'\">\r\n <mat-form-field appearance=\"outline\" class=\"w-full\">\r\n <input matInput i18n-placeholder placeholder=\"Type here...\" formControlName=\"answer\" maxlength=\"10\" />\r\n </mat-form-field>\r\n <ng-container\r\n *ngIf=\"questionForm.controls.answer.touched && questionForm.controls.answer.hasError('pattern')\">\r\n <mat-error class=\"mat-error mb-1\">\r\n {{ 'profileInfo.pleaseEnterValidMobileNumber' | translate }}\r\n </mat-error>\r\n </ng-container>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'date'\">\r\n <mat-form-field appearance=\"outline\">\r\n <input matInput [matDatepicker]=\"picker\" formControlName=\"answer\">\r\n <mat-datepicker-toggle matSuffix [for]=\"picker\"></mat-datepicker-toggle>\r\n <mat-datepicker #picker></mat-datepicker>\r\n </mat-form-field>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'boolean'\">\r\n <mat-radio-group class=\"pt-2\" formControlName=\"answer\">\r\n <mat-radio-button [value]=\"true\" class=\"pr-10 pb-2\">True</mat-radio-button>\r\n <mat-radio-button [value]=\"false\" class=\"pr-10 pb-2\">False</mat-radio-button>\r\n </mat-radio-group>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'email'\">\r\n <mat-form-field appearance=\"outline\" class=\"w-full\">\r\n <input matInput i18n-placeholder placeholder=\"Type here...\" formControlName=\"answer\" />\r\n </mat-form-field>\r\n <ng-container\r\n *ngIf=\"questionForm.controls.answer.touched && questionForm.controls.answer.hasError('pattern')\">\r\n <mat-error class=\"mat-error mb-1\">\r\n {{ 'profileInfo.invalidEmail' | translate }}\r\n </mat-error>\r\n </ng-container>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'rating'\">\r\n <div class=\"rating-container\">\r\n <mat-icon *ngFor=\"let star of stars; index as i\" class=\"stat-mat-icon\"\r\n [ngClass]=\"{ 'filled': i < questionForm.controls.answer.value }\" (click)=\"setRating(i + 1)\">\r\n star\r\n </mat-icon>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'text'\">\r\n <mat-form-field appearance=\"outline\" class=\"w-full\">\r\n <input matInput i18n-placeholder placeholder=\"Type here...\" formControlName=\"answer\" />\r\n </mat-form-field>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'textarea'\">\r\n <mat-form-field appearance=\"outline\" class=\"w-full\">\r\n <textarea matInput i18n-placeholder placeholder=\"Type here...\" rows=\"4\" cols=\"5\"\r\n formControlName=\"answer\"></textarea>\r\n </mat-form-field>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'radio'\">\r\n <mat-radio-group class=\"pt-2 custom\" formControlName=\"answer\">\r\n <mat-radio-button *ngFor=\"let obj of fieldDetails?.values\" [value]=\"obj.value\" class=\"pr-5 pb-2\">\r\n {{ obj.key }}\r\n </mat-radio-button>\r\n </mat-radio-group>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'numeric'\">\r\n <mat-form-field appearance=\"outline\" class=\"w-full\">\r\n <input matInput i18n-placeholder placeholder=\"Type here...\" formControlName=\"answer\" type=\"text\"\r\n maxlength=\"18\" />\r\n </mat-form-field>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'checkbox'\">\r\n <section class=\"pt-2\">\r\n <ng-container *ngFor=\"let objct of fieldDetails?.values; let i = index\">\r\n <mat-checkbox [checked]=\"objct.checked\" [value]=\"objct.value\" class=\"pr-5 pb-2 custom\"\r\n (change)=\"checkboxClicked($event, i)\">\r\n {{ objct.key }}\r\n </mat-checkbox>\r\n </ng-container>\r\n </section>\r\n </ng-container>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"fieldDetails.notApplicable\">\r\n <div class=\"mt-2\">\r\n <mat-radio-group class=\"pt-2\" formControlName=\"isNA\" (change)=\"sectionChange()\">\r\n <mat-radio-button class=\"pr-10 pb-2 my-raido\" value=\"true\">N/A</mat-radio-button>\r\n </mat-radio-group>\r\n </div>\r\n </ng-container>\r\n</form>", styles: [".drag-icon{font-size:20px;color:#000}.q-element{padding:16px;background:#fff;border-radius:8px}.rating-container{display:flex;gap:5px}.stat-mat-icon{font-size:30px;cursor:pointer;color:#ccc;width:30px;height:30px}.stat-mat-icon.filled{color:#ffca28}:host ::ng-deep .question-container .mat-form-field-wrapper{padding:0!important}:host ::ng-deep .question-container .mat-radio-checked{background-color:#fff!important}:host ::ng-deep .question-container .mat-radio-label-content{font-size:14px!important;font-family:Montserrat}:host ::ng-deep .custom .mat-checkbox-layout,:host ::ng-deep .custom .mat-radio-label{white-space:normal!important}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i2.MatLegacyError, selector: "mat-error", inputs: ["id"] }, { kind: "component", type: i2.MatLegacyFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2.MatLegacySuffix, selector: "[matSuffix]" }, { kind: "directive", type: i3.MatLegacyInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", exportAs: ["matInput"] }, { kind: "ngmodule", type: MatLegacyRadioModule }, { kind: "directive", type: i4.MatLegacyRadioGroup, selector: "mat-radio-group", exportAs: ["matRadioGroup"] }, { kind: "component", type: i4.MatLegacyRadioButton, selector: "mat-radio-button", inputs: ["disableRipple", "tabIndex"], exportAs: ["matRadioButton"] }, { kind: "ngmodule", type: MatLegacySelectModule }, { kind: "component", type: i5.MatLegacySelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }, { kind: "component", type: i6.MatLegacyOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "ngmodule", type: MatLegacyCheckboxModule }, { kind: "component", type: i7.MatLegacyCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex"], exportAs: ["matCheckbox"] }, { kind: "ngmodule", type: MatDatepickerModule }, { kind: "component", type: i8.MatDatepicker, selector: "mat-datepicker", exportAs: ["matDatepicker"] }, { kind: "directive", type: i8.MatDatepickerInput, selector: "input[matDatepicker]", inputs: ["matDatepicker", "min", "max", "matDatepickerFilter"], exportAs: ["matDatepickerInput"] }, { kind: "component", type: i8.MatDatepickerToggle, selector: "mat-datepicker-toggle", inputs: ["for", "tabIndex", "aria-label", "disabled", "disableRipple"], exportAs: ["matDatepickerToggle"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i9.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i10.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i10.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i10.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i10.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i10.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i10.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i10.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i11.TranslatePipe, name: "translate" }] }); }
108
- }
109
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SurveyFormQuestionComponent, decorators: [{
110
- type: Component,
111
- args: [{ selector: 'ws-app-survey-form-question', standalone: true, imports: [
112
- CommonModule,
113
- MatInputModule,
114
- MatLegacyRadioModule,
115
- MatLegacySelectModule,
116
- MatLegacyCheckboxModule,
117
- MatLegacyInputModule,
118
- MatDatepickerModule,
119
- MatIconModule,
120
- MatLegacySelectModule,
121
- ReactiveFormsModule,
122
- FormsModule,
123
- MatFormFieldModule,
124
- TranslateModule
125
- ], template: "<form [formGroup]=\"questionForm\" class=\"pb-2 q-element mb-4 question-container\">\r\n <div class=\"flex items-start\">\r\n <div class=\"font-semibold margin-remove flex\"\r\n [ngClass]=\"{'required' : fieldDetails.isRequired, 'pb-3': otherFieldType.includes(fieldDetails.fieldType)}\"\r\n i18n=\"Title label|Label which explains the user to enter title\">\r\n {{questionForm.value?.question}}\r\n </div>\r\n </div>\r\n <ng-container [ngSwitch]=\"fieldDetails.fieldType\">\r\n <ng-container *ngSwitchCase=\"'dropdown'\">\r\n <mat-form-field appearance=\"outline\" class=\"w-full\">\r\n <mat-select placeholder=\"Select...\" formControlName=\"answer\">\r\n <mat-option value=\"{{obj.value}}\"\r\n *ngFor=\" let obj of fieldDetails?.values\">{{obj?.key}}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'phone number'\">\r\n <mat-form-field appearance=\"outline\" class=\"w-full\">\r\n <input matInput i18n-placeholder placeholder=\"Type here...\" formControlName=\"answer\" maxlength=\"10\" />\r\n </mat-form-field>\r\n <ng-container\r\n *ngIf=\"questionForm.controls.answer.touched && questionForm.controls.answer.hasError('pattern')\">\r\n <mat-error class=\"mat-error mb-1\">\r\n {{ 'profileInfo.pleaseEnterValidMobileNumber' | translate }}\r\n </mat-error>\r\n </ng-container>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'date'\">\r\n <mat-form-field appearance=\"outline\">\r\n <input matInput [matDatepicker]=\"picker\" formControlName=\"answer\">\r\n <mat-datepicker-toggle matSuffix [for]=\"picker\"></mat-datepicker-toggle>\r\n <mat-datepicker #picker></mat-datepicker>\r\n </mat-form-field>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'boolean'\">\r\n <mat-radio-group class=\"pt-2\" formControlName=\"answer\">\r\n <mat-radio-button [value]=\"true\" class=\"pr-10 pb-2\">True</mat-radio-button>\r\n <mat-radio-button [value]=\"false\" class=\"pr-10 pb-2\">False</mat-radio-button>\r\n </mat-radio-group>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'email'\">\r\n <mat-form-field appearance=\"outline\" class=\"w-full\">\r\n <input matInput i18n-placeholder placeholder=\"Type here...\" formControlName=\"answer\" />\r\n </mat-form-field>\r\n <ng-container\r\n *ngIf=\"questionForm.controls.answer.touched && questionForm.controls.answer.hasError('pattern')\">\r\n <mat-error class=\"mat-error mb-1\">\r\n {{ 'profileInfo.invalidEmail' | translate }}\r\n </mat-error>\r\n </ng-container>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'rating'\">\r\n <div class=\"rating-container\">\r\n <mat-icon *ngFor=\"let star of stars; index as i\" class=\"stat-mat-icon\"\r\n [ngClass]=\"{ 'filled': i < questionForm.controls.answer.value }\" (click)=\"setRating(i + 1)\">\r\n star\r\n </mat-icon>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'text'\">\r\n <mat-form-field appearance=\"outline\" class=\"w-full\">\r\n <input matInput i18n-placeholder placeholder=\"Type here...\" formControlName=\"answer\" />\r\n </mat-form-field>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'textarea'\">\r\n <mat-form-field appearance=\"outline\" class=\"w-full\">\r\n <textarea matInput i18n-placeholder placeholder=\"Type here...\" rows=\"4\" cols=\"5\"\r\n formControlName=\"answer\"></textarea>\r\n </mat-form-field>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'radio'\">\r\n <mat-radio-group class=\"pt-2 custom\" formControlName=\"answer\">\r\n <mat-radio-button *ngFor=\"let obj of fieldDetails?.values\" [value]=\"obj.value\" class=\"pr-5 pb-2\">\r\n {{ obj.key }}\r\n </mat-radio-button>\r\n </mat-radio-group>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'numeric'\">\r\n <mat-form-field appearance=\"outline\" class=\"w-full\">\r\n <input matInput i18n-placeholder placeholder=\"Type here...\" formControlName=\"answer\" type=\"text\"\r\n maxlength=\"18\" />\r\n </mat-form-field>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'checkbox'\">\r\n <section class=\"pt-2\">\r\n <ng-container *ngFor=\"let objct of fieldDetails?.values; let i = index\">\r\n <mat-checkbox [checked]=\"objct.checked\" [value]=\"objct.value\" class=\"pr-5 pb-2 custom\"\r\n (change)=\"checkboxClicked($event, i)\">\r\n {{ objct.key }}\r\n </mat-checkbox>\r\n </ng-container>\r\n </section>\r\n </ng-container>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"fieldDetails.notApplicable\">\r\n <div class=\"mt-2\">\r\n <mat-radio-group class=\"pt-2\" formControlName=\"isNA\" (change)=\"sectionChange()\">\r\n <mat-radio-button class=\"pr-10 pb-2 my-raido\" value=\"true\">N/A</mat-radio-button>\r\n </mat-radio-group>\r\n </div>\r\n </ng-container>\r\n</form>", styles: [".drag-icon{font-size:20px;color:#000}.q-element{padding:16px;background:#fff;border-radius:8px}.rating-container{display:flex;gap:5px}.stat-mat-icon{font-size:30px;cursor:pointer;color:#ccc;width:30px;height:30px}.stat-mat-icon.filled{color:#ffca28}:host ::ng-deep .question-container .mat-form-field-wrapper{padding:0!important}:host ::ng-deep .question-container .mat-radio-checked{background-color:#fff!important}:host ::ng-deep .question-container .mat-radio-label-content{font-size:14px!important;font-family:Montserrat}:host ::ng-deep .custom .mat-checkbox-layout,:host ::ng-deep .custom .mat-radio-label{white-space:normal!important}\n"] }]
126
- }], propDecorators: { questionForm: [{
127
- type: Input
128
- }], fieldDetails: [{
129
- type: Input
130
- }], questionValues: [{
131
- type: Output
132
- }] } });
133
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VydmV5LWZvcm0tcXVlc3Rpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicmFyeS9zdW5iaXJkLWNiL3RvYy9zcmMvbGliL2NvbXBvbmVudHMvc3VydmV5LWZvcm0tcXVlc3Rpb24vc3VydmV5LWZvcm0tcXVlc3Rpb24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicmFyeS9zdW5iaXJkLWNiL3RvYy9zcmMvbGliL2NvbXBvbmVudHMvc3VydmV5LWZvcm0tcXVlc3Rpb24vc3VydmV5LWZvcm0tcXVlc3Rpb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDL0UsT0FBTyxFQUFhLFdBQVcsRUFBRSxtQkFBbUIsRUFBRSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6RixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLG9CQUFvQixJQUFJLGNBQWMsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3hGLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQzVFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSx3QkFBd0IsSUFBSSxrQkFBa0IsRUFBRSxNQUFNLHFDQUFx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LFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFFSSxjQUFjO3NCQUF2QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBGb3JtR3JvdXAsIEZvcm1zTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBNYXREYXRlcGlja2VyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGF0ZXBpY2tlcic7XHJcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcclxuaW1wb3J0IHsgTWF0TGVnYWN5SW5wdXRNb2R1bGUgYXMgTWF0SW5wdXRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9sZWdhY3ktaW5wdXQnO1xyXG5pbXBvcnQgeyBNYXRMZWdhY3lDaGVja2JveE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2xlZ2FjeS1jaGVja2JveCc7XHJcbmltcG9ydCB7IE1hdExlZ2FjeUlucHV0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvbGVnYWN5LWlucHV0JztcclxuaW1wb3J0IHsgTWF0TGVnYWN5UmFkaW9Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9sZWdhY3ktcmFkaW8nO1xyXG5pbXBvcnQgeyBNYXRMZWdhY3lTZWxlY3RNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9sZWdhY3ktc2VsZWN0JztcclxuaW1wb3J0IHsgTWF0TGVnYWN5Rm9ybUZpZWxkTW9kdWxlIGFzIE1hdEZvcm1GaWVsZE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2xlZ2FjeS1mb3JtLWZpZWxkJ1xyXG5pbXBvcnQgeyBUcmFuc2xhdGVNb2R1bGUgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnd3MtYXBwLXN1cnZleS1mb3JtLXF1ZXN0aW9uJyxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIENvbW1vbk1vZHVsZSxcclxuICAgIE1hdElucHV0TW9kdWxlLFxyXG4gICAgTWF0TGVnYWN5UmFkaW9Nb2R1bGUsXHJcbiAgICBNYXRMZWdhY3lTZWxlY3RNb2R1bGUsXHJcbiAgICBNYXRMZWdhY3lDaGVja2JveE1vZHVsZSxcclxuICAgIE1hdExlZ2FjeUlucHV0TW9kdWxlLFxyXG4gICAgTWF0RGF0ZXBpY2tlck1vZHVsZSxcclxuICAgIE1hdEljb25Nb2R1bGUsXHJcbiAgICBNYXRMZWdhY3lTZWxlY3RNb2R1bGUsXHJcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLCBcclxuICAgIEZvcm1zTW9kdWxlLFxyXG4gICAgTWF0Rm9ybUZpZWxkTW9kdWxlLFxyXG4gICAgVHJhbnNsYXRlTW9kdWxlXHJcbiAgXSxcclxuICB0ZW1wbGF0ZVVybDogJy4vc3VydmV5LWZvcm0tcXVlc3Rpb24uY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3N1cnZleS1mb3JtLXF1ZXN0aW9uLmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIFN1cnZleUZvcm1RdWVzdGlvbkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgQElucHV0KCkgcXVlc3Rpb25Gb3JtITogRm9ybUdyb3VwO1xyXG4gIEBJbnB1dCgpIGZpZWxkRGV0YWlsczogYW55XHJcblxyXG4gIEBPdXRwdXQoKSBxdWVzdGlvblZhbHVlcyA9IG5ldyBFdmVudEVtaXR0ZXIoKVxyXG5cclxuICBvdGhlckZpZWxkVHlwZSA9IFsncmFkaW8nLCAnYm9vbGVhbicsICdyYXRpbmcnXVxyXG4gIHN0YXJzID0gQXJyYXkoNSkuZmlsbCgwKVxyXG4gIHByZXZpZXNBbnN3ZXI6IHN0cmluZyA9ICcnXHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMucXVlc3Rpb25Gb3JtKSB7XHJcbiAgICAgIHRoaXMuYW5zd2VyQ29udHJvbC52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKCh2YWx1ZTogYW55KSA9PiB7XHJcbiAgICAgICAgaWYodmFsdWUgIT09ICB0aGlzLnByZXZpZXNBbnN3ZXIgJiYgdmFsdWUgIT09IG51bGwpIHtcclxuICAgICAgICAgIGlmKHRoaXMuZmllbGREZXRhaWxzWydmaWVsZFR5cGUnXSA9PT0gJ251bWVyaWMnKSB7XHJcbiAgICAgICAgICAgIGxldCBtb2RpZmllZFZhbHVlID0gdmFsdWUucmVwbGFjZSgvW14wLTkuXS9nLCAnJyk7IC8vIFJlbW92ZSBhbGwgbm9uLW51bWVyaWMgYW5kIG5vbi1kZWNpbWFsIGNoYXJhY3RlcnNcclxuICAgICAgICAgICAgY29uc3QgZGVjaW1hbENvdW50ID0gKG1vZGlmaWVkVmFsdWUubWF0Y2goL1xcLi9nKSB8fCBbXSkubGVuZ3RoO1xyXG4gICAgICAgICAgICBpZiAoZGVjaW1hbENvdW50ID4gMSkge1xyXG4gICAgICAgICAgICAgIG1vZGlmaWVkVmFsdWUgPSBtb2RpZmllZFZhbHVlLnJlcGxhY2UoL1xcLiQvLCAnJyk7IC8vIFJlbW92ZSB0aGUgbGFzdCBkZWNpbWFsIHBvaW50XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgaWYodmFsdWUgIT09IG1vZGlmaWVkVmFsdWUpIHtcclxuICAgICAgICAgICAgICB0aGlzLmFuc3dlckNvbnRyb2wucGF0Y2hWYWx1ZShtb2RpZmllZFZhbHVlKVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBpZiAodGhpcy5maWVsZERldGFpbHNbJ3ZhbGlkYXRvcnNBcnJheSddICYmIHRoaXMucXVlc3Rpb25Gb3JtLmNvbnRyb2xzLmlzTkEudmFsdWUpIHtcclxuICAgICAgICAgICAgdGhpcy5hbnN3ZXJDb250cm9sLnNldFZhbGlkYXRvcnModGhpcy5maWVsZERldGFpbHNbJ3ZhbGlkYXRvcnNBcnJheSddKVxyXG4gICAgICAgICAgICB0aGlzLnF1ZXN0aW9uRm9ybS5jb250cm9scy5pc05BLnBhdGNoVmFsdWUoZmFsc2UpXHJcbiAgICAgICAgICAgIHRoaXMuYW5zd2VyQ29udHJvbC5tYXJrQWxsQXNUb3VjaGVkKClcclxuICAgICAgICAgICAgdGhpcy5hbnN3ZXJDb250cm9sLnVwZGF0ZVZhbHVlQW5kVmFsaWRpdHkoKVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgdGhpcy5xdWVzdGlvbkZvcm0udXBkYXRlVmFsdWVBbmRWYWxpZGl0eSgpXHJcbiAgICAgICAgICB0aGlzLmVtaXRBbnN3ZXIoKVxyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLnByZXZpZXNBbnN3ZXIgPSB2YWx1ZVxyXG4gICAgICB9KVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZ2V0IGFuc3dlckNvbnRyb2woKSB7XHJcbiAgICByZXR1cm4gdGhpcy5xdWVzdGlvbkZvcm0uY29udHJvbHMuYW5zd2VyXHJcbiAgfVxyXG5cclxuICBzZWN0aW9uQ2hhbmdlKCkge1xyXG4gICAgaWYodGhpcy5xdWVzdGlvbkZvcm0uY29udHJvbHMuaXNOQS52YWx1ZSkge1xyXG4gICAgICB0aGlzLmFuc3dlckNvbnRyb2wucmVzZXQoKVxyXG4gICAgICB0aGlzLmFuc3dlckNvbnRyb2wuY2xlYXJWYWxpZGF0b3JzKClcclxuICAgICAgY29uc3QgdmFsaWRhdG9yc0FycmF5ID0gdGhpcy5maWVsZERldGFpbHNbJ3ZhbGlkYXRvcnNBcnJheSddID8gdGhpcy5maWVsZERldGFpbHNbJ3ZhbGlkYXRvcnNBcnJheSddLmZpbHRlcigodmFsaWRhdG9yOiBhbnkpID0+IHZhbGlkYXRvciAhPT0gVmFsaWRhdG9ycy5yZXF1aXJlZCkgOiBbXVxyXG4gICAgICB0aGlzLmFuc3dlckNvbnRyb2wuc2V0VmFsaWRhdG9ycyh2YWxpZGF0b3JzQXJyYXkpXHJcbiAgICAgIHRoaXMuYW5zd2VyQ29udHJvbC51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KClcclxuICAgICAgdGhpcy5yZXNldENoZWNrYm94ZXMoKVxyXG4gICAgICB0aGlzLmVtaXRBbnN3ZXIoKVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcmVzZXRDaGVja2JveGVzKCkge1xyXG4gICAgaWYodGhpcy5maWVsZERldGFpbHMgJiYgdGhpcy5maWVsZERldGFpbHMudmFsdWVzKSB7XHJcbiAgICAgIHRoaXMuZmllbGREZXRhaWxzLnZhbHVlcy5mb3JFYWNoKChlOiBhbnkpID0+IHtcclxuICAgICAgICBlWydjaGVja2VkJ10gPSBmYWxzZVxyXG4gICAgICB9KVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgc2V0UmF0aW5nKHJhdGluZzogbnVtYmVyKSB7XHJcbiAgICBpZih0aGlzLmFuc3dlckNvbnRyb2wpIHtcclxuICAgICAgdGhpcy5hbnN3ZXJDb250cm9sLnBhdGNoVmFsdWUocmF0aW5nKVxyXG4gICAgICB0aGlzLmVtaXRBbnN3ZXIoKVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgY2hlY2tib3hDbGlja2VkKGV2ZW50OiBhbnksIGluZGV4OiBudW1iZXIpIHtcclxuICAgIGxldCBjaGVja2VkTGlzdCA9IHRoaXMuYW5zd2VyQ29udHJvbC52YWx1ZSA/IHRoaXMuYW5zd2VyQ29udHJvbC52YWx1ZSA6IFtdXHJcbiAgICBpZihldmVudC5jaGVja2VkKSB7XHJcbiAgICAgIGNoZWNrZWRMaXN0LnB1c2goZXZlbnQuc291cmNlLnZhbHVlKVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgY2hlY2tlZExpc3QgPSBjaGVja2VkTGlzdC5maWx0ZXIoKGU6IGFueSkgPT4gZSAhPT0gZXZlbnQuc291cmNlLnZhbHVlKVxyXG4gICAgfVxyXG4gICAgaWYodGhpcy5maWVsZERldGFpbHMudmFsdWVzICYmIHRoaXMuZmllbGREZXRhaWxzLnZhbHVlc1tpbmRleF0pIHtcclxuICAgICAgdGhpcy5maWVsZERldGFpbHMudmFsdWVzW2luZGV4XVsnY2hlY2tlZCddID0gZXZlbnQuY2hlY2tlZFxyXG4gICAgfVxyXG4gICAgdGhpcy5hbnN3ZXJDb250cm9sLnBhdGNoVmFsdWUoY2hlY2tlZExpc3QpXHJcbiAgICB0aGlzLmFuc3dlckNvbnRyb2wudXBkYXRlVmFsdWVBbmRWYWxpZGl0eSgpXHJcbiAgICB0aGlzLnF1ZXN0aW9uRm9ybS51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KClcclxuICAgIHRoaXMuZW1pdEFuc3dlcigpXHJcbiAgfVxyXG5cclxuICBlbWl0QW5zd2VyKCkge1xyXG4gICAgY29uc3QgYW5zd2VyRGV0YWlscyA9IHRoaXMucXVlc3Rpb25Gb3JtLnZhbHVlXHJcbiAgICB0aGlzLnF1ZXN0aW9uVmFsdWVzLmVtaXQoYW5zd2VyRGV0YWlscylcclxuICB9XHJcbn1cclxuIiwiPGZvcm0gW2Zvcm1Hcm91cF09XCJxdWVzdGlvbkZvcm1cIiBjbGFzcz1cInBiLTIgcS1lbGVtZW50IG1iLTQgcXVlc3Rpb24tY29udGFpbmVyXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiZmxleCBpdGVtcy1zdGFydFwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJmb250LXNlbWlib2xkIG1hcmdpbi1yZW1vdmUgZmxleFwiXHJcbiAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsncmVxdWlyZWQnIDogZmllbGREZXRhaWxzLmlzUmVxdWlyZWQsICdwYi0zJzogb3RoZXJGaWVsZFR5cGUuaW5jbHVkZXMoZmllbGREZXRhaWxzLmZpZWxkVHlwZSl9XCJcclxuICAgICAgICAgICAgaTE4bj1cIlRpdGxlIGxhYmVsfExhYmVsIHdoaWNoIGV4cGxhaW5zIHRoZSB1c2VyIHRvIGVudGVyIHRpdGxlXCI+XHJcbiAgICAgICAgICAgIHt7cXVlc3Rpb25Gb3JtLnZhbHVlPy5xdWVzdGlvbn19XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxuZy1jb250YWluZXIgW25nU3dpdGNoXT1cImZpZWxkRGV0YWlscy5maWVsZFR5cGVcIj5cclxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCInZHJvcGRvd24nXCI+XHJcbiAgICAgICAgICAgIDxtYXQtZm9ybS1maWVsZCBhcHBlYXJhbmNlPVwib3V0bGluZVwiIGNsYXNzPVwidy1mdWxsXCI+XHJcbiAgICAgICAgICAgICAgICA8bWF0LXNlbGVjdCBwbGFjZWhvbGRlcj1cIlNlbGVjdC4uLlwiIGZvcm1Db250cm9sTmFtZT1cImFuc3dlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxtYXQtb3B0aW9uIHZhbHVlPVwie3tvYmoudmFsdWV9fVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICpuZ0Zvcj1cIiBsZXQgb2JqIG9mIGZpZWxkRGV0YWlscz8udmFsdWVzXCI+e3tvYmo/LmtleX19PC9tYXQtb3B0aW9uPlxyXG4gICAgICAgICAgICAgICAgPC9tYXQtc2VsZWN0PlxyXG4gICAgICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxyXG4gICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidwaG9uZSBudW1iZXInXCI+XHJcbiAgICAgICAgICAgIDxtYXQtZm9ybS1maWVsZCBhcHBlYXJhbmNlPVwib3V0bGluZVwiIGNsYXNzPVwidy1mdWxsXCI+XHJcbiAgICAgICAgICAgICAgICA8aW5wdXQgbWF0SW5wdXQgaTE4bi1wbGFjZWhvbGRlciBwbGFjZWhvbGRlcj1cIlR5cGUgaGVyZS4uLlwiIGZvcm1Db250cm9sTmFtZT1cImFuc3dlclwiIG1heGxlbmd0aD1cIjEwXCIgLz5cclxuICAgICAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cclxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lclxyXG4gICAgICAgICAgICAgICAgKm5nSWY9XCJxdWVzdGlvbkZvcm0uY29udHJvbHMuYW5zd2VyLnRvdWNoZWQgJiYgcXVlc3Rpb25Gb3JtLmNvbnRyb2xzLmFuc3dlci5oYXNFcnJvcigncGF0dGVybicpXCI+XHJcbiAgICAgICAgICAgICAgICA8bWF0LWVycm9yIGNsYXNzPVwibWF0LWVycm9yIG1iLTFcIj5cclxuICAgICAgICAgICAgICAgICAgICB7eyAncHJvZmlsZUluZm8ucGxlYXNlRW50ZXJWYWxpZE1vYmlsZU51bWJlcicgfCB0cmFuc2xhdGUgfX1cclxuICAgICAgICAgICAgICAgIDwvbWF0LWVycm9yPlxyXG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCInZGF0ZSdcIj5cclxuICAgICAgICAgICAgPG1hdC1mb3JtLWZpZWxkIGFwcGVhcmFuY2U9XCJvdXRsaW5lXCI+XHJcbiAgICAgICAgICAgICAgICA8aW5wdXQgbWF0SW5wdXQgW21hdERhdGVwaWNrZXJdPVwicGlja2VyXCIgZm9ybUNvbnRyb2xOYW1lPVwiYW5zd2VyXCI+XHJcbiAgICAgICAgICAgICAgICA8bWF0LWRhdGVwaWNrZXItdG9nZ2xlIG1hdFN1ZmZpeCBbZm9yXT1cInBpY2tlclwiPjwvbWF0LWRhdGVwaWNrZXItdG9nZ2xlPlxyXG4gICAgICAgICAgICAgICAgPG1hdC1kYXRlcGlja2VyICNwaWNrZXI+PC9tYXQtZGF0ZXBpY2tlcj5cclxuICAgICAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cclxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCInYm9vbGVhbidcIj5cclxuICAgICAgICAgICAgPG1hdC1yYWRpby1ncm91cCBjbGFzcz1cInB0LTJcIiBmb3JtQ29udHJvbE5hbWU9XCJhbnN3ZXJcIj5cclxuICAgICAgICAgICAgICAgIDxtYXQtcmFkaW8tYnV0dG9uIFt2YWx1ZV09XCJ0cnVlXCIgY2xhc3M9XCJwci0xMCBwYi0yXCI+VHJ1ZTwvbWF0LXJhZGlvLWJ1dHRvbj5cclxuICAgICAgICAgICAgICAgIDxtYXQtcmFkaW8tYnV0dG9uIFt2YWx1ZV09XCJmYWxzZVwiIGNsYXNzPVwicHItMTAgcGItMlwiPkZhbHNlPC9tYXQtcmFkaW8tYnV0dG9uPlxyXG4gICAgICAgICAgICA8L21hdC1yYWRpby1ncm91cD5cclxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCInZW1haWwnXCI+XHJcbiAgICAgICAgICAgIDxtYXQtZm9ybS1maWVsZCBhcHBlYXJhbmNlPVwib3V0bGluZVwiIGNsYXNzPVwidy1mdWxsXCI+XHJcbiAgICAgICAgICAgICAgICA8aW5wdXQgbWF0SW5wdXQgaTE4bi1wbGFjZWhvbGRlciBwbGFjZWhvbGRlcj1cIlR5cGUgaGVyZS4uLlwiIGZvcm1Db250cm9sTmFtZT1cImFuc3dlclwiIC8+XHJcbiAgICAgICAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XHJcbiAgICAgICAgICAgIDxuZy1jb250YWluZXJcclxuICAgICAgICAgICAgICAgICpuZ0lmPVwicXVlc3Rpb25Gb3JtLmNvbnRyb2xzLmFuc3dlci50b3VjaGVkICYmIHF1ZXN0aW9uRm9ybS5jb250cm9scy5hbnN3ZXIuaGFzRXJyb3IoJ3BhdHRlcm4nKVwiPlxyXG4gICAgICAgICAgICAgICAgPG1hdC1lcnJvciBjbGFzcz1cIm1hdC1lcnJvciBtYi0xXCI+XHJcbiAgICAgICAgICAgICAgICAgICAge3sgJ3Byb2ZpbGVJbmZvLmludmFsaWRFbWFpbCcgfCB0cmFuc2xhdGUgfX1cclxuICAgICAgICAgICAgICAgIDwvbWF0LWVycm9yPlxyXG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCIncmF0aW5nJ1wiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwicmF0aW5nLWNvbnRhaW5lclwiPlxyXG4gICAgICAgICAgICAgICAgPG1hdC1pY29uICpuZ0Zvcj1cImxldCBzdGFyIG9mIHN0YXJzOyBpbmRleCBhcyBpXCIgY2xhc3M9XCJzdGF0LW1hdC1pY29uXCJcclxuICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7ICdmaWxsZWQnOiBpIDwgcXVlc3Rpb25Gb3JtLmNvbnRyb2xzLmFuc3dlci52YWx1ZSB9XCIgKGNsaWNrKT1cInNldFJhdGluZyhpICsgMSlcIj5cclxuICAgICAgICAgICAgICAgICAgICBzdGFyXHJcbiAgICAgICAgICAgICAgICA8L21hdC1pY29uPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCIndGV4dCdcIj5cclxuICAgICAgICAgICAgPG1hdC1mb3JtLWZpZWxkIGFwcGVhcmFuY2U9XCJvdXRsaW5lXCIgY2xhc3M9XCJ3LWZ1bGxcIj5cclxuICAgICAgICAgICAgICAgIDxpbnB1dCBtYXRJbnB1dCBpMThuLXBsYWNlaG9sZGVyIHBsYWNlaG9sZGVyPVwiVHlwZSBoZXJlLi4uXCIgZm9ybUNvbnRyb2xOYW1lPVwiYW5zd2VyXCIgLz5cclxuICAgICAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cclxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCIndGV4dGFyZWEnXCI+XHJcbiAgICAgICAgICAgIDxtYXQtZm9ybS1maWVsZCBhcHBlYXJhbmNlPVwib3V0bGluZVwiIGNsYXNzPVwidy1mdWxsXCI+XHJcbiAgICAgICAgICAgICAgICA8dGV4dGFyZWEgbWF0SW5wdXQgaTE4bi1wbGFjZWhvbGRlciBwbGFjZWhvbGRlcj1cIlR5cGUgaGVyZS4uLlwiIHJvd3M9XCI0XCIgY29scz1cIjVcIlxyXG4gICAgICAgICAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cImFuc3dlclwiPjwvdGV4dGFyZWE+XHJcbiAgICAgICAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XHJcbiAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiJ3JhZGlvJ1wiPlxyXG4gICAgICAgICAgICA8bWF0LXJhZGlvLWdyb3VwIGNsYXNzPVwicHQtMiBjdXN0b21cIiBmb3JtQ29udHJvbE5hbWU9XCJhbnN3ZXJcIj5cclxuICAgICAgICAgICAgICAgIDxtYXQtcmFkaW8tYnV0dG9uICpuZ0Zvcj1cImxldCBvYmogb2YgZmllbGREZXRhaWxzPy52YWx1ZXNcIiBbdmFsdWVdPVwib2JqLnZhbHVlXCIgY2xhc3M9XCJwci01IHBiLTJcIj5cclxuICAgICAgICAgICAgICAgICAgICB7eyBvYmoua2V5IH19XHJcbiAgICAgICAgICAgICAgICA8L21hdC1yYWRpby1idXR0b24+XHJcbiAgICAgICAgICAgIDwvbWF0LXJhZGlvLWdyb3VwPlxyXG4gICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidudW1lcmljJ1wiPlxyXG4gICAgICAgICAgICA8bWF0LWZvcm0tZmllbGQgYXBwZWFyYW5jZT1cIm91dGxpbmVcIiBjbGFzcz1cInctZnVsbFwiPlxyXG4gICAgICAgICAgICAgICAgPGlucHV0IG1hdElucHV0IGkxOG4tcGxhY2Vob2xkZXIgcGxhY2Vob2xkZXI9XCJUeXBlIGhlcmUuLi5cIiBmb3JtQ29udHJvbE5hbWU9XCJhbnN3ZXJcIiB0eXBlPVwidGV4dFwiXHJcbiAgICAgICAgICAgICAgICAgICAgbWF4bGVuZ3RoPVwiMThcIiAvPlxyXG4gICAgICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxyXG4gICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidjaGVja2JveCdcIj5cclxuICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9XCJwdC0yXCI+XHJcbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBvYmpjdCBvZiBmaWVsZERldGFpbHM/LnZhbHVlczsgbGV0IGkgPSBpbmRleFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxtYXQtY2hlY2tib3ggW2NoZWNrZWRdPVwib2JqY3QuY2hlY2tlZFwiIFt2YWx1ZV09XCJvYmpjdC52YWx1ZVwiIGNsYXNzPVwicHItNSBwYi0yIGN1c3RvbVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIChjaGFuZ2UpPVwiY2hlY2tib3hDbGlja2VkKCRldmVudCwgaSlcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAge3sgb2JqY3Qua2V5IH19XHJcbiAgICAgICAgICAgICAgICAgICAgPC9tYXQtY2hlY2tib3g+XHJcbiAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgPC9zZWN0aW9uPlxyXG4gICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImZpZWxkRGV0YWlscy5ub3RBcHBsaWNhYmxlXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cIm10LTJcIj5cclxuICAgICAgICAgICAgPG1hdC1yYWRpby1ncm91cCBjbGFzcz1cInB0LTJcIiBmb3JtQ29udHJvbE5hbWU9XCJpc05BXCIgKGNoYW5nZSk9XCJzZWN0aW9uQ2hhbmdlKClcIj5cclxuICAgICAgICAgICAgICAgIDxtYXQtcmFkaW8tYnV0dG9uIGNsYXNzPVwicHItMTAgcGItMiBteS1yYWlkb1wiIHZhbHVlPVwidHJ1ZVwiPk4vQTwvbWF0LXJhZGlvLWJ1dHRvbj5cclxuICAgICAgICAgICAgPC9tYXQtcmFkaW8tZ3JvdXA+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuPC9mb3JtPiJdfQ==
1
+ import { CommonModule } from '@angular/common';
2
+ import { Component, EventEmitter, Input, Output } from '@angular/core';
3
+ import { FormsModule, ReactiveFormsModule, Validators } from '@angular/forms';
4
+ import { MatDatepickerModule } from '@angular/material/datepicker';
5
+ import { MatIconModule } from '@angular/material/icon';
6
+ import { MatLegacyInputModule as MatInputModule } from '@angular/material/legacy-input';
7
+ import { MatLegacyCheckboxModule } from '@angular/material/legacy-checkbox';
8
+ import { MatLegacyInputModule } from '@angular/material/legacy-input';
9
+ import { MatLegacyRadioModule } from '@angular/material/legacy-radio';
10
+ import { MatLegacySelectModule } from '@angular/material/legacy-select';
11
+ import { MatLegacyFormFieldModule as MatFormFieldModule } from '@angular/material/legacy-form-field';
12
+ import { TranslateModule } from '@ngx-translate/core';
13
+ import * as i0 from "@angular/core";
14
+ import * as i1 from "@angular/common";
15
+ import * as i2 from "@angular/material/legacy-form-field";
16
+ import * as i3 from "@angular/material/legacy-input";
17
+ import * as i4 from "@angular/material/legacy-radio";
18
+ import * as i5 from "@angular/material/legacy-select";
19
+ import * as i6 from "@angular/material/legacy-core";
20
+ import * as i7 from "@angular/material/legacy-checkbox";
21
+ import * as i8 from "@angular/material/datepicker";
22
+ import * as i9 from "@angular/material/icon";
23
+ import * as i10 from "@angular/forms";
24
+ import * as i11 from "@ngx-translate/core";
25
+ export class SurveyFormQuestionComponent {
26
+ constructor() {
27
+ this.questionValues = new EventEmitter();
28
+ this.otherFieldType = ['radio', 'boolean', 'rating'];
29
+ this.stars = Array(5).fill(0);
30
+ this.previesAnswer = '';
31
+ }
32
+ ngOnInit() {
33
+ if (this.questionForm) {
34
+ this.answerControl.valueChanges.subscribe((value) => {
35
+ if (value !== this.previesAnswer && value !== null) {
36
+ if (this.fieldDetails['fieldType'] === 'numeric') {
37
+ let modifiedValue = value.replace(/[^0-9.]/g, ''); // Remove all non-numeric and non-decimal characters
38
+ const decimalCount = (modifiedValue.match(/\./g) || []).length;
39
+ if (decimalCount > 1) {
40
+ modifiedValue = modifiedValue.replace(/\.$/, ''); // Remove the last decimal point
41
+ }
42
+ if (value !== modifiedValue) {
43
+ this.answerControl.patchValue(modifiedValue);
44
+ }
45
+ }
46
+ if (this.fieldDetails['validatorsArray'] && this.questionForm.controls.isNA.value) {
47
+ this.answerControl.setValidators(this.fieldDetails['validatorsArray']);
48
+ this.questionForm.controls.isNA.patchValue(false);
49
+ this.answerControl.markAllAsTouched();
50
+ this.answerControl.updateValueAndValidity();
51
+ }
52
+ this.questionForm.updateValueAndValidity();
53
+ this.emitAnswer();
54
+ }
55
+ this.previesAnswer = value;
56
+ });
57
+ }
58
+ }
59
+ get answerControl() {
60
+ return this.questionForm.controls.answer;
61
+ }
62
+ sectionChange() {
63
+ if (this.questionForm.controls.isNA.value) {
64
+ this.answerControl.reset();
65
+ this.answerControl.clearValidators();
66
+ const validatorsArray = this.fieldDetails['validatorsArray'] ? this.fieldDetails['validatorsArray'].filter((validator) => validator !== Validators.required) : [];
67
+ this.answerControl.setValidators(validatorsArray);
68
+ this.answerControl.updateValueAndValidity();
69
+ this.resetCheckboxes();
70
+ this.emitAnswer();
71
+ }
72
+ }
73
+ resetCheckboxes() {
74
+ if (this.fieldDetails && this.fieldDetails.values) {
75
+ this.fieldDetails.values.forEach((e) => {
76
+ e['checked'] = false;
77
+ });
78
+ }
79
+ }
80
+ setRating(rating) {
81
+ if (this.answerControl) {
82
+ this.answerControl.patchValue(rating);
83
+ this.emitAnswer();
84
+ }
85
+ }
86
+ checkboxClicked(event, index) {
87
+ let checkedList = this.answerControl.value ? this.answerControl.value : [];
88
+ if (event.checked) {
89
+ checkedList.push(event.source.value);
90
+ }
91
+ else {
92
+ checkedList = checkedList.filter((e) => e !== event.source.value);
93
+ }
94
+ if (this.fieldDetails.values && this.fieldDetails.values[index]) {
95
+ this.fieldDetails.values[index]['checked'] = event.checked;
96
+ }
97
+ this.answerControl.patchValue(checkedList);
98
+ this.answerControl.updateValueAndValidity();
99
+ this.questionForm.updateValueAndValidity();
100
+ this.emitAnswer();
101
+ }
102
+ emitAnswer() {
103
+ const answerDetails = this.questionForm.value;
104
+ this.questionValues.emit(answerDetails);
105
+ }
106
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SurveyFormQuestionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
107
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SurveyFormQuestionComponent, isStandalone: true, selector: "ws-app-survey-form-question", inputs: { questionForm: "questionForm", fieldDetails: "fieldDetails" }, outputs: { questionValues: "questionValues" }, ngImport: i0, template: "<form [formGroup]=\"questionForm\" class=\"pb-2 q-element mb-4 question-container\">\n <div class=\"flex items-start\">\n <div class=\"font-semibold margin-remove flex\"\n [ngClass]=\"{'required' : fieldDetails.isRequired, 'pb-3': otherFieldType.includes(fieldDetails.fieldType)}\"\n i18n=\"Title label|Label which explains the user to enter title\">\n {{questionForm.value?.question}}\n </div>\n </div>\n <ng-container [ngSwitch]=\"fieldDetails.fieldType\">\n <ng-container *ngSwitchCase=\"'dropdown'\">\n <mat-form-field appearance=\"outline\" class=\"w-full\">\n <mat-select placeholder=\"Select...\" formControlName=\"answer\">\n <mat-option value=\"{{obj.value}}\"\n *ngFor=\" let obj of fieldDetails?.values\">{{obj?.key}}</mat-option>\n </mat-select>\n </mat-form-field>\n </ng-container>\n <ng-container *ngSwitchCase=\"'phone number'\">\n <mat-form-field appearance=\"outline\" class=\"w-full\">\n <input matInput i18n-placeholder placeholder=\"Type here...\" formControlName=\"answer\" maxlength=\"10\" />\n </mat-form-field>\n <ng-container\n *ngIf=\"questionForm.controls.answer.touched && questionForm.controls.answer.hasError('pattern')\">\n <mat-error class=\"mat-error mb-1\">\n {{ 'profileInfo.pleaseEnterValidMobileNumber' | translate }}\n </mat-error>\n </ng-container>\n </ng-container>\n <ng-container *ngSwitchCase=\"'date'\">\n <mat-form-field appearance=\"outline\">\n <input matInput [matDatepicker]=\"picker\" formControlName=\"answer\">\n <mat-datepicker-toggle matSuffix [for]=\"picker\"></mat-datepicker-toggle>\n <mat-datepicker #picker></mat-datepicker>\n </mat-form-field>\n </ng-container>\n <ng-container *ngSwitchCase=\"'boolean'\">\n <mat-radio-group class=\"pt-2\" formControlName=\"answer\">\n <mat-radio-button [value]=\"true\" class=\"pr-10 pb-2\">True</mat-radio-button>\n <mat-radio-button [value]=\"false\" class=\"pr-10 pb-2\">False</mat-radio-button>\n </mat-radio-group>\n </ng-container>\n <ng-container *ngSwitchCase=\"'email'\">\n <mat-form-field appearance=\"outline\" class=\"w-full\">\n <input matInput i18n-placeholder placeholder=\"Type here...\" formControlName=\"answer\" />\n </mat-form-field>\n <ng-container\n *ngIf=\"questionForm.controls.answer.touched && questionForm.controls.answer.hasError('pattern')\">\n <mat-error class=\"mat-error mb-1\">\n {{ 'profileInfo.invalidEmail' | translate }}\n </mat-error>\n </ng-container>\n </ng-container>\n <ng-container *ngSwitchCase=\"'rating'\">\n <div class=\"rating-container\">\n <mat-icon *ngFor=\"let star of stars; index as i\" class=\"stat-mat-icon\"\n [ngClass]=\"{ 'filled': i < questionForm.controls.answer.value }\" (click)=\"setRating(i + 1)\">\n star\n </mat-icon>\n </div>\n </ng-container>\n <ng-container *ngSwitchCase=\"'text'\">\n <mat-form-field appearance=\"outline\" class=\"w-full\">\n <input matInput i18n-placeholder placeholder=\"Type here...\" formControlName=\"answer\" />\n </mat-form-field>\n </ng-container>\n <ng-container *ngSwitchCase=\"'textarea'\">\n <mat-form-field appearance=\"outline\" class=\"w-full\">\n <textarea matInput i18n-placeholder placeholder=\"Type here...\" rows=\"4\" cols=\"5\"\n formControlName=\"answer\"></textarea>\n </mat-form-field>\n </ng-container>\n <ng-container *ngSwitchCase=\"'radio'\">\n <mat-radio-group class=\"pt-2 custom\" formControlName=\"answer\">\n <mat-radio-button *ngFor=\"let obj of fieldDetails?.values\" [value]=\"obj.value\" class=\"pr-5 pb-2\">\n {{ obj.key }}\n </mat-radio-button>\n </mat-radio-group>\n </ng-container>\n <ng-container *ngSwitchCase=\"'numeric'\">\n <mat-form-field appearance=\"outline\" class=\"w-full\">\n <input matInput i18n-placeholder placeholder=\"Type here...\" formControlName=\"answer\" type=\"text\"\n maxlength=\"18\" />\n </mat-form-field>\n </ng-container>\n <ng-container *ngSwitchCase=\"'checkbox'\">\n <section class=\"pt-2\">\n <ng-container *ngFor=\"let objct of fieldDetails?.values; let i = index\">\n <mat-checkbox [checked]=\"objct.checked\" [value]=\"objct.value\" class=\"pr-5 pb-2 custom\"\n (change)=\"checkboxClicked($event, i)\">\n {{ objct.key }}\n </mat-checkbox>\n </ng-container>\n </section>\n </ng-container>\n </ng-container>\n\n <ng-container *ngIf=\"fieldDetails.notApplicable\">\n <div class=\"mt-2\">\n <mat-radio-group class=\"pt-2\" formControlName=\"isNA\" (change)=\"sectionChange()\">\n <mat-radio-button class=\"pr-10 pb-2 my-raido\" value=\"true\">N/A</mat-radio-button>\n </mat-radio-group>\n </div>\n </ng-container>\n</form>", styles: [".drag-icon{font-size:20px;color:#000}.q-element{padding:16px;background:#fff;border-radius:8px}.rating-container{display:flex;gap:5px}.stat-mat-icon{font-size:30px;cursor:pointer;color:#ccc;width:30px;height:30px}.stat-mat-icon.filled{color:#ffca28}:host ::ng-deep .question-container .mat-form-field-wrapper{padding:0!important}:host ::ng-deep .question-container .mat-radio-checked{background-color:#fff!important}:host ::ng-deep .question-container .mat-radio-label-content{font-size:14px!important;font-family:Montserrat}:host ::ng-deep .custom .mat-checkbox-layout,:host ::ng-deep .custom .mat-radio-label{white-space:normal!important}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i2.MatLegacyError, selector: "mat-error", inputs: ["id"] }, { kind: "component", type: i2.MatLegacyFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2.MatLegacySuffix, selector: "[matSuffix]" }, { kind: "directive", type: i3.MatLegacyInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", exportAs: ["matInput"] }, { kind: "ngmodule", type: MatLegacyRadioModule }, { kind: "directive", type: i4.MatLegacyRadioGroup, selector: "mat-radio-group", exportAs: ["matRadioGroup"] }, { kind: "component", type: i4.MatLegacyRadioButton, selector: "mat-radio-button", inputs: ["disableRipple", "tabIndex"], exportAs: ["matRadioButton"] }, { kind: "ngmodule", type: MatLegacySelectModule }, { kind: "component", type: i5.MatLegacySelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }, { kind: "component", type: i6.MatLegacyOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "ngmodule", type: MatLegacyCheckboxModule }, { kind: "component", type: i7.MatLegacyCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex"], exportAs: ["matCheckbox"] }, { kind: "ngmodule", type: MatDatepickerModule }, { kind: "component", type: i8.MatDatepicker, selector: "mat-datepicker", exportAs: ["matDatepicker"] }, { kind: "directive", type: i8.MatDatepickerInput, selector: "input[matDatepicker]", inputs: ["matDatepicker", "min", "max", "matDatepickerFilter"], exportAs: ["matDatepickerInput"] }, { kind: "component", type: i8.MatDatepickerToggle, selector: "mat-datepicker-toggle", inputs: ["for", "tabIndex", "aria-label", "disabled", "disableRipple"], exportAs: ["matDatepickerToggle"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i9.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i10.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i10.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i10.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i10.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i10.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i10.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i10.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i11.TranslatePipe, name: "translate" }] }); }
108
+ }
109
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SurveyFormQuestionComponent, decorators: [{
110
+ type: Component,
111
+ args: [{ selector: 'ws-app-survey-form-question', standalone: true, imports: [
112
+ CommonModule,
113
+ MatInputModule,
114
+ MatLegacyRadioModule,
115
+ MatLegacySelectModule,
116
+ MatLegacyCheckboxModule,
117
+ MatLegacyInputModule,
118
+ MatDatepickerModule,
119
+ MatIconModule,
120
+ MatLegacySelectModule,
121
+ ReactiveFormsModule,
122
+ FormsModule,
123
+ MatFormFieldModule,
124
+ TranslateModule
125
+ ], template: "<form [formGroup]=\"questionForm\" class=\"pb-2 q-element mb-4 question-container\">\n <div class=\"flex items-start\">\n <div class=\"font-semibold margin-remove flex\"\n [ngClass]=\"{'required' : fieldDetails.isRequired, 'pb-3': otherFieldType.includes(fieldDetails.fieldType)}\"\n i18n=\"Title label|Label which explains the user to enter title\">\n {{questionForm.value?.question}}\n </div>\n </div>\n <ng-container [ngSwitch]=\"fieldDetails.fieldType\">\n <ng-container *ngSwitchCase=\"'dropdown'\">\n <mat-form-field appearance=\"outline\" class=\"w-full\">\n <mat-select placeholder=\"Select...\" formControlName=\"answer\">\n <mat-option value=\"{{obj.value}}\"\n *ngFor=\" let obj of fieldDetails?.values\">{{obj?.key}}</mat-option>\n </mat-select>\n </mat-form-field>\n </ng-container>\n <ng-container *ngSwitchCase=\"'phone number'\">\n <mat-form-field appearance=\"outline\" class=\"w-full\">\n <input matInput i18n-placeholder placeholder=\"Type here...\" formControlName=\"answer\" maxlength=\"10\" />\n </mat-form-field>\n <ng-container\n *ngIf=\"questionForm.controls.answer.touched && questionForm.controls.answer.hasError('pattern')\">\n <mat-error class=\"mat-error mb-1\">\n {{ 'profileInfo.pleaseEnterValidMobileNumber' | translate }}\n </mat-error>\n </ng-container>\n </ng-container>\n <ng-container *ngSwitchCase=\"'date'\">\n <mat-form-field appearance=\"outline\">\n <input matInput [matDatepicker]=\"picker\" formControlName=\"answer\">\n <mat-datepicker-toggle matSuffix [for]=\"picker\"></mat-datepicker-toggle>\n <mat-datepicker #picker></mat-datepicker>\n </mat-form-field>\n </ng-container>\n <ng-container *ngSwitchCase=\"'boolean'\">\n <mat-radio-group class=\"pt-2\" formControlName=\"answer\">\n <mat-radio-button [value]=\"true\" class=\"pr-10 pb-2\">True</mat-radio-button>\n <mat-radio-button [value]=\"false\" class=\"pr-10 pb-2\">False</mat-radio-button>\n </mat-radio-group>\n </ng-container>\n <ng-container *ngSwitchCase=\"'email'\">\n <mat-form-field appearance=\"outline\" class=\"w-full\">\n <input matInput i18n-placeholder placeholder=\"Type here...\" formControlName=\"answer\" />\n </mat-form-field>\n <ng-container\n *ngIf=\"questionForm.controls.answer.touched && questionForm.controls.answer.hasError('pattern')\">\n <mat-error class=\"mat-error mb-1\">\n {{ 'profileInfo.invalidEmail' | translate }}\n </mat-error>\n </ng-container>\n </ng-container>\n <ng-container *ngSwitchCase=\"'rating'\">\n <div class=\"rating-container\">\n <mat-icon *ngFor=\"let star of stars; index as i\" class=\"stat-mat-icon\"\n [ngClass]=\"{ 'filled': i < questionForm.controls.answer.value }\" (click)=\"setRating(i + 1)\">\n star\n </mat-icon>\n </div>\n </ng-container>\n <ng-container *ngSwitchCase=\"'text'\">\n <mat-form-field appearance=\"outline\" class=\"w-full\">\n <input matInput i18n-placeholder placeholder=\"Type here...\" formControlName=\"answer\" />\n </mat-form-field>\n </ng-container>\n <ng-container *ngSwitchCase=\"'textarea'\">\n <mat-form-field appearance=\"outline\" class=\"w-full\">\n <textarea matInput i18n-placeholder placeholder=\"Type here...\" rows=\"4\" cols=\"5\"\n formControlName=\"answer\"></textarea>\n </mat-form-field>\n </ng-container>\n <ng-container *ngSwitchCase=\"'radio'\">\n <mat-radio-group class=\"pt-2 custom\" formControlName=\"answer\">\n <mat-radio-button *ngFor=\"let obj of fieldDetails?.values\" [value]=\"obj.value\" class=\"pr-5 pb-2\">\n {{ obj.key }}\n </mat-radio-button>\n </mat-radio-group>\n </ng-container>\n <ng-container *ngSwitchCase=\"'numeric'\">\n <mat-form-field appearance=\"outline\" class=\"w-full\">\n <input matInput i18n-placeholder placeholder=\"Type here...\" formControlName=\"answer\" type=\"text\"\n maxlength=\"18\" />\n </mat-form-field>\n </ng-container>\n <ng-container *ngSwitchCase=\"'checkbox'\">\n <section class=\"pt-2\">\n <ng-container *ngFor=\"let objct of fieldDetails?.values; let i = index\">\n <mat-checkbox [checked]=\"objct.checked\" [value]=\"objct.value\" class=\"pr-5 pb-2 custom\"\n (change)=\"checkboxClicked($event, i)\">\n {{ objct.key }}\n </mat-checkbox>\n </ng-container>\n </section>\n </ng-container>\n </ng-container>\n\n <ng-container *ngIf=\"fieldDetails.notApplicable\">\n <div class=\"mt-2\">\n <mat-radio-group class=\"pt-2\" formControlName=\"isNA\" (change)=\"sectionChange()\">\n <mat-radio-button class=\"pr-10 pb-2 my-raido\" value=\"true\">N/A</mat-radio-button>\n </mat-radio-group>\n </div>\n </ng-container>\n</form>", styles: [".drag-icon{font-size:20px;color:#000}.q-element{padding:16px;background:#fff;border-radius:8px}.rating-container{display:flex;gap:5px}.stat-mat-icon{font-size:30px;cursor:pointer;color:#ccc;width:30px;height:30px}.stat-mat-icon.filled{color:#ffca28}:host ::ng-deep .question-container .mat-form-field-wrapper{padding:0!important}:host ::ng-deep .question-container .mat-radio-checked{background-color:#fff!important}:host ::ng-deep .question-container .mat-radio-label-content{font-size:14px!important;font-family:Montserrat}:host ::ng-deep .custom .mat-checkbox-layout,:host ::ng-deep .custom .mat-radio-label{white-space:normal!important}\n"] }]
126
+ }], propDecorators: { questionForm: [{
127
+ type: Input
128
+ }], fieldDetails: [{
129
+ type: Input
130
+ }], questionValues: [{
131
+ type: Output
132
+ }] } });
133
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VydmV5LWZvcm0tcXVlc3Rpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicmFyeS9zdW5iaXJkLWNiL3RvYy9zcmMvbGliL2NvbXBvbmVudHMvc3VydmV5LWZvcm0tcXVlc3Rpb24vc3VydmV5LWZvcm0tcXVlc3Rpb24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicmFyeS9zdW5iaXJkLWNiL3RvYy9zcmMvbGliL2NvbXBvbmVudHMvc3VydmV5LWZvcm0tcXVlc3Rpb24vc3VydmV5LWZvcm0tcXVlc3Rpb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDL0UsT0FBTyxFQUFhLFdBQVcsRUFBRSxtQkFBbUIsRUFBRSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6RixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLG9CQUFvQixJQUFJLGNBQWMsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3hGLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQzVFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSx3QkFBd0IsSUFBSSxrQkFBa0IsRUFBRSxNQUFNLHFDQUFx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LFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFFSSxjQUFjO3NCQUF2QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1Hcm91cCwgRm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBNYXREYXRlcGlja2VyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGF0ZXBpY2tlcic7XG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XG5pbXBvcnQgeyBNYXRMZWdhY3lJbnB1dE1vZHVsZSBhcyBNYXRJbnB1dE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2xlZ2FjeS1pbnB1dCc7XG5pbXBvcnQgeyBNYXRMZWdhY3lDaGVja2JveE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2xlZ2FjeS1jaGVja2JveCc7XG5pbXBvcnQgeyBNYXRMZWdhY3lJbnB1dE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2xlZ2FjeS1pbnB1dCc7XG5pbXBvcnQgeyBNYXRMZWdhY3lSYWRpb01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2xlZ2FjeS1yYWRpbyc7XG5pbXBvcnQgeyBNYXRMZWdhY3lTZWxlY3RNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9sZWdhY3ktc2VsZWN0JztcbmltcG9ydCB7IE1hdExlZ2FjeUZvcm1GaWVsZE1vZHVsZSBhcyBNYXRGb3JtRmllbGRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9sZWdhY3ktZm9ybS1maWVsZCdcbmltcG9ydCB7IFRyYW5zbGF0ZU1vZHVsZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd3cy1hcHAtc3VydmV5LWZvcm0tcXVlc3Rpb24nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIE1hdElucHV0TW9kdWxlLFxuICAgIE1hdExlZ2FjeVJhZGlvTW9kdWxlLFxuICAgIE1hdExlZ2FjeVNlbGVjdE1vZHVsZSxcbiAgICBNYXRMZWdhY3lDaGVja2JveE1vZHVsZSxcbiAgICBNYXRMZWdhY3lJbnB1dE1vZHVsZSxcbiAgICBNYXREYXRlcGlja2VyTW9kdWxlLFxuICAgIE1hdEljb25Nb2R1bGUsXG4gICAgTWF0TGVnYWN5U2VsZWN0TW9kdWxlLFxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsIFxuICAgIEZvcm1zTW9kdWxlLFxuICAgIE1hdEZvcm1GaWVsZE1vZHVsZSxcbiAgICBUcmFuc2xhdGVNb2R1bGVcbiAgXSxcbiAgdGVtcGxhdGVVcmw6ICcuL3N1cnZleS1mb3JtLXF1ZXN0aW9uLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vc3VydmV5LWZvcm0tcXVlc3Rpb24uY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBTdXJ2ZXlGb3JtUXVlc3Rpb25Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBASW5wdXQoKSBxdWVzdGlvbkZvcm0hOiBGb3JtR3JvdXA7XG4gIEBJbnB1dCgpIGZpZWxkRGV0YWlsczogYW55XG5cbiAgQE91dHB1dCgpIHF1ZXN0aW9uVmFsdWVzID0gbmV3IEV2ZW50RW1pdHRlcigpXG5cbiAgb3RoZXJGaWVsZFR5cGUgPSBbJ3JhZGlvJywgJ2Jvb2xlYW4nLCAncmF0aW5nJ11cbiAgc3RhcnMgPSBBcnJheSg1KS5maWxsKDApXG4gIHByZXZpZXNBbnN3ZXI6IHN0cmluZyA9ICcnXG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMucXVlc3Rpb25Gb3JtKSB7XG4gICAgICB0aGlzLmFuc3dlckNvbnRyb2wudmFsdWVDaGFuZ2VzLnN1YnNjcmliZSgodmFsdWU6IGFueSkgPT4ge1xuICAgICAgICBpZih2YWx1ZSAhPT0gIHRoaXMucHJldmllc0Fuc3dlciAmJiB2YWx1ZSAhPT0gbnVsbCkge1xuICAgICAgICAgIGlmKHRoaXMuZmllbGREZXRhaWxzWydmaWVsZFR5cGUnXSA9PT0gJ251bWVyaWMnKSB7XG4gICAgICAgICAgICBsZXQgbW9kaWZpZWRWYWx1ZSA9IHZhbHVlLnJlcGxhY2UoL1teMC05Ll0vZywgJycpOyAvLyBSZW1vdmUgYWxsIG5vbi1udW1lcmljIGFuZCBub24tZGVjaW1hbCBjaGFyYWN0ZXJzXG4gICAgICAgICAgICBjb25zdCBkZWNpbWFsQ291bnQgPSAobW9kaWZpZWRWYWx1ZS5tYXRjaCgvXFwuL2cpIHx8IFtdKS5sZW5ndGg7XG4gICAgICAgICAgICBpZiAoZGVjaW1hbENvdW50ID4gMSkge1xuICAgICAgICAgICAgICBtb2RpZmllZFZhbHVlID0gbW9kaWZpZWRWYWx1ZS5yZXBsYWNlKC9cXC4kLywgJycpOyAvLyBSZW1vdmUgdGhlIGxhc3QgZGVjaW1hbCBwb2ludFxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYodmFsdWUgIT09IG1vZGlmaWVkVmFsdWUpIHtcbiAgICAgICAgICAgICAgdGhpcy5hbnN3ZXJDb250cm9sLnBhdGNoVmFsdWUobW9kaWZpZWRWYWx1ZSlcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKHRoaXMuZmllbGREZXRhaWxzWyd2YWxpZGF0b3JzQXJyYXknXSAmJiB0aGlzLnF1ZXN0aW9uRm9ybS5jb250cm9scy5pc05BLnZhbHVlKSB7XG4gICAgICAgICAgICB0aGlzLmFuc3dlckNvbnRyb2wuc2V0VmFsaWRhdG9ycyh0aGlzLmZpZWxkRGV0YWlsc1sndmFsaWRhdG9yc0FycmF5J10pXG4gICAgICAgICAgICB0aGlzLnF1ZXN0aW9uRm9ybS5jb250cm9scy5pc05BLnBhdGNoVmFsdWUoZmFsc2UpXG4gICAgICAgICAgICB0aGlzLmFuc3dlckNvbnRyb2wubWFya0FsbEFzVG91Y2hlZCgpXG4gICAgICAgICAgICB0aGlzLmFuc3dlckNvbnRyb2wudXBkYXRlVmFsdWVBbmRWYWxpZGl0eSgpXG4gICAgICAgICAgfVxuICAgICAgICAgIHRoaXMucXVlc3Rpb25Gb3JtLnVwZGF0ZVZhbHVlQW5kVmFsaWRpdHkoKVxuICAgICAgICAgIHRoaXMuZW1pdEFuc3dlcigpXG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5wcmV2aWVzQW5zd2VyID0gdmFsdWVcbiAgICAgIH0pXG4gICAgfVxuICB9XG5cbiAgZ2V0IGFuc3dlckNvbnRyb2woKSB7XG4gICAgcmV0dXJuIHRoaXMucXVlc3Rpb25Gb3JtLmNvbnRyb2xzLmFuc3dlclxuICB9XG5cbiAgc2VjdGlvbkNoYW5nZSgpIHtcbiAgICBpZih0aGlzLnF1ZXN0aW9uRm9ybS5jb250cm9scy5pc05BLnZhbHVlKSB7XG4gICAgICB0aGlzLmFuc3dlckNvbnRyb2wucmVzZXQoKVxuICAgICAgdGhpcy5hbnN3ZXJDb250cm9sLmNsZWFyVmFsaWRhdG9ycygpXG4gICAgICBjb25zdCB2YWxpZGF0b3JzQXJyYXkgPSB0aGlzLmZpZWxkRGV0YWlsc1sndmFsaWRhdG9yc0FycmF5J10gPyB0aGlzLmZpZWxkRGV0YWlsc1sndmFsaWRhdG9yc0FycmF5J10uZmlsdGVyKCh2YWxpZGF0b3I6IGFueSkgPT4gdmFsaWRhdG9yICE9PSBWYWxpZGF0b3JzLnJlcXVpcmVkKSA6IFtdXG4gICAgICB0aGlzLmFuc3dlckNvbnRyb2wuc2V0VmFsaWRhdG9ycyh2YWxpZGF0b3JzQXJyYXkpXG4gICAgICB0aGlzLmFuc3dlckNvbnRyb2wudXBkYXRlVmFsdWVBbmRWYWxpZGl0eSgpXG4gICAgICB0aGlzLnJlc2V0Q2hlY2tib3hlcygpXG4gICAgICB0aGlzLmVtaXRBbnN3ZXIoKVxuICAgIH1cbiAgfVxuXG4gIHJlc2V0Q2hlY2tib3hlcygpIHtcbiAgICBpZih0aGlzLmZpZWxkRGV0YWlscyAmJiB0aGlzLmZpZWxkRGV0YWlscy52YWx1ZXMpIHtcbiAgICAgIHRoaXMuZmllbGREZXRhaWxzLnZhbHVlcy5mb3JFYWNoKChlOiBhbnkpID0+IHtcbiAgICAgICAgZVsnY2hlY2tlZCddID0gZmFsc2VcbiAgICAgIH0pXG4gICAgfVxuICB9XG5cbiAgc2V0UmF0aW5nKHJhdGluZzogbnVtYmVyKSB7XG4gICAgaWYodGhpcy5hbnN3ZXJDb250cm9sKSB7XG4gICAgICB0aGlzLmFuc3dlckNvbnRyb2wucGF0Y2hWYWx1ZShyYXRpbmcpXG4gICAgICB0aGlzLmVtaXRBbnN3ZXIoKVxuICAgIH1cbiAgfVxuXG4gIGNoZWNrYm94Q2xpY2tlZChldmVudDogYW55LCBpbmRleDogbnVtYmVyKSB7XG4gICAgbGV0IGNoZWNrZWRMaXN0ID0gdGhpcy5hbnN3ZXJDb250cm9sLnZhbHVlID8gdGhpcy5hbnN3ZXJDb250cm9sLnZhbHVlIDogW11cbiAgICBpZihldmVudC5jaGVja2VkKSB7XG4gICAgICBjaGVja2VkTGlzdC5wdXNoKGV2ZW50LnNvdXJjZS52YWx1ZSlcbiAgICB9IGVsc2Uge1xuICAgICAgY2hlY2tlZExpc3QgPSBjaGVja2VkTGlzdC5maWx0ZXIoKGU6IGFueSkgPT4gZSAhPT0gZXZlbnQuc291cmNlLnZhbHVlKVxuICAgIH1cbiAgICBpZih0aGlzLmZpZWxkRGV0YWlscy52YWx1ZXMgJiYgdGhpcy5maWVsZERldGFpbHMudmFsdWVzW2luZGV4XSkge1xuICAgICAgdGhpcy5maWVsZERldGFpbHMudmFsdWVzW2luZGV4XVsnY2hlY2tlZCddID0gZXZlbnQuY2hlY2tlZFxuICAgIH1cbiAgICB0aGlzLmFuc3dlckNvbnRyb2wucGF0Y2hWYWx1ZShjaGVja2VkTGlzdClcbiAgICB0aGlzLmFuc3dlckNvbnRyb2wudXBkYXRlVmFsdWVBbmRWYWxpZGl0eSgpXG4gICAgdGhpcy5xdWVzdGlvbkZvcm0udXBkYXRlVmFsdWVBbmRWYWxpZGl0eSgpXG4gICAgdGhpcy5lbWl0QW5zd2VyKClcbiAgfVxuXG4gIGVtaXRBbnN3ZXIoKSB7XG4gICAgY29uc3QgYW5zd2VyRGV0YWlscyA9IHRoaXMucXVlc3Rpb25Gb3JtLnZhbHVlXG4gICAgdGhpcy5xdWVzdGlvblZhbHVlcy5lbWl0KGFuc3dlckRldGFpbHMpXG4gIH1cbn1cbiIsIjxmb3JtIFtmb3JtR3JvdXBdPVwicXVlc3Rpb25Gb3JtXCIgY2xhc3M9XCJwYi0yIHEtZWxlbWVudCBtYi00IHF1ZXN0aW9uLWNvbnRhaW5lclwiPlxuICAgIDxkaXYgY2xhc3M9XCJmbGV4IGl0ZW1zLXN0YXJ0XCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJmb250LXNlbWlib2xkIG1hcmdpbi1yZW1vdmUgZmxleFwiXG4gICAgICAgICAgICBbbmdDbGFzc109XCJ7J3JlcXVpcmVkJyA6IGZpZWxkRGV0YWlscy5pc1JlcXVpcmVkLCAncGItMyc6IG90aGVyRmllbGRUeXBlLmluY2x1ZGVzKGZpZWxkRGV0YWlscy5maWVsZFR5cGUpfVwiXG4gICAgICAgICAgICBpMThuPVwiVGl0bGUgbGFiZWx8TGFiZWwgd2hpY2ggZXhwbGFpbnMgdGhlIHVzZXIgdG8gZW50ZXIgdGl0bGVcIj5cbiAgICAgICAgICAgIHt7cXVlc3Rpb25Gb3JtLnZhbHVlPy5xdWVzdGlvbn19XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDxuZy1jb250YWluZXIgW25nU3dpdGNoXT1cImZpZWxkRGV0YWlscy5maWVsZFR5cGVcIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiJ2Ryb3Bkb3duJ1wiPlxuICAgICAgICAgICAgPG1hdC1mb3JtLWZpZWxkIGFwcGVhcmFuY2U9XCJvdXRsaW5lXCIgY2xhc3M9XCJ3LWZ1bGxcIj5cbiAgICAgICAgICAgICAgICA8bWF0LXNlbGVjdCBwbGFjZWhvbGRlcj1cIlNlbGVjdC4uLlwiIGZvcm1Db250cm9sTmFtZT1cImFuc3dlclwiPlxuICAgICAgICAgICAgICAgICAgICA8bWF0LW9wdGlvbiB2YWx1ZT1cInt7b2JqLnZhbHVlfX1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgKm5nRm9yPVwiIGxldCBvYmogb2YgZmllbGREZXRhaWxzPy52YWx1ZXNcIj57e29iaj8ua2V5fX08L21hdC1vcHRpb24+XG4gICAgICAgICAgICAgICAgPC9tYXQtc2VsZWN0PlxuICAgICAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidwaG9uZSBudW1iZXInXCI+XG4gICAgICAgICAgICA8bWF0LWZvcm0tZmllbGQgYXBwZWFyYW5jZT1cIm91dGxpbmVcIiBjbGFzcz1cInctZnVsbFwiPlxuICAgICAgICAgICAgICAgIDxpbnB1dCBtYXRJbnB1dCBpMThuLXBsYWNlaG9sZGVyIHBsYWNlaG9sZGVyPVwiVHlwZSBoZXJlLi4uXCIgZm9ybUNvbnRyb2xOYW1lPVwiYW5zd2VyXCIgbWF4bGVuZ3RoPVwiMTBcIiAvPlxuICAgICAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAgICAgICAqbmdJZj1cInF1ZXN0aW9uRm9ybS5jb250cm9scy5hbnN3ZXIudG91Y2hlZCAmJiBxdWVzdGlvbkZvcm0uY29udHJvbHMuYW5zd2VyLmhhc0Vycm9yKCdwYXR0ZXJuJylcIj5cbiAgICAgICAgICAgICAgICA8bWF0LWVycm9yIGNsYXNzPVwibWF0LWVycm9yIG1iLTFcIj5cbiAgICAgICAgICAgICAgICAgICAge3sgJ3Byb2ZpbGVJbmZvLnBsZWFzZUVudGVyVmFsaWRNb2JpbGVOdW1iZXInIHwgdHJhbnNsYXRlIH19XG4gICAgICAgICAgICAgICAgPC9tYXQtZXJyb3I+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidkYXRlJ1wiPlxuICAgICAgICAgICAgPG1hdC1mb3JtLWZpZWxkIGFwcGVhcmFuY2U9XCJvdXRsaW5lXCI+XG4gICAgICAgICAgICAgICAgPGlucHV0IG1hdElucHV0IFttYXREYXRlcGlja2VyXT1cInBpY2tlclwiIGZvcm1Db250cm9sTmFtZT1cImFuc3dlclwiPlxuICAgICAgICAgICAgICAgIDxtYXQtZGF0ZXBpY2tlci10b2dnbGUgbWF0U3VmZml4IFtmb3JdPVwicGlja2VyXCI+PC9tYXQtZGF0ZXBpY2tlci10b2dnbGU+XG4gICAgICAgICAgICAgICAgPG1hdC1kYXRlcGlja2VyICNwaWNrZXI+PC9tYXQtZGF0ZXBpY2tlcj5cbiAgICAgICAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCInYm9vbGVhbidcIj5cbiAgICAgICAgICAgIDxtYXQtcmFkaW8tZ3JvdXAgY2xhc3M9XCJwdC0yXCIgZm9ybUNvbnRyb2xOYW1lPVwiYW5zd2VyXCI+XG4gICAgICAgICAgICAgICAgPG1hdC1yYWRpby1idXR0b24gW3ZhbHVlXT1cInRydWVcIiBjbGFzcz1cInByLTEwIHBiLTJcIj5UcnVlPC9tYXQtcmFkaW8tYnV0dG9uPlxuICAgICAgICAgICAgICAgIDxtYXQtcmFkaW8tYnV0dG9uIFt2YWx1ZV09XCJmYWxzZVwiIGNsYXNzPVwicHItMTAgcGItMlwiPkZhbHNlPC9tYXQtcmFkaW8tYnV0dG9uPlxuICAgICAgICAgICAgPC9tYXQtcmFkaW8tZ3JvdXA+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCInZW1haWwnXCI+XG4gICAgICAgICAgICA8bWF0LWZvcm0tZmllbGQgYXBwZWFyYW5jZT1cIm91dGxpbmVcIiBjbGFzcz1cInctZnVsbFwiPlxuICAgICAgICAgICAgICAgIDxpbnB1dCBtYXRJbnB1dCBpMThuLXBsYWNlaG9sZGVyIHBsYWNlaG9sZGVyPVwiVHlwZSBoZXJlLi4uXCIgZm9ybUNvbnRyb2xOYW1lPVwiYW5zd2VyXCIgLz5cbiAgICAgICAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgICAgICAgKm5nSWY9XCJxdWVzdGlvbkZvcm0uY29udHJvbHMuYW5zd2VyLnRvdWNoZWQgJiYgcXVlc3Rpb25Gb3JtLmNvbnRyb2xzLmFuc3dlci5oYXNFcnJvcigncGF0dGVybicpXCI+XG4gICAgICAgICAgICAgICAgPG1hdC1lcnJvciBjbGFzcz1cIm1hdC1lcnJvciBtYi0xXCI+XG4gICAgICAgICAgICAgICAgICAgIHt7ICdwcm9maWxlSW5mby5pbnZhbGlkRW1haWwnIHwgdHJhbnNsYXRlIH19XG4gICAgICAgICAgICAgICAgPC9tYXQtZXJyb3I+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidyYXRpbmcnXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwicmF0aW5nLWNvbnRhaW5lclwiPlxuICAgICAgICAgICAgICAgIDxtYXQtaWNvbiAqbmdGb3I9XCJsZXQgc3RhciBvZiBzdGFyczsgaW5kZXggYXMgaVwiIGNsYXNzPVwic3RhdC1tYXQtaWNvblwiXG4gICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsgJ2ZpbGxlZCc6IGkgPCBxdWVzdGlvbkZvcm0uY29udHJvbHMuYW5zd2VyLnZhbHVlIH1cIiAoY2xpY2spPVwic2V0UmF0aW5nKGkgKyAxKVwiPlxuICAgICAgICAgICAgICAgICAgICBzdGFyXG4gICAgICAgICAgICAgICAgPC9tYXQtaWNvbj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiJ3RleHQnXCI+XG4gICAgICAgICAgICA8bWF0LWZvcm0tZmllbGQgYXBwZWFyYW5jZT1cIm91dGxpbmVcIiBjbGFzcz1cInctZnVsbFwiPlxuICAgICAgICAgICAgICAgIDxpbnB1dCBtYXRJbnB1dCBpMThuLXBsYWNlaG9sZGVyIHBsYWNlaG9sZGVyPVwiVHlwZSBoZXJlLi4uXCIgZm9ybUNvbnRyb2xOYW1lPVwiYW5zd2VyXCIgLz5cbiAgICAgICAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCIndGV4dGFyZWEnXCI+XG4gICAgICAgICAgICA8bWF0LWZvcm0tZmllbGQgYXBwZWFyYW5jZT1cIm91dGxpbmVcIiBjbGFzcz1cInctZnVsbFwiPlxuICAgICAgICAgICAgICAgIDx0ZXh0YXJlYSBtYXRJbnB1dCBpMThuLXBsYWNlaG9sZGVyIHBsYWNlaG9sZGVyPVwiVHlwZSBoZXJlLi4uXCIgcm93cz1cIjRcIiBjb2xzPVwiNVwiXG4gICAgICAgICAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cImFuc3dlclwiPjwvdGV4dGFyZWE+XG4gICAgICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiJ3JhZGlvJ1wiPlxuICAgICAgICAgICAgPG1hdC1yYWRpby1ncm91cCBjbGFzcz1cInB0LTIgY3VzdG9tXCIgZm9ybUNvbnRyb2xOYW1lPVwiYW5zd2VyXCI+XG4gICAgICAgICAgICAgICAgPG1hdC1yYWRpby1idXR0b24gKm5nRm9yPVwibGV0IG9iaiBvZiBmaWVsZERldGFpbHM/LnZhbHVlc1wiIFt2YWx1ZV09XCJvYmoudmFsdWVcIiBjbGFzcz1cInByLTUgcGItMlwiPlxuICAgICAgICAgICAgICAgICAgICB7eyBvYmoua2V5IH19XG4gICAgICAgICAgICAgICAgPC9tYXQtcmFkaW8tYnV0dG9uPlxuICAgICAgICAgICAgPC9tYXQtcmFkaW8tZ3JvdXA+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCInbnVtZXJpYydcIj5cbiAgICAgICAgICAgIDxtYXQtZm9ybS1maWVsZCBhcHBlYXJhbmNlPVwib3V0bGluZVwiIGNsYXNzPVwidy1mdWxsXCI+XG4gICAgICAgICAgICAgICAgPGlucHV0IG1hdElucHV0IGkxOG4tcGxhY2Vob2xkZXIgcGxhY2Vob2xkZXI9XCJUeXBlIGhlcmUuLi5cIiBmb3JtQ29udHJvbE5hbWU9XCJhbnN3ZXJcIiB0eXBlPVwidGV4dFwiXG4gICAgICAgICAgICAgICAgICAgIG1heGxlbmd0aD1cIjE4XCIgLz5cbiAgICAgICAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCInY2hlY2tib3gnXCI+XG4gICAgICAgICAgICA8c2VjdGlvbiBjbGFzcz1cInB0LTJcIj5cbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBvYmpjdCBvZiBmaWVsZERldGFpbHM/LnZhbHVlczsgbGV0IGkgPSBpbmRleFwiPlxuICAgICAgICAgICAgICAgICAgICA8bWF0LWNoZWNrYm94IFtjaGVja2VkXT1cIm9iamN0LmNoZWNrZWRcIiBbdmFsdWVdPVwib2JqY3QudmFsdWVcIiBjbGFzcz1cInByLTUgcGItMiBjdXN0b21cIlxuICAgICAgICAgICAgICAgICAgICAgICAgKGNoYW5nZSk9XCJjaGVja2JveENsaWNrZWQoJGV2ZW50LCBpKVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAge3sgb2JqY3Qua2V5IH19XG4gICAgICAgICAgICAgICAgICAgIDwvbWF0LWNoZWNrYm94PlxuICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPC9zZWN0aW9uPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJmaWVsZERldGFpbHMubm90QXBwbGljYWJsZVwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwibXQtMlwiPlxuICAgICAgICAgICAgPG1hdC1yYWRpby1ncm91cCBjbGFzcz1cInB0LTJcIiBmb3JtQ29udHJvbE5hbWU9XCJpc05BXCIgKGNoYW5nZSk9XCJzZWN0aW9uQ2hhbmdlKClcIj5cbiAgICAgICAgICAgICAgICA8bWF0LXJhZGlvLWJ1dHRvbiBjbGFzcz1cInByLTEwIHBiLTIgbXktcmFpZG9cIiB2YWx1ZT1cInRydWVcIj5OL0E8L21hdC1yYWRpby1idXR0b24+XG4gICAgICAgICAgICA8L21hdC1yYWRpby1ncm91cD5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9uZy1jb250YWluZXI+XG48L2Zvcm0+Il19
@@ -1,36 +1,36 @@
1
- import { Component, EventEmitter, Input, Output } from '@angular/core';
2
- import { SurveyFormQuestionComponent } from '../survey-form-question/survey-form-question.component';
3
- import { CommonModule } from '@angular/common';
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "@angular/common";
6
- export class SurveyFormSectionComponent {
7
- constructor() {
8
- this.questionValues = new EventEmitter();
9
- }
10
- getField(questionIndex) {
11
- let field = {};
12
- if (this.childFields) {
13
- const filterList = this.childFields.filter((childField) => childField.controlIndex === questionIndex);
14
- field = filterList ? filterList[0] : {};
15
- }
16
- return field;
17
- }
18
- updateQuestionValues(event) {
19
- this.questionValues.emit(event);
20
- }
21
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SurveyFormSectionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
22
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SurveyFormSectionComponent, isStandalone: true, selector: "ws-app-survey-form-section", inputs: { childQuestionsFormArray: "childQuestionsFormArray", childFields: "childFields", sectionField: "sectionField" }, outputs: { questionValues: "questionValues" }, ngImport: i0, template: "<div class=\"section-wrapper\">\r\n <div class=\"section-title\">\r\n {{sectionField?.values[0]?.heading}}\r\n </div>\r\n <div class=\"section-desc text-xs font-normal pt-2\">{{sectionField?.values[0]?.subHeading}}</div>\r\n <hr class=\"opacity-50 mb-0\">\r\n <div class=\"section-content pt-5\">\r\n <ng-container *ngFor=\"let questionForm of childQuestionsFormArray?.controls\">\r\n <ws-app-survey-form-question [questionForm]=\"questionForm\"\r\n [fieldDetails]=\"getField(questionForm.value.questionIndex)\"\r\n (questionValues)=\"updateQuestionValues($event)\"></ws-app-survey-form-question>\r\n </ng-container>\r\n </div>\r\n </div>", styles: [".section-wrapper{background:#1b4ca114;padding:16px 16px 8px;border-radius:8px}.section-title{font-family:Montserrat;font-size:16px;font-weight:600;line-height:19.5px;text-align:left;text-underline-position:from-font;-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none}\n"], dependencies: [{ kind: "component", type: SurveyFormQuestionComponent, selector: "ws-app-survey-form-question", inputs: ["questionForm", "fieldDetails"], outputs: ["questionValues"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] }); }
23
- }
24
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SurveyFormSectionComponent, decorators: [{
25
- type: Component,
26
- args: [{ selector: 'ws-app-survey-form-section', standalone: true, imports: [SurveyFormQuestionComponent, CommonModule], template: "<div class=\"section-wrapper\">\r\n <div class=\"section-title\">\r\n {{sectionField?.values[0]?.heading}}\r\n </div>\r\n <div class=\"section-desc text-xs font-normal pt-2\">{{sectionField?.values[0]?.subHeading}}</div>\r\n <hr class=\"opacity-50 mb-0\">\r\n <div class=\"section-content pt-5\">\r\n <ng-container *ngFor=\"let questionForm of childQuestionsFormArray?.controls\">\r\n <ws-app-survey-form-question [questionForm]=\"questionForm\"\r\n [fieldDetails]=\"getField(questionForm.value.questionIndex)\"\r\n (questionValues)=\"updateQuestionValues($event)\"></ws-app-survey-form-question>\r\n </ng-container>\r\n </div>\r\n </div>", styles: [".section-wrapper{background:#1b4ca114;padding:16px 16px 8px;border-radius:8px}.section-title{font-family:Montserrat;font-size:16px;font-weight:600;line-height:19.5px;text-align:left;text-underline-position:from-font;-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none}\n"] }]
27
- }], propDecorators: { childQuestionsFormArray: [{
28
- type: Input
29
- }], childFields: [{
30
- type: Input
31
- }], sectionField: [{
32
- type: Input
33
- }], questionValues: [{
34
- type: Output
35
- }] } });
36
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VydmV5LWZvcm0tc2VjdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJyYXJ5L3N1bmJpcmQtY2IvdG9jL3NyYy9saWIvY29tcG9uZW50cy9zdXJ2ZXktZm9ybS1zZWN0aW9uL3N1cnZleS1mb3JtLXNlY3Rpb24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicmFyeS9zdW5iaXJkLWNiL3RvYy9zcmMvbGliL2NvbXBvbmVudHMvc3VydmV5LWZvcm0tc2VjdGlvbi9zdXJ2ZXktZm9ybS1zZWN0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFdkUsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sd0RBQXdELENBQUM7QUFDckcsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7QUFTL0MsTUFBTSxPQUFPLDBCQUEwQjtJQVB2QztRQWFZLG1CQUFjLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQTtLQWU5QztJQWJDLFFBQVEsQ0FBQyxhQUFxQjtRQUM1QixJQUFJLEtBQUssR0FBRyxFQUFFLENBQUE7UUFDZCxJQUFHLElBQUksQ0FBQyxXQUFXLEVBQUU7WUFDbkIsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxVQUFlLEVBQUUsRUFBRSxDQUFDLFVBQVUsQ0FBQyxZQUFZLEtBQUssYUFBYSxDQUFDLENBQUE7WUFDMUcsS0FBSyxHQUFHLFVBQVUsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUE7U0FDeEM7UUFDRCxPQUFPLEtBQUssQ0FBQTtJQUNkLENBQUM7SUFFRCxvQkFBb0IsQ0FBQyxLQUFVO1FBQzdCLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFBO0lBQ2pDLENBQUM7K0dBbkJVLDBCQUEwQjttR0FBMUIsMEJBQTBCLCtQQ1p2Qyxtc0JBYVEsd1ZETEksMkJBQTJCLDhJQUFFLFlBQVk7OzRGQUl4QywwQkFBMEI7a0JBUHRDLFNBQVM7K0JBQ0UsNEJBQTRCLGNBQzFCLElBQUksV0FDUCxDQUFDLDJCQUEyQixFQUFFLFlBQVksQ0FBQzs4QkFNM0MsdUJBQXVCO3NCQUEvQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFFSSxjQUFjO3NCQUF2QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRm9ybUFycmF5IH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBTdXJ2ZXlGb3JtUXVlc3Rpb25Db21wb25lbnQgfSBmcm9tICcuLi9zdXJ2ZXktZm9ybS1xdWVzdGlvbi9zdXJ2ZXktZm9ybS1xdWVzdGlvbi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICd3cy1hcHAtc3VydmV5LWZvcm0tc2VjdGlvbicsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbU3VydmV5Rm9ybVF1ZXN0aW9uQ29tcG9uZW50LCBDb21tb25Nb2R1bGVdLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9zdXJ2ZXktZm9ybS1zZWN0aW9uLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9zdXJ2ZXktZm9ybS1zZWN0aW9uLmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIFN1cnZleUZvcm1TZWN0aW9uQ29tcG9uZW50IHtcclxuXHJcbiAgQElucHV0KCkgY2hpbGRRdWVzdGlvbnNGb3JtQXJyYXkhOiBGb3JtQXJyYXlcclxuICBASW5wdXQoKSBjaGlsZEZpZWxkczogYW55XHJcbiAgQElucHV0KCkgc2VjdGlvbkZpZWxkOiBhbnlcclxuXHJcbiAgQE91dHB1dCgpIHF1ZXN0aW9uVmFsdWVzID0gbmV3IEV2ZW50RW1pdHRlcigpXHJcblxyXG4gIGdldEZpZWxkKHF1ZXN0aW9uSW5kZXg6IG51bWJlcikge1xyXG4gICAgbGV0IGZpZWxkID0ge31cclxuICAgIGlmKHRoaXMuY2hpbGRGaWVsZHMpIHtcclxuICAgICAgY29uc3QgZmlsdGVyTGlzdCA9IHRoaXMuY2hpbGRGaWVsZHMuZmlsdGVyKChjaGlsZEZpZWxkOiBhbnkpID0+IGNoaWxkRmllbGQuY29udHJvbEluZGV4ID09PSBxdWVzdGlvbkluZGV4KVxyXG4gICAgICBmaWVsZCA9IGZpbHRlckxpc3QgPyBmaWx0ZXJMaXN0WzBdIDoge31cclxuICAgIH1cclxuICAgIHJldHVybiBmaWVsZFxyXG4gIH1cclxuXHJcbiAgdXBkYXRlUXVlc3Rpb25WYWx1ZXMoZXZlbnQ6IGFueSkge1xyXG4gICAgdGhpcy5xdWVzdGlvblZhbHVlcy5lbWl0KGV2ZW50KVxyXG4gIH1cclxuXHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cInNlY3Rpb24td3JhcHBlclwiPlxyXG4gICAgPGRpdiBjbGFzcz1cInNlY3Rpb24tdGl0bGVcIj5cclxuICAgICAge3tzZWN0aW9uRmllbGQ/LnZhbHVlc1swXT8uaGVhZGluZ319XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgY2xhc3M9XCJzZWN0aW9uLWRlc2MgdGV4dC14cyBmb250LW5vcm1hbCBwdC0yXCI+e3tzZWN0aW9uRmllbGQ/LnZhbHVlc1swXT8uc3ViSGVhZGluZ319PC9kaXY+XHJcbiAgICA8aHIgY2xhc3M9XCJvcGFjaXR5LTUwIG1iLTBcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJzZWN0aW9uLWNvbnRlbnQgcHQtNVwiPlxyXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IHF1ZXN0aW9uRm9ybSBvZiBjaGlsZFF1ZXN0aW9uc0Zvcm1BcnJheT8uY29udHJvbHNcIj5cclxuICAgICAgICAgIDx3cy1hcHAtc3VydmV5LWZvcm0tcXVlc3Rpb24gW3F1ZXN0aW9uRm9ybV09XCJxdWVzdGlvbkZvcm1cIlxyXG4gICAgICAgICAgIFtmaWVsZERldGFpbHNdPVwiZ2V0RmllbGQocXVlc3Rpb25Gb3JtLnZhbHVlLnF1ZXN0aW9uSW5kZXgpXCJcclxuICAgICAgICAgICAocXVlc3Rpb25WYWx1ZXMpPVwidXBkYXRlUXVlc3Rpb25WYWx1ZXMoJGV2ZW50KVwiPjwvd3MtYXBwLXN1cnZleS1mb3JtLXF1ZXN0aW9uPlxyXG4gICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+Il19
1
+ import { Component, EventEmitter, Input, Output } from '@angular/core';
2
+ import { SurveyFormQuestionComponent } from '../survey-form-question/survey-form-question.component';
3
+ import { CommonModule } from '@angular/common';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "@angular/common";
6
+ export class SurveyFormSectionComponent {
7
+ constructor() {
8
+ this.questionValues = new EventEmitter();
9
+ }
10
+ getField(questionIndex) {
11
+ let field = {};
12
+ if (this.childFields) {
13
+ const filterList = this.childFields.filter((childField) => childField.controlIndex === questionIndex);
14
+ field = filterList ? filterList[0] : {};
15
+ }
16
+ return field;
17
+ }
18
+ updateQuestionValues(event) {
19
+ this.questionValues.emit(event);
20
+ }
21
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SurveyFormSectionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
22
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SurveyFormSectionComponent, isStandalone: true, selector: "ws-app-survey-form-section", inputs: { childQuestionsFormArray: "childQuestionsFormArray", childFields: "childFields", sectionField: "sectionField" }, outputs: { questionValues: "questionValues" }, ngImport: i0, template: "<div class=\"section-wrapper\">\n <div class=\"section-title\">\n {{sectionField?.values[0]?.heading}}\n </div>\n <div class=\"section-desc text-xs font-normal pt-2\">{{sectionField?.values[0]?.subHeading}}</div>\n <hr class=\"opacity-50 mb-0\">\n <div class=\"section-content pt-5\">\n <ng-container *ngFor=\"let questionForm of childQuestionsFormArray?.controls\">\n <ws-app-survey-form-question [questionForm]=\"questionForm\"\n [fieldDetails]=\"getField(questionForm.value.questionIndex)\"\n (questionValues)=\"updateQuestionValues($event)\"></ws-app-survey-form-question>\n </ng-container>\n </div>\n </div>", styles: [".section-wrapper{background:#1b4ca114;padding:16px 16px 8px;border-radius:8px}.section-title{font-family:Montserrat;font-size:16px;font-weight:600;line-height:19.5px;text-align:left;text-underline-position:from-font;-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none}\n"], dependencies: [{ kind: "component", type: SurveyFormQuestionComponent, selector: "ws-app-survey-form-question", inputs: ["questionForm", "fieldDetails"], outputs: ["questionValues"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] }); }
23
+ }
24
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SurveyFormSectionComponent, decorators: [{
25
+ type: Component,
26
+ args: [{ selector: 'ws-app-survey-form-section', standalone: true, imports: [SurveyFormQuestionComponent, CommonModule], template: "<div class=\"section-wrapper\">\n <div class=\"section-title\">\n {{sectionField?.values[0]?.heading}}\n </div>\n <div class=\"section-desc text-xs font-normal pt-2\">{{sectionField?.values[0]?.subHeading}}</div>\n <hr class=\"opacity-50 mb-0\">\n <div class=\"section-content pt-5\">\n <ng-container *ngFor=\"let questionForm of childQuestionsFormArray?.controls\">\n <ws-app-survey-form-question [questionForm]=\"questionForm\"\n [fieldDetails]=\"getField(questionForm.value.questionIndex)\"\n (questionValues)=\"updateQuestionValues($event)\"></ws-app-survey-form-question>\n </ng-container>\n </div>\n </div>", styles: [".section-wrapper{background:#1b4ca114;padding:16px 16px 8px;border-radius:8px}.section-title{font-family:Montserrat;font-size:16px;font-weight:600;line-height:19.5px;text-align:left;text-underline-position:from-font;-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none}\n"] }]
27
+ }], propDecorators: { childQuestionsFormArray: [{
28
+ type: Input
29
+ }], childFields: [{
30
+ type: Input
31
+ }], sectionField: [{
32
+ type: Input
33
+ }], questionValues: [{
34
+ type: Output
35
+ }] } });
36
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VydmV5LWZvcm0tc2VjdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJyYXJ5L3N1bmJpcmQtY2IvdG9jL3NyYy9saWIvY29tcG9uZW50cy9zdXJ2ZXktZm9ybS1zZWN0aW9uL3N1cnZleS1mb3JtLXNlY3Rpb24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicmFyeS9zdW5iaXJkLWNiL3RvYy9zcmMvbGliL2NvbXBvbmVudHMvc3VydmV5LWZvcm0tc2VjdGlvbi9zdXJ2ZXktZm9ybS1zZWN0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFdkUsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sd0RBQXdELENBQUM7QUFDckcsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7QUFTL0MsTUFBTSxPQUFPLDBCQUEwQjtJQVB2QztRQWFZLG1CQUFjLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQTtLQWU5QztJQWJDLFFBQVEsQ0FBQyxhQUFxQjtRQUM1QixJQUFJLEtBQUssR0FBRyxFQUFFLENBQUE7UUFDZCxJQUFHLElBQUksQ0FBQyxXQUFXLEVBQUU7WUFDbkIsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxVQUFlLEVBQUUsRUFBRSxDQUFDLFVBQVUsQ0FBQyxZQUFZLEtBQUssYUFBYSxDQUFDLENBQUE7WUFDMUcsS0FBSyxHQUFHLFVBQVUsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUE7U0FDeEM7UUFDRCxPQUFPLEtBQUssQ0FBQTtJQUNkLENBQUM7SUFFRCxvQkFBb0IsQ0FBQyxLQUFVO1FBQzdCLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFBO0lBQ2pDLENBQUM7K0dBbkJVLDBCQUEwQjttR0FBMUIsMEJBQTBCLCtQQ1p2Qyx5cUJBYVEsd1ZETEksMkJBQTJCLDhJQUFFLFlBQVk7OzRGQUl4QywwQkFBMEI7a0JBUHRDLFNBQVM7K0JBQ0UsNEJBQTRCLGNBQzFCLElBQUksV0FDUCxDQUFDLDJCQUEyQixFQUFFLFlBQVksQ0FBQzs4QkFNM0MsdUJBQXVCO3NCQUEvQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFFSSxjQUFjO3NCQUF2QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1BcnJheSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IFN1cnZleUZvcm1RdWVzdGlvbkNvbXBvbmVudCB9IGZyb20gJy4uL3N1cnZleS1mb3JtLXF1ZXN0aW9uL3N1cnZleS1mb3JtLXF1ZXN0aW9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd3cy1hcHAtc3VydmV5LWZvcm0tc2VjdGlvbicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtTdXJ2ZXlGb3JtUXVlc3Rpb25Db21wb25lbnQsIENvbW1vbk1vZHVsZV0sXG4gIHRlbXBsYXRlVXJsOiAnLi9zdXJ2ZXktZm9ybS1zZWN0aW9uLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vc3VydmV5LWZvcm0tc2VjdGlvbi5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIFN1cnZleUZvcm1TZWN0aW9uQ29tcG9uZW50IHtcblxuICBASW5wdXQoKSBjaGlsZFF1ZXN0aW9uc0Zvcm1BcnJheSE6IEZvcm1BcnJheVxuICBASW5wdXQoKSBjaGlsZEZpZWxkczogYW55XG4gIEBJbnB1dCgpIHNlY3Rpb25GaWVsZDogYW55XG5cbiAgQE91dHB1dCgpIHF1ZXN0aW9uVmFsdWVzID0gbmV3IEV2ZW50RW1pdHRlcigpXG5cbiAgZ2V0RmllbGQocXVlc3Rpb25JbmRleDogbnVtYmVyKSB7XG4gICAgbGV0IGZpZWxkID0ge31cbiAgICBpZih0aGlzLmNoaWxkRmllbGRzKSB7XG4gICAgICBjb25zdCBmaWx0ZXJMaXN0ID0gdGhpcy5jaGlsZEZpZWxkcy5maWx0ZXIoKGNoaWxkRmllbGQ6IGFueSkgPT4gY2hpbGRGaWVsZC5jb250cm9sSW5kZXggPT09IHF1ZXN0aW9uSW5kZXgpXG4gICAgICBmaWVsZCA9IGZpbHRlckxpc3QgPyBmaWx0ZXJMaXN0WzBdIDoge31cbiAgICB9XG4gICAgcmV0dXJuIGZpZWxkXG4gIH1cblxuICB1cGRhdGVRdWVzdGlvblZhbHVlcyhldmVudDogYW55KSB7XG4gICAgdGhpcy5xdWVzdGlvblZhbHVlcy5lbWl0KGV2ZW50KVxuICB9XG5cbn1cbiIsIjxkaXYgY2xhc3M9XCJzZWN0aW9uLXdyYXBwZXJcIj5cbiAgICA8ZGl2IGNsYXNzPVwic2VjdGlvbi10aXRsZVwiPlxuICAgICAge3tzZWN0aW9uRmllbGQ/LnZhbHVlc1swXT8uaGVhZGluZ319XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cInNlY3Rpb24tZGVzYyB0ZXh0LXhzIGZvbnQtbm9ybWFsIHB0LTJcIj57e3NlY3Rpb25GaWVsZD8udmFsdWVzWzBdPy5zdWJIZWFkaW5nfX08L2Rpdj5cbiAgICA8aHIgY2xhc3M9XCJvcGFjaXR5LTUwIG1iLTBcIj5cbiAgICA8ZGl2IGNsYXNzPVwic2VjdGlvbi1jb250ZW50IHB0LTVcIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgcXVlc3Rpb25Gb3JtIG9mIGNoaWxkUXVlc3Rpb25zRm9ybUFycmF5Py5jb250cm9sc1wiPlxuICAgICAgICAgIDx3cy1hcHAtc3VydmV5LWZvcm0tcXVlc3Rpb24gW3F1ZXN0aW9uRm9ybV09XCJxdWVzdGlvbkZvcm1cIlxuICAgICAgICAgICBbZmllbGREZXRhaWxzXT1cImdldEZpZWxkKHF1ZXN0aW9uRm9ybS52YWx1ZS5xdWVzdGlvbkluZGV4KVwiXG4gICAgICAgICAgIChxdWVzdGlvblZhbHVlcyk9XCJ1cGRhdGVRdWVzdGlvblZhbHVlcygkZXZlbnQpXCI+PC93cy1hcHAtc3VydmV5LWZvcm0tcXVlc3Rpb24+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvZGl2PlxuICA8L2Rpdj4iXX0=
@@ -1,2 +1,2 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLXRvYy1hbmFseXRpY3MubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJyYXJ5L3N1bmJpcmQtY2IvdG9jL3NyYy9saWIvbW9kZWxzL2FwcC10b2MtYW5hbHl0aWNzLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgbmFtZXNwYWNlIE5zQW5hbHl0aWNzIHtcclxuICBleHBvcnQgaW50ZXJmYWNlIElBbmFseXRpY3NSZXNwb25zZSB7XHJcbiAgICB0b3RhbDogbnVtYmVyXHJcbiAgICBpbmRleGVkT246IHN0cmluZ1xyXG4gICAgdXBkYXRlZE9uOiBzdHJpbmdcclxuICAgIGRldmljZXM6IElPYmpQYWlyW11cclxuICAgIHRyYWluaW5nSG91cnM6IG51bWJlclxyXG4gICAgdW5pcXVlUGFydGljaXBhbnRzOiBJQWN0aXZpdHlPYmpbXVxyXG4gICAgbGV4X2NvdXJzZTogSUNvdXJzZU9ialxyXG4gICAgbGV4X2NvbGxlY3Rpb246IElDb3Vyc2VPYmpcclxuICAgIGxleF9wcm9ncmFtOiBJQ291cnNlT2JqXHJcbiAgICBsZXhfcmVzb3VyY2U6IElDb3Vyc2VPYmpcclxuICAgIHNlYXJjaFJlc3VsdDogSVNlYXJjaE9ialxyXG4gICAgdW5pcXVlUGFydGljaXBhbnRzU3RhZ2luZzogSUFjdGl2aXR5T2JqW11cclxuICAgIGFjdGl2aXR5VHlwZTogSUFjdGl2aXR5T2JqW11cclxuICAgIHBhcnRpY2lwYW50czogSVBhcnRpY2lwYW50UmVzcG9uc2VcclxuICAgIHJlZmluZXJzOiBbXHJcbiAgICAgIHtcclxuICAgICAgICBzZXJ2aWNlTGluZTogSU9ialBhaXJbXTtcclxuICAgICAgfSxcclxuICAgICAge1xyXG4gICAgICAgIG1vZHVsZXNDb21wbGV0ZWQ6IElPYmpQYWlyW107XHJcbiAgICAgIH0sXHJcbiAgICAgIHtcclxuICAgICAgICBzdGFja3M6IElPYmpQYWlyW107XHJcbiAgICAgIH0sXHJcbiAgICAgIHtcclxuICAgICAgICB0b3BpY3M6IElPYmpQYWlyW107XHJcbiAgICAgIH0sXHJcbiAgICAgIHtcclxuICAgICAgICBvZmZlcmluZ01vZGU6IElPYmpQYWlyW107XHJcbiAgICAgIH0sXHJcbiAgICAgIHtcclxuICAgICAgICBpbnRlcmZhY2U6IElPYmpQYWlyW107XHJcbiAgICAgIH0sXHJcbiAgICAgIHtcclxuICAgICAgICBuZXdTZXJ2aWNlTGluZTogSU9ialBhaXJbXTtcclxuICAgICAgfSxcclxuICAgICAge1xyXG4gICAgICAgIGFiY2Q6IElPYmpQYWlyW107XHJcbiAgICAgIH0sXHJcbiAgICAgIHtcclxuICAgICAgICBzdGFja3NDb21wbGV0ZWQ6IElPYmpQYWlyW107XHJcbiAgICAgIH0sXHJcbiAgICAgIHtcclxuICAgICAgICBza2lsbE5hbWU6IElPYmpQYWlyW107XHJcbiAgICAgIH0sXHJcbiAgICAgIHtcclxuICAgICAgICBob3Jpem9uOiBJT2JqUGFpcltdO1xyXG4gICAgICB9LFxyXG4gICAgICB7XHJcbiAgICAgICAgdHJhY2s6IElPYmpQYWlyW107XHJcbiAgICAgIH1cclxuICAgIF1cclxuICB9XHJcblxyXG4gIGV4cG9ydCBpbnRlcmZhY2UgSU9ialBhaXIge1xyXG4gICAga2V5OiBzdHJpbmdcclxuICAgIHZhbHVlOiBudW1iZXJcclxuICB9XHJcblxyXG4gIGV4cG9ydCBpbnRlcmZhY2UgSU9iakNvdW50IHtcclxuICAgIGtleTogc3RyaW5nXHJcbiAgICBjb3VudDogbnVtYmVyXHJcbiAgfVxyXG4gIGV4cG9ydCBpbnRlcmZhY2UgSVBhcnRpY2lwYW50T2JqIHtcclxuICAgIGtleTogc3RyaW5nXHJcbiAgICB2YWx1ZTogSU9ialBhaXJbXVxyXG4gICAgY291bnQ6IG51bWJlclxyXG4gIH1cclxuXHJcbiAgZXhwb3J0IGludGVyZmFjZSBJQWN0aXZpdHlPYmoge1xyXG4gICAga2V5OiBzdHJpbmdcclxuICAgIHVuaXF1ZUNvdW50OiBudW1iZXJcclxuICAgIG90aGVyQ291bnRzOiBJT2JqQ291bnRbXVxyXG4gIH1cclxuXHJcbiAgZXhwb3J0IGludGVyZmFjZSBJU2VhcmNoT2JqIHtcclxuICAgIHJlc3VsdDogSVNlYXJjaFJlc3VsdE9ialtdXHJcbiAgfVxyXG4gIGV4cG9ydCBpbnRlcmZhY2UgSVJlc3VsdE9iaiB7XHJcbiAgICB0aXRsZTogc3RyaW5nXHJcbiAgICBwYXJ0aWNpcGFudHM6IG51bWJlclxyXG4gIH1cclxuICBleHBvcnQgaW50ZXJmYWNlIElTZWFyY2hSZXN1bHRPYmoge1xyXG4gICAgc291cmNlOiBzdHJpbmdbXVxyXG4gICAgdGl0bGU6IHN0cmluZ1xyXG4gICAgY291cnNlQ29kZTogc3RyaW5nXHJcbiAgICBzdGF0dXM6IHN0cmluZ1xyXG4gICAgb2ZmZXJpbmdNb2RlOiBzdHJpbmdbXVxyXG4gICAgbGV4X2NvbGxlY3Rpb246IHN0cmluZ1xyXG4gICAgbGV4X2NvdXJzZTogc3RyaW5nXHJcbiAgICBsZXhfcHJvZ3JhbTogc3RyaW5nXHJcbiAgICBsZXhfcmVzb3VyY2U6IHN0cmluZ1xyXG4gICAgb2ZmZXJpbmdzOiBudW1iZXJcclxuICAgIHBhcnRpY2lwYW50czogbnVtYmVyXHJcbiAgICBpbnN0cnVjdG9yczogSUluc3RydWN0b3JPYmpbXVxyXG4gIH1cclxuXHJcbiAgZXhwb3J0IGludGVyZmFjZSBJQ291cnNlT2JqIHtcclxuICAgIHJlc3VsdDogSVJlc3VsdE9ialtdXHJcbiAgfVxyXG4gIGV4cG9ydCBpbnRlcmZhY2UgSU9uc2l0ZU9mZnNob3JlT2JqIHtcclxuICAgIGtleTogc3RyaW5nXHJcbiAgICB0cmFpbmluZ0hvdXJzOiBudW1iZXJcclxuICAgIHZhbHVlOiBJT2JqUGFpcltdXHJcbiAgICBjb3VudDogbnVtYmVyXHJcbiAgfVxyXG5cclxuICBleHBvcnQgaW50ZXJmYWNlIElJbnN0cnVjdG9yT2JqIHtcclxuICAgIGtleTogc3RyaW5nXHJcbiAgICBkb2NfY291bnQ6IG51bWJlclxyXG4gIH1cclxuXHJcbiAgZXhwb3J0IGludGVyZmFjZSBJUGFydGljaXBhbnRSZXNwb25zZSB7XHJcbiAgICBjb3VudHJ5OiBJUGFydGljaXBhbnRPYmpbXVxyXG4gICAgZHU6IElQYXJ0aWNpcGFudE9ialtdXHJcbiAgICBjdTogSVBhcnRpY2lwYW50T2JqW11cclxuICAgIGpsOiBJUGFydGljaXBhbnRPYmpbXVxyXG4gICAgb3ZlcmFsbFBhcnRpY2lwYW50czogSU9ialBhaXJbXVxyXG4gICAgY3VUeXBlOiBJUGFydGljaXBhbnRPYmpbXVxyXG4gICAgcHU6IElQYXJ0aWNpcGFudE9ialtdXHJcbiAgICBvbnNpdGVPZmZzaG9yZUluZGljYXRvcjogSU9uc2l0ZU9mZnNob3JlT2JqW11cclxuICAgIGxvY2F0aW9uOiBJUGFydGljaXBhbnRPYmpbXVxyXG4gICAgcHVTQUxTOiBJUGFydGljaXBhbnRPYmpbXVxyXG4gICAgaWJ1OiBJUGFydGljaXBhbnRPYmpbXVxyXG4gICAgYWNjb3VudDogSVBhcnRpY2lwYW50T2JqW11cclxuICAgIFtrZXk6IHN0cmluZ106IGFueVxyXG4gIH1cclxuXHJcbiAgZXhwb3J0IGludGVyZmFjZSBJQW5hbHl0aWNzIHtcclxuICAgIGVuYWJsZWQ6IGJvb2xlYW5cclxuICAgIGF2YWlsYWJsZTogYm9vbGVhblxyXG4gICAgY291cnNlQW5hbHl0aWNzQ2xpZW50OiBib29sZWFuXHJcbiAgICBjb3Vyc2VBbmFseXRpY3M6IGJvb2xlYW5cclxuICB9XHJcbn1cclxuZXhwb3J0IG5hbWVzcGFjZSBOc0NvdXJzZUFuYWx5dGljcyB7XHJcbiAgZXhwb3J0IGludGVyZmFjZSBJQ291cnNlQW5hbHl0aWNzRGF0YSB7XHJcbiAgICBkYXlfd2lzZV91c2VyczogSUJhckNoYXJ0RGF0YVtdXHJcbiAgICBhdmdfdGltZV9zcGVudDogbnVtYmVyXHJcbiAgICBoaXRzOiBudW1iZXJcclxuICAgIHVzZXJDb3VudDogbnVtYmVyXHJcbiAgICBjaXR5OiBJQ2hhcnREYXRhW11cclxuICAgIGRlcGFydG1lbnQ6IElDaGFydERhdGFbXVxyXG4gICAgZGV2aWNlOiBJQ2hhcnREYXRhW11cclxuICAgIFtrZXk6IHN0cmluZ106IGFueVxyXG4gIH1cclxuXHJcbiAgZXhwb3J0IGludGVyZmFjZSBJQ2hhcnREYXRhIHtcclxuICAgIGtleTogc3RyaW5nXHJcbiAgICBkb2NfY291bnQ6IG51bWJlclxyXG4gICAgdG90YWxfaGl0czogbnVtYmVyXHJcbiAgfVxyXG5cclxuICBleHBvcnQgaW50ZXJmYWNlIElCYXJDaGFydERhdGEge1xyXG4gICAga2V5X2FzX3N0cmluZzogc3RyaW5nXHJcbiAgICBrZXk6IG51bWJlclxyXG4gICAgZG9jX2NvdW50OiBudW1iZXJcclxuICAgIGhpdHNfY291bnQ6IG51bWJlclxyXG4gIH1cclxufVxyXG4iXX0=
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLXRvYy1hbmFseXRpY3MubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJyYXJ5L3N1bmJpcmQtY2IvdG9jL3NyYy9saWIvbW9kZWxzL2FwcC10b2MtYW5hbHl0aWNzLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgbmFtZXNwYWNlIE5zQW5hbHl0aWNzIHtcbiAgZXhwb3J0IGludGVyZmFjZSBJQW5hbHl0aWNzUmVzcG9uc2Uge1xuICAgIHRvdGFsOiBudW1iZXJcbiAgICBpbmRleGVkT246IHN0cmluZ1xuICAgIHVwZGF0ZWRPbjogc3RyaW5nXG4gICAgZGV2aWNlczogSU9ialBhaXJbXVxuICAgIHRyYWluaW5nSG91cnM6IG51bWJlclxuICAgIHVuaXF1ZVBhcnRpY2lwYW50czogSUFjdGl2aXR5T2JqW11cbiAgICBsZXhfY291cnNlOiBJQ291cnNlT2JqXG4gICAgbGV4X2NvbGxlY3Rpb246IElDb3Vyc2VPYmpcbiAgICBsZXhfcHJvZ3JhbTogSUNvdXJzZU9ialxuICAgIGxleF9yZXNvdXJjZTogSUNvdXJzZU9ialxuICAgIHNlYXJjaFJlc3VsdDogSVNlYXJjaE9ialxuICAgIHVuaXF1ZVBhcnRpY2lwYW50c1N0YWdpbmc6IElBY3Rpdml0eU9ialtdXG4gICAgYWN0aXZpdHlUeXBlOiBJQWN0aXZpdHlPYmpbXVxuICAgIHBhcnRpY2lwYW50czogSVBhcnRpY2lwYW50UmVzcG9uc2VcbiAgICByZWZpbmVyczogW1xuICAgICAge1xuICAgICAgICBzZXJ2aWNlTGluZTogSU9ialBhaXJbXTtcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG1vZHVsZXNDb21wbGV0ZWQ6IElPYmpQYWlyW107XG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBzdGFja3M6IElPYmpQYWlyW107XG4gICAgICB9LFxuICAgICAge1xuICAgICAgICB0b3BpY3M6IElPYmpQYWlyW107XG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBvZmZlcmluZ01vZGU6IElPYmpQYWlyW107XG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBpbnRlcmZhY2U6IElPYmpQYWlyW107XG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuZXdTZXJ2aWNlTGluZTogSU9ialBhaXJbXTtcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGFiY2Q6IElPYmpQYWlyW107XG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBzdGFja3NDb21wbGV0ZWQ6IElPYmpQYWlyW107XG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBza2lsbE5hbWU6IElPYmpQYWlyW107XG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBob3Jpem9uOiBJT2JqUGFpcltdO1xuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgdHJhY2s6IElPYmpQYWlyW107XG4gICAgICB9XG4gICAgXVxuICB9XG5cbiAgZXhwb3J0IGludGVyZmFjZSBJT2JqUGFpciB7XG4gICAga2V5OiBzdHJpbmdcbiAgICB2YWx1ZTogbnVtYmVyXG4gIH1cblxuICBleHBvcnQgaW50ZXJmYWNlIElPYmpDb3VudCB7XG4gICAga2V5OiBzdHJpbmdcbiAgICBjb3VudDogbnVtYmVyXG4gIH1cbiAgZXhwb3J0IGludGVyZmFjZSBJUGFydGljaXBhbnRPYmoge1xuICAgIGtleTogc3RyaW5nXG4gICAgdmFsdWU6IElPYmpQYWlyW11cbiAgICBjb3VudDogbnVtYmVyXG4gIH1cblxuICBleHBvcnQgaW50ZXJmYWNlIElBY3Rpdml0eU9iaiB7XG4gICAga2V5OiBzdHJpbmdcbiAgICB1bmlxdWVDb3VudDogbnVtYmVyXG4gICAgb3RoZXJDb3VudHM6IElPYmpDb3VudFtdXG4gIH1cblxuICBleHBvcnQgaW50ZXJmYWNlIElTZWFyY2hPYmoge1xuICAgIHJlc3VsdDogSVNlYXJjaFJlc3VsdE9ialtdXG4gIH1cbiAgZXhwb3J0IGludGVyZmFjZSBJUmVzdWx0T2JqIHtcbiAgICB0aXRsZTogc3RyaW5nXG4gICAgcGFydGljaXBhbnRzOiBudW1iZXJcbiAgfVxuICBleHBvcnQgaW50ZXJmYWNlIElTZWFyY2hSZXN1bHRPYmoge1xuICAgIHNvdXJjZTogc3RyaW5nW11cbiAgICB0aXRsZTogc3RyaW5nXG4gICAgY291cnNlQ29kZTogc3RyaW5nXG4gICAgc3RhdHVzOiBzdHJpbmdcbiAgICBvZmZlcmluZ01vZGU6IHN0cmluZ1tdXG4gICAgbGV4X2NvbGxlY3Rpb246IHN0cmluZ1xuICAgIGxleF9jb3Vyc2U6IHN0cmluZ1xuICAgIGxleF9wcm9ncmFtOiBzdHJpbmdcbiAgICBsZXhfcmVzb3VyY2U6IHN0cmluZ1xuICAgIG9mZmVyaW5nczogbnVtYmVyXG4gICAgcGFydGljaXBhbnRzOiBudW1iZXJcbiAgICBpbnN0cnVjdG9yczogSUluc3RydWN0b3JPYmpbXVxuICB9XG5cbiAgZXhwb3J0IGludGVyZmFjZSBJQ291cnNlT2JqIHtcbiAgICByZXN1bHQ6IElSZXN1bHRPYmpbXVxuICB9XG4gIGV4cG9ydCBpbnRlcmZhY2UgSU9uc2l0ZU9mZnNob3JlT2JqIHtcbiAgICBrZXk6IHN0cmluZ1xuICAgIHRyYWluaW5nSG91cnM6IG51bWJlclxuICAgIHZhbHVlOiBJT2JqUGFpcltdXG4gICAgY291bnQ6IG51bWJlclxuICB9XG5cbiAgZXhwb3J0IGludGVyZmFjZSBJSW5zdHJ1Y3Rvck9iaiB7XG4gICAga2V5OiBzdHJpbmdcbiAgICBkb2NfY291bnQ6IG51bWJlclxuICB9XG5cbiAgZXhwb3J0IGludGVyZmFjZSBJUGFydGljaXBhbnRSZXNwb25zZSB7XG4gICAgY291bnRyeTogSVBhcnRpY2lwYW50T2JqW11cbiAgICBkdTogSVBhcnRpY2lwYW50T2JqW11cbiAgICBjdTogSVBhcnRpY2lwYW50T2JqW11cbiAgICBqbDogSVBhcnRpY2lwYW50T2JqW11cbiAgICBvdmVyYWxsUGFydGljaXBhbnRzOiBJT2JqUGFpcltdXG4gICAgY3VUeXBlOiBJUGFydGljaXBhbnRPYmpbXVxuICAgIHB1OiBJUGFydGljaXBhbnRPYmpbXVxuICAgIG9uc2l0ZU9mZnNob3JlSW5kaWNhdG9yOiBJT25zaXRlT2Zmc2hvcmVPYmpbXVxuICAgIGxvY2F0aW9uOiBJUGFydGljaXBhbnRPYmpbXVxuICAgIHB1U0FMUzogSVBhcnRpY2lwYW50T2JqW11cbiAgICBpYnU6IElQYXJ0aWNpcGFudE9ialtdXG4gICAgYWNjb3VudDogSVBhcnRpY2lwYW50T2JqW11cbiAgICBba2V5OiBzdHJpbmddOiBhbnlcbiAgfVxuXG4gIGV4cG9ydCBpbnRlcmZhY2UgSUFuYWx5dGljcyB7XG4gICAgZW5hYmxlZDogYm9vbGVhblxuICAgIGF2YWlsYWJsZTogYm9vbGVhblxuICAgIGNvdXJzZUFuYWx5dGljc0NsaWVudDogYm9vbGVhblxuICAgIGNvdXJzZUFuYWx5dGljczogYm9vbGVhblxuICB9XG59XG5leHBvcnQgbmFtZXNwYWNlIE5zQ291cnNlQW5hbHl0aWNzIHtcbiAgZXhwb3J0IGludGVyZmFjZSBJQ291cnNlQW5hbHl0aWNzRGF0YSB7XG4gICAgZGF5X3dpc2VfdXNlcnM6IElCYXJDaGFydERhdGFbXVxuICAgIGF2Z190aW1lX3NwZW50OiBudW1iZXJcbiAgICBoaXRzOiBudW1iZXJcbiAgICB1c2VyQ291bnQ6IG51bWJlclxuICAgIGNpdHk6IElDaGFydERhdGFbXVxuICAgIGRlcGFydG1lbnQ6IElDaGFydERhdGFbXVxuICAgIGRldmljZTogSUNoYXJ0RGF0YVtdXG4gICAgW2tleTogc3RyaW5nXTogYW55XG4gIH1cblxuICBleHBvcnQgaW50ZXJmYWNlIElDaGFydERhdGEge1xuICAgIGtleTogc3RyaW5nXG4gICAgZG9jX2NvdW50OiBudW1iZXJcbiAgICB0b3RhbF9oaXRzOiBudW1iZXJcbiAgfVxuXG4gIGV4cG9ydCBpbnRlcmZhY2UgSUJhckNoYXJ0RGF0YSB7XG4gICAga2V5X2FzX3N0cmluZzogc3RyaW5nXG4gICAga2V5OiBudW1iZXJcbiAgICBkb2NfY291bnQ6IG51bWJlclxuICAgIGhpdHNfY291bnQ6IG51bWJlclxuICB9XG59XG4iXX0=