vcomply-workflow-engine 0.2.2 → 1.0.2

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 (507) hide show
  1. package/bundles/vcomply-workflow-engine.umd.js +6561 -171
  2. package/bundles/vcomply-workflow-engine.umd.js.map +1 -1
  3. package/esm2015/lib/add-multiple-responsibility/add-multiple-responsibility.component.js +18 -25
  4. package/esm2015/lib/add-multiple-responsibility/add-multiple-responsibility.component.ngfactory.js +2 -2
  5. package/esm2015/lib/add-multiple-risk/add-multiple-risk.component.js +1 -1
  6. package/esm2015/lib/log-an-issue/log-an-issue.component.js +1 -1
  7. package/esm2015/lib/sharedComponents/assessment-editor/components/add-logic/add-logic.component.js +333 -0
  8. package/esm2015/lib/sharedComponents/assessment-editor/components/add-logic/add-logic.component.ngfactory.js +160 -0
  9. package/esm2015/lib/sharedComponents/assessment-editor/components/add-logic/add-logic.component.ngsummary.json +1 -0
  10. package/esm2015/lib/sharedComponents/assessment-editor/components/add-page-details/add-page-details.component.js +73 -0
  11. package/esm2015/lib/sharedComponents/assessment-editor/components/add-page-details/add-page-details.component.ngfactory.js +39 -0
  12. package/esm2015/lib/sharedComponents/assessment-editor/components/add-page-details/add-page-details.component.ngsummary.json +1 -0
  13. package/esm2015/lib/sharedComponents/assessment-editor/components/add-response-set-popup/add-response-set-popup.component.js +27 -0
  14. package/esm2015/lib/sharedComponents/assessment-editor/components/add-response-set-popup/add-response-set-popup.component.ngfactory.js +153 -0
  15. package/esm2015/lib/sharedComponents/assessment-editor/components/add-response-set-popup/add-response-set-popup.component.ngsummary.json +1 -0
  16. package/esm2015/lib/sharedComponents/assessment-editor/components/add-segment-popup/add-segment-popup.component.js +116 -0
  17. package/esm2015/lib/sharedComponents/assessment-editor/components/add-segment-popup/add-segment-popup.component.ngfactory.js +116 -0
  18. package/esm2015/lib/sharedComponents/assessment-editor/components/add-segment-popup/add-segment-popup.component.ngsummary.json +1 -0
  19. package/esm2015/lib/sharedComponents/assessment-editor/components/assessment-settings/assessment-settings.component.js +165 -0
  20. package/esm2015/lib/sharedComponents/assessment-editor/components/assessment-settings/assessment-settings.component.ngfactory.js +85 -0
  21. package/esm2015/lib/sharedComponents/assessment-editor/components/assessment-settings/assessment-settings.component.ngsummary.json +1 -0
  22. package/esm2015/lib/sharedComponents/assessment-editor/components/build/build.module.js +71 -0
  23. package/esm2015/lib/sharedComponents/assessment-editor/components/build/build.module.ngfactory.js +17 -0
  24. package/esm2015/lib/sharedComponents/assessment-editor/components/build/build.module.ngsummary.json +1 -0
  25. package/esm2015/lib/sharedComponents/assessment-editor/components/build/checkbox/checkbox.component.js +35 -0
  26. package/esm2015/lib/sharedComponents/assessment-editor/components/build/checkbox/checkbox.component.ngfactory.js +89 -0
  27. package/esm2015/lib/sharedComponents/assessment-editor/components/build/checkbox/checkbox.component.ngsummary.json +1 -0
  28. package/esm2015/lib/sharedComponents/assessment-editor/components/build/choice-settings-panel/choice-settings-panel.component.js +66 -0
  29. package/esm2015/lib/sharedComponents/assessment-editor/components/build/choice-settings-panel/choice-settings-panel.component.ngfactory.js +72 -0
  30. package/esm2015/lib/sharedComponents/assessment-editor/components/build/choice-settings-panel/choice-settings-panel.component.ngsummary.json +1 -0
  31. package/esm2015/lib/sharedComponents/assessment-editor/components/build/date-time/date-time.component.js +18 -0
  32. package/esm2015/lib/sharedComponents/assessment-editor/components/build/date-time/date-time.component.ngfactory.js +51 -0
  33. package/esm2015/lib/sharedComponents/assessment-editor/components/build/date-time/date-time.component.ngsummary.json +1 -0
  34. package/esm2015/lib/sharedComponents/assessment-editor/components/build/dropdown/dropdown.component.js +35 -0
  35. package/esm2015/lib/sharedComponents/assessment-editor/components/build/dropdown/dropdown.component.ngfactory.js +104 -0
  36. package/esm2015/lib/sharedComponents/assessment-editor/components/build/dropdown/dropdown.component.ngsummary.json +1 -0
  37. package/esm2015/lib/sharedComponents/assessment-editor/components/build/image-choice/image-choice.component.js +15 -0
  38. package/esm2015/lib/sharedComponents/assessment-editor/components/build/image-choice/image-choice.component.ngfactory.js +20 -0
  39. package/esm2015/lib/sharedComponents/assessment-editor/components/build/image-choice/image-choice.component.ngsummary.json +1 -0
  40. package/esm2015/lib/sharedComponents/assessment-editor/components/build/matrix-dropdown/matrix-dropdown.component.js +15 -0
  41. package/esm2015/lib/sharedComponents/assessment-editor/components/build/matrix-dropdown/matrix-dropdown.component.ngfactory.js +17 -0
  42. package/esm2015/lib/sharedComponents/assessment-editor/components/build/matrix-dropdown/matrix-dropdown.component.ngsummary.json +1 -0
  43. package/esm2015/lib/sharedComponents/assessment-editor/components/build/matrix-rating-scale/matrix-rating-scale.component.js +15 -0
  44. package/esm2015/lib/sharedComponents/assessment-editor/components/build/matrix-rating-scale/matrix-rating-scale.component.ngfactory.js +17 -0
  45. package/esm2015/lib/sharedComponents/assessment-editor/components/build/matrix-rating-scale/matrix-rating-scale.component.ngsummary.json +1 -0
  46. package/esm2015/lib/sharedComponents/assessment-editor/components/build/multiple-choice/multiple-choice.component.js +35 -0
  47. package/esm2015/lib/sharedComponents/assessment-editor/components/build/multiple-choice/multiple-choice.component.ngfactory.js +104 -0
  48. package/esm2015/lib/sharedComponents/assessment-editor/components/build/multiple-choice/multiple-choice.component.ngsummary.json +1 -0
  49. package/esm2015/lib/sharedComponents/assessment-editor/components/build/multiple-textbox/multiple-textbox.component.js +15 -0
  50. package/esm2015/lib/sharedComponents/assessment-editor/components/build/multiple-textbox/multiple-textbox.component.ngfactory.js +17 -0
  51. package/esm2015/lib/sharedComponents/assessment-editor/components/build/multiple-textbox/multiple-textbox.component.ngsummary.json +1 -0
  52. package/esm2015/lib/sharedComponents/assessment-editor/components/build/ranking/ranking.component.js +15 -0
  53. package/esm2015/lib/sharedComponents/assessment-editor/components/build/ranking/ranking.component.ngfactory.js +17 -0
  54. package/esm2015/lib/sharedComponents/assessment-editor/components/build/ranking/ranking.component.ngsummary.json +1 -0
  55. package/esm2015/lib/sharedComponents/assessment-editor/components/build/slider/slider.component.js +15 -0
  56. package/esm2015/lib/sharedComponents/assessment-editor/components/build/slider/slider.component.ngfactory.js +17 -0
  57. package/esm2015/lib/sharedComponents/assessment-editor/components/build/slider/slider.component.ngsummary.json +1 -0
  58. package/esm2015/lib/sharedComponents/assessment-editor/components/build/star-rating/star-rating.component.js +26 -0
  59. package/esm2015/lib/sharedComponents/assessment-editor/components/build/star-rating/star-rating.component.ngfactory.js +60 -0
  60. package/esm2015/lib/sharedComponents/assessment-editor/components/build/star-rating/star-rating.component.ngsummary.json +1 -0
  61. package/esm2015/lib/sharedComponents/assessment-editor/components/build/thank-you/thank-you.component.js +15 -0
  62. package/esm2015/lib/sharedComponents/assessment-editor/components/build/thank-you/thank-you.component.ngfactory.js +17 -0
  63. package/esm2015/lib/sharedComponents/assessment-editor/components/build/thank-you/thank-you.component.ngsummary.json +1 -0
  64. package/esm2015/lib/sharedComponents/assessment-editor/components/build/weightage-selector/weightage-selector.component.js +55 -0
  65. package/esm2015/lib/sharedComponents/assessment-editor/components/build/weightage-selector/weightage-selector.component.ngfactory.js +51 -0
  66. package/esm2015/lib/sharedComponents/assessment-editor/components/build/weightage-selector/weightage-selector.component.ngsummary.json +1 -0
  67. package/esm2015/lib/sharedComponents/assessment-editor/components/build/welcome/welcome.component.js +15 -0
  68. package/esm2015/lib/sharedComponents/assessment-editor/components/build/welcome/welcome.component.ngfactory.js +17 -0
  69. package/esm2015/lib/sharedComponents/assessment-editor/components/build/welcome/welcome.component.ngsummary.json +1 -0
  70. package/esm2015/lib/sharedComponents/assessment-editor/components/editor-wrapper/editor-wrapper.component.js +152 -0
  71. package/esm2015/lib/sharedComponents/assessment-editor/components/editor-wrapper/editor-wrapper.component.ngfactory.js +205 -0
  72. package/esm2015/lib/sharedComponents/assessment-editor/components/editor-wrapper/editor-wrapper.component.ngsummary.json +1 -0
  73. package/esm2015/lib/sharedComponents/assessment-editor/components/errorInterface/error.js +2 -0
  74. package/esm2015/lib/sharedComponents/assessment-editor/components/errorInterface/error.ngsummary.json +1 -0
  75. package/esm2015/lib/sharedComponents/assessment-editor/components/errorInterface/question.js +2 -0
  76. package/esm2015/lib/sharedComponents/assessment-editor/components/errorInterface/question.ngsummary.json +1 -0
  77. package/esm2015/lib/sharedComponents/assessment-editor/components/errorInterface/validateStructure.js +2 -0
  78. package/esm2015/lib/sharedComponents/assessment-editor/components/errorInterface/validateStructure.ngsummary.json +1 -0
  79. package/esm2015/lib/sharedComponents/assessment-editor/components/logic/logic.component.js +100 -0
  80. package/esm2015/lib/sharedComponents/assessment-editor/components/logic/logic.component.ngfactory.js +119 -0
  81. package/esm2015/lib/sharedComponents/assessment-editor/components/logic/logic.component.ngsummary.json +1 -0
  82. package/esm2015/lib/sharedComponents/assessment-editor/components/logic-questions/logic-checkbox/logic-checkbox.component.js +24 -0
  83. package/esm2015/lib/sharedComponents/assessment-editor/components/logic-questions/logic-checkbox/logic-checkbox.component.ngfactory.js +59 -0
  84. package/esm2015/lib/sharedComponents/assessment-editor/components/logic-questions/logic-checkbox/logic-checkbox.component.ngsummary.json +1 -0
  85. package/esm2015/lib/sharedComponents/assessment-editor/components/logic-questions/logic-comment-box/logic-comment-box.component.js +15 -0
  86. package/esm2015/lib/sharedComponents/assessment-editor/components/logic-questions/logic-comment-box/logic-comment-box.component.ngfactory.js +17 -0
  87. package/esm2015/lib/sharedComponents/assessment-editor/components/logic-questions/logic-comment-box/logic-comment-box.component.ngsummary.json +1 -0
  88. package/esm2015/lib/sharedComponents/assessment-editor/components/logic-questions/logic-date-time/logic-date-time.component.js +37 -0
  89. package/esm2015/lib/sharedComponents/assessment-editor/components/logic-questions/logic-date-time/logic-date-time.component.ngfactory.js +105 -0
  90. package/esm2015/lib/sharedComponents/assessment-editor/components/logic-questions/logic-date-time/logic-date-time.component.ngsummary.json +1 -0
  91. package/esm2015/lib/sharedComponents/assessment-editor/components/logic-questions/logic-dropdown/logic-dropdown.component.js +31 -0
  92. package/esm2015/lib/sharedComponents/assessment-editor/components/logic-questions/logic-dropdown/logic-dropdown.component.ngfactory.js +22 -0
  93. package/esm2015/lib/sharedComponents/assessment-editor/components/logic-questions/logic-dropdown/logic-dropdown.component.ngsummary.json +1 -0
  94. package/esm2015/lib/sharedComponents/assessment-editor/components/logic-questions/logic-image-choice/logic-image-choice.component.js +15 -0
  95. package/esm2015/lib/sharedComponents/assessment-editor/components/logic-questions/logic-image-choice/logic-image-choice.component.ngfactory.js +37 -0
  96. package/esm2015/lib/sharedComponents/assessment-editor/components/logic-questions/logic-image-choice/logic-image-choice.component.ngsummary.json +1 -0
  97. package/esm2015/lib/sharedComponents/assessment-editor/components/logic-questions/logic-multiple-choice/logic-multiple-choice.component.js +24 -0
  98. package/esm2015/lib/sharedComponents/assessment-editor/components/logic-questions/logic-multiple-choice/logic-multiple-choice.component.ngfactory.js +59 -0
  99. package/esm2015/lib/sharedComponents/assessment-editor/components/logic-questions/logic-multiple-choice/logic-multiple-choice.component.ngsummary.json +1 -0
  100. package/esm2015/lib/sharedComponents/assessment-editor/components/logic-questions/logic-multiple-textbox/logic-multiple-textbox.component.js +15 -0
  101. package/esm2015/lib/sharedComponents/assessment-editor/components/logic-questions/logic-multiple-textbox/logic-multiple-textbox.component.ngfactory.js +35 -0
  102. package/esm2015/lib/sharedComponents/assessment-editor/components/logic-questions/logic-multiple-textbox/logic-multiple-textbox.component.ngsummary.json +1 -0
  103. package/esm2015/lib/sharedComponents/assessment-editor/components/logic-questions/logic-questions.module.js +64 -0
  104. package/esm2015/lib/sharedComponents/assessment-editor/components/logic-questions/logic-questions.module.ngfactory.js +21 -0
  105. package/esm2015/lib/sharedComponents/assessment-editor/components/logic-questions/logic-questions.module.ngsummary.json +1 -0
  106. package/esm2015/lib/sharedComponents/assessment-editor/components/logic-questions/logic-ranking/logic-ranking.component.js +15 -0
  107. package/esm2015/lib/sharedComponents/assessment-editor/components/logic-questions/logic-ranking/logic-ranking.component.ngfactory.js +36 -0
  108. package/esm2015/lib/sharedComponents/assessment-editor/components/logic-questions/logic-ranking/logic-ranking.component.ngsummary.json +1 -0
  109. package/esm2015/lib/sharedComponents/assessment-editor/components/logic-questions/logic-single-textbox/logic-single-textbox.component.js +24 -0
  110. package/esm2015/lib/sharedComponents/assessment-editor/components/logic-questions/logic-single-textbox/logic-single-textbox.component.ngfactory.js +36 -0
  111. package/esm2015/lib/sharedComponents/assessment-editor/components/logic-questions/logic-single-textbox/logic-single-textbox.component.ngsummary.json +1 -0
  112. package/esm2015/lib/sharedComponents/assessment-editor/components/logic-questions/logic-slider/logic-slider.component.js +15 -0
  113. package/esm2015/lib/sharedComponents/assessment-editor/components/logic-questions/logic-slider/logic-slider.component.ngfactory.js +17 -0
  114. package/esm2015/lib/sharedComponents/assessment-editor/components/logic-questions/logic-slider/logic-slider.component.ngsummary.json +1 -0
  115. package/esm2015/lib/sharedComponents/assessment-editor/components/logic-questions/logic-star-rating/logic-star-rating.component.js +15 -0
  116. package/esm2015/lib/sharedComponents/assessment-editor/components/logic-questions/logic-star-rating/logic-star-rating.component.ngfactory.js +40 -0
  117. package/esm2015/lib/sharedComponents/assessment-editor/components/logic-questions/logic-star-rating/logic-star-rating.component.ngsummary.json +1 -0
  118. package/esm2015/lib/sharedComponents/assessment-editor/components/move/move.component.js +95 -0
  119. package/esm2015/lib/sharedComponents/assessment-editor/components/move/move.component.ngfactory.js +102 -0
  120. package/esm2015/lib/sharedComponents/assessment-editor/components/move/move.component.ngsummary.json +1 -0
  121. package/esm2015/lib/sharedComponents/assessment-editor/components/page-header/page-header.component.js +22 -0
  122. package/esm2015/lib/sharedComponents/assessment-editor/components/page-header/page-header.component.ngfactory.js +23 -0
  123. package/esm2015/lib/sharedComponents/assessment-editor/components/page-header/page-header.component.ngsummary.json +1 -0
  124. package/esm2015/lib/sharedComponents/assessment-editor/components/pipes/current-page-question.pipe.js +18 -0
  125. package/esm2015/lib/sharedComponents/assessment-editor/components/pipes/current-page-question.pipe.ngsummary.json +1 -0
  126. package/esm2015/lib/sharedComponents/assessment-editor/components/pipes/error-message.pipe.js +23 -0
  127. package/esm2015/lib/sharedComponents/assessment-editor/components/pipes/error-message.pipe.ngsummary.json +1 -0
  128. package/esm2015/lib/sharedComponents/assessment-editor/components/pipes/formatter.pipe.js +17 -0
  129. package/esm2015/lib/sharedComponents/assessment-editor/components/pipes/formatter.pipe.ngsummary.json +1 -0
  130. package/esm2015/lib/sharedComponents/assessment-editor/components/pipes/question-filter.pipe.js +13 -0
  131. package/esm2015/lib/sharedComponents/assessment-editor/components/pipes/question-filter.pipe.ngsummary.json +1 -0
  132. package/esm2015/lib/sharedComponents/assessment-editor/components/pipes/question-page-filter.pipe.js +12 -0
  133. package/esm2015/lib/sharedComponents/assessment-editor/components/pipes/question-page-filter.pipe.ngsummary.json +1 -0
  134. package/esm2015/lib/sharedComponents/assessment-editor/components/pipes/question-parser.pipe.js +17 -0
  135. package/esm2015/lib/sharedComponents/assessment-editor/components/pipes/question-parser.pipe.ngsummary.json +1 -0
  136. package/esm2015/lib/sharedComponents/assessment-editor/components/pipes/type-of.pipe.js +12 -0
  137. package/esm2015/lib/sharedComponents/assessment-editor/components/pipes/type-of.pipe.ngsummary.json +1 -0
  138. package/esm2015/lib/sharedComponents/assessment-editor/components/preview/preview-checkbox/preview-checkbox.component.js +28 -0
  139. package/esm2015/lib/sharedComponents/assessment-editor/components/preview/preview-checkbox/preview-checkbox.component.ngfactory.js +22 -0
  140. package/esm2015/lib/sharedComponents/assessment-editor/components/preview/preview-checkbox/preview-checkbox.component.ngsummary.json +1 -0
  141. package/esm2015/lib/sharedComponents/assessment-editor/components/preview/preview-comment-box/preview-comment-box.component.js +15 -0
  142. package/esm2015/lib/sharedComponents/assessment-editor/components/preview/preview-comment-box/preview-comment-box.component.ngfactory.js +17 -0
  143. package/esm2015/lib/sharedComponents/assessment-editor/components/preview/preview-comment-box/preview-comment-box.component.ngsummary.json +1 -0
  144. package/esm2015/lib/sharedComponents/assessment-editor/components/preview/preview-date-time/preview-date-time.component.js +31 -0
  145. package/esm2015/lib/sharedComponents/assessment-editor/components/preview/preview-date-time/preview-date-time.component.ngfactory.js +81 -0
  146. package/esm2015/lib/sharedComponents/assessment-editor/components/preview/preview-date-time/preview-date-time.component.ngsummary.json +1 -0
  147. package/esm2015/lib/sharedComponents/assessment-editor/components/preview/preview-dropdown/preview-dropdown.component.js +31 -0
  148. package/esm2015/lib/sharedComponents/assessment-editor/components/preview/preview-dropdown/preview-dropdown.component.ngfactory.js +19 -0
  149. package/esm2015/lib/sharedComponents/assessment-editor/components/preview/preview-dropdown/preview-dropdown.component.ngsummary.json +1 -0
  150. package/esm2015/lib/sharedComponents/assessment-editor/components/preview/preview-file-upload/preview-file-upload.component.js +23 -0
  151. package/esm2015/lib/sharedComponents/assessment-editor/components/preview/preview-file-upload/preview-file-upload.component.ngfactory.js +20 -0
  152. package/esm2015/lib/sharedComponents/assessment-editor/components/preview/preview-file-upload/preview-file-upload.component.ngsummary.json +1 -0
  153. package/esm2015/lib/sharedComponents/assessment-editor/components/preview/preview-image-choice/preview-image-choice.component.js +15 -0
  154. package/esm2015/lib/sharedComponents/assessment-editor/components/preview/preview-image-choice/preview-image-choice.component.ngfactory.js +37 -0
  155. package/esm2015/lib/sharedComponents/assessment-editor/components/preview/preview-image-choice/preview-image-choice.component.ngsummary.json +1 -0
  156. package/esm2015/lib/sharedComponents/assessment-editor/components/preview/preview-matrix-dropdown/preview-matrix-dropdown.component.js +24 -0
  157. package/esm2015/lib/sharedComponents/assessment-editor/components/preview/preview-matrix-dropdown/preview-matrix-dropdown.component.ngfactory.js +60 -0
  158. package/esm2015/lib/sharedComponents/assessment-editor/components/preview/preview-matrix-dropdown/preview-matrix-dropdown.component.ngsummary.json +1 -0
  159. package/esm2015/lib/sharedComponents/assessment-editor/components/preview/preview-matrix-rating-scale/preview-matrix-rating-scale.component.js +24 -0
  160. package/esm2015/lib/sharedComponents/assessment-editor/components/preview/preview-matrix-rating-scale/preview-matrix-rating-scale.component.ngfactory.js +60 -0
  161. package/esm2015/lib/sharedComponents/assessment-editor/components/preview/preview-matrix-rating-scale/preview-matrix-rating-scale.component.ngsummary.json +1 -0
  162. package/esm2015/lib/sharedComponents/assessment-editor/components/preview/preview-multiple-choice/preview-multiple-choice.component.js +28 -0
  163. package/esm2015/lib/sharedComponents/assessment-editor/components/preview/preview-multiple-choice/preview-multiple-choice.component.ngfactory.js +22 -0
  164. package/esm2015/lib/sharedComponents/assessment-editor/components/preview/preview-multiple-choice/preview-multiple-choice.component.ngsummary.json +1 -0
  165. package/esm2015/lib/sharedComponents/assessment-editor/components/preview/preview-multiple-textbox/preview-multiple-textbox.component.js +15 -0
  166. package/esm2015/lib/sharedComponents/assessment-editor/components/preview/preview-multiple-textbox/preview-multiple-textbox.component.ngfactory.js +35 -0
  167. package/esm2015/lib/sharedComponents/assessment-editor/components/preview/preview-multiple-textbox/preview-multiple-textbox.component.ngsummary.json +1 -0
  168. package/esm2015/lib/sharedComponents/assessment-editor/components/preview/preview-ranking/preview-ranking.component.js +15 -0
  169. package/esm2015/lib/sharedComponents/assessment-editor/components/preview/preview-ranking/preview-ranking.component.ngfactory.js +36 -0
  170. package/esm2015/lib/sharedComponents/assessment-editor/components/preview/preview-ranking/preview-ranking.component.ngsummary.json +1 -0
  171. package/esm2015/lib/sharedComponents/assessment-editor/components/preview/preview-single-textbox/preview-single-textbox.component.js +18 -0
  172. package/esm2015/lib/sharedComponents/assessment-editor/components/preview/preview-single-textbox/preview-single-textbox.component.ngfactory.js +17 -0
  173. package/esm2015/lib/sharedComponents/assessment-editor/components/preview/preview-single-textbox/preview-single-textbox.component.ngsummary.json +1 -0
  174. package/esm2015/lib/sharedComponents/assessment-editor/components/preview/preview-slider/preview-slider.component.js +15 -0
  175. package/esm2015/lib/sharedComponents/assessment-editor/components/preview/preview-slider/preview-slider.component.ngfactory.js +17 -0
  176. package/esm2015/lib/sharedComponents/assessment-editor/components/preview/preview-slider/preview-slider.component.ngsummary.json +1 -0
  177. package/esm2015/lib/sharedComponents/assessment-editor/components/preview/preview-star-rating/preview-star-rating.component.js +15 -0
  178. package/esm2015/lib/sharedComponents/assessment-editor/components/preview/preview-star-rating/preview-star-rating.component.ngfactory.js +40 -0
  179. package/esm2015/lib/sharedComponents/assessment-editor/components/preview/preview-star-rating/preview-star-rating.component.ngsummary.json +1 -0
  180. package/esm2015/lib/sharedComponents/assessment-editor/components/preview/preview-wrapper/preview-wrapper.component.js +67 -0
  181. package/esm2015/lib/sharedComponents/assessment-editor/components/preview/preview-wrapper/preview-wrapper.component.ngfactory.js +90 -0
  182. package/esm2015/lib/sharedComponents/assessment-editor/components/preview/preview-wrapper/preview-wrapper.component.ngsummary.json +1 -0
  183. package/esm2015/lib/sharedComponents/assessment-editor/components/preview/preview.module.js +90 -0
  184. package/esm2015/lib/sharedComponents/assessment-editor/components/preview/preview.module.ngfactory.js +29 -0
  185. package/esm2015/lib/sharedComponents/assessment-editor/components/preview/preview.module.ngsummary.json +1 -0
  186. package/esm2015/lib/sharedComponents/assessment-editor/components/preview/thank-you/thank-you.component.js +15 -0
  187. package/esm2015/lib/sharedComponents/assessment-editor/components/preview/thank-you/thank-you.component.ngfactory.js +17 -0
  188. package/esm2015/lib/sharedComponents/assessment-editor/components/preview/thank-you/thank-you.component.ngsummary.json +1 -0
  189. package/esm2015/lib/sharedComponents/assessment-editor/components/preview/welcome/welcome.component.js +15 -0
  190. package/esm2015/lib/sharedComponents/assessment-editor/components/preview/welcome/welcome.component.ngfactory.js +17 -0
  191. package/esm2015/lib/sharedComponents/assessment-editor/components/preview/welcome/welcome.component.ngsummary.json +1 -0
  192. package/esm2015/lib/sharedComponents/assessment-editor/components/question-type/question-type.component.js +20 -0
  193. package/esm2015/lib/sharedComponents/assessment-editor/components/question-type/question-type.component.ngfactory.js +76 -0
  194. package/esm2015/lib/sharedComponents/assessment-editor/components/question-type/question-type.component.ngsummary.json +1 -0
  195. package/esm2015/lib/sharedComponents/assessment-editor/components/quick-settings/quick-settings.component.js +248 -0
  196. package/esm2015/lib/sharedComponents/assessment-editor/components/quick-settings/quick-settings.component.ngfactory.js +109 -0
  197. package/esm2015/lib/sharedComponents/assessment-editor/components/quick-settings/quick-settings.component.ngsummary.json +1 -0
  198. package/esm2015/lib/sharedComponents/assessment-editor/components/response-selector/response-selector.component.js +35 -0
  199. package/esm2015/lib/sharedComponents/assessment-editor/components/response-selector/response-selector.component.ngfactory.js +95 -0
  200. package/esm2015/lib/sharedComponents/assessment-editor/components/response-selector/response-selector.component.ngsummary.json +1 -0
  201. package/esm2015/lib/sharedComponents/assessment-editor/components/setting-anonymous/setting-anonymous.component.js +56 -0
  202. package/esm2015/lib/sharedComponents/assessment-editor/components/setting-anonymous/setting-anonymous.component.ngfactory.js +108 -0
  203. package/esm2015/lib/sharedComponents/assessment-editor/components/setting-anonymous/setting-anonymous.component.ngsummary.json +1 -0
  204. package/esm2015/lib/sharedComponents/assessment-editor/components/setting-response-segment/setting-response-segment.component.js +153 -0
  205. package/esm2015/lib/sharedComponents/assessment-editor/components/setting-response-segment/setting-response-segment.component.ngfactory.js +130 -0
  206. package/esm2015/lib/sharedComponents/assessment-editor/components/setting-response-segment/setting-response-segment.component.ngsummary.json +1 -0
  207. package/esm2015/lib/sharedComponents/assessment-editor/components/single-line-editor/single-line-editor.component.js +123 -0
  208. package/esm2015/lib/sharedComponents/assessment-editor/components/single-line-editor/single-line-editor.component.ngfactory.js +47 -0
  209. package/esm2015/lib/sharedComponents/assessment-editor/components/single-line-editor/single-line-editor.component.ngsummary.json +1 -0
  210. package/esm2015/lib/sharedComponents/assessment-editor/components/toolkit/toolkit.component.js +24 -0
  211. package/esm2015/lib/sharedComponents/assessment-editor/components/toolkit/toolkit.component.ngfactory.js +97 -0
  212. package/esm2015/lib/sharedComponents/assessment-editor/components/toolkit/toolkit.component.ngsummary.json +1 -0
  213. package/esm2015/lib/sharedComponents/assessment-editor/components/welcome-thankyou/welcome-thankyou.component.js +50 -0
  214. package/esm2015/lib/sharedComponents/assessment-editor/components/welcome-thankyou/welcome-thankyou.component.ngfactory.js +47 -0
  215. package/esm2015/lib/sharedComponents/assessment-editor/components/welcome-thankyou/welcome-thankyou.component.ngsummary.json +1 -0
  216. package/esm2015/lib/sharedComponents/assessment-editor/create-assessment-container/create-assessment-container.component.js +424 -0
  217. package/esm2015/lib/sharedComponents/assessment-editor/create-assessment-container/create-assessment-container.component.ngfactory.js +222 -0
  218. package/esm2015/lib/sharedComponents/assessment-editor/create-assessment-container/create-assessment-container.component.ngsummary.json +1 -0
  219. package/esm2015/lib/sharedComponents/assessment-editor/create-assessment.module.js +86 -0
  220. package/esm2015/lib/sharedComponents/assessment-editor/create-assessment.module.ngfactory.js +37 -0
  221. package/esm2015/lib/sharedComponents/assessment-editor/create-assessment.module.ngsummary.json +1 -0
  222. package/esm2015/lib/sharedComponents/assessment-editor/services/editor.service.js +636 -0
  223. package/esm2015/lib/sharedComponents/assessment-editor/services/editor.service.ngsummary.json +1 -0
  224. package/esm2015/lib/sharedComponents/assessment-editor/services/result-criteria.service.js +48 -0
  225. package/esm2015/lib/sharedComponents/assessment-editor/services/result-criteria.service.ngsummary.json +1 -0
  226. package/esm2015/lib/sharedComponents/assessment-editor/services/validator.service.js +543 -0
  227. package/esm2015/lib/sharedComponents/assessment-editor/services/validator.service.ngsummary.json +1 -0
  228. package/esm2015/lib/sharedComponents/bulk-responsibility-view/bulk-responsibility-view.component.js +2 -2
  229. package/esm2015/lib/sharedComponents/bulk-responsibility-view/bulk-responsibility-view.component.ngfactory.js +29 -363
  230. package/esm2015/lib/sharedComponents/format-and-evidence/format-and-evidence.component.js +1 -1
  231. package/esm2015/lib/sharedComponents/risk-classification/risk-classification.component.js +1 -1
  232. package/esm2015/lib/ui-kit/action-dialog/action-dialog.module.js +16 -0
  233. package/esm2015/lib/ui-kit/action-dialog/action-dialog.module.ngfactory.js +12 -0
  234. package/esm2015/lib/ui-kit/action-dialog/action-dialog.module.ngsummary.json +1 -0
  235. package/esm2015/lib/ui-kit/action-dialog/active/active.component.js +36 -0
  236. package/esm2015/lib/ui-kit/action-dialog/active/active.component.ngfactory.js +25 -0
  237. package/esm2015/lib/ui-kit/action-dialog/active/active.component.ngsummary.json +1 -0
  238. package/esm2015/lib/ui-kit/action-dialog/deactivate/deactivate.component.js +38 -0
  239. package/esm2015/lib/ui-kit/action-dialog/deactivate/deactivate.component.ngfactory.js +25 -0
  240. package/esm2015/lib/ui-kit/action-dialog/deactivate/deactivate.component.ngsummary.json +1 -0
  241. package/esm2015/lib/ui-kit/action-dialog/delete/delete.component.js +30 -0
  242. package/esm2015/lib/ui-kit/action-dialog/delete/delete.component.ngfactory.js +25 -0
  243. package/esm2015/lib/ui-kit/action-dialog/delete/delete.component.ngsummary.json +1 -0
  244. package/esm2015/lib/ui-kit/action-dialog/duplicate/duplicate.component.js +32 -0
  245. package/esm2015/lib/ui-kit/action-dialog/duplicate/duplicate.component.ngfactory.js +25 -0
  246. package/esm2015/lib/ui-kit/action-dialog/duplicate/duplicate.component.ngsummary.json +1 -0
  247. package/esm2015/lib/ui-kit/dialog/dialog-config.js +3 -0
  248. package/esm2015/lib/ui-kit/dialog/dialog-config.ngsummary.json +1 -0
  249. package/esm2015/lib/ui-kit/dialog/dialog-injector.js +15 -0
  250. package/esm2015/lib/ui-kit/dialog/dialog-injector.ngsummary.json +1 -0
  251. package/esm2015/lib/ui-kit/dialog/dialog-ref.js +11 -0
  252. package/esm2015/lib/ui-kit/dialog/dialog-ref.ngsummary.json +1 -0
  253. package/esm2015/lib/ui-kit/dialog/dialog.component.js +90 -0
  254. package/esm2015/lib/ui-kit/dialog/dialog.component.ngfactory.js +29 -0
  255. package/esm2015/lib/ui-kit/dialog/dialog.component.ngsummary.json +1 -0
  256. package/esm2015/lib/ui-kit/dialog/dialog.module.js +16 -0
  257. package/esm2015/lib/ui-kit/dialog/dialog.module.ngfactory.js +14 -0
  258. package/esm2015/lib/ui-kit/dialog/dialog.module.ngsummary.json +1 -0
  259. package/esm2015/lib/ui-kit/dialog/dialog.service.js +60 -0
  260. package/esm2015/lib/ui-kit/dialog/dialog.service.ngsummary.json +1 -0
  261. package/esm2015/lib/ui-kit/dialog/insertion.directive.js +15 -0
  262. package/esm2015/lib/ui-kit/dialog/insertion.directive.ngsummary.json +1 -0
  263. package/esm2015/lib/ui-kit/editor-loader/editor-loader/editor-loader.component.js +15 -0
  264. package/esm2015/lib/ui-kit/editor-loader/editor-loader/editor-loader.component.ngfactory.js +23 -0
  265. package/esm2015/lib/ui-kit/editor-loader/editor-loader/editor-loader.component.ngsummary.json +1 -0
  266. package/esm2015/lib/ui-kit/editor-loader/editor-loader.module.js +17 -0
  267. package/esm2015/lib/ui-kit/editor-loader/editor-loader.module.ngfactory.js +12 -0
  268. package/esm2015/lib/ui-kit/editor-loader/editor-loader.module.ngsummary.json +1 -0
  269. package/esm2015/lib/ui-kit/formgroup/click-outside.directive.js +26 -0
  270. package/esm2015/lib/ui-kit/formgroup/click-outside.directive.ngsummary.json +1 -0
  271. package/esm2015/lib/ui-kit/formgroup/cs-checkbox/cs-checkbox.component.js +26 -0
  272. package/esm2015/lib/ui-kit/formgroup/cs-checkbox/cs-checkbox.component.ngfactory.js +30 -0
  273. package/esm2015/lib/ui-kit/formgroup/cs-checkbox/cs-checkbox.component.ngsummary.json +1 -0
  274. package/esm2015/lib/ui-kit/formgroup/cs-checkbox-indeterminate/cs-checkbox-indeterminate.component.js +30 -0
  275. package/esm2015/lib/ui-kit/formgroup/cs-checkbox-indeterminate/cs-checkbox-indeterminate.component.ngfactory.js +30 -0
  276. package/esm2015/lib/ui-kit/formgroup/cs-checkbox-indeterminate/cs-checkbox-indeterminate.component.ngsummary.json +1 -0
  277. package/esm2015/lib/ui-kit/formgroup/cs-radio/cs-radio.component.js +27 -0
  278. package/esm2015/lib/ui-kit/formgroup/cs-radio/cs-radio.component.ngfactory.js +20 -0
  279. package/esm2015/lib/ui-kit/formgroup/cs-radio/cs-radio.component.ngsummary.json +1 -0
  280. package/esm2015/lib/ui-kit/formgroup/cs-radio-group/cs-radio-group.component.js +14 -0
  281. package/esm2015/lib/ui-kit/formgroup/cs-radio-group/cs-radio-group.component.ngfactory.js +19 -0
  282. package/esm2015/lib/ui-kit/formgroup/cs-radio-group/cs-radio-group.component.ngsummary.json +1 -0
  283. package/esm2015/lib/ui-kit/formgroup/cs-select/cs-select.component.js +80 -0
  284. package/esm2015/lib/ui-kit/formgroup/cs-select/cs-select.component.ngfactory.js +89 -0
  285. package/esm2015/lib/ui-kit/formgroup/cs-select/cs-select.component.ngsummary.json +1 -0
  286. package/esm2015/lib/ui-kit/formgroup/cs-switch/cs-switch.component.js +29 -0
  287. package/esm2015/lib/ui-kit/formgroup/cs-switch/cs-switch.component.ngfactory.js +62 -0
  288. package/esm2015/lib/ui-kit/formgroup/cs-switch/cs-switch.component.ngsummary.json +1 -0
  289. package/esm2015/lib/ui-kit/formgroup/formgroup.module.js +41 -0
  290. package/esm2015/lib/ui-kit/formgroup/formgroup.module.ngfactory.js +14 -0
  291. package/esm2015/lib/ui-kit/formgroup/formgroup.module.ngsummary.json +1 -0
  292. package/esm2015/lib/ui-kit/formgroup/pipes/pascal.pipe.js +15 -0
  293. package/esm2015/lib/ui-kit/formgroup/pipes/pascal.pipe.ngsummary.json +1 -0
  294. package/esm2015/lib/ui-kit/formgroup/pipes/searchMultiSelect.pipe.js +20 -0
  295. package/esm2015/lib/ui-kit/formgroup/pipes/searchMultiSelect.pipe.ngsummary.json +1 -0
  296. package/esm2015/lib/workflow-assessment/import-an-assessment/import-an-assessment.component.js +557 -0
  297. package/esm2015/lib/workflow-assessment/import-an-assessment/import-an-assessment.component.ngfactory.js +82 -0
  298. package/esm2015/lib/workflow-assessment/import-an-assessment/import-an-assessment.component.ngsummary.json +1 -0
  299. package/esm2015/lib/workflow-assessment/workflow-assessment.component.js +3 -3
  300. package/esm2015/lib/workflow-assessment/workflow-assessment.component.ngfactory.js +1 -1
  301. package/esm2015/lib/workflow-compliance/workflow-compliance.component.js +4 -1521
  302. package/esm2015/lib/workflow-engine-container/workflow-engine-container.component.js +20 -8
  303. package/esm2015/lib/workflow-engine-container/workflow-engine-container.component.ngfactory.js +62 -34
  304. package/esm2015/lib/workflow-engine-container/workflow-engine-container.component.ngsummary.json +1 -1
  305. package/esm2015/lib/workflow-engine.module.js +8 -1
  306. package/esm2015/lib/workflow-engine.module.ngfactory.js +36 -24
  307. package/esm2015/lib/workflow-engine.module.ngsummary.json +1 -1
  308. package/esm2015/lib/workflow-policy/workflow-policy.component.js +1 -1
  309. package/esm2015/lib/workflow-risk/workflow-risk.component.js +3 -2
  310. package/esm2015/lib/workflow-services/add-risk.service.js +2 -1
  311. package/esm2015/lib/workflow-services/assessment.service.js +47 -1
  312. package/esm2015/lib/workflow-services/assessment.service.ngsummary.json +1 -1
  313. package/esm2015/lib/workflow-survey-form/workflow-survey-form.component.js +1 -1
  314. package/esm2015/vcomply-workflow-engine.js +160 -61
  315. package/esm2015/vcomply-workflow-engine.ngsummary.json +1 -1
  316. package/fesm2015/vcomply-workflow-engine.js +6007 -112
  317. package/fesm2015/vcomply-workflow-engine.js.map +1 -1
  318. package/lib/sharedComponents/assessment-editor/components/add-logic/add-logic.component.d.ts +117 -0
  319. package/lib/sharedComponents/assessment-editor/components/add-logic/add-logic.component.ngfactory.d.ts +1 -0
  320. package/lib/sharedComponents/assessment-editor/components/add-page-details/add-page-details.component.d.ts +18 -0
  321. package/lib/sharedComponents/assessment-editor/components/add-page-details/add-page-details.component.ngfactory.d.ts +1 -0
  322. package/lib/sharedComponents/assessment-editor/components/add-response-set-popup/add-response-set-popup.component.d.ts +10 -0
  323. package/lib/sharedComponents/assessment-editor/components/add-response-set-popup/add-response-set-popup.component.ngfactory.d.ts +1 -0
  324. package/lib/sharedComponents/assessment-editor/components/add-segment-popup/add-segment-popup.component.d.ts +22 -0
  325. package/lib/sharedComponents/assessment-editor/components/add-segment-popup/add-segment-popup.component.ngfactory.d.ts +1 -0
  326. package/lib/sharedComponents/assessment-editor/components/assessment-settings/assessment-settings.component.d.ts +47 -0
  327. package/lib/sharedComponents/assessment-editor/components/assessment-settings/assessment-settings.component.ngfactory.d.ts +1 -0
  328. package/lib/sharedComponents/assessment-editor/components/build/build.module.d.ts +2 -0
  329. package/lib/sharedComponents/assessment-editor/components/build/build.module.ngfactory.d.ts +3 -0
  330. package/lib/sharedComponents/assessment-editor/components/build/checkbox/checkbox.component.d.ts +11 -0
  331. package/lib/sharedComponents/assessment-editor/components/build/checkbox/checkbox.component.ngfactory.d.ts +1 -0
  332. package/lib/sharedComponents/assessment-editor/components/build/choice-settings-panel/choice-settings-panel.component.d.ts +16 -0
  333. package/lib/sharedComponents/assessment-editor/components/build/choice-settings-panel/choice-settings-panel.component.ngfactory.d.ts +1 -0
  334. package/lib/sharedComponents/assessment-editor/components/build/date-time/date-time.component.d.ts +6 -0
  335. package/lib/sharedComponents/assessment-editor/components/build/date-time/date-time.component.ngfactory.d.ts +1 -0
  336. package/lib/sharedComponents/assessment-editor/components/build/dropdown/dropdown.component.d.ts +11 -0
  337. package/lib/sharedComponents/assessment-editor/components/build/dropdown/dropdown.component.ngfactory.d.ts +1 -0
  338. package/lib/sharedComponents/assessment-editor/components/build/image-choice/image-choice.component.d.ts +5 -0
  339. package/lib/sharedComponents/assessment-editor/components/build/image-choice/image-choice.component.ngfactory.d.ts +1 -0
  340. package/lib/sharedComponents/assessment-editor/components/build/matrix-dropdown/matrix-dropdown.component.d.ts +5 -0
  341. package/lib/sharedComponents/assessment-editor/components/build/matrix-dropdown/matrix-dropdown.component.ngfactory.d.ts +1 -0
  342. package/lib/sharedComponents/assessment-editor/components/build/matrix-rating-scale/matrix-rating-scale.component.d.ts +5 -0
  343. package/lib/sharedComponents/assessment-editor/components/build/matrix-rating-scale/matrix-rating-scale.component.ngfactory.d.ts +1 -0
  344. package/lib/sharedComponents/assessment-editor/components/build/multiple-choice/multiple-choice.component.d.ts +11 -0
  345. package/lib/sharedComponents/assessment-editor/components/build/multiple-choice/multiple-choice.component.ngfactory.d.ts +1 -0
  346. package/lib/sharedComponents/assessment-editor/components/build/multiple-textbox/multiple-textbox.component.d.ts +5 -0
  347. package/lib/sharedComponents/assessment-editor/components/build/multiple-textbox/multiple-textbox.component.ngfactory.d.ts +1 -0
  348. package/lib/sharedComponents/assessment-editor/components/build/ranking/ranking.component.d.ts +5 -0
  349. package/lib/sharedComponents/assessment-editor/components/build/ranking/ranking.component.ngfactory.d.ts +1 -0
  350. package/lib/sharedComponents/assessment-editor/components/build/slider/slider.component.d.ts +5 -0
  351. package/lib/sharedComponents/assessment-editor/components/build/slider/slider.component.ngfactory.d.ts +1 -0
  352. package/lib/sharedComponents/assessment-editor/components/build/star-rating/star-rating.component.d.ts +9 -0
  353. package/lib/sharedComponents/assessment-editor/components/build/star-rating/star-rating.component.ngfactory.d.ts +1 -0
  354. package/lib/sharedComponents/assessment-editor/components/build/thank-you/thank-you.component.d.ts +5 -0
  355. package/lib/sharedComponents/assessment-editor/components/build/thank-you/thank-you.component.ngfactory.d.ts +1 -0
  356. package/lib/sharedComponents/assessment-editor/components/build/weightage-selector/weightage-selector.component.d.ts +12 -0
  357. package/lib/sharedComponents/assessment-editor/components/build/weightage-selector/weightage-selector.component.ngfactory.d.ts +1 -0
  358. package/lib/sharedComponents/assessment-editor/components/build/welcome/welcome.component.d.ts +5 -0
  359. package/lib/sharedComponents/assessment-editor/components/build/welcome/welcome.component.ngfactory.d.ts +1 -0
  360. package/lib/sharedComponents/assessment-editor/components/editor-wrapper/editor-wrapper.component.d.ts +56 -0
  361. package/lib/sharedComponents/assessment-editor/components/editor-wrapper/editor-wrapper.component.ngfactory.d.ts +1 -0
  362. package/lib/sharedComponents/assessment-editor/components/errorInterface/error.d.ts +14 -0
  363. package/lib/sharedComponents/assessment-editor/components/errorInterface/question.d.ts +5 -0
  364. package/lib/sharedComponents/assessment-editor/components/errorInterface/validateStructure.d.ts +6 -0
  365. package/lib/sharedComponents/assessment-editor/components/logic/logic.component.d.ts +24 -0
  366. package/lib/sharedComponents/assessment-editor/components/logic/logic.component.ngfactory.d.ts +1 -0
  367. package/lib/sharedComponents/assessment-editor/components/logic-questions/logic-checkbox/logic-checkbox.component.d.ts +8 -0
  368. package/lib/sharedComponents/assessment-editor/components/logic-questions/logic-checkbox/logic-checkbox.component.ngfactory.d.ts +1 -0
  369. package/lib/sharedComponents/assessment-editor/components/logic-questions/logic-comment-box/logic-comment-box.component.d.ts +5 -0
  370. package/lib/sharedComponents/assessment-editor/components/logic-questions/logic-comment-box/logic-comment-box.component.ngfactory.d.ts +1 -0
  371. package/lib/sharedComponents/assessment-editor/components/logic-questions/logic-date-time/logic-date-time.component.d.ts +14 -0
  372. package/lib/sharedComponents/assessment-editor/components/logic-questions/logic-date-time/logic-date-time.component.ngfactory.d.ts +1 -0
  373. package/lib/sharedComponents/assessment-editor/components/logic-questions/logic-dropdown/logic-dropdown.component.d.ts +9 -0
  374. package/lib/sharedComponents/assessment-editor/components/logic-questions/logic-dropdown/logic-dropdown.component.ngfactory.d.ts +1 -0
  375. package/lib/sharedComponents/assessment-editor/components/logic-questions/logic-image-choice/logic-image-choice.component.d.ts +5 -0
  376. package/lib/sharedComponents/assessment-editor/components/logic-questions/logic-image-choice/logic-image-choice.component.ngfactory.d.ts +1 -0
  377. package/lib/sharedComponents/assessment-editor/components/logic-questions/logic-multiple-choice/logic-multiple-choice.component.d.ts +8 -0
  378. package/lib/sharedComponents/assessment-editor/components/logic-questions/logic-multiple-choice/logic-multiple-choice.component.ngfactory.d.ts +1 -0
  379. package/lib/sharedComponents/assessment-editor/components/logic-questions/logic-multiple-textbox/logic-multiple-textbox.component.d.ts +5 -0
  380. package/lib/sharedComponents/assessment-editor/components/logic-questions/logic-multiple-textbox/logic-multiple-textbox.component.ngfactory.d.ts +1 -0
  381. package/lib/sharedComponents/assessment-editor/components/logic-questions/logic-questions.module.d.ts +2 -0
  382. package/lib/sharedComponents/assessment-editor/components/logic-questions/logic-questions.module.ngfactory.d.ts +3 -0
  383. package/lib/sharedComponents/assessment-editor/components/logic-questions/logic-ranking/logic-ranking.component.d.ts +5 -0
  384. package/lib/sharedComponents/assessment-editor/components/logic-questions/logic-ranking/logic-ranking.component.ngfactory.d.ts +1 -0
  385. package/lib/sharedComponents/assessment-editor/components/logic-questions/logic-single-textbox/logic-single-textbox.component.d.ts +9 -0
  386. package/lib/sharedComponents/assessment-editor/components/logic-questions/logic-single-textbox/logic-single-textbox.component.ngfactory.d.ts +1 -0
  387. package/lib/sharedComponents/assessment-editor/components/logic-questions/logic-slider/logic-slider.component.d.ts +5 -0
  388. package/lib/sharedComponents/assessment-editor/components/logic-questions/logic-slider/logic-slider.component.ngfactory.d.ts +1 -0
  389. package/lib/sharedComponents/assessment-editor/components/logic-questions/logic-star-rating/logic-star-rating.component.d.ts +5 -0
  390. package/lib/sharedComponents/assessment-editor/components/logic-questions/logic-star-rating/logic-star-rating.component.ngfactory.d.ts +1 -0
  391. package/lib/sharedComponents/assessment-editor/components/move/move.component.d.ts +22 -0
  392. package/lib/sharedComponents/assessment-editor/components/move/move.component.ngfactory.d.ts +1 -0
  393. package/lib/sharedComponents/assessment-editor/components/page-header/page-header.component.d.ts +8 -0
  394. package/lib/sharedComponents/assessment-editor/components/page-header/page-header.component.ngfactory.d.ts +1 -0
  395. package/lib/sharedComponents/assessment-editor/components/pipes/current-page-question.pipe.d.ts +4 -0
  396. package/lib/sharedComponents/assessment-editor/components/pipes/error-message.pipe.d.ts +4 -0
  397. package/lib/sharedComponents/assessment-editor/components/pipes/formatter.pipe.d.ts +4 -0
  398. package/lib/sharedComponents/assessment-editor/components/pipes/question-filter.pipe.d.ts +4 -0
  399. package/lib/sharedComponents/assessment-editor/components/pipes/question-page-filter.pipe.d.ts +4 -0
  400. package/lib/sharedComponents/assessment-editor/components/pipes/question-parser.pipe.d.ts +4 -0
  401. package/lib/sharedComponents/assessment-editor/components/pipes/type-of.pipe.d.ts +4 -0
  402. package/lib/sharedComponents/assessment-editor/components/preview/preview-checkbox/preview-checkbox.component.d.ts +8 -0
  403. package/lib/sharedComponents/assessment-editor/components/preview/preview-checkbox/preview-checkbox.component.ngfactory.d.ts +1 -0
  404. package/lib/sharedComponents/assessment-editor/components/preview/preview-comment-box/preview-comment-box.component.d.ts +5 -0
  405. package/lib/sharedComponents/assessment-editor/components/preview/preview-comment-box/preview-comment-box.component.ngfactory.d.ts +1 -0
  406. package/lib/sharedComponents/assessment-editor/components/preview/preview-date-time/preview-date-time.component.d.ts +11 -0
  407. package/lib/sharedComponents/assessment-editor/components/preview/preview-date-time/preview-date-time.component.ngfactory.d.ts +1 -0
  408. package/lib/sharedComponents/assessment-editor/components/preview/preview-dropdown/preview-dropdown.component.d.ts +8 -0
  409. package/lib/sharedComponents/assessment-editor/components/preview/preview-dropdown/preview-dropdown.component.ngfactory.d.ts +1 -0
  410. package/lib/sharedComponents/assessment-editor/components/preview/preview-file-upload/preview-file-upload.component.d.ts +8 -0
  411. package/lib/sharedComponents/assessment-editor/components/preview/preview-file-upload/preview-file-upload.component.ngfactory.d.ts +1 -0
  412. package/lib/sharedComponents/assessment-editor/components/preview/preview-image-choice/preview-image-choice.component.d.ts +5 -0
  413. package/lib/sharedComponents/assessment-editor/components/preview/preview-image-choice/preview-image-choice.component.ngfactory.d.ts +1 -0
  414. package/lib/sharedComponents/assessment-editor/components/preview/preview-matrix-dropdown/preview-matrix-dropdown.component.d.ts +7 -0
  415. package/lib/sharedComponents/assessment-editor/components/preview/preview-matrix-dropdown/preview-matrix-dropdown.component.ngfactory.d.ts +1 -0
  416. package/lib/sharedComponents/assessment-editor/components/preview/preview-matrix-rating-scale/preview-matrix-rating-scale.component.d.ts +7 -0
  417. package/lib/sharedComponents/assessment-editor/components/preview/preview-matrix-rating-scale/preview-matrix-rating-scale.component.ngfactory.d.ts +1 -0
  418. package/lib/sharedComponents/assessment-editor/components/preview/preview-multiple-choice/preview-multiple-choice.component.d.ts +8 -0
  419. package/lib/sharedComponents/assessment-editor/components/preview/preview-multiple-choice/preview-multiple-choice.component.ngfactory.d.ts +1 -0
  420. package/lib/sharedComponents/assessment-editor/components/preview/preview-multiple-textbox/preview-multiple-textbox.component.d.ts +5 -0
  421. package/lib/sharedComponents/assessment-editor/components/preview/preview-multiple-textbox/preview-multiple-textbox.component.ngfactory.d.ts +1 -0
  422. package/lib/sharedComponents/assessment-editor/components/preview/preview-ranking/preview-ranking.component.d.ts +5 -0
  423. package/lib/sharedComponents/assessment-editor/components/preview/preview-ranking/preview-ranking.component.ngfactory.d.ts +1 -0
  424. package/lib/sharedComponents/assessment-editor/components/preview/preview-single-textbox/preview-single-textbox.component.d.ts +6 -0
  425. package/lib/sharedComponents/assessment-editor/components/preview/preview-single-textbox/preview-single-textbox.component.ngfactory.d.ts +1 -0
  426. package/lib/sharedComponents/assessment-editor/components/preview/preview-slider/preview-slider.component.d.ts +5 -0
  427. package/lib/sharedComponents/assessment-editor/components/preview/preview-slider/preview-slider.component.ngfactory.d.ts +1 -0
  428. package/lib/sharedComponents/assessment-editor/components/preview/preview-star-rating/preview-star-rating.component.d.ts +5 -0
  429. package/lib/sharedComponents/assessment-editor/components/preview/preview-star-rating/preview-star-rating.component.ngfactory.d.ts +1 -0
  430. package/lib/sharedComponents/assessment-editor/components/preview/preview-wrapper/preview-wrapper.component.d.ts +27 -0
  431. package/lib/sharedComponents/assessment-editor/components/preview/preview-wrapper/preview-wrapper.component.ngfactory.d.ts +1 -0
  432. package/lib/sharedComponents/assessment-editor/components/preview/preview.module.d.ts +2 -0
  433. package/lib/sharedComponents/assessment-editor/components/preview/preview.module.ngfactory.d.ts +3 -0
  434. package/lib/sharedComponents/assessment-editor/components/preview/thank-you/thank-you.component.d.ts +5 -0
  435. package/lib/sharedComponents/assessment-editor/components/preview/thank-you/thank-you.component.ngfactory.d.ts +1 -0
  436. package/lib/sharedComponents/assessment-editor/components/preview/welcome/welcome.component.d.ts +5 -0
  437. package/lib/sharedComponents/assessment-editor/components/preview/welcome/welcome.component.ngfactory.d.ts +1 -0
  438. package/lib/sharedComponents/assessment-editor/components/question-type/question-type.component.d.ts +6 -0
  439. package/lib/sharedComponents/assessment-editor/components/question-type/question-type.component.ngfactory.d.ts +1 -0
  440. package/lib/sharedComponents/assessment-editor/components/quick-settings/quick-settings.component.d.ts +28 -0
  441. package/lib/sharedComponents/assessment-editor/components/quick-settings/quick-settings.component.ngfactory.d.ts +1 -0
  442. package/lib/sharedComponents/assessment-editor/components/response-selector/response-selector.component.d.ts +11 -0
  443. package/lib/sharedComponents/assessment-editor/components/response-selector/response-selector.component.ngfactory.d.ts +1 -0
  444. package/lib/sharedComponents/assessment-editor/components/setting-anonymous/setting-anonymous.component.d.ts +16 -0
  445. package/lib/sharedComponents/assessment-editor/components/setting-anonymous/setting-anonymous.component.ngfactory.d.ts +1 -0
  446. package/lib/sharedComponents/assessment-editor/components/setting-response-segment/setting-response-segment.component.d.ts +47 -0
  447. package/lib/sharedComponents/assessment-editor/components/setting-response-segment/setting-response-segment.component.ngfactory.d.ts +1 -0
  448. package/lib/sharedComponents/assessment-editor/components/single-line-editor/single-line-editor.component.d.ts +35 -0
  449. package/lib/sharedComponents/assessment-editor/components/single-line-editor/single-line-editor.component.ngfactory.d.ts +1 -0
  450. package/lib/sharedComponents/assessment-editor/components/toolkit/toolkit.component.d.ts +8 -0
  451. package/lib/sharedComponents/assessment-editor/components/toolkit/toolkit.component.ngfactory.d.ts +1 -0
  452. package/lib/sharedComponents/assessment-editor/components/welcome-thankyou/welcome-thankyou.component.d.ts +12 -0
  453. package/lib/sharedComponents/assessment-editor/components/welcome-thankyou/welcome-thankyou.component.ngfactory.d.ts +1 -0
  454. package/lib/sharedComponents/assessment-editor/create-assessment-container/create-assessment-container.component.d.ts +64 -0
  455. package/lib/sharedComponents/assessment-editor/create-assessment-container/create-assessment-container.component.ngfactory.d.ts +1 -0
  456. package/lib/sharedComponents/assessment-editor/create-assessment.module.d.ts +2 -0
  457. package/lib/sharedComponents/assessment-editor/create-assessment.module.ngfactory.d.ts +3 -0
  458. package/lib/sharedComponents/assessment-editor/services/editor.service.d.ts +185 -0
  459. package/lib/sharedComponents/assessment-editor/services/result-criteria.service.d.ts +4 -0
  460. package/lib/sharedComponents/assessment-editor/services/validator.service.d.ts +31 -0
  461. package/lib/ui-kit/action-dialog/action-dialog.module.d.ts +2 -0
  462. package/lib/ui-kit/action-dialog/action-dialog.module.ngfactory.d.ts +3 -0
  463. package/lib/ui-kit/action-dialog/active/active.component.d.ts +12 -0
  464. package/lib/ui-kit/action-dialog/active/active.component.ngfactory.d.ts +1 -0
  465. package/lib/ui-kit/action-dialog/deactivate/deactivate.component.d.ts +12 -0
  466. package/lib/ui-kit/action-dialog/deactivate/deactivate.component.ngfactory.d.ts +1 -0
  467. package/lib/ui-kit/action-dialog/delete/delete.component.d.ts +11 -0
  468. package/lib/ui-kit/action-dialog/delete/delete.component.ngfactory.d.ts +1 -0
  469. package/lib/ui-kit/action-dialog/duplicate/duplicate.component.d.ts +12 -0
  470. package/lib/ui-kit/action-dialog/duplicate/duplicate.component.ngfactory.d.ts +1 -0
  471. package/lib/ui-kit/dialog/dialog-config.d.ts +5 -0
  472. package/lib/ui-kit/dialog/dialog-injector.d.ts +7 -0
  473. package/lib/ui-kit/dialog/dialog-ref.d.ts +7 -0
  474. package/lib/ui-kit/dialog/dialog.component.d.ts +29 -0
  475. package/lib/ui-kit/dialog/dialog.component.ngfactory.d.ts +1 -0
  476. package/lib/ui-kit/dialog/dialog.module.d.ts +2 -0
  477. package/lib/ui-kit/dialog/dialog.module.ngfactory.d.ts +3 -0
  478. package/lib/ui-kit/dialog/dialog.service.d.ts +15 -0
  479. package/lib/ui-kit/dialog/insertion.directive.d.ts +5 -0
  480. package/lib/ui-kit/editor-loader/editor-loader/editor-loader.component.d.ts +5 -0
  481. package/lib/ui-kit/editor-loader/editor-loader/editor-loader.component.ngfactory.d.ts +1 -0
  482. package/lib/ui-kit/editor-loader/editor-loader.module.d.ts +2 -0
  483. package/lib/ui-kit/editor-loader/editor-loader.module.ngfactory.d.ts +3 -0
  484. package/lib/ui-kit/formgroup/click-outside.directive.d.ts +7 -0
  485. package/lib/ui-kit/formgroup/cs-checkbox/cs-checkbox.component.d.ts +10 -0
  486. package/lib/ui-kit/formgroup/cs-checkbox/cs-checkbox.component.ngfactory.d.ts +1 -0
  487. package/lib/ui-kit/formgroup/cs-checkbox-indeterminate/cs-checkbox-indeterminate.component.d.ts +10 -0
  488. package/lib/ui-kit/formgroup/cs-checkbox-indeterminate/cs-checkbox-indeterminate.component.ngfactory.d.ts +1 -0
  489. package/lib/ui-kit/formgroup/cs-radio/cs-radio.component.d.ts +12 -0
  490. package/lib/ui-kit/formgroup/cs-radio/cs-radio.component.ngfactory.d.ts +1 -0
  491. package/lib/ui-kit/formgroup/cs-radio-group/cs-radio-group.component.d.ts +5 -0
  492. package/lib/ui-kit/formgroup/cs-radio-group/cs-radio-group.component.ngfactory.d.ts +1 -0
  493. package/lib/ui-kit/formgroup/cs-select/cs-select.component.d.ts +33 -0
  494. package/lib/ui-kit/formgroup/cs-select/cs-select.component.ngfactory.d.ts +1 -0
  495. package/lib/ui-kit/formgroup/cs-switch/cs-switch.component.d.ts +12 -0
  496. package/lib/ui-kit/formgroup/cs-switch/cs-switch.component.ngfactory.d.ts +1 -0
  497. package/lib/ui-kit/formgroup/formgroup.module.d.ts +2 -0
  498. package/lib/ui-kit/formgroup/formgroup.module.ngfactory.d.ts +3 -0
  499. package/lib/ui-kit/formgroup/pipes/pascal.pipe.d.ts +4 -0
  500. package/lib/ui-kit/formgroup/pipes/searchMultiSelect.pipe.d.ts +4 -0
  501. package/lib/workflow-assessment/import-an-assessment/import-an-assessment.component.d.ts +231 -0
  502. package/lib/workflow-assessment/import-an-assessment/import-an-assessment.component.ngfactory.d.ts +1 -0
  503. package/lib/workflow-engine-container/workflow-engine-container.component.d.ts +2 -0
  504. package/lib/workflow-services/assessment.service.d.ts +10 -1
  505. package/package.json +1 -1
  506. package/vcomply-workflow-engine.d.ts +159 -60
  507. package/vcomply-workflow-engine.metadata.json +1 -1
@@ -0,0 +1,333 @@
1
+ import { DatePipe } from '@angular/common';
2
+ import { Component } from '@angular/core';
3
+ import { cloneDeep, some } from 'lodash';
4
+ import { DialogConfig } from '../../../../ui-kit/dialog/dialog-config';
5
+ import { DialogRef } from '../../../../ui-kit/dialog/dialog-ref';
6
+ export class AddLogicComponent {
7
+ constructor(config, dialog) {
8
+ this.config = config;
9
+ this.dialog = dialog;
10
+ this.selectedValue = '';
11
+ this.selectedLogicQuestionType = '';
12
+ this.checkboxValue = [];
13
+ this.disableLogicDropdown = true;
14
+ this.operatorMap = [];
15
+ this.showError = { isVisible: false, errorMessage: '' };
16
+ this.logic = {
17
+ andOr: 'and',
18
+ questionName: '',
19
+ operator: '',
20
+ value: this.selectedValue,
21
+ questionTitle: ''
22
+ };
23
+ this.operatorVal = {
24
+ '=': 'Equals',
25
+ '!=': 'Not Equals',
26
+ '>': 'Greater than',
27
+ '<': 'Less than',
28
+ '>=': 'Greater or equals',
29
+ '<=': 'Less or equals',
30
+ answered: 'If answered',
31
+ before: 'Before',
32
+ after: 'After',
33
+ beforeEquals: 'Before or equals',
34
+ afterEquals: 'After or equals'
35
+ };
36
+ }
37
+ ngOnInit() {
38
+ this.currentQuestion = cloneDeep(this.config.data.currentQuestion);
39
+ this.getCurrentPageQuestions();
40
+ this.editorMode = this.config.data.editorMode;
41
+ this.questionIndex = this.config.data.questionIndex;
42
+ }
43
+ /**
44
+ * Fetches the questions on currently active page
45
+ */
46
+ getCurrentPageQuestions() {
47
+ this.questionsArray = cloneDeep(this.config.data.allQuestions);
48
+ this.questionsArray = this.questionsArray.filter((question) => question.page === this.currentQuestion.page);
49
+ }
50
+ /**
51
+ * Sets the index and title of current question
52
+ * @param index Current index of question
53
+ * @param questionTitle Title of question at index i
54
+ */
55
+ setIndex(selectedQuestionName) {
56
+ let index = this.questionsArray.findIndex((x) => x.name === selectedQuestionName);
57
+ this.showError.isVisible = false;
58
+ this.selectedLogicQuestion = index;
59
+ this.logic.operator = '';
60
+ this.selectedValue = '';
61
+ this.logic.questionTitle = this.questionsArray[index].title;
62
+ this.selectedLogicQuestionType = this.questionsArray[this.selectedLogicQuestion].type;
63
+ this.setValuesForLogicDropdown();
64
+ }
65
+ setOperator(evt) {
66
+ this.logic.operator = evt;
67
+ }
68
+ /**
69
+ * populates the logic dropdown based on question type
70
+ */
71
+ setValuesForLogicDropdown() {
72
+ let defaultOperatorMap = [{ key: '=', value: 'Equals' },
73
+ { key: '!=', value: 'Not Equals' },
74
+ { key: 'answered', value: 'If answered' }];
75
+ const type = this.questionsArray[this.selectedLogicQuestion].type;
76
+ if (['star-rating', 'slider'].includes(type)) {
77
+ defaultOperatorMap.push({ key: '>', value: 'Greater than' }, { key: '<', value: 'Less than' }, { key: '>=', value: 'Greater or equals' }, { key: '<=', value: 'Less or equals' });
78
+ }
79
+ else if (['file-upload', 'matrix-dropdown', 'rating-scale', 'multiple-textbox'].includes(type)) {
80
+ defaultOperatorMap = [{ key: 'answered', value: 'If answered' }];
81
+ }
82
+ else if (['date-time'].includes(type)) {
83
+ defaultOperatorMap.push({ key: 'before', value: 'Before' }, { key: 'after', value: 'After' }, { key: 'beforeEquals', value: 'Before or equals' }, { key: 'afterEquals', value: 'After or equals' });
84
+ }
85
+ this.operatorMap = [...defaultOperatorMap];
86
+ this.disableLogicDropdown = false;
87
+ }
88
+ /**
89
+ * Operation on selecting value from checkbox
90
+ * @param event Event triggered on selecting value of checkbox
91
+ * @param title Title of the checkbox option selected
92
+ */
93
+ checkboxStatus(evt) {
94
+ this.selectedValue = '';
95
+ if (evt.checked === true) {
96
+ this.checkboxValue.push(evt.choice.title);
97
+ }
98
+ else {
99
+ this.checkboxValue = this.checkboxValue.filter(value => evt.choice.title !== value);
100
+ }
101
+ this.selectedValue = this.checkboxValue;
102
+ }
103
+ multipleChoiceChecked(evt) {
104
+ this.setSelectedValue(evt.choice.title);
105
+ }
106
+ rankingStatus(choice) {
107
+ this.questionsArray[this.selectedLogicQuestion].choices = choice;
108
+ }
109
+ /**
110
+ * Operation on entering value to multiple text boxes
111
+ */
112
+ setMultiplTextStatus() {
113
+ this.selectedValue = '';
114
+ this.questionsArray[this.selectedLogicQuestion].choices.forEach((choice) => {
115
+ if (choice.value !== '') {
116
+ this.selectedValue += choice.title + ':' + choice.value;
117
+ }
118
+ if (this.selectedValue !== '') {
119
+ this.selectedValue += ';';
120
+ }
121
+ });
122
+ }
123
+ /**
124
+ * Adds the logic on click of add logic button
125
+ */
126
+ addLogic() {
127
+ if (this.questionsArray[this.selectedLogicQuestion].type === 'ranking') {
128
+ this.populateSelectedValueForRanking();
129
+ }
130
+ else if (this.questionsArray[this.selectedLogicQuestion].type === 'multiple-textbox') {
131
+ this.setMultiplTextStatus();
132
+ }
133
+ else if (this.questionsArray[this.selectedLogicQuestion].type === 'date-time') {
134
+ this.setValueForDateTimeType();
135
+ }
136
+ this.showError.isVisible = false;
137
+ this.logic.value = this.selectedValue;
138
+ if (this.logic.operator === 'answered' || this.selectedValue !== '') {
139
+ if (!some([this.currentQuestion.visibilityLogic], this.logic) &&
140
+ (this.selectedValue !== 'answered') && this.logic.questionName !== '' && this.logic.operator !== '') {
141
+ if (this.checkForLogicValue()) {
142
+ this.currentQuestion.visibilityLogic.push(this.logic);
143
+ this.checkboxValue = [];
144
+ }
145
+ }
146
+ }
147
+ else {
148
+ this.showError.isVisible = true;
149
+ if (this.selectedLogicQuestionType == 'single-textbox' || this.selectedLogicQuestionType == 'comment-box') {
150
+ this.showError.errorMessage = 'Please enter a value to add logic';
151
+ }
152
+ else {
153
+ this.showError.errorMessage = 'Please select a value to add logic';
154
+ }
155
+ }
156
+ if (this.currentQuestion.visibilityLogic.length > 0) {
157
+ this.currentQuestion.isRequired = false;
158
+ }
159
+ if (!this.showError.isVisible) {
160
+ this.resetLogic();
161
+ this.closePopup('ADD_LOGIC');
162
+ }
163
+ }
164
+ closePopup(mode) {
165
+ this.dialog.close({ action: mode, logic: this.currentQuestion.visibilityLogic });
166
+ }
167
+ /**
168
+ * Populates logic selected value for ranking type question
169
+ */
170
+ populateSelectedValueForRanking() {
171
+ const rankingArray = [];
172
+ this.questionsArray[this.selectedLogicQuestion].choices.forEach((choice) => {
173
+ rankingArray.push(choice.title);
174
+ });
175
+ this.selectedValue = rankingArray.join();
176
+ }
177
+ /**
178
+ * Validation for logic value (Validation: Previously value is entered or not for the particular question type)
179
+ */
180
+ checkForLogicValue() {
181
+ const logicValues = [];
182
+ this.currentQuestion.visibilityLogic.forEach((logic) => {
183
+ if (this.logic.questionTitle === logic.questionTitle) {
184
+ logicValues.push(logic.value);
185
+ }
186
+ });
187
+ if (!logicValues.includes(this.logic.value)) {
188
+ logicValues.push(this.logic.value);
189
+ this.showError.isVisible = false;
190
+ return true;
191
+ }
192
+ this.showError.errorMessage = 'Logic already applied for this value. Please select another value to apply logic';
193
+ this.showError.isVisible = true;
194
+ if (!this.showError.isVisible) {
195
+ this.resetLogic();
196
+ }
197
+ return false;
198
+ }
199
+ /**
200
+ * Deletes the logic having given index from visibility logic list
201
+ * @param index Index of selected logic
202
+ */
203
+ deleteLogic(index) {
204
+ this.currentQuestion.visibilityLogic.splice(index, 1);
205
+ }
206
+ /**
207
+ * Assigns the selected value to value that needs to be displayed to user
208
+ * @param selectedVal Value selected to be displayed
209
+ */
210
+ setSelectedValue(selectedVal) {
211
+ this.showError.isVisible = false;
212
+ if (this.questionsArray[this.selectedLogicQuestion].type === 'date-time') {
213
+ this.setValueForDateTimeType();
214
+ }
215
+ else {
216
+ this.selectedValue = selectedVal;
217
+ }
218
+ }
219
+ /**
220
+ * For date/time assigns the selected value to value that needs to be displayed to user
221
+ */
222
+ setValueForDateTimeType() {
223
+ this.selectedValue = '';
224
+ if (!this.questionsArray[this.selectedLogicQuestion].date.value &&
225
+ !this.questionsArray[this.selectedLogicQuestion].time.value) {
226
+ this.showError.isVisible = true;
227
+ this.showError.errorMessage = 'Please select a value to add logic';
228
+ }
229
+ else {
230
+ if (!this.questionsArray[this.selectedLogicQuestion].date.value &&
231
+ this.questionsArray[this.selectedLogicQuestion].time.value) {
232
+ this.selectedValue = this.questionsArray[this.selectedLogicQuestion].time.title + ': ' +
233
+ this.questionsArray[this.selectedLogicQuestion].time.value;
234
+ }
235
+ else if (this.questionsArray[this.selectedLogicQuestion].date.value &&
236
+ !this.questionsArray[this.selectedLogicQuestion].time.value) {
237
+ this.selectedValue = this.questionsArray[this.selectedLogicQuestion].date.title + ': ' +
238
+ this.formateWithPipe(this.questionsArray[this.selectedLogicQuestion].date.value);
239
+ }
240
+ else {
241
+ this.selectedValue = this.questionsArray[this.selectedLogicQuestion].date.title + ': ' +
242
+ this.formateWithPipe(this.questionsArray[this.selectedLogicQuestion].date.value) + ', ' +
243
+ this.questionsArray[this.selectedLogicQuestion].time.title + ': ' +
244
+ this.questionsArray[this.selectedLogicQuestion].time.value;
245
+ }
246
+ }
247
+ if (this.questionsArray[this.selectedLogicQuestion].date.value) {
248
+ this.logic['date'] = this.formateBySlash(this.questionsArray[this.selectedLogicQuestion].date.value);
249
+ }
250
+ else {
251
+ this.logic['date'] = '';
252
+ }
253
+ if (this.questionsArray[this.selectedLogicQuestion].time.value) {
254
+ this.logic['time'] = this.questionsArray[this.selectedLogicQuestion].time.value;
255
+ }
256
+ else {
257
+ this.logic['time'] = '';
258
+ }
259
+ this.questionsArray[this.selectedLogicQuestion].date.value = '';
260
+ this.questionsArray[this.selectedLogicQuestion].time.value = '';
261
+ }
262
+ /**
263
+ * Empties the selected value if the logic operator is 'answered'
264
+ * @param logicOperator Logic operator selected from logic dropdown
265
+ */
266
+ onSelectLogic(logicOperator) {
267
+ if (logicOperator === 'answered') {
268
+ this.selectedValue = '';
269
+ }
270
+ }
271
+ /**
272
+ * Empties/Resets the logic fields
273
+ */
274
+ resetLogic() {
275
+ this.selectedLogicQuestionType = '';
276
+ this.selectedValue = '';
277
+ this.selectedLogicQuestion = null;
278
+ this.disableLogicDropdown = true;
279
+ this.operatorMap = [];
280
+ this.logic = {
281
+ andOr: 'and',
282
+ questionName: '',
283
+ operator: '',
284
+ questionTitle: '',
285
+ value: this.selectedValue
286
+ };
287
+ this.showError.isVisible = false;
288
+ this.showError.errorMessage = '';
289
+ }
290
+ /**
291
+ * Assigns the selected star rating value to selected value and updates in main question array list
292
+ * @param selectedValueIndex Index of selected value
293
+ * @param questionIndex Index of current question
294
+ */
295
+ captureStarValue(selectedValueIndex) {
296
+ this.questionsArray[this.selectedLogicQuestion].value = selectedValueIndex + 1;
297
+ this.selectedValue = selectedValueIndex + 1;
298
+ }
299
+ /**
300
+ * Converts the date to toLocaleDateString format
301
+ * @param date Date to be converted
302
+ */
303
+ formatDate(date) {
304
+ return (new Date(date)).toLocaleDateString();
305
+ }
306
+ /**
307
+ * Operation On drag/drop of option of ranking type question
308
+ * @param event Event triggered when option of ranking type question is dragged and dropped
309
+ */
310
+ // drop(event: CdkDragDrop<string[]>) {
311
+ // moveItemInArray(this.questionsArray[this.selectedLogicQuestion].choices, event.previousIndex, event.currentIndex);
312
+ // }
313
+ formateWithPipe(date) {
314
+ var datePipe = new DatePipe('en-US');
315
+ return datePipe.transform(date, 'dd MMM yyyy');
316
+ }
317
+ formateBySlash(date) {
318
+ var datePipe = new DatePipe('en-US');
319
+ return datePipe.transform(date, 'yyyy-MM-ddTHH:mm:ss.SSS', '+0:00') + 'Z';
320
+ }
321
+ }
322
+ AddLogicComponent.decorators = [
323
+ { type: Component, args: [{
324
+ selector: 'app-add-logic',
325
+ template: "<div class=\"add-logic\">\r\n <div class=\"add-logic-head vx-d-flex vx-align-center vx-justify-between vx-pl-3 vx-pr-3 vx-mb-5\">\r\n <div class=\"heading vx-fs-14 vx-fw-500 vx-label-txt\">Add Logic & Display Conditions</div>\r\n <button class=\"close vx-p-0 vx-m-0 vx-d-flex vx-align-center\" (click)=\"closePopup('CLOSE')\"><i class=\"icons vx-fs-16 vx-label-txt\">&#xe9ae;</i></button>\r\n </div>\r\n <div class=\"add-logic-body\">\r\n <div class=\"question-heading vx-fs-11 vx-fw-500 vx-label-txt vx-tt-uppercase vx-mb-2 vx-pl-2\">QUESTION {{questionIndex+1}} <span class=\"vx-fs-16 vx-fw-400 vx-txt-red vx-ml-1\" *ngIf=\"currentQuestion.isRequired === true\">*</span></div>\r\n <div class=\"question-name vx-fs-16 vx-label-txt vx-lh-6 vx-pt-1 vx-pb-1 vx-mb-5\" [innerHTML]=\"currentQuestion?.title ? currentQuestion?.title:'Question'\">\r\n <i class=\"icons info vx-txt-blue vx-ml-2\" *ngIf=\"currentQuestion.hasComments\" [appTooltip]=\"currentQuestion.comments\" placement=\"bottom-right\" delay=\"0\" type=\"white\" [tooltipMandatory]=\"true\">&#xe91f;</i></div>\r\n <div class=\"logic-condition vx-p-2 vx-pl-3 vx-pr-3 vx-mb-5\">\r\n <div class=\"heading vx-fs-14 vx-fw-500 vx-label-txt vx-mb-1\">Is visible when</div>\r\n <div class=\"details vx-fs-12 vx-paragraph-txt\">Use this to define display conditions for the questions in the assessment.</div>\r\n </div>\r\n <div class=\"label vx-fs-11 vx-fw-500 vx-label-txt vx-tt-uppercase vx-mb-1\">SELECT QUESTION</div>\r\n <div class=\"select-box vx-d-flex vx-align-center vx-justify-between vx-pl-3 vx-pr-3 vx-mb-5\" appPopover (click)=\"selectQuestion.popover()\" position=\"left\">\r\n <span class=\"name vx-fs-12 vx-paragraph-txt\" [appTooltip]=\"'Select a question'\" placement=\"bottom-left\" delay=\"0\" type=\"black\" [tooltipMandatory]=\"false\">{{questionsArray[selectedLogicQuestion]?.title | questionParser}}</span>\r\n <i class=\"icons vx-fs-10 vx-paragraph-txt\">&#xe9e8;</i>\r\n </div>\r\n <app-popover #selectQuestion>\r\n <div class=\"select-question-popover\">\r\n <ul class=\"vx-p-0 vx-m-0\">\r\n <li *ngFor=\"let data of questionsArray | questionFilter : currentQuestion.name\">\r\n <button class=\"vx-d-block vx-p-2 vx-m-0 vx-w-100\" (click)=\"logic.questionName = data?.name;setIndex(data?.name)\">\r\n <div class=\"value vx-fs-12 vx-paragraph-txt\" [appTooltip]=\"data?.title\" placement=\"bottom-left\" delay=\"0\" type=\"black\" [tooltipMandatory]=\"false\">{{data?.title}}</div>\r\n </button>\r\n </li>\r\n </ul>\r\n </div>\r\n </app-popover>\r\n <ng-container *ngIf=\"operatorMap?.length > 0\">\r\n <div class=\"label vx-fs-11 vx-fw-500 vx-label-txt vx-tt-uppercase vx-mb-1\">LOGICAL OPERATOR</div>\r\n\r\n <div class=\"operator-item vx-mb-5\">\r\n <ul class=\"vx-d-flex vx-p-0 vx-m-0\">\r\n <li class=\"vx-d-flex vx-align-center vx-p-3 vx-mr-2\" *ngFor='let operator of operatorMap'>\r\n <app-cs-radio name=\"question.name\" (checkedEvent)=\"setOperator(operator.key)\"><span class=\"name vx-fs-11 vx-paragraph-txt vx-tt-uppercase\">{{operator.value}}</span></app-cs-radio>\r\n </li>\r\n </ul>\r\n </div>\r\n </ng-container>\r\n \r\n <ng-container *ngIf=\"logic.questionName != '' && (logic.operator && logic.operator != 'answered') \">\r\n <div class=\"label vx-fs-11 vx-fw-500 vx-label-txt vx-tt-uppercase vx-mb-1\">PLEASE SELECT THE VALUE</div>\r\n <app-logic-multiple-choice *ngIf=\"selectedLogicQuestionType=='multiple-choice'\" [question]=\"questionsArray[selectedLogicQuestion]\" (changeEvent)=\"multipleChoiceChecked($event)\"></app-logic-multiple-choice>\r\n <app-logic-checkbox *ngIf=\"selectedLogicQuestionType=='checkbox'\" [question]=\"questionsArray[selectedLogicQuestion]\" (changeEvent)=\"checkboxStatus($event)\"></app-logic-checkbox>\r\n <app-logic-image-choice *ngIf=\"false\"></app-logic-image-choice>\r\n <app-logic-star-rating *ngIf=\"false\"></app-logic-star-rating>\r\n <app-logic-single-textbox *ngIf=\"selectedLogicQuestionType=='single-textbox'\" [question]=\"questionsArray[selectedLogicQuestion]\" (changeEvent)=\"selectedValue = $event\"></app-logic-single-textbox>\r\n <app-logic-comment-box *ngIf=\"false\"></app-logic-comment-box>\r\n <app-logic-dropdown *ngIf=\"selectedLogicQuestionType=='dropdown'\" [question]=\"questionsArray[selectedLogicQuestion]\" (changeEvent)=\"multipleChoiceChecked($event)\"></app-logic-dropdown>\r\n <app-logic-ranking *ngIf=\"false\"></app-logic-ranking>\r\n <app-logic-slider *ngIf=\"false\"></app-logic-slider>\r\n <app-logic-multiple-textbox *ngIf=\"false\" ></app-logic-multiple-textbox>\r\n <app-logic-date-time *ngIf=\"selectedLogicQuestionType=='date-time'\" [question]=\"questionsArray[selectedLogicQuestion]\" (changeEvent)=\"multipleChoiceChecked($event)\"></app-logic-date-time>\r\n </ng-container>\r\n <div class=\"error-msg vx-fs-11 vx-txt-red\" *ngIf='showError.isVisible'>{{showError.errorMessage}}</div>\r\n </div>\r\n <div class=\"add-logic-footer vx-d-flex vx-align-center vx-justify-end vx-pl-3 vx-pr-3 vx-mt-5\">\r\n <button class=\"reset-btn vx-fs-11 vx-fw-500 vx-txt-blue vx-tt-uppercase vx-p-0 vx-pl-4 vx-pr-4 vx-m-0 vx-d-flex vx-align-center vx-justify-between\" (click)=\"resetLogic()\">RESET</button>\r\n <button class=\"logic-btn vx-fs-11 vx-fw-500 vx-txt-white vx-tt-uppercase vx-p-0 vx-pl-4 vx-pr-4 vx-m-0 vx-ml-1 vx-d-flex vx-align-center vx-justify-between\" (click)=\"addLogic()\">ADD LOGIC</button>\r\n </div>\r\n</div>",
326
+ styles: ["@import url(\"https://cdn.v-comply.com/design-system/css/icons/icons.css\");@import url(\"https://cdn.v-comply.com/design-system/css/mixin/mixin.css\");@import url(\"https://cdn.v-comply.com/design-system/css/display/display.css\");@import url(\"https://cdn.v-comply.com/design-system/css/alignment/alignment.css\");@import url(\"https://cdn.v-comply.com/design-system/css/color/color.css\");@import url(\"https://cdn.v-comply.com/design-system/css/text/text.css\");@import url(\"https://cdn.v-comply.com/design-system/css/width/width.css\");@import url(\"https://cdn.v-comply.com/design-system/css/margin/margin.css\");@import url(\"https://cdn.v-comply.com/design-system/css/margin/margin-top.css\");@import url(\"https://cdn.v-comply.com/design-system/css/margin/margin-bottom.css\");@import url(\"https://cdn.v-comply.com/design-system/css/margin/margin-left.css\");@import url(\"https://cdn.v-comply.com/design-system/css/margin/margin-right.css\");@import url(\"https://cdn.v-comply.com/design-system/css/padding/padding.css\");@import url(\"https://cdn.v-comply.com/design-system/css/padding/padding-top.css\");@import url(\"https://cdn.v-comply.com/design-system/css/padding/padding-bottom.css\");@import url(\"https://cdn.v-comply.com/design-system/css/padding/padding-left.css\");@import url(\"https://cdn.v-comply.com/design-system/css/padding/padding-right.css\");::ng-deep .add-logic{background:#fff;border-radius:.25rem;width:80rem}::ng-deep .add-logic-head{background:#fbfbfb;border-bottom:1px solid #f1f1f1;border-radius:.25rem .25rem 0 0;height:2.75rem}::ng-deep .add-logic-head button.close{background:transparent;border:none;border-radius:0}::ng-deep .add-logic-body{height:28rem;padding-left:2rem;padding-right:2rem;overflow-y:auto}::ng-deep .add-logic-body::-webkit-scrollbar-track{background-color:transparent}::ng-deep .add-logic-body .question-heading{position:relative}::ng-deep .add-logic-body .question-heading:before{background:#4681ef;content:\"\";position:absolute;top:.4375rem;left:0;width:.125rem;height:.875rem}::ng-deep .add-logic-body .question-name i.info{cursor:pointer;position:relative;top:.125rem}::ng-deep .add-logic-body .logic-condition{background:#f8f8f8;border-radius:.25rem;position:relative}::ng-deep .add-logic-body .logic-condition:before{background:#4681ef;border-radius:.25rem;content:\"\";position:absolute;top:0;left:0;width:3px;height:100%}::ng-deep .add-logic-body .logic-condition .details,::ng-deep .add-logic-body .logic-condition .heading{padding-left:.125rem}::ng-deep .add-logic-body .select-box{border:1px solid #dbdbdb;border-radius:.25rem;height:2.5rem;cursor:pointer}::ng-deep .add-logic-body .select-box .name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden;width:calc(100% - 3rem)}::ng-deep .add-logic-body .operator-item ul{list-style-type:none}::ng-deep .add-logic-body .operator-item ul li{border:1px solid #dbdbdb;border-radius:.25rem;height:2.5rem;width:100%}::ng-deep .add-logic-body .operator-item ul li:last-of-type,::ng-deep .add-logic-body .operator-item ul li:only-child{margin-right:0!important}::ng-deep .add-logic-body .operator-item ul li cs-radio{height:1.25rem;width:100%}::ng-deep .add-logic-body .operator-item ul li cs-radio .radio-item{width:100%!important}::ng-deep .add-logic-footer{background:#fbfbfb;border-top:1px solid #f1f1f1;border-radius:0 0 .25rem .25rem;height:2.75rem}::ng-deep .add-logic-footer button{border-radius:.125rem;height:1.75rem}::ng-deep .add-logic-footer button.reset-btn{background:#fff;border:1px solid #f1f1f1}::ng-deep .add-logic-footer button.logic-btn{background:#1e5dd3;border:none}.select-question-popover{background:#fff;box-shadow:0 3px 6px #1c5bd140;border-radius:.25rem;width:71rem;-webkit-animation:scale-up-center .2s cubic-bezier(.39,.575,.565,1) both;animation:scale-up-center .2s cubic-bezier(.39,.575,.565,1) both}.select-question-popover ul{list-style-type:none;max-height:12rem;overflow-y:auto}.select-question-popover ul::-webkit-scrollbar-track{background-color:transparent}.select-question-popover ul li{border-bottom:1px solid #f1f1f1}.select-question-popover ul li:last-of-type,.select-question-popover ul li:only-child{border-bottom:none}.select-question-popover ul li button{background:transparent;border:none;border-radius:0;text-align:left}.select-question-popover ul li button .value{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}"]
327
+ },] }
328
+ ];
329
+ AddLogicComponent.ctorParameters = () => [
330
+ { type: DialogConfig },
331
+ { type: DialogRef }
332
+ ];
333
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLWxvZ2ljLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Z4LXdvcmtmbG93LWVuZ2luZS9zcmMvbGliL3NoYXJlZENvbXBvbmVudHMvYXNzZXNzbWVudC1lZGl0b3IvY29tcG9uZW50cy9hZGQtbG9naWMvYWRkLWxvZ2ljLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDM0MsT0FBTyxFQUFFLFNBQVMsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUNsRCxPQUFPLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUV6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFFdkUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBTWpFLE1BQU0sT0FBTyxpQkFBaUI7SUFpQzVCLFlBQW1CLE1BQW9CLEVBQVMsTUFBaUI7UUFBOUMsV0FBTSxHQUFOLE1BQU0sQ0FBYztRQUFTLFdBQU0sR0FBTixNQUFNLENBQVc7UUE3QmpFLGtCQUFhLEdBQVEsRUFBRSxDQUFDO1FBRXhCLDhCQUF5QixHQUFHLEVBQUUsQ0FBQztRQUMvQixrQkFBYSxHQUFVLEVBQUUsQ0FBQztRQUMxQix5QkFBb0IsR0FBRyxJQUFJLENBQUM7UUFDNUIsZ0JBQVcsR0FBUSxFQUFFLENBQUM7UUFFdEIsY0FBUyxHQUFHLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxZQUFZLEVBQUUsRUFBRSxFQUFFLENBQUM7UUFFbkQsVUFBSyxHQUFPO1lBQ1YsS0FBSyxFQUFFLEtBQUs7WUFDWixZQUFZLEVBQUUsRUFBRTtZQUNoQixRQUFRLEVBQUUsRUFBRTtZQUNaLEtBQUssRUFBRSxJQUFJLENBQUMsYUFBYTtZQUN6QixhQUFhLEVBQUUsRUFBRTtTQUNsQixD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LEdBQUcsS0FBSyxDQUFDO1FBQ2pDLElBQUksQ0FBQyxTQUFTLENBQUMsWUFBWSxHQUFHLEVBQUUsQ0FBQztJQUNuQyxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILGdCQUFnQixDQUFDLGtCQUFzQjtRQUNyQyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDLEtBQUssR0FBRyxrQkFBa0IsR0FBRyxDQUFDLENBQUM7UUFDL0UsSUFBSSxDQUFDLGFBQWEsR0FBRyxrQkFBa0IsR0FBRyxDQUFDLENBQUM7SUFDOUMsQ0FBQztJQUVEOzs7T0FHRztJQUNILFVBQVUsQ0FBQyxJQUFVO1FBQ25CLE9BQU8sQ0FBQyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLGtCQUFrQixFQUFFLENBQUM7SUFDL0MsQ0FBQztJQUVEOzs7T0FHRztJQUNILHVDQUF1QztJQUN2Qyx1SEFBdUg7SUFDdkgsSUFBSTtJQUdKLGVBQWUsQ0FBQyxJQUFRO1FBQ3RCLElBQUksUUFBUSxHQUFHLElBQUksUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3JDLE9BQVEsUUFBUSxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsYUFBYSxDQUFDLENBQUM7SUFDbEQsQ0FBQztJQUVELGNBQWMsQ0FBQyxJQUFRO1FBQ3JCLElBQUksUUFBUSxHQUFHLElBQUksUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3JDLE9BQVEsUUFBUSxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUUseUJBQXlCLEVBQUMsT0FBTyxDQUFDLEdBQUMsR0FBRyxDQUFDO0lBQzFFLENBQUM7OztZQXhXRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLGVBQWU7Z0JBQ3pCLHc1TEFBeUM7O2FBRTFDOzs7WUFQUSxZQUFZO1lBRVosU0FBUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERhdGVQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgY2xvbmVEZWVwLCBzb21lIH0gZnJvbSAnbG9kYXNoJztcclxuXHJcbmltcG9ydCB7IERpYWxvZ0NvbmZpZyB9IGZyb20gJy4uLy4uLy4uLy4uL3VpLWtpdC9kaWFsb2cvZGlhbG9nLWNvbmZpZyc7XHJcblxyXG5pbXBvcnQgeyBEaWFsb2dSZWYgfSBmcm9tICcuLi8uLi8uLi8uLi91aS1raXQvZGlhbG9nL2RpYWxvZy1yZWYnO1xyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FwcC1hZGQtbG9naWMnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9hZGQtbG9naWMuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2FkZC1sb2dpYy5jb21wb25lbnQubGVzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBZGRMb2dpY0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcblxyXG4gIHB1YmxpYyBjdXJyZW50UXVlc3Rpb24gITphbnk7XHJcbiAgcHVibGljIHF1ZXN0aW9uc0FycmF5ICE6YW55O1xyXG4gIHNlbGVjdGVkVmFsdWU6IGFueSA9ICcnO1xyXG4gIHNlbGVjdGVkTG9naWNRdWVzdGlvbiAhOiBhbnk7XHJcbiAgc2VsZWN0ZWRMb2dpY1F1ZXN0aW9uVHlwZSA9ICcnO1xyXG4gIGNoZWNrYm94VmFsdWU6IGFueVtdID0gW107XHJcbiAgZGlzYWJsZUxvZ2ljRHJvcGRvd24gPSB0cnVlO1xyXG4gIG9wZXJhdG9yTWFwOiBhbnkgPSBbXTtcclxuICBxdWVzdGlvbkluZGV4ITogbnVtYmVyO1xyXG4gIHNob3dFcnJvciA9IHsgaXNWaXNpYmxlOiBmYWxzZSwgZXJyb3JNZXNzYWdlOiAnJyB9O1xyXG4gIGVkaXRvck1vZGUgITphbnk7XHJcbiAgbG9naWM6YW55ID0ge1xyXG4gICAgYW5kT3I6ICdhbmQnLFxyXG4gICAgcXVlc3Rpb25OYW1lOiAnJyxcclxuICAgIG9wZXJhdG9yOiAnJyxcclxuICAgIHZhbHVlOiB0aGlzLnNlbGVjdGVkVmFsdWUsXHJcbiAgICBxdWVzdGlvblRpdGxlOiAnJ1xyXG4gIH07XHJcbiAgb3BlcmF0b3JWYWwgPSB7XHJcbiAgICAnPSc6ICdFcXVhbHMnLFxyXG4gICAgJyE9JzogJ05vdCBFcXVhbHMnLFxyXG4gICAgJz4nOiAnR3JlYXRlciB0aGFuJyxcclxuICAgICc8JzogJ0xlc3MgdGhhbicsXHJcbiAgICAnPj0nOiAnR3JlYXRlciBvciBlcXVhbHMnLFxyXG4gICAgJzw9JzogJ0xlc3Mgb3IgZXF1YWxzJyxcclxuICAgIGFuc3dlcmVkOiAnSWYgYW5zd2VyZWQnLFxyXG4gICAgYmVmb3JlOiAnQmVmb3JlJyxcclxuICAgIGFmdGVyOiAnQWZ0ZXInLFxyXG4gICAgYmVmb3JlRXF1YWxzOiAnQmVmb3JlIG9yIGVxdWFscycsXHJcbiAgICBhZnRlckVxdWFsczogJ0FmdGVyIG9yIGVxdWFscydcclxuICB9O1xyXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBjb25maWc6IERpYWxvZ0NvbmZpZywgcHVibGljIGRpYWxvZzogRGlhbG9nUmVmKSB7IH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLmN1cnJlbnRRdWVzdGlvbiA9IGNsb25lRGVlcCh0aGlzLmNvbmZpZy5kYXRhLmN1cnJlbnRRdWVzdGlvbik7XHJcbiAgICB0aGlzLmdldEN1cnJlbnRQYWdlUXVlc3Rpb25zKCk7XHJcbiAgICB0aGlzLmVkaXRvck1vZGUgPSB0aGlzLmNvbmZpZy5kYXRhLmVkaXRvck1vZGU7XHJcbiAgICB0aGlzLnF1ZXN0aW9uSW5kZXggPSB0aGlzLmNvbmZpZy5kYXRhLnF1ZXN0aW9uSW5kZXg7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAqIEZldGNoZXMgdGhlIHF1ZXN0aW9ucyBvbiBjdXJyZW50bHkgYWN0aXZlIHBhZ2VcclxuICAqL1xyXG4gIGdldEN1cnJlbnRQYWdlUXVlc3Rpb25zKCkge1xyXG4gICAgdGhpcy5xdWVzdGlvbnNBcnJheSA9IGNsb25lRGVlcCh0aGlzLmNvbmZpZy5kYXRhLmFsbFF1ZXN0aW9ucyk7XHJcbiAgICB0aGlzLnF1ZXN0aW9uc0FycmF5ID0gdGhpcy5xdWVzdGlvbnNBcnJheS5maWx0ZXIoKHF1ZXN0aW9uOmFueSkgPT5cclxuICAgICAgcXVlc3Rpb24ucGFnZSA9PT0gdGhpcy5jdXJyZW50UXVlc3Rpb24ucGFnZSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICogU2V0cyB0aGUgaW5kZXggYW5kIHRpdGxlIG9mIGN1cnJlbnQgcXVlc3Rpb25cclxuICogQHBhcmFtIGluZGV4IEN1cnJlbnQgaW5kZXggb2YgcXVlc3Rpb25cclxuICogQHBhcmFtIHF1ZXN0aW9uVGl0bGUgVGl0bGUgb2YgcXVlc3Rpb24gYXQgaW5kZXggaVxyXG4gKi9cclxuICBzZXRJbmRleChzZWxlY3RlZFF1ZXN0aW9uTmFtZTphbnkpIHtcclxuICAgIGxldCBpbmRleCA9IHRoaXMucXVlc3Rpb25zQXJyYXkuZmluZEluZGV4KCh4OmFueSkgPT4geC5uYW1lID09PSBzZWxlY3RlZFF1ZXN0aW9uTmFtZSk7XHJcbiAgICB0aGlzLnNob3dFcnJvci5pc1Zpc2libGUgPSBmYWxzZTtcclxuICAgIHRoaXMuc2VsZWN0ZWRMb2dpY1F1ZXN0aW9uID0gaW5kZXg7XHJcbiAgICB0aGlzLmxvZ2ljLm9wZXJhdG9yID0gJyc7XHJcbiAgICB0aGlzLnNlbGVjdGVkVmFsdWUgPSAnJztcclxuICAgIHRoaXMubG9naWMucXVlc3Rpb25UaXRsZSA9IHRoaXMucXVlc3Rpb25zQXJyYXlbaW5kZXhdLnRpdGxlO1xyXG4gICAgdGhpcy5zZWxlY3RlZExvZ2ljUXVlc3Rpb25UeXBlID0gdGhpcy5xdWVzdGlvbnNBcnJheVt0aGlzLnNlbGVjdGVkTG9naWNRdWVzdGlvbl0udHlwZTtcclxuICAgIHRoaXMuc2V0VmFsdWVzRm9yTG9naWNEcm9wZG93bigpO1xyXG4gIH1cclxuXHJcbiAgc2V0T3BlcmF0b3IoZXZ0OmFueSkge1xyXG4gICAgdGhpcy5sb2dpYy5vcGVyYXRvciA9IGV2dDtcclxuICB9XHJcbiAgLyoqXHJcbiAgICogcG9wdWxhdGVzIHRoZSBsb2dpYyBkcm9wZG93biBiYXNlZCBvbiBxdWVzdGlvbiB0eXBlXHJcbiAgICovXHJcbiAgc2V0VmFsdWVzRm9yTG9naWNEcm9wZG93bigpIHtcclxuICAgIGxldCBkZWZhdWx0T3BlcmF0b3JNYXAgPSBbeyBrZXk6ICc9JywgdmFsdWU6ICdFcXVhbHMnIH0sXHJcbiAgICB7IGtleTogJyE9JywgdmFsdWU6ICdOb3QgRXF1YWxzJyB9LFxyXG4gICAgeyBrZXk6ICdhbnN3ZXJlZCcsIHZhbHVlOiAnSWYgYW5zd2VyZWQnIH1dO1xyXG5cclxuICAgIGNvbnN0IHR5cGUgPSB0aGlzLnF1ZXN0aW9uc0FycmF5W3RoaXMuc2VsZWN0ZWRMb2dpY1F1ZXN0aW9uXS50eXBlO1xyXG5cclxuICAgIGlmIChbJ3N0YXItcmF0aW5nJywgJ3NsaWRlciddLmluY2x1ZGVzKHR5cGUpKSB7XHJcbiAgICAgIGRlZmF1bHRPcGVyYXRvck1hcC5wdXNoKFxyXG4gICAgICAgIHsga2V5OiAnPicsIHZhbHVlOiAnR3JlYXRlciB0aGFuJyB9LFxyXG4gICAgICAgIHsga2V5OiAnPCcsIHZhbHVlOiAnTGVzcyB0aGFuJyB9LFxyXG4gICAgICAgIHsga2V5OiAnPj0nLCB2YWx1ZTogJ0dyZWF0ZXIgb3IgZXF1YWxzJyB9LFxyXG4gICAgICAgIHsga2V5OiAnPD0nLCB2YWx1ZTogJ0xlc3Mgb3IgZXF1YWxzJyB9LFxyXG4gICAgICApO1xyXG4gICAgfSBlbHNlIGlmIChbJ2ZpbGUtdXBsb2FkJywgJ21hdHJpeC1kcm9wZG93bicsICdyYXRpbmctc2NhbGUnLCAnbXVsdGlwbGUtdGV4dGJveCddLmluY2x1ZGVzKHR5cGUpKSB7XHJcbiAgICAgIGRlZmF1bHRPcGVyYXRvck1hcCA9IFt7IGtleTogJ2Fuc3dlcmVkJywgdmFsdWU6ICdJZiBhbnN3ZXJlZCcgfV07XHJcbiAgICB9IGVsc2UgaWYgKFsnZGF0ZS10aW1lJ10uaW5jbHVkZXModHlwZSkpIHtcclxuICAgICAgZGVmYXVsdE9wZXJhdG9yTWFwLnB1c2goXHJcbiAgICAgICAgeyBrZXk6ICdiZWZvcmUnLCB2YWx1ZTogJ0JlZm9yZScgfSxcclxuICAgICAgICB7IGtleTogJ2FmdGVyJywgdmFsdWU6ICdBZnRlcicgfSxcclxuICAgICAgICB7IGtleTogJ2JlZm9yZUVxdWFscycsIHZhbHVlOiAnQmVmb3JlIG9yIGVxdWFscycgfSxcclxuICAgICAgICB7IGtleTogJ2FmdGVyRXF1YWxzJywgdmFsdWU6ICdBZnRlciBvciBlcXVhbHMnIH1cclxuICAgICAgKTtcclxuICAgIH1cclxuICAgIHRoaXMub3BlcmF0b3JNYXAgPSBbLi4uZGVmYXVsdE9wZXJhdG9yTWFwXTtcclxuICAgIHRoaXMuZGlzYWJsZUxvZ2ljRHJvcGRvd24gPSBmYWxzZTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gKiBPcGVyYXRpb24gb24gc2VsZWN0aW5nIHZhbHVlIGZyb20gY2hlY2tib3hcclxuICogQHBhcmFtIGV2ZW50IEV2ZW50IHRyaWdnZXJlZCBvbiBzZWxlY3RpbmcgdmFsdWUgb2YgY2hlY2tib3hcclxuICogQHBhcmFtIHRpdGxlIFRpdGxlIG9mIHRoZSBjaGVja2JveCBvcHRpb24gc2VsZWN0ZWRcclxuICovXHJcbiAgY2hlY2tib3hTdGF0dXMoZXZ0OmFueSkge1xyXG4gICAgXHJcbiAgICB0aGlzLnNlbGVjdGVkVmFsdWUgPSAnJztcclxuICAgIGlmIChldnQuY2hlY2tlZCA9PT0gdHJ1ZSkge1xyXG4gICAgICB0aGlzLmNoZWNrYm94VmFsdWUucHVzaChldnQuY2hvaWNlLnRpdGxlKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuY2hlY2tib3hWYWx1ZSA9IHRoaXMuY2hlY2tib3hWYWx1ZS5maWx0ZXIodmFsdWUgPT4gZXZ0LmNob2ljZS50aXRsZSAhPT0gdmFsdWUpO1xyXG4gICAgfVxyXG4gICAgdGhpcy5zZWxlY3RlZFZhbHVlID0gdGhpcy5jaGVja2JveFZhbHVlO1xyXG4gIH1cclxuXHJcblxyXG4gIG11bHRpcGxlQ2hvaWNlQ2hlY2tlZChldnQ6YW55KSB7XHJcbiAgICB0aGlzLnNldFNlbGVjdGVkVmFsdWUoZXZ0LmNob2ljZS50aXRsZSlcclxuICB9XHJcblxyXG4gIHJhbmtpbmdTdGF0dXMoY2hvaWNlOmFueSkge1xyXG4gICAgdGhpcy5xdWVzdGlvbnNBcnJheVt0aGlzLnNlbGVjdGVkTG9naWNRdWVzdGlvbl0uY2hvaWNlcyA9IGNob2ljZTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICogT3BlcmF0aW9uIG9uIGVudGVyaW5nIHZhbHVlIHRvIG11bHRpcGxlIHRleHQgYm94ZXNcclxuICAqL1xyXG4gIHNldE11bHRpcGxUZXh0U3RhdHVzKCkge1xyXG4gICAgdGhpcy5zZWxlY3RlZFZhbHVlID0gJyc7XHJcbiAgICBcclxuICAgIHRoaXMucXVlc3Rpb25zQXJyYXlbdGhpcy5zZWxlY3RlZExvZ2ljUXVlc3Rpb25dLmNob2ljZXMuZm9yRWFjaCgoY2hvaWNlOmFueSkgPT4ge1xyXG4gICAgICBpZiAoY2hvaWNlLnZhbHVlICE9PSAnJykge1xyXG4gICAgICAgIHRoaXMuc2VsZWN0ZWRWYWx1ZSArPSBjaG9pY2UudGl0bGUgKyAnOicgKyBjaG9pY2UudmFsdWU7XHJcbiAgICAgIH1cclxuICAgICAgaWYgKHRoaXMuc2VsZWN0ZWRWYWx1ZSAhPT0gJycpIHtcclxuICAgICAgICB0aGlzLnNlbGVjdGVkVmFsdWUgKz0gJzsnO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEFkZHMgdGhlIGxvZ2ljIG9uIGNsaWNrIG9mIGFkZCBsb2dpYyBidXR0b25cclxuICAgKi9cclxuICBhZGRMb2dpYygpIHtcclxuICAgIGlmICh0aGlzLnF1ZXN0aW9uc0FycmF5W3RoaXMuc2VsZWN0ZWRMb2dpY1F1ZXN0aW9uXS50eXBlID09PSAncmFua2luZycpIHtcclxuICAgICAgdGhpcy5wb3B1bGF0ZVNlbGVjdGVkVmFsdWVGb3JSYW5raW5nKCk7XHJcbiAgICB9IGVsc2UgaWYgKHRoaXMucXVlc3Rpb25zQXJyYXlbdGhpcy5zZWxlY3RlZExvZ2ljUXVlc3Rpb25dLnR5cGUgPT09ICdtdWx0aXBsZS10ZXh0Ym94Jykge1xyXG4gICAgICB0aGlzLnNldE11bHRpcGxUZXh0U3RhdHVzKCk7XHJcbiAgICB9IGVsc2UgaWYgKHRoaXMucXVlc3Rpb25zQXJyYXlbdGhpcy5zZWxlY3RlZExvZ2ljUXVlc3Rpb25dLnR5cGUgPT09ICdkYXRlLXRpbWUnKSB7XHJcbiAgICAgIHRoaXMuc2V0VmFsdWVGb3JEYXRlVGltZVR5cGUoKTtcclxuICAgICAgXHJcbiAgICB9XHJcbiAgICB0aGlzLnNob3dFcnJvci5pc1Zpc2libGUgPSBmYWxzZTtcclxuICAgIHRoaXMubG9naWMudmFsdWUgPSB0aGlzLnNlbGVjdGVkVmFsdWU7XHJcbiAgICBcclxuICAgIGlmICh0aGlzLmxvZ2ljLm9wZXJhdG9yID09PSAnYW5zd2VyZWQnIHx8IHRoaXMuc2VsZWN0ZWRWYWx1ZSAhPT0gJycpIHtcclxuICAgICAgaWYgKCFzb21lKFt0aGlzLmN1cnJlbnRRdWVzdGlvbi52aXNpYmlsaXR5TG9naWNdLCB0aGlzLmxvZ2ljKSAmJlxyXG4gICAgICAgICh0aGlzLnNlbGVjdGVkVmFsdWUgIT09ICdhbnN3ZXJlZCcpICYmIHRoaXMubG9naWMucXVlc3Rpb25OYW1lICE9PSAnJyAmJiB0aGlzLmxvZ2ljLm9wZXJhdG9yICE9PSAnJykge1xyXG4gICAgICAgIGlmICh0aGlzLmNoZWNrRm9yTG9naWNWYWx1ZSgpKSB7XHJcbiAgICAgICAgICB0aGlzLmN1cnJlbnRRdWVzdGlvbi52aXNpYmlsaXR5TG9naWMucHVzaCh0aGlzLmxvZ2ljKTtcclxuICAgICAgICAgIHRoaXMuY2hlY2tib3hWYWx1ZSA9IFtdO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5zaG93RXJyb3IuaXNWaXNpYmxlID0gdHJ1ZTtcclxuICAgICAgaWYgKHRoaXMuc2VsZWN0ZWRMb2dpY1F1ZXN0aW9uVHlwZSA9PSAnc2luZ2xlLXRleHRib3gnIHx8IHRoaXMuc2VsZWN0ZWRMb2dpY1F1ZXN0aW9uVHlwZSA9PSAnY29tbWVudC1ib3gnKSB7XHJcbiAgICAgICAgdGhpcy5zaG93RXJyb3IuZXJyb3JNZXNzYWdlID0gJ1BsZWFzZSBlbnRlciBhIHZhbHVlIHRvIGFkZCBsb2dpYyc7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy5zaG93RXJyb3IuZXJyb3JNZXNzYWdlID0gJ1BsZWFzZSBzZWxlY3QgYSB2YWx1ZSB0byBhZGQgbG9naWMnO1xyXG4gICAgICB9XHJcblxyXG4gICAgfVxyXG5cclxuXHJcblxyXG4gICAgaWYgKHRoaXMuY3VycmVudFF1ZXN0aW9uLnZpc2liaWxpdHlMb2dpYy5sZW5ndGggPiAwKSB7XHJcbiAgICAgIHRoaXMuY3VycmVudFF1ZXN0aW9uLmlzUmVxdWlyZWQgPSBmYWxzZTtcclxuICAgIH1cclxuICAgIGlmICghdGhpcy5zaG93RXJyb3IuaXNWaXNpYmxlKSB7XHJcbiAgICAgIHRoaXMucmVzZXRMb2dpYygpO1xyXG4gICAgICB0aGlzLmNsb3NlUG9wdXAoJ0FERF9MT0dJQycpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgY2xvc2VQb3B1cChtb2RlOmFueSkge1xyXG4gICAgdGhpcy5kaWFsb2cuY2xvc2UoeyBhY3Rpb246IG1vZGUsIGxvZ2ljOiB0aGlzLmN1cnJlbnRRdWVzdGlvbi52aXNpYmlsaXR5TG9naWMgfSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBQb3B1bGF0ZXMgbG9naWMgc2VsZWN0ZWQgdmFsdWUgZm9yIHJhbmtpbmcgdHlwZSBxdWVzdGlvblxyXG4gICAqL1xyXG4gIHBvcHVsYXRlU2VsZWN0ZWRWYWx1ZUZvclJhbmtpbmcoKSB7XHJcbiAgICBjb25zdCByYW5raW5nQXJyYXk6YW55ID0gW107XHJcbiAgICB0aGlzLnF1ZXN0aW9uc0FycmF5W3RoaXMuc2VsZWN0ZWRMb2dpY1F1ZXN0aW9uXS5jaG9pY2VzLmZvckVhY2goKGNob2ljZTphbnkpID0+IHtcclxuICAgICAgcmFua2luZ0FycmF5LnB1c2goY2hvaWNlLnRpdGxlKTtcclxuICAgIH0pO1xyXG4gICAgdGhpcy5zZWxlY3RlZFZhbHVlID0gcmFua2luZ0FycmF5LmpvaW4oKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFZhbGlkYXRpb24gZm9yIGxvZ2ljIHZhbHVlIChWYWxpZGF0aW9uOiBQcmV2aW91c2x5IHZhbHVlIGlzIGVudGVyZWQgb3Igbm90IGZvciB0aGUgcGFydGljdWxhciBxdWVzdGlvbiB0eXBlKVxyXG4gICAqL1xyXG4gIGNoZWNrRm9yTG9naWNWYWx1ZSgpIHtcclxuICAgIGNvbnN0IGxvZ2ljVmFsdWVzOmFueSA9IFtdO1xyXG4gICAgdGhpcy5jdXJyZW50UXVlc3Rpb24udmlzaWJpbGl0eUxvZ2ljLmZvckVhY2goKGxvZ2ljOmFueSkgPT4ge1xyXG4gICAgICBpZiAodGhpcy5sb2dpYy5xdWVzdGlvblRpdGxlID09PSBsb2dpYy5xdWVzdGlvblRpdGxlKSB7XHJcbiAgICAgICAgbG9naWNWYWx1ZXMucHVzaChsb2dpYy52YWx1ZSk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gICAgaWYgKCFsb2dpY1ZhbHVlcy5pbmNsdWRlcyh0aGlzLmxvZ2ljLnZhbHVlKSkge1xyXG4gICAgICBsb2dpY1ZhbHVlcy5wdXNoKHRoaXMubG9naWMudmFsdWUpO1xyXG4gICAgICB0aGlzLnNob3dFcnJvci5pc1Zpc2libGUgPSBmYWxzZTtcclxuICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5zaG93RXJyb3IuZXJyb3JNZXNzYWdlID0gJ0xvZ2ljIGFscmVhZHkgYXBwbGllZCBmb3IgdGhpcyB2YWx1ZS4gUGxlYXNlIHNlbGVjdCBhbm90aGVyIHZhbHVlIHRvIGFwcGx5IGxvZ2ljJztcclxuICAgIHRoaXMuc2hvd0Vycm9yLmlzVmlzaWJsZSA9IHRydWU7XHJcbiAgICBpZiAoIXRoaXMuc2hvd0Vycm9yLmlzVmlzaWJsZSkge1xyXG4gICAgICB0aGlzLnJlc2V0TG9naWMoKTtcclxuICAgIH1cclxuICAgIHJldHVybiBmYWxzZTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIERlbGV0ZXMgdGhlIGxvZ2ljIGhhdmluZyBnaXZlbiBpbmRleCBmcm9tIHZpc2liaWxpdHkgbG9naWMgbGlzdFxyXG4gICAqIEBwYXJhbSBpbmRleCBJbmRleCBvZiBzZWxlY3RlZCBsb2dpY1xyXG4gICAqL1xyXG4gIGRlbGV0ZUxvZ2ljKGluZGV4OmFueSkge1xyXG4gICAgdGhpcy5jdXJyZW50UXVlc3Rpb24udmlzaWJpbGl0eUxvZ2ljLnNwbGljZShpbmRleCwgMSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBBc3NpZ25zIHRoZSBzZWxlY3RlZCB2YWx1ZSB0byB2YWx1ZSB0aGF0IG5lZWRzIHRvIGJlIGRpc3BsYXllZCB0byB1c2VyXHJcbiAgICogQHBhcmFtIHNlbGVjdGVkVmFsIFZhbHVlIHNlbGVjdGVkIHRvIGJlIGRpc3BsYXllZFxyXG4gICAqL1xyXG4gIHNldFNlbGVjdGVkVmFsdWUoc2VsZWN0ZWRWYWw/OiBzdHJpbmcpIHtcclxuICAgIHRoaXMuc2hvd0Vycm9yLmlzVmlzaWJsZSA9IGZhbHNlO1xyXG4gICAgaWYgKHRoaXMucXVlc3Rpb25zQXJyYXlbdGhpcy5zZWxlY3RlZExvZ2ljUXVlc3Rpb25dLnR5cGUgPT09ICdkYXRlLXRpbWUnKSB7XHJcbiAgICAgIHRoaXMuc2V0VmFsdWVGb3JEYXRlVGltZVR5cGUoKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuc2VsZWN0ZWRWYWx1ZSA9IHNlbGVjdGVkVmFsO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogRm9yIGRhdGUvdGltZSBhc3NpZ25zIHRoZSBzZWxlY3RlZCB2YWx1ZSB0byB2YWx1ZSB0aGF0IG5lZWRzIHRvIGJlIGRpc3BsYXllZCB0byB1c2VyXHJcbiAgICovXHJcbiAgc2V0VmFsdWVGb3JEYXRlVGltZVR5cGUoKSB7XHJcbiAgICB0aGlzLnNlbGVjdGVkVmFsdWUgPSAnJztcclxuICAgIFxyXG4gICAgaWYgKCF0aGlzLnF1ZXN0aW9uc0FycmF5W3RoaXMuc2VsZWN0ZWRMb2dpY1F1ZXN0aW9uXS5kYXRlLnZhbHVlICAmJlxyXG4gICAgICAhdGhpcy5xdWVzdGlvbnNBcnJheVt0aGlzLnNlbGVjdGVkTG9naWNRdWVzdGlvbl0udGltZS52YWx1ZSkge1xyXG4gICAgICB0aGlzLnNob3dFcnJvci5pc1Zpc2libGUgPSB0cnVlO1xyXG4gICAgIFxyXG4gICAgICB0aGlzLnNob3dFcnJvci5lcnJvck1lc3NhZ2UgPSAnUGxlYXNlIHNlbGVjdCBhIHZhbHVlIHRvIGFkZCBsb2dpYyc7XHJcblxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgaWYgKCF0aGlzLnF1ZXN0aW9uc0FycmF5W3RoaXMuc2VsZWN0ZWRMb2dpY1F1ZXN0aW9uXS5kYXRlLnZhbHVlICYmXHJcbiAgICAgICAgdGhpcy5xdWVzdGlvbnNBcnJheVt0aGlzLnNlbGVjdGVkTG9naWNRdWVzdGlvbl0udGltZS52YWx1ZSkge1xyXG4gICAgICAgIHRoaXMuc2VsZWN0ZWRWYWx1ZSA9IHRoaXMucXVlc3Rpb25zQXJyYXlbdGhpcy5zZWxlY3RlZExvZ2ljUXVlc3Rpb25dLnRpbWUudGl0bGUgKyAnOiAnICtcclxuICAgICAgICAgIHRoaXMucXVlc3Rpb25zQXJyYXlbdGhpcy5zZWxlY3RlZExvZ2ljUXVlc3Rpb25dLnRpbWUudmFsdWU7XHJcbiAgICAgIH0gZWxzZSBpZiAodGhpcy5xdWVzdGlvbnNBcnJheVt0aGlzLnNlbGVjdGVkTG9naWNRdWVzdGlvbl0uZGF0ZS52YWx1ZSAgJiZcclxuICAgICAgICAhdGhpcy5xdWVzdGlvbnNBcnJheVt0aGlzLnNlbGVjdGVkTG9naWNRdWVzdGlvbl0udGltZS52YWx1ZSkge1xyXG4gICAgICAgIHRoaXMuc2VsZWN0ZWRWYWx1ZSA9IHRoaXMucXVlc3Rpb25zQXJyYXlbdGhpcy5zZWxlY3RlZExvZ2ljUXVlc3Rpb25dLmRhdGUudGl0bGUgKyAnOiAnICtcclxuICAgICAgICAgIHRoaXMuZm9ybWF0ZVdpdGhQaXBlKHRoaXMucXVlc3Rpb25zQXJyYXlbdGhpcy5zZWxlY3RlZExvZ2ljUXVlc3Rpb25dLmRhdGUudmFsdWUpO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMuc2VsZWN0ZWRWYWx1ZSA9IHRoaXMucXVlc3Rpb25zQXJyYXlbdGhpcy5zZWxlY3RlZExvZ2ljUXVlc3Rpb25dLmRhdGUudGl0bGUgKyAnOiAnICtcclxuICAgICAgICAgIHRoaXMuZm9ybWF0ZVdpdGhQaXBlKHRoaXMucXVlc3Rpb25zQXJyYXlbdGhpcy5zZWxlY3RlZExvZ2ljUXVlc3Rpb25dLmRhdGUudmFsdWUpICsgJywgJyArXHJcbiAgICAgICAgICB0aGlzLnF1ZXN0aW9uc0FycmF5W3RoaXMuc2VsZWN0ZWRMb2dpY1F1ZXN0aW9uXS50aW1lLnRpdGxlICsgJzogJyArXHJcbiAgICAgICAgICB0aGlzLnF1ZXN0aW9uc0FycmF5W3RoaXMuc2VsZWN0ZWRMb2dpY1F1ZXN0aW9uXS50aW1lLnZhbHVlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBpZih0aGlzLnF1ZXN0aW9uc0FycmF5W3RoaXMuc2VsZWN0ZWRMb2dpY1F1ZXN0aW9uXS5kYXRlLnZhbHVlKXtcclxuICAgICAgdGhpcy5sb2dpY1snZGF0ZSddID0gdGhpcy5mb3JtYXRlQnlTbGFzaCh0aGlzLnF1ZXN0aW9uc0FycmF5W3RoaXMuc2VsZWN0ZWRMb2dpY1F1ZXN0aW9uXS5kYXRlLnZhbHVlKTtcclxuICAgIH1lbHNle1xyXG4gICAgICB0aGlzLmxvZ2ljWydkYXRlJ10gPSAnJztcclxuICAgIH1cclxuICAgIGlmKHRoaXMucXVlc3Rpb25zQXJyYXlbdGhpcy5zZWxlY3RlZExvZ2ljUXVlc3Rpb25dLnRpbWUudmFsdWUpe1xyXG4gICAgICB0aGlzLmxvZ2ljWyd0aW1lJ10gPSB0aGlzLnF1ZXN0aW9uc0FycmF5W3RoaXMuc2VsZWN0ZWRMb2dpY1F1ZXN0aW9uXS50aW1lLnZhbHVlO1xyXG4gICAgfWVsc2V7XHJcbiAgICAgIHRoaXMubG9naWNbJ3RpbWUnXSA9ICcnO1xyXG4gICAgfVxyXG5cclxuICAgXHJcbiAgICB0aGlzLnF1ZXN0aW9uc0FycmF5W3RoaXMuc2VsZWN0ZWRMb2dpY1F1ZXN0aW9uXS5kYXRlLnZhbHVlID0gJyc7XHJcbiAgICB0aGlzLnF1ZXN0aW9uc0FycmF5W3RoaXMuc2VsZWN0ZWRMb2dpY1F1ZXN0aW9uXS50aW1lLnZhbHVlID0gJyc7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBFbXB0aWVzIHRoZSBzZWxlY3RlZCB2YWx1ZSBpZiB0aGUgbG9naWMgb3BlcmF0b3IgaXMgJ2Fuc3dlcmVkJ1xyXG4gICAqIEBwYXJhbSBsb2dpY09wZXJhdG9yIExvZ2ljIG9wZXJhdG9yIHNlbGVjdGVkIGZyb20gbG9naWMgZHJvcGRvd25cclxuICAgKi9cclxuICBvblNlbGVjdExvZ2ljKGxvZ2ljT3BlcmF0b3I6IHN0cmluZykge1xyXG4gICAgaWYgKGxvZ2ljT3BlcmF0b3IgPT09ICdhbnN3ZXJlZCcpIHtcclxuICAgICAgdGhpcy5zZWxlY3RlZFZhbHVlID0gJyc7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBFbXB0aWVzL1Jlc2V0cyB0aGUgbG9naWMgZmllbGRzXHJcbiAgICovXHJcbiAgcmVzZXRMb2dpYygpIHtcclxuICAgIHRoaXMuc2VsZWN0ZWRMb2dpY1F1ZXN0aW9uVHlwZSA9ICcnO1xyXG4gICAgdGhpcy5zZWxlY3RlZFZhbHVlID0gJyc7XHJcbiAgICB0aGlzLnNlbGVjdGVkTG9naWNRdWVzdGlvbiA9IG51bGw7XHJcbiAgICB0aGlzLmRpc2FibGVMb2dpY0Ryb3Bkb3duID0gdHJ1ZTtcclxuICAgIHRoaXMub3BlcmF0b3JNYXAgPSBbXVxyXG4gICAgdGhpcy5sb2dpYyA9IHtcclxuICAgICAgYW5kT3I6ICdhbmQnLFxyXG4gICAgICBxdWVzdGlvbk5hbWU6ICcnLFxyXG4gICAgICBvcGVyYXRvcjogJycsXHJcbiAgICAgIHF1ZXN0aW9uVGl0bGU6ICcnLFxyXG4gICAgICB2YWx1ZTogdGhpcy5zZWxlY3RlZFZhbHVlXHJcbiAgICB9O1xyXG4gICAgdGhpcy5zaG93RXJyb3IuaXNWaXNpYmxlID0gZmFsc2U7XHJcbiAgICB0aGlzLnNob3dFcnJvci5lcnJvck1lc3NhZ2UgPSAnJztcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEFzc2lnbnMgdGhlIHNlbGVjdGVkIHN0YXIgcmF0aW5nIHZhbHVlIHRvIHNlbGVjdGVkIHZhbHVlIGFuZCB1cGRhdGVzIGluIG1haW4gcXVlc3Rpb24gYXJyYXkgbGlzdFxyXG4gICAqIEBwYXJhbSBzZWxlY3RlZFZhbHVlSW5kZXggSW5kZXggb2Ygc2VsZWN0ZWQgdmFsdWVcclxuICAgKiBAcGFyYW0gcXVlc3Rpb25JbmRleCBJbmRleCBvZiBjdXJyZW50IHF1ZXN0aW9uXHJcbiAgICovXHJcbiAgY2FwdHVyZVN0YXJWYWx1ZShzZWxlY3RlZFZhbHVlSW5kZXg6YW55KSB7XHJcbiAgICB0aGlzLnF1ZXN0aW9uc0FycmF5W3RoaXMuc2VsZWN0ZWRMb2dpY1F1ZXN0aW9uXS52YWx1ZSA9IHNlbGVjdGVkVmFsdWVJbmRleCArIDE7XHJcbiAgICB0aGlzLnNlbGVjdGVkVmFsdWUgPSBzZWxlY3RlZFZhbHVlSW5kZXggKyAxO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQ29udmVydHMgdGhlIGRhdGUgdG8gdG9Mb2NhbGVEYXRlU3RyaW5nIGZvcm1hdFxyXG4gICAqIEBwYXJhbSBkYXRlIERhdGUgdG8gYmUgY29udmVydGVkXHJcbiAgICovXHJcbiAgZm9ybWF0RGF0ZShkYXRlOiBEYXRlKSB7XHJcbiAgICByZXR1cm4gKG5ldyBEYXRlKGRhdGUpKS50b0xvY2FsZURhdGVTdHJpbmcoKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIE9wZXJhdGlvbiBPbiBkcmFnL2Ryb3Agb2Ygb3B0aW9uIG9mIHJhbmtpbmcgdHlwZSBxdWVzdGlvblxyXG4gICAqIEBwYXJhbSBldmVudCBFdmVudCB0cmlnZ2VyZWQgd2hlbiBvcHRpb24gb2YgcmFua2luZyB0eXBlIHF1ZXN0aW9uIGlzIGRyYWdnZWQgYW5kIGRyb3BwZWRcclxuICAgKi9cclxuICAvLyBkcm9wKGV2ZW50OiBDZGtEcmFnRHJvcDxzdHJpbmdbXT4pIHtcclxuICAvLyAgIG1vdmVJdGVtSW5BcnJheSh0aGlzLnF1ZXN0aW9uc0FycmF5W3RoaXMuc2VsZWN0ZWRMb2dpY1F1ZXN0aW9uXS5jaG9pY2VzLCBldmVudC5wcmV2aW91c0luZGV4LCBldmVudC5jdXJyZW50SW5kZXgpO1xyXG4gIC8vIH1cclxuXHJcblxyXG4gIGZvcm1hdGVXaXRoUGlwZShkYXRlOmFueSl7XHJcbiAgICB2YXIgZGF0ZVBpcGUgPSBuZXcgRGF0ZVBpcGUoJ2VuLVVTJyk7XHJcbiAgICByZXR1cm4gIGRhdGVQaXBlLnRyYW5zZm9ybShkYXRlLCAnZGQgTU1NIHl5eXknKTtcclxuICB9XHJcblxyXG4gIGZvcm1hdGVCeVNsYXNoKGRhdGU6YW55KXtcclxuICAgIHZhciBkYXRlUGlwZSA9IG5ldyBEYXRlUGlwZSgnZW4tVVMnKTtcclxuICAgIHJldHVybiAgZGF0ZVBpcGUudHJhbnNmb3JtKGRhdGUsICd5eXl5LU1NLWRkVEhIOm1tOnNzLlNTUycsJyswOjAwJykrJ1onO1xyXG4gIH1cclxuXHJcblxyXG59XHJcbiJdfQ==