vcomply-workflow-engine 0.0.6 → 0.0.7

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 (192) hide show
  1. package/bundles/vcomply-workflow-engine.umd.js +8647 -7152
  2. package/bundles/vcomply-workflow-engine.umd.js.map +1 -1
  3. package/esm2015/lib/add-multiple-responsibility/add-multiple-responsibility.component.js +18 -15
  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 +6 -6
  6. package/esm2015/lib/add-multiple-risk/add-multiple-risk.component.ngfactory.js +3 -3
  7. package/esm2015/lib/confirmation-alert/confirmation-alert.component.js +1 -1
  8. package/esm2015/lib/create-documents/create-documents.component.js +1 -1
  9. package/esm2015/lib/formgroup/cs-select/cs-select.component.js +3 -3
  10. package/esm2015/lib/formgroup/cs-select/cs-select.component.ngfactory.js +3 -3
  11. package/esm2015/lib/formgroup/cs-switch/cs-switch.component.js +1 -1
  12. package/esm2015/lib/formgroup/select/cs-select/cs-select.component.js +3 -3
  13. package/esm2015/lib/formgroup/select/cs-select/cs-select.component.ngfactory.js +3 -3
  14. package/esm2015/lib/log-an-issue/log-an-issue.component.js +10 -13
  15. package/esm2015/lib/log-an-issue/log-an-issue.component.ngfactory.js +7 -7
  16. package/esm2015/lib/more-option/more-option.component.js +29 -4
  17. package/esm2015/lib/more-option/more-option.component.ngfactory.js +4 -4
  18. package/esm2015/lib/more-option/more-option.component.ngsummary.json +1 -1
  19. package/esm2015/lib/sharedComponents/assessment-list/assessment-list-loader/assessment-list-loader.component.js +15 -0
  20. package/esm2015/lib/sharedComponents/assessment-list/assessment-list-loader/assessment-list-loader.component.ngfactory.js +19 -0
  21. package/esm2015/lib/sharedComponents/assessment-list/assessment-list-loader/assessment-list-loader.component.ngsummary.json +1 -0
  22. package/esm2015/lib/sharedComponents/assessment-list/assessment-list-sub-loader/assessment-list-sub-loader.component.js +15 -0
  23. package/esm2015/lib/sharedComponents/assessment-list/assessment-list-sub-loader/assessment-list-sub-loader.component.ngfactory.js +19 -0
  24. package/esm2015/lib/sharedComponents/assessment-list/assessment-list-sub-loader/assessment-list-sub-loader.component.ngsummary.json +1 -0
  25. package/esm2015/lib/sharedComponents/assessment-list/assessment-list.component.js +187 -0
  26. package/esm2015/lib/sharedComponents/assessment-list/assessment-list.component.ngfactory.js +208 -0
  27. package/esm2015/lib/sharedComponents/assessment-list/assessment-list.component.ngsummary.json +1 -0
  28. package/esm2015/lib/sharedComponents/assessment-list/service/assessment.interface.js +2 -0
  29. package/esm2015/lib/sharedComponents/assessment-list/service/assessment.interface.ngsummary.json +1 -0
  30. package/esm2015/lib/sharedComponents/assessment-list/service/assessment.service.js +34 -0
  31. package/esm2015/lib/sharedComponents/assessment-list/service/assessment.service.ngsummary.json +1 -0
  32. package/esm2015/lib/sharedComponents/assessment-preview/assessment-preview.module.js +61 -0
  33. package/esm2015/lib/sharedComponents/assessment-preview/assessment-preview.module.ngfactory.js +21 -0
  34. package/esm2015/lib/sharedComponents/assessment-preview/assessment-preview.module.ngsummary.json +1 -0
  35. package/esm2015/lib/sharedComponents/assessment-preview/checkbox-question/checkbox-question.component.js +29 -0
  36. package/esm2015/lib/sharedComponents/assessment-preview/checkbox-question/checkbox-question.component.ngfactory.js +57 -0
  37. package/esm2015/lib/sharedComponents/assessment-preview/checkbox-question/checkbox-question.component.ngsummary.json +1 -0
  38. package/esm2015/lib/sharedComponents/assessment-preview/date-time/date-time.component.js +32 -0
  39. package/esm2015/lib/sharedComponents/assessment-preview/date-time/date-time.component.ngfactory.js +88 -0
  40. package/esm2015/lib/sharedComponents/assessment-preview/date-time/date-time.component.ngsummary.json +1 -0
  41. package/esm2015/lib/sharedComponents/assessment-preview/device/device.component.js +22 -0
  42. package/esm2015/lib/sharedComponents/assessment-preview/device/device.component.ngfactory.js +26 -0
  43. package/esm2015/lib/sharedComponents/assessment-preview/device/device.component.ngsummary.json +1 -0
  44. package/esm2015/lib/sharedComponents/assessment-preview/file-upload/file-upload.component.js +19 -0
  45. package/esm2015/lib/sharedComponents/assessment-preview/file-upload/file-upload.component.ngfactory.js +39 -0
  46. package/esm2015/lib/sharedComponents/assessment-preview/file-upload/file-upload.component.ngsummary.json +1 -0
  47. package/esm2015/lib/sharedComponents/assessment-preview/page-header/page-header.component.js +19 -0
  48. package/esm2015/lib/sharedComponents/assessment-preview/page-header/page-header.component.ngfactory.js +22 -0
  49. package/esm2015/lib/sharedComponents/assessment-preview/page-header/page-header.component.ngsummary.json +1 -0
  50. package/esm2015/lib/sharedComponents/assessment-preview/preview/preview.component.js +47 -0
  51. package/esm2015/lib/sharedComponents/assessment-preview/preview/preview.component.ngfactory.js +69 -0
  52. package/esm2015/lib/sharedComponents/assessment-preview/preview/preview.component.ngsummary.json +1 -0
  53. package/esm2015/lib/sharedComponents/assessment-preview/preview-container/preview-container.component.js +15 -0
  54. package/esm2015/lib/sharedComponents/assessment-preview/preview-container/preview-container.component.ngfactory.js +109 -0
  55. package/esm2015/lib/sharedComponents/assessment-preview/preview-container/preview-container.component.ngsummary.json +1 -0
  56. package/esm2015/lib/sharedComponents/assessment-preview/quick-settings/quick-settings.component.js +18 -0
  57. package/esm2015/lib/sharedComponents/assessment-preview/quick-settings/quick-settings.component.ngfactory.js +96 -0
  58. package/esm2015/lib/sharedComponents/assessment-preview/quick-settings/quick-settings.component.ngsummary.json +1 -0
  59. package/esm2015/lib/sharedComponents/assessment-preview/radio-question/radio-question.component.js +29 -0
  60. package/esm2015/lib/sharedComponents/assessment-preview/radio-question/radio-question.component.ngfactory.js +56 -0
  61. package/esm2015/lib/sharedComponents/assessment-preview/radio-question/radio-question.component.ngsummary.json +1 -0
  62. package/esm2015/lib/sharedComponents/assessment-preview/select-question/select-question.component.js +32 -0
  63. package/esm2015/lib/sharedComponents/assessment-preview/select-question/select-question.component.ngfactory.js +23 -0
  64. package/esm2015/lib/sharedComponents/assessment-preview/select-question/select-question.component.ngsummary.json +1 -0
  65. package/esm2015/lib/sharedComponents/assessment-preview/single-textbox/single-textbox.component.js +19 -0
  66. package/esm2015/lib/sharedComponents/assessment-preview/single-textbox/single-textbox.component.ngfactory.js +21 -0
  67. package/esm2015/lib/sharedComponents/assessment-preview/single-textbox/single-textbox.component.ngsummary.json +1 -0
  68. package/esm2015/lib/sharedComponents/assessment-preview/welcome/welcome.component.js +18 -0
  69. package/esm2015/lib/sharedComponents/assessment-preview/welcome/welcome.component.ngfactory.js +21 -0
  70. package/esm2015/lib/sharedComponents/assessment-preview/welcome/welcome.component.ngsummary.json +1 -0
  71. package/esm2015/lib/sharedComponents/bulk-responsibility-view/bulk-responsibility-view.component.js +3 -3
  72. package/esm2015/lib/sharedComponents/bulk-responsibility-view/bulk-responsibility-view.component.ngfactory.js +19 -51
  73. package/esm2015/lib/sharedComponents/bulk-view/bulk-view.component.js +2 -3
  74. package/esm2015/lib/sharedComponents/category-list/category-list.component.js +1 -1
  75. package/esm2015/lib/sharedComponents/checkpoint/checkpoints/checkpoints.component.js +2 -2
  76. package/esm2015/lib/sharedComponents/checkpoint/checkpoints/checkpoints.component.ngfactory.js +1 -1
  77. package/esm2015/lib/sharedComponents/checkpoint/checkpoints-list/checkpoints-list.component.js +2 -2
  78. package/esm2015/lib/sharedComponents/checkpoint/checkpoints-questions/checkpoints-questions.component.js +9 -9
  79. package/esm2015/lib/sharedComponents/checkpoint/checkpoints-questions/checkpoints-questions.component.ngfactory.js +47 -248
  80. package/esm2015/lib/sharedComponents/checkpoint-policy/checkpoints-policy-container/checkpoints-policy-container.component.js +1 -1
  81. package/esm2015/lib/sharedComponents/checkpoint-policy/checkpoints-policy-list/checkpoints-policy-list.component.js +1 -1
  82. package/esm2015/lib/sharedComponents/checkpoint-policy/checkpoints-policy-questions/checkpoints-policy-questions.component.js +1 -1
  83. package/esm2015/lib/sharedComponents/format-and-evidence/format-and-evidence.component.js +2 -2
  84. package/esm2015/lib/sharedComponents/format-and-evidence/format-and-evidence.component.ngfactory.js +2 -2
  85. package/esm2015/lib/sharedComponents/framework-list/parent-table/parent-table.component.js +3 -3
  86. package/esm2015/lib/sharedComponents/framework-list/parent-table/parent-table.component.ngfactory.js +12 -12
  87. package/esm2015/lib/sharedComponents/no-data/no-data.component.js +3 -3
  88. package/esm2015/lib/sharedComponents/no-data/no-data.component.ngfactory.js +5 -5
  89. package/esm2015/lib/sharedComponents/no-data/no-data.module.ngfactory.js +1 -1
  90. package/esm2015/lib/sharedComponents/radio-list-with-pagination/link-treatment-loader/link-treatment-loader.component.js +14 -0
  91. package/esm2015/lib/sharedComponents/radio-list-with-pagination/link-treatment-loader/link-treatment-loader.component.ngfactory.js +19 -0
  92. package/esm2015/lib/sharedComponents/radio-list-with-pagination/link-treatment-loader/link-treatment-loader.component.ngsummary.json +1 -0
  93. package/esm2015/lib/sharedComponents/radio-list-with-pagination/radio-list.component.js +111 -0
  94. package/esm2015/lib/sharedComponents/radio-list-with-pagination/radio-list.component.ngfactory.js +87 -0
  95. package/esm2015/lib/sharedComponents/radio-list-with-pagination/radio-list.component.ngsummary.json +1 -0
  96. package/esm2015/lib/sharedComponents/review-frequency/review-frequency.component.js +1 -1
  97. package/esm2015/lib/sharedComponents/risk-classification/risk-classification.component.js +1 -1
  98. package/esm2015/lib/ui-kit/pagination/pagination/pagination.component.js +111 -0
  99. package/esm2015/lib/ui-kit/pagination/pagination/pagination.component.ngfactory.js +57 -0
  100. package/esm2015/lib/ui-kit/pagination/pagination/pagination.component.ngsummary.json +1 -0
  101. package/esm2015/lib/ui-kit/pagination/pagination.module.js +21 -0
  102. package/esm2015/lib/ui-kit/pagination/pagination.module.ngfactory.js +13 -0
  103. package/esm2015/lib/ui-kit/pagination/pagination.module.ngsummary.json +1 -0
  104. package/esm2015/lib/ui-kit/popover/popover.component.js +5 -4
  105. package/esm2015/lib/ui-kit/popover/popover.directive.js +55 -1
  106. package/esm2015/lib/ui-kit/popover/popover.directive.ngsummary.json +1 -1
  107. package/esm2015/lib/workflow-assessment/workflow-assessment.component.js +226 -0
  108. package/esm2015/lib/workflow-assessment/workflow-assessment.component.ngfactory.js +244 -0
  109. package/esm2015/lib/workflow-assessment/workflow-assessment.component.ngsummary.json +1 -0
  110. package/esm2015/lib/workflow-compliance/workflow-compliance.component.js +92 -13
  111. package/esm2015/lib/workflow-compliance/workflow-compliance.component.ngfactory.js +134 -93
  112. package/esm2015/lib/workflow-compliance/workflow-compliance.component.ngsummary.json +1 -1
  113. package/esm2015/lib/workflow-engine-container/workflow-engine-container.component.js +42 -6
  114. package/esm2015/lib/workflow-engine-container/workflow-engine-container.component.ngfactory.js +73 -38
  115. package/esm2015/lib/workflow-engine-container/workflow-engine-container.component.ngsummary.json +1 -1
  116. package/esm2015/lib/workflow-engine.module.js +21 -3
  117. package/esm2015/lib/workflow-engine.module.ngfactory.js +4 -2
  118. package/esm2015/lib/workflow-engine.module.ngsummary.json +1 -1
  119. package/esm2015/lib/workflow-pagination/workflow-pagination.component.js +95 -6
  120. package/esm2015/lib/workflow-pagination/workflow-pagination.component.ngfactory.js +23 -7
  121. package/esm2015/lib/workflow-pagination/workflow-pagination.component.ngsummary.json +1 -1
  122. package/esm2015/lib/workflow-policy/workflow-policy.component.js +2 -2
  123. package/esm2015/lib/workflow-policy/workflow-policy.component.ngfactory.js +12 -12
  124. package/esm2015/lib/workflow-risk/workflow-risk.component.js +20 -3
  125. package/esm2015/lib/workflow-risk/workflow-risk.component.ngfactory.js +7 -7
  126. package/esm2015/lib/workflow-services/assessment.service.js +68 -0
  127. package/esm2015/lib/workflow-services/assessment.service.ngsummary.json +1 -0
  128. package/esm2015/lib/workflow-services/auth.service.js +3 -1
  129. package/esm2015/lib/workflow-services/responsibility.service.js +14 -1
  130. package/esm2015/lib/workflow-services/responsibility.service.ngsummary.json +1 -1
  131. package/esm2015/lib/workflow-survey-form/workflow-survey-form.component.js +2 -2
  132. package/esm2015/lib/workflow-survey-form/workflow-survey-form.component.ngfactory.js +2 -2
  133. package/esm2015/vcomply-workflow-engine.js +67 -44
  134. package/esm2015/vcomply-workflow-engine.ngsummary.json +1 -1
  135. package/fesm2015/vcomply-workflow-engine.js +2656 -1242
  136. package/fesm2015/vcomply-workflow-engine.js.map +1 -1
  137. package/lib/more-option/more-option.component.d.ts +1 -0
  138. package/lib/sharedComponents/assessment-list/assessment-list-loader/assessment-list-loader.component.d.ts +5 -0
  139. package/lib/sharedComponents/assessment-list/assessment-list-loader/assessment-list-loader.component.ngfactory.d.ts +1 -0
  140. package/lib/sharedComponents/assessment-list/assessment-list-sub-loader/assessment-list-sub-loader.component.d.ts +5 -0
  141. package/lib/sharedComponents/assessment-list/assessment-list-sub-loader/assessment-list-sub-loader.component.ngfactory.d.ts +1 -0
  142. package/lib/sharedComponents/assessment-list/assessment-list.component.d.ts +80 -0
  143. package/lib/sharedComponents/assessment-list/assessment-list.component.ngfactory.d.ts +1 -0
  144. package/lib/sharedComponents/assessment-list/service/assessment.interface.d.ts +22 -0
  145. package/lib/sharedComponents/assessment-list/service/assessment.service.d.ts +10 -0
  146. package/lib/sharedComponents/assessment-preview/assessment-preview.module.d.ts +2 -0
  147. package/lib/sharedComponents/assessment-preview/assessment-preview.module.ngfactory.d.ts +3 -0
  148. package/lib/sharedComponents/assessment-preview/checkbox-question/checkbox-question.component.d.ts +9 -0
  149. package/lib/sharedComponents/assessment-preview/checkbox-question/checkbox-question.component.ngfactory.d.ts +1 -0
  150. package/lib/sharedComponents/assessment-preview/date-time/date-time.component.d.ts +12 -0
  151. package/lib/sharedComponents/assessment-preview/date-time/date-time.component.ngfactory.d.ts +1 -0
  152. package/lib/sharedComponents/assessment-preview/device/device.component.d.ts +7 -0
  153. package/lib/sharedComponents/assessment-preview/device/device.component.ngfactory.d.ts +1 -0
  154. package/lib/sharedComponents/assessment-preview/file-upload/file-upload.component.d.ts +7 -0
  155. package/lib/sharedComponents/assessment-preview/file-upload/file-upload.component.ngfactory.d.ts +1 -0
  156. package/lib/sharedComponents/assessment-preview/page-header/page-header.component.d.ts +7 -0
  157. package/lib/sharedComponents/assessment-preview/page-header/page-header.component.ngfactory.d.ts +1 -0
  158. package/lib/sharedComponents/assessment-preview/preview/preview.component.d.ts +11 -0
  159. package/lib/sharedComponents/assessment-preview/preview/preview.component.ngfactory.d.ts +1 -0
  160. package/lib/sharedComponents/assessment-preview/preview-container/preview-container.component.d.ts +5 -0
  161. package/lib/sharedComponents/assessment-preview/preview-container/preview-container.component.ngfactory.d.ts +1 -0
  162. package/lib/sharedComponents/assessment-preview/quick-settings/quick-settings.component.d.ts +6 -0
  163. package/lib/sharedComponents/assessment-preview/quick-settings/quick-settings.component.ngfactory.d.ts +1 -0
  164. package/lib/sharedComponents/assessment-preview/radio-question/radio-question.component.d.ts +9 -0
  165. package/lib/sharedComponents/assessment-preview/radio-question/radio-question.component.ngfactory.d.ts +1 -0
  166. package/lib/sharedComponents/assessment-preview/select-question/select-question.component.d.ts +9 -0
  167. package/lib/sharedComponents/assessment-preview/select-question/select-question.component.ngfactory.d.ts +1 -0
  168. package/lib/sharedComponents/assessment-preview/single-textbox/single-textbox.component.d.ts +7 -0
  169. package/lib/sharedComponents/assessment-preview/single-textbox/single-textbox.component.ngfactory.d.ts +1 -0
  170. package/lib/sharedComponents/assessment-preview/welcome/welcome.component.d.ts +6 -0
  171. package/lib/sharedComponents/assessment-preview/welcome/welcome.component.ngfactory.d.ts +1 -0
  172. package/lib/sharedComponents/radio-list-with-pagination/link-treatment-loader/link-treatment-loader.component.d.ts +5 -0
  173. package/lib/sharedComponents/radio-list-with-pagination/link-treatment-loader/link-treatment-loader.component.ngfactory.d.ts +1 -0
  174. package/lib/sharedComponents/radio-list-with-pagination/radio-list.component.d.ts +47 -0
  175. package/lib/sharedComponents/radio-list-with-pagination/radio-list.component.ngfactory.d.ts +1 -0
  176. package/lib/ui-kit/pagination/pagination/pagination.component.d.ts +23 -0
  177. package/lib/ui-kit/pagination/pagination/pagination.component.ngfactory.d.ts +1 -0
  178. package/lib/ui-kit/pagination/pagination.module.d.ts +2 -0
  179. package/lib/ui-kit/pagination/pagination.module.ngfactory.d.ts +3 -0
  180. package/lib/ui-kit/popover/popover.directive.d.ts +1 -0
  181. package/lib/workflow-assessment/workflow-assessment.component.d.ts +63 -0
  182. package/lib/workflow-assessment/workflow-assessment.component.ngfactory.d.ts +1 -0
  183. package/lib/workflow-compliance/workflow-compliance.component.d.ts +12 -1
  184. package/lib/workflow-engine-container/workflow-engine-container.component.d.ts +7 -1
  185. package/lib/workflow-pagination/workflow-pagination.component.d.ts +18 -1
  186. package/lib/workflow-risk/workflow-risk.component.d.ts +1 -1
  187. package/lib/workflow-services/assessment.service.d.ts +20 -0
  188. package/lib/workflow-services/auth.service.d.ts +2 -0
  189. package/lib/workflow-services/responsibility.service.d.ts +5 -0
  190. package/package.json +1 -1
  191. package/vcomply-workflow-engine.d.ts +66 -43
  192. package/vcomply-workflow-engine.metadata.json +1 -1
@@ -230,7 +230,7 @@ export class CheckpointsComponent {
230
230
  CheckpointsComponent.decorators = [
231
231
  { type: Component, args: [{
232
232
  selector: 'app-checkpoints',
233
- template: "<!-- <p>checkpoints works!</p> -->\r\n<div class=\"checkpoints\" [class.animate]=\"animation\">\r\n <div class=\"checkpoints-head\">\r\n <h3 class=\"checkpoints-title\">Add Checkpoints</h3>\r\n </div>\r\n <div class=\"checkpoints-body\" [class.align-center]=\"checkpointData?.length === 0\">\r\n <app-checkpoints-list *ngIf=\"checkpointData?.length === 0\" (createQuestion)=\"addQuestion($event)\" [questionTypeList]=\"questionTypeList\"></app-checkpoints-list>\r\n <app-checkpoints-questions *ngIf=\"checkpointData?.length > 0\" [checkpointInstruction]=\"checkpointInstruction\" [errorIndex]='errorIndex' [checkpointData]=\"checkpointData\" [questionTypeList]=\"questionTypeList\"\r\n (createQuestion)=\"addQuestion($event)\" (deleteQuestion)=\"removeQuestion($event)\" (copyQuestion)=\"copyQuestion($event)\"\r\n (blankQuestion)=\"addQuestion($event.type,$event.index)\" (createOption)=\"createOption($event.questionIndex,$event.optionIndex,$event.type)\"\r\n (removeOption)=\"deleteOption($event.questionIndex,$event.optionIndex,$event.type)\" (updateDescription)=\"checkpointDescription($event)\"></app-checkpoints-questions>\r\n </div>\r\n <div class=\"checkpoints-footer\">\r\n <app-checkpoint-floating-bar [count]=\"checkpointData.length\" (saveList)=\"save()\" [pluralText]=\"'Checkpoints selected.'\" [singularText]=\"'Checkpoint selected.'\"\r\n (closeList)=\"close()\"></app-checkpoint-floating-bar>\r\n </div>\r\n</div>\r\n",
233
+ template: "<!-- <p>checkpoints works!</p> -->\r\n<div class=\"checkpoints\" [class.animate]=\"animation\">\r\n <div class=\"checkpoints-head\">\r\n <h3 class=\"checkpoints-title\">Add Checkpoints</h3>\r\n </div>\r\n <div class=\"checkpoints-body\" [class.align-center]=\"checkpointData?.length === 0\">\r\n <app-checkpoints-list *ngIf=\"checkpointData?.length === 0\" (createQuestion)=\"addQuestion($event)\" [questionTypeList]=\"questionTypeList\"></app-checkpoints-list>\r\n <app-checkpoints-questions *ngIf=\"checkpointData?.length > 0\" [checkpointInstruction]=\"checkpointInstruction\" [errorIndex]='errorIndex' [checkpointData]=\"checkpointData\" [questionTypeList]=\"questionTypeList\"\r\n (createQuestion)=\"addQuestion($event)\" (deleteQuestion)=\"removeQuestion($event)\" (copyQuestion)=\"copyQuestion($event)\"\r\n (blankQuestion)=\"addQuestion($event.type,$event.index)\" (createOption)=\"createOption($event.questionIndex,$event.optionIndex,$event.type)\"\r\n (removeOption)=\"deleteOption($event.questionIndex,$event.optionIndex,$event.type)\" (updateDescription)=\"checkpointDescription($event)\"></app-checkpoints-questions>\r\n </div>\r\n <div class=\"checkpoints-footer\">\r\n <app-checkpoint-floating-bar [count]=\"checkpointData.length\" (saveList)=\"save()\" [pluralText]=\"'Checkpoints selected.'\" [singularText]=\"'Checkpoint selected.'\"\r\n (closeList)=\"close()\" ></app-checkpoint-floating-bar>\r\n </div>\r\n</div>\r\n",
234
234
  styles: ["@import url(\"https://cdn.v-comply.com/design-system/css/icons/icons.css\");.checkpoints{position:fixed;top:0;right:500px;bottom:0;left:0;border-top:3px solid #1e5dd3;z-index:-1}.checkpoints-head{background:#fbfbfb;height:44px;padding:0 12px;display:flex;align-items:center}.checkpoints-title{color:#161b2f;font-size:14px;margin:0;padding:0;line-height:20px;font-weight:500}.checkpoints-body{padding:60px 156px;height:calc(100vh - 110px);overflow:auto}.checkpoints-body.align-center{display:flex;align-items:center;justify-content:center}.checkpoints-body::-webkit-scrollbar-track{background-color:#f1f1f1;position:absolute}.checkpoints-body::-webkit-scrollbar{width:1px;height:1px;background-color:transparent;position:absolute}.checkpoints-body::-webkit-scrollbar-thumb{border-radius:1px;background-color:#dbdbdb;position:absolute}.checkpoints-footer{display:block}.checkpoints.animate{-webkit-animation:animate-right .2s cubic-bezier(.25,.46,.45,.94) both;animation:animate-right .2s cubic-bezier(.25,.46,.45,.94) both;z-index:-1}@-webkit-keyframes animate-right{0%{transform:translateX(100%)}to{transform:translateX(0)}}@keyframes animate-right{0%{transform:translateX(100%)}to{transform:translateX(0)}}"]
235
235
  },] }
236
236
  ];
@@ -244,4 +244,4 @@ CheckpointsComponent.propDecorators = {
244
244
  checkpointData: [{ type: Input }],
245
245
  checkpointInstruction: [{ type: Input }]
246
246
  };
247
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2twb2ludHMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdngtd29ya2Zsb3ctZW5naW5lL3NyYy9saWIvc2hhcmVkQ29tcG9uZW50cy9jaGVja3BvaW50L2NoZWNrcG9pbnRzL2NoZWNrcG9pbnRzLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3RDLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFVLE1BQU0sRUFBRSxpQkFBaUIsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEcsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBTzlFLE1BQU0sT0FBTyxvQkFBb0I7SUE2Qy9CLFlBQW9CLFFBQXlCLEVBQVUsR0FBc0I7UUFBekQsYUFBUSxHQUFSLFFBQVEsQ0FBaUI7UUFBVSxRQUFHLEdBQUgsR0FBRyxDQUFtQjtRQTVDbkUsb0JBQWUsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQ3JDLG1CQUFjLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUM5QyxjQUFTLEdBQUcsSUFBSSxDQUFDO1FBQ1IsbUJBQWMsR0FBUSxFQUFFLENBQUM7UUFDekIsMEJBQXFCLEdBQUcsRUFBRSxDQUFDO1FBQ3BDLGVBQVUsR0FBRyxDQUFDLENBQUMsQ0FBQztRQUNoQixxQkFBZ0IsR0FBRztZQUNqQjtnQkFDRSxJQUFJLEVBQUUsTUFBTTtnQkFDWixJQUFJLEVBQUUsU0FBUztnQkFDZixXQUFXLEVBQUUscUJBQXFCO2dCQUNsQyxJQUFJLEVBQUUsVUFBVTthQUNqQjtZQUNEO2dCQUNFLElBQUksRUFBRSxVQUFVO2dCQUNoQixJQUFJLEVBQUUsUUFBUTtnQkFDZCxXQUFXLEVBQUUsOENBQThDO2dCQUMzRCxJQUFJLEVBQUUsVUFBVTthQUNqQjtZQUNEO2dCQUNFLElBQUksRUFBRSxrQkFBa0I7Z0JBQ3hCLElBQUksRUFBRSxPQUFPO2dCQUNiLFdBQVcsRUFBRSw2Q0FBNkM7Z0JBQzFELElBQUksRUFBRSxVQUFVO2FBQ2pCO1lBQ0Q7Z0JBQ0UsSUFBSSxFQUFFLG9CQUFvQjtnQkFDMUIsSUFBSSxFQUFFLFVBQVU7Z0JBQ2hCLFdBQVcsRUFBRSwyQ0FBMkM7Z0JBQ3hELElBQUksRUFBRSxVQUFVO2FBQ2pCO1lBQ0Q7Z0JBQ0UsSUFBSSxFQUFFLE1BQU07Z0JBQ1osSUFBSSxFQUFFLE1BQU07Z0JBQ1osV0FBVyxFQUFFLGlDQUFpQztnQkFDOUMsSUFBSSxFQUFFLFVBQVU7YUFDakI7WUFDRDtnQkFDRSxJQUFJLEVBQUUsYUFBYTtnQkFDbkIsSUFBSSxFQUFFLFFBQVE7Z0JBQ2QsV0FBVyxFQUFFLDJCQUEyQjtnQkFDeEMsSUFBSSxFQUFFLFVBQVU7YUFDakI7U0FDRixDQUFDO0lBQytFLENBQUM7SUFFbEYsUUFBUTtRQUNOLE9BQU8sQ0FBQyxHQUFHLENBQUMsMkJBQTJCLEVBQUUsSUFBSSxDQUFDLHFCQUFxQixFQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUN6RixVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ2QsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7UUFDekIsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBQ1IsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsY0FBYyxJQUFJLElBQUksQ0FBQyxjQUFjLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7SUFDL0csQ0FBQztJQUVELFdBQVcsQ0FBQyxHQUFRLEVBQUUsS0FBYztRQUNuQyxPQUFPLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ2pCLFFBQVEsR0FBRyxFQUFDO1lBQ1YsS0FBSyxTQUFVLENBQUMsQ0FBQztnQkFDZCxJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUMxQixNQUFNO2FBQ1I7WUFDRCxLQUFLLFFBQVMsQ0FBQyxDQUFDO2dCQUNmLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQ3pCLE1BQU07YUFDUjtZQUNFLEtBQUssT0FBUSxDQUFDLENBQUM7Z0JBQ2IsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDeEIsTUFBTTthQUNUO1lBQ0MsS0FBSyxVQUFXLENBQUMsQ0FBQztnQkFDaEIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDM0IsTUFBTTthQUNQO1lBQ0QsS0FBSyxNQUFPLENBQUMsQ0FBQztnQkFDWixJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUN2QixNQUFNO2FBQ1A7WUFBQSxLQUFLLFFBQVMsQ0FBQyxDQUFDO2dCQUNmLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQ3pCLE1BQU07YUFDUDtTQUNIO0lBQ0YsQ0FBQztJQUlELGFBQWEsQ0FBQyxLQUFjO1FBQzFCLHlCQUF5QjtRQUN6QixJQUFJLEtBQUssS0FBSyxTQUFTLEVBQUU7WUFDdkIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLEVBQUUsRUFBRSxXQUFXLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFLE9BQU8sRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1NBQ3pHO2FBQU07WUFDTCxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxLQUFLLEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsRUFBRSxFQUFFLG1CQUFtQixFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRSxPQUFPLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztTQUNqSTtJQUNILENBQUM7SUFFRCxZQUFZLENBQUMsS0FBYztRQUN6Qix5QkFBeUI7UUFDekIsSUFBSSxLQUFLLEtBQUssU0FBUyxFQUFFO1lBQ3ZCLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxFQUFFLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7U0FDbEo7YUFBTTtZQUNMLElBQUksQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLEtBQUssR0FBRyxDQUFDLEVBQUUsQ0FBQyxFQUFFO2dCQUN2QyxJQUFJLEVBQUUsUUFBUTtnQkFDZCxFQUFFLEVBQUUsa0JBQWtCO2dCQUN0QixRQUFRLEVBQUUsS0FBSztnQkFDZixLQUFLLEVBQUUsRUFBRTtnQkFDVCxPQUFPLEVBQUUsQ0FBQyxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLENBQUM7YUFDdkQsQ0FBQyxDQUFDO1NBQ0o7SUFDSCxDQUFDO0lBRUQsV0FBVyxDQUFDLEtBQWM7UUFDeEIseUJBQXlCO1FBQ3pCLElBQUksS0FBSyxLQUFLLFNBQVMsRUFBRTtZQUN2QixJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsRUFBRSxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1NBQ2hKO2FBQU07WUFDTCxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxLQUFLLEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsRUFBRSxFQUFFLGlCQUFpQixFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7U0FDeEs7SUFDSCxDQUFDO0lBRUQsY0FBYyxDQUFDLEtBQWM7UUFDM0IseUJBQXlCO1FBQ3pCLElBQUksS0FBSyxLQUFLLFNBQVMsRUFBRTtZQUN2QixJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsRUFBRSxFQUFFLFlBQVksRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7U0FDbks7YUFBTTtZQUNMLElBQUksQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLEtBQUssR0FBRyxDQUFDLEVBQUUsQ0FBQyxFQUFFO2dCQUN2QyxJQUFJLEVBQUUsVUFBVTtnQkFDaEIsRUFBRSxFQUFFLG9CQUFvQjtnQkFDeEIsUUFBUSxFQUFFLEtBQUs7Z0JBQ2YsS0FBSyxFQUFFLEVBQUU7Z0JBQ1QsT0FBTyxFQUFFLENBQUMsRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsQ0FBQyxFQUFFLENBQUM7YUFDcEUsQ0FBQyxDQUFDO1NBQ0o7SUFDSCxDQUFDO0lBRUQsVUFBVSxDQUFDLEtBQWM7UUFDdkIseUJBQXlCO1FBQ3pCLElBQUksS0FBSyxLQUFLLFNBQVMsRUFBRTtZQUN2QixJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsRUFBRSxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsT0FBTyxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7U0FDbkc7YUFBTTtZQUNMLElBQUksQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLEtBQUssR0FBRyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxFQUFFLEVBQUUsZ0JBQWdCLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFLE9BQU8sRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1NBQzNIO0lBQ0gsQ0FBQztJQUVELFlBQVksQ0FBQyxLQUFjO1FBQ3pCLHlCQUF5QjtRQUN6QixJQUFJLEtBQUssS0FBSyxTQUFTLEVBQUU7WUFDdkIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLEVBQUUsRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFLE9BQU8sRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1NBQ3ZHO2FBQU07WUFDTCxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxLQUFLLEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsRUFBRSxFQUFFLGtCQUFrQixFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRSxPQUFPLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztTQUMvSDtJQUNILENBQUM7SUFLRCxZQUFZLENBQUMsQ0FBUyxFQUFFLENBQVMsRUFBRSxJQUFTO1FBQzFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDO1FBQ3JHLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsSUFBSSxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFO1lBQ25FLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1NBQ2pEO1FBQ0QsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUNkLE1BQU0sRUFBRSxHQUFRLFFBQVEsQ0FBQyxjQUFjLENBQUMsSUFBSSxHQUFHLEdBQUcsR0FBRyxDQUFDLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDdkUsSUFBSSxFQUFFLEVBQUU7Z0JBQUUsRUFBRSxDQUFDLEtBQUssRUFBRSxDQUFDO2FBQUU7UUFDekIsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBRVQsQ0FBQztJQUVELFlBQVksQ0FBQyxDQUFTLEVBQUUsQ0FBUyxFQUFFLElBQVM7UUFDMUMsSUFBSSxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO1lBQy9DLE9BQU87U0FDUjtRQUNELElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDNUMsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxJQUFJLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUU7WUFDbkUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDakQ7UUFDRCxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ2QsTUFBTSxFQUFFLEdBQVEsUUFBUSxDQUFDLGNBQWMsQ0FBQyxJQUFJLEdBQUcsR0FBRyxHQUFHLENBQUMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUN2RSxJQUFJLEVBQUUsRUFBRTtnQkFBRSxFQUFFLENBQUMsS0FBSyxFQUFFLENBQUM7YUFBRTtTQUN4QjthQUFNO1lBQ0wsTUFBTSxFQUFFLEdBQVEsUUFBUSxDQUFDLGNBQWMsQ0FBQyxJQUFJLEdBQUcsR0FBRyxHQUFHLENBQUMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUM7WUFDakUsSUFBSSxFQUFFLEVBQUU7Z0JBQUUsRUFBRSxDQUFDLEtBQUssRUFBRSxDQUFDO2FBQUU7U0FDeEI7SUFDSCxDQUFDO0lBRUQsY0FBYyxDQUFDLEtBQWE7UUFDMUIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFFRCxZQUFZLENBQUMsS0FBYTtRQUN4QixNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDeEUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUMsS0FBSyxHQUFHLENBQUMsRUFBRSxDQUFDLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDckQsQ0FBQztJQUdELElBQUk7UUFDRixPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDLENBQUM7UUFDdkMsSUFBSSxJQUFJLENBQUMsa0JBQWtCLEVBQUUsS0FBSyxLQUFLLEVBQUM7WUFDdEMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsNkJBQTZCLENBQUMsQ0FBQztTQUNuRDthQUNHO1lBQ0YsSUFBSSxDQUFDLFVBQVUsR0FBRyxDQUFDLENBQUMsQ0FBQztZQUNyQixJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxFQUFDLHFCQUFxQixFQUFFLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxpQkFBaUIsRUFBRSxJQUFJLENBQUMsY0FBYyxFQUFDLENBQUMsQ0FBQztTQUN2SDtJQUVILENBQUM7SUFDRCxLQUFLO1FBQ0gsT0FBTyxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUN0QixJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQzlCLENBQUM7SUFFRCxrQkFBa0I7UUFDaEIsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxJQUFJLElBQUksQ0FBQyxjQUFjLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRTtZQUN4RCxJQUFJLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsRUFBRTtnQkFDOUMsSUFBSSxDQUFDLFVBQVUsR0FBRyxDQUFDLENBQUM7Z0JBQ3BCLE9BQU8sS0FBSyxDQUFDO2FBQ2Q7WUFDRCxJQUFJLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUM7Z0JBQzlDLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUU7b0JBQzlELElBQUksSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsRUFBRTt3QkFDekQsSUFBSSxDQUFDLFVBQVUsR0FBRyxDQUFDLENBQUM7d0JBQ3BCLE9BQU8sS0FBSyxDQUFDO3FCQUNkO2lCQUNGO2FBQ0Y7U0FDQTtJQUNILENBQUM7SUFFRCxxQkFBcUIsQ0FBQyxLQUFVO1FBQzlCLE9BQU8sQ0FBQyxHQUFHLENBQUMsaUJBQWlCLEVBQUUsS0FBSyxDQUFDLENBQUE7UUFDckMsSUFBSSxDQUFDLHFCQUFxQixHQUFHLEtBQUssQ0FBQTtJQUNwQyxDQUFDOzs7WUEzT0YsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxpQkFBaUI7Z0JBQzNCLDAvQ0FBMkM7O2FBRTVDOzs7WUFOUSxlQUFlO1lBRDBCLGlCQUFpQjs7OzhCQVNoRSxNQUFNOzZCQUNOLE1BQU07NkJBRU4sS0FBSztvQ0FDTCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY2xvbmVEZWVwIH0gZnJvbSAnbG9kYXNoLWVzJztcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIE9uSW5pdCwgT3V0cHV0LCBDaGFuZ2VEZXRlY3RvclJlZiwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgU25hY2tCYXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vdWkta2l0L3NuYWNrLWJhci9zbmFjay1iYXIuc2VydmljZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FwcC1jaGVja3BvaW50cycsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2NoZWNrcG9pbnRzLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9jaGVja3BvaW50cy5jb21wb25lbnQubGVzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDaGVja3BvaW50c0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgQE91dHB1dCgpIGNsb3NlQ2hlY2tQb2ludCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICBAT3V0cHV0KCkgc2F2ZUNoZWNrUG9pbnQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgYW5pbWF0aW9uID0gdHJ1ZTtcclxuICBASW5wdXQoKSBjaGVja3BvaW50RGF0YTogYW55ID0gW107XHJcbiAgQElucHV0KCkgY2hlY2twb2ludEluc3RydWN0aW9uID0gJyc7XHJcbiAgZXJyb3JJbmRleCA9IC0xO1xyXG4gIHF1ZXN0aW9uVHlwZUxpc3QgPSBbXHJcbiAgICB7XHJcbiAgICAgIHRleHQ6ICdUZXh0JyxcclxuICAgICAgdHlwZTogJ3RleHRib3gnLFxyXG4gICAgICBkZXNjcmlwdGlvbjogJ1NlbGVjdCBhIHRleHQgYXJlYS4nLFxyXG4gICAgICBpY29uOiAnJiN4ZWFjZTsnXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICB0ZXh0OiAnRHJvcGRvd24nLFxyXG4gICAgICB0eXBlOiAnc2VsZWN0JyxcclxuICAgICAgZGVzY3JpcHRpb246ICdDaG9vc2UgYW4gb3B0aW9uIGZyb20gYSBtdWx0aXBsZSBzZWxlY3QgYm94LicsXHJcbiAgICAgIGljb246ICcmI3hlYWI5OydcclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgIHRleHQ6ICdTaW5nbGUgc2VsZWN0aW9uJyxcclxuICAgICAgdHlwZTogJ3JhZGlvJyxcclxuICAgICAgZGVzY3JpcHRpb246ICdTZWxlY3Qgb25seSBvbmUgb3B0aW9uIHdpdGggYSByYWRpbyBidXR0b24uJyxcclxuICAgICAgaWNvbjogJyYjeGVhYjU7J1xyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgdGV4dDogJ011bHRpcGxlIHNlbGVjdGlvbicsXHJcbiAgICAgIHR5cGU6ICdjaGVja2JveCcsXHJcbiAgICAgIGRlc2NyaXB0aW9uOiAnU2VsZWN0IG11bHRpcGxlIG9wdGlvbnMgdXNpbmcgYSBjaGVja2JveC4nLFxyXG4gICAgICBpY29uOiAnJiN4ZWFiNDsnXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICB0ZXh0OiAnRGF0ZScsXHJcbiAgICAgIHR5cGU6ICdkYXRlJyxcclxuICAgICAgZGVzY3JpcHRpb246ICdTZWxlY3QgZGF0ZSBmcm9tIGEgZGF0ZSBwaWNrZXIuJyxcclxuICAgICAgaWNvbjogJyYjeGVhYmE7J1xyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgdGV4dDogJ1VwbG9hZCBGaWxlJyxcclxuICAgICAgdHlwZTogJ3VwbG9hZCcsXHJcbiAgICAgIGRlc2NyaXB0aW9uOiAnVXBsb2FkIGRvY3VtZW50cyAmIGZpbGVzLicsXHJcbiAgICAgIGljb246ICcmI3hlYTk3OydcclxuICAgIH1cclxuICBdO1xyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgc25hY2tiYXI6IFNuYWNrQmFyU2VydmljZSwgcHJpdmF0ZSBjZHI6IENoYW5nZURldGVjdG9yUmVmKSB7IH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICBjb25zb2xlLmxvZyhcImNoZWNrcG9pbnRJbnN0cnVjdGlvbiA9PT5cIiwgdGhpcy5jaGVja3BvaW50SW5zdHJ1Y3Rpb24sdGhpcy5jaGVja3BvaW50RGF0YSk7XHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgdGhpcy5hbmltYXRpb24gPSBmYWxzZTtcclxuICAgIH0sIDMwMCk7XHJcbiAgICB0aGlzLmNoZWNrcG9pbnREYXRhID0gdGhpcy5jaGVja3BvaW50RGF0YSAmJiB0aGlzLmNoZWNrcG9pbnREYXRhICE9ICcnID8gY2xvbmVEZWVwKHRoaXMuY2hlY2twb2ludERhdGEpIDogW107XHJcbiAgfVxyXG5cclxuICBhZGRRdWVzdGlvbihldnQ6IGFueSwgaW5kZXg/OiBudW1iZXIpe1xyXG4gICBjb25zb2xlLmxvZyhldnQpO1xyXG4gICBzd2l0Y2ggKGV2dCl7XHJcbiAgICAgY2FzZSAndGV4dGJveCcgOiB7XHJcbiAgICAgICAgdGhpcy5jcmVhdGVUZXh0Qm94KGluZGV4KTtcclxuICAgICAgICBicmVhaztcclxuICAgICB9XHJcbiAgICAgY2FzZSAnc2VsZWN0JyA6IHtcclxuICAgICAgdGhpcy5jcmVhdGVTZWxlY3QoaW5kZXgpO1xyXG4gICAgICBicmVhaztcclxuICAgfVxyXG4gICAgICBjYXNlICdyYWRpbycgOiB7XHJcbiAgICAgICAgdGhpcy5jcmVhdGVSYWRpbyhpbmRleCk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICB9XHJcbiAgICAgIGNhc2UgJ2NoZWNrYm94JyA6IHtcclxuICAgICAgICB0aGlzLmNyZWF0ZUNoZWNrQm94KGluZGV4KTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgfVxyXG4gICAgICBjYXNlICdkYXRlJyA6IHtcclxuICAgICAgICB0aGlzLmNyZWF0ZURhdGUoaW5kZXgpO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICB9Y2FzZSAndXBsb2FkJyA6IHtcclxuICAgICAgICB0aGlzLmNyZWF0ZVVwbG9hZChpbmRleCk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIH1cclxuICAgfVxyXG4gIH1cclxuXHJcblxyXG5cclxuICBjcmVhdGVUZXh0Qm94KGluZGV4PzogbnVtYmVyKSB7XHJcbiAgICAvLyB0aGlzLmdvdG9MYXN0T3B0aW9uKCk7XHJcbiAgICBpZiAoaW5kZXggPT09IHVuZGVmaW5lZCkge1xyXG4gICAgICB0aGlzLmNoZWNrcG9pbnREYXRhLnB1c2goeyB0eXBlOiAndGV4dGJveCcsIGlkOiAndGV4dGJveF8xJywgcmVxdWlyZWQ6IGZhbHNlLCBsYWJlbDogJycsIG9wdGlvbnM6IFtdIH0pO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5jaGVja3BvaW50RGF0YS5zcGxpY2UoaW5kZXggKyAxLCAwLCB7IHR5cGU6ICd0ZXh0Ym94JywgaWQ6IGB0ZXh0Ym94X3tpbmRleCsxfWAsIHJlcXVpcmVkOiBmYWxzZSwgbGFiZWw6ICcnLCBvcHRpb25zOiBbXSB9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGNyZWF0ZVNlbGVjdChpbmRleD86IG51bWJlcikge1xyXG4gICAgLy8gdGhpcy5nb3RvTGFzdE9wdGlvbigpO1xyXG4gICAgaWYgKGluZGV4ID09PSB1bmRlZmluZWQpIHtcclxuICAgICAgdGhpcy5jaGVja3BvaW50RGF0YS5wdXNoKHsgdHlwZTogJ3NlbGVjdCcsIGlkOiAnc2VsZWN0XzEnLCByZXF1aXJlZDogZmFsc2UsIGxhYmVsOiAnJywgb3B0aW9uczogW3sgbGFiZWw6ICcnLCB2YWx1ZTogMSwgaXNfc2VsZWN0ZWQ6IGZhbHNlIH1dIH0pO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5jaGVja3BvaW50RGF0YS5zcGxpY2UoaW5kZXggKyAxLCAwLCB7XHJcbiAgICAgICAgdHlwZTogJ3NlbGVjdCcsXHJcbiAgICAgICAgaWQ6ICdzZWxlY3Rfe2luZGV4KzF9JyxcclxuICAgICAgICByZXF1aXJlZDogZmFsc2UsXHJcbiAgICAgICAgbGFiZWw6ICcnLFxyXG4gICAgICAgIG9wdGlvbnM6IFt7IGxhYmVsOiAnJywgdmFsdWU6IDEsIGlzX3NlbGVjdGVkOiBmYWxzZSB9XSxcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBjcmVhdGVSYWRpbyhpbmRleD86IG51bWJlcikge1xyXG4gICAgLy8gdGhpcy5nb3RvTGFzdE9wdGlvbigpO1xyXG4gICAgaWYgKGluZGV4ID09PSB1bmRlZmluZWQpIHtcclxuICAgICAgdGhpcy5jaGVja3BvaW50RGF0YS5wdXNoKHsgdHlwZTogJ3JhZGlvJywgaWQ6ICdyYWRpb18xJywgcmVxdWlyZWQ6IGZhbHNlLCBsYWJlbDogJycsIG9wdGlvbnM6IFt7IGxhYmVsOiAnJywgdmFsdWU6IDEsIGlzX3NlbGVjdGVkOiBmYWxzZSB9XSB9KTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuY2hlY2twb2ludERhdGEuc3BsaWNlKGluZGV4ICsgMSwgMCwgeyB0eXBlOiAncmFkaW8nLCBpZDogJ3JhZGlvX3tpbmRleCsxfScsIHJlcXVpcmVkOiBmYWxzZSwgbGFiZWw6ICcnLCBvcHRpb25zOiBbeyBsYWJlbDogJycsIHZhbHVlOiAxLCBpc19zZWxlY3RlZDogZmFsc2UgfV0gfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBjcmVhdGVDaGVja0JveChpbmRleD86IG51bWJlcikge1xyXG4gICAgLy8gdGhpcy5nb3RvTGFzdE9wdGlvbigpO1xyXG4gICAgaWYgKGluZGV4ID09PSB1bmRlZmluZWQpIHtcclxuICAgICAgdGhpcy5jaGVja3BvaW50RGF0YS5wdXNoKHsgdHlwZTogJ2NoZWNrYm94JywgaWQ6ICdjaGVja2JveF8xJywgcmVxdWlyZWQ6IGZhbHNlLCBsYWJlbDogJycsIG9wdGlvbnM6IFt7IGxhYmVsOiAnJywgdmFsdWU6IDEsIGlzX3NlbGVjdGVkOiBmYWxzZSwgcmVxdWlyZWQ6IDAgfV0gfSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLmNoZWNrcG9pbnREYXRhLnNwbGljZShpbmRleCArIDEsIDAsIHtcclxuICAgICAgICB0eXBlOiAnY2hlY2tib3gnLFxyXG4gICAgICAgIGlkOiAnY2hlY2tib3hfe2luZGV4KzF9JyxcclxuICAgICAgICByZXF1aXJlZDogZmFsc2UsXHJcbiAgICAgICAgbGFiZWw6ICcnLFxyXG4gICAgICAgIG9wdGlvbnM6IFt7IGxhYmVsOiAnJywgdmFsdWU6IDEsIGlzX3NlbGVjdGVkOiBmYWxzZSwgcmVxdWlyZWQ6IDAgfV0sXHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgY3JlYXRlRGF0ZShpbmRleD86IG51bWJlcikge1xyXG4gICAgLy8gdGhpcy5nb3RvTGFzdE9wdGlvbigpO1xyXG4gICAgaWYgKGluZGV4ID09PSB1bmRlZmluZWQpIHtcclxuICAgICAgdGhpcy5jaGVja3BvaW50RGF0YS5wdXNoKHsgdHlwZTogJ2RhdGUnLCBpZDogJ2RhdGVfMScsIHJlcXVpcmVkOiBmYWxzZSwgbGFiZWw6ICcnLCBvcHRpb25zOiBbXSB9KTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuY2hlY2twb2ludERhdGEuc3BsaWNlKGluZGV4ICsgMSwgMCwgeyB0eXBlOiAnZGF0ZScsIGlkOiAnZGF0ZV97aW5kZXgrMX0nLCByZXF1aXJlZDogZmFsc2UsIGxhYmVsOiAnJywgb3B0aW9uczogW10gfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBjcmVhdGVVcGxvYWQoaW5kZXg/OiBudW1iZXIpIHtcclxuICAgIC8vIHRoaXMuZ290b0xhc3RPcHRpb24oKTtcclxuICAgIGlmIChpbmRleCA9PT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgIHRoaXMuY2hlY2twb2ludERhdGEucHVzaCh7IHR5cGU6ICd1cGxvYWQnLCBpZDogJ3VwbG9hZF8xJywgcmVxdWlyZWQ6IGZhbHNlLCBsYWJlbDogJycsIG9wdGlvbnM6IFtdIH0pO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5jaGVja3BvaW50RGF0YS5zcGxpY2UoaW5kZXggKyAxLCAwLCB7IHR5cGU6ICd1cGxvYWQnLCBpZDogJ3VwbG9hZF97aW5kZXgrMX0nLCByZXF1aXJlZDogZmFsc2UsIGxhYmVsOiAnJywgb3B0aW9uczogW10gfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuXHJcblxyXG5cclxuICBjcmVhdGVPcHRpb24oaTogbnVtYmVyLCBqOiBudW1iZXIsIHR5cGU6IGFueSkge1xyXG4gICAgdGhpcy5jaGVja3BvaW50RGF0YVtpXS5vcHRpb25zLnNwbGljZShqICsgMSwgMCwgeyBsYWJlbDogJycsIGlkOiAnJywgdmFsdWU6IDAsIGlzX3NlbGVjdGVkOiBmYWxzZSB9KTtcclxuICAgIGZvciAobGV0IGsgPSAwOyBrIDw9IHRoaXMuY2hlY2twb2ludERhdGFbaV0ub3B0aW9ucy5sZW5ndGggLSAxOyBrKyspIHtcclxuICAgICAgdGhpcy5jaGVja3BvaW50RGF0YVtpXS5vcHRpb25zW2tdLnZhbHVlID0gayArIDE7XHJcbiAgICB9XHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgY29uc3QgRUw6IGFueSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHR5cGUgKyAnLScgKyBpICsgJycgKyAoaiArIDEpKTtcclxuICAgICAgaWYgKEVMKSB7IEVMLmZvY3VzKCk7IH1cclxuICAgIH0sIDEwKTtcclxuXHJcbiAgfVxyXG5cclxuICBkZWxldGVPcHRpb24oaTogbnVtYmVyLCBqOiBudW1iZXIsIHR5cGU6IGFueSkge1xyXG4gICAgaWYgKHRoaXMuY2hlY2twb2ludERhdGFbaV0ub3B0aW9ucy5sZW5ndGggPT09IDEpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgdGhpcy5jaGVja3BvaW50RGF0YVtpXS5vcHRpb25zLnNwbGljZShqLCAxKTtcclxuICAgIGZvciAobGV0IGsgPSAwOyBrIDw9IHRoaXMuY2hlY2twb2ludERhdGFbaV0ub3B0aW9ucy5sZW5ndGggLSAxOyBrKyspIHtcclxuICAgICAgdGhpcy5jaGVja3BvaW50RGF0YVtpXS5vcHRpb25zW2tdLnZhbHVlID0gayArIDE7XHJcbiAgICB9XHJcbiAgICBpZiAoaiAtIDEgPj0gMCkge1xyXG4gICAgICBjb25zdCBFTDogYW55ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQodHlwZSArICctJyArIGkgKyAnJyArIChqIC0gMSkpO1xyXG4gICAgICBpZiAoRUwpIHsgRUwuZm9jdXMoKTsgfVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgY29uc3QgRUw6IGFueSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHR5cGUgKyAnLScgKyBpICsgJycgKyAwKTtcclxuICAgICAgaWYgKEVMKSB7IEVMLmZvY3VzKCk7IH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIHJlbW92ZVF1ZXN0aW9uKGluZGV4OiBudW1iZXIpe1xyXG4gICAgdGhpcy5jaGVja3BvaW50RGF0YS5zcGxpY2UoaW5kZXgsIDEpO1xyXG4gIH1cclxuXHJcbiAgY29weVF1ZXN0aW9uKGluZGV4OiBudW1iZXIpe1xyXG4gICAgY29uc3QgQ09QWV9BUlIgPSBKU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KHRoaXMuY2hlY2twb2ludERhdGFbaW5kZXhdKSk7XHJcbiAgICB0aGlzLmNoZWNrcG9pbnREYXRhLnNwbGljZShpbmRleCArIDEsIDAsIENPUFlfQVJSKTtcclxuICB9XHJcblxyXG5cclxuICBzYXZlKCl7XHJcbiAgICBjb25zb2xlLmxvZyh0aGlzLnZhbGlkYXRlQ2hlY2twb2ludCgpKTtcclxuICAgIGlmICh0aGlzLnZhbGlkYXRlQ2hlY2twb2ludCgpID09PSBmYWxzZSl7XHJcbiAgICAgIHRoaXMuc25hY2tiYXIuc2hvdygnUGxlYXNlIGZpbGwgaW4gdGhlIGRldGFpbHMuJyk7XHJcbiAgICB9XHJcbiAgICBlbHNle1xyXG4gICAgICB0aGlzLmVycm9ySW5kZXggPSAtMTtcclxuICAgICAgdGhpcy5zYXZlQ2hlY2tQb2ludC5lbWl0KHtjaGVja3BvaW50SW5zdHJ1Y3Rpb246IHRoaXMuY2hlY2twb2ludEluc3RydWN0aW9uLCBjaGVja3BvaW50RGV0YWlsczogdGhpcy5jaGVja3BvaW50RGF0YX0pO1xyXG4gICAgfVxyXG5cclxuICB9XHJcbiAgY2xvc2UoKXtcclxuICAgIGNvbnNvbGUubG9nKCdjbG9zZWQnKTtcclxuICAgIHRoaXMuY2xvc2VDaGVja1BvaW50LmVtaXQoKTtcclxuICB9XHJcblxyXG4gIHZhbGlkYXRlQ2hlY2twb2ludCgpIHtcclxuICAgIGZvciAobGV0IGkgPSAwOyBpIDw9IHRoaXMuY2hlY2twb2ludERhdGEubGVuZ3RoIC0gMTsgaSsrKSB7XHJcbiAgICAgIGlmICh0aGlzLmNoZWNrcG9pbnREYXRhW2ldLmxhYmVsLnRyaW0oKSA9PT0gJycpIHtcclxuICAgICAgICB0aGlzLmVycm9ySW5kZXggPSBpO1xyXG4gICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgfVxyXG4gICAgICBpZiAodGhpcy5jaGVja3BvaW50RGF0YVtpXS5vcHRpb25zLmxlbmd0aCA+IDApe1xyXG4gICAgICBmb3IgKGxldCBqID0gMDsgaiA8IHRoaXMuY2hlY2twb2ludERhdGFbaV0ub3B0aW9ucy5sZW5ndGg7IGorKykge1xyXG4gICAgICAgIGlmICh0aGlzLmNoZWNrcG9pbnREYXRhW2ldLm9wdGlvbnNbal0ubGFiZWwudHJpbSgpID09PSAnJykge1xyXG4gICAgICAgICAgdGhpcy5lcnJvckluZGV4ID0gaTtcclxuICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIGNoZWNrcG9pbnREZXNjcmlwdGlvbihldmVudDogYW55KSB7XHJcbiAgICBjb25zb2xlLmxvZyhcImRlc2NyaXB0aW9uID09PlwiLCBldmVudClcclxuICAgIHRoaXMuY2hlY2twb2ludEluc3RydWN0aW9uID0gZXZlbnRcclxuICB9XHJcblxyXG59XHJcbiJdfQ==
247
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2twb2ludHMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdngtd29ya2Zsb3ctZW5naW5lL3NyYy9saWIvc2hhcmVkQ29tcG9uZW50cy9jaGVja3BvaW50L2NoZWNrcG9pbnRzL2NoZWNrcG9pbnRzLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3RDLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFVLE1BQU0sRUFBRSxpQkFBaUIsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEcsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBTzlFLE1BQU0sT0FBTyxvQkFBb0I7SUE2Qy9CLFlBQW9CLFFBQXlCLEVBQVUsR0FBc0I7UUFBekQsYUFBUSxHQUFSLFFBQVEsQ0FBaUI7UUFBVSxRQUFHLEdBQUgsR0FBRyxDQUFtQjtRQTVDbkUsb0JBQWUsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQ3JDLG1CQUFjLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUM5QyxjQUFTLEdBQUcsSUFBSSxDQUFDO1FBQ1IsbUJBQWMsR0FBUSxFQUFFLENBQUM7UUFDekIsMEJBQXFCLEdBQUcsRUFBRSxDQUFDO1FBQ3BDLGVBQVUsR0FBRyxDQUFDLENBQUMsQ0FBQztRQUNoQixxQkFBZ0IsR0FBRztZQUNqQjtnQkFDRSxJQUFJLEVBQUUsTUFBTTtnQkFDWixJQUFJLEVBQUUsU0FBUztnQkFDZixXQUFXLEVBQUUscUJBQXFCO2dCQUNsQyxJQUFJLEVBQUUsVUFBVTthQUNqQjtZQUNEO2dCQUNFLElBQUksRUFBRSxVQUFVO2dCQUNoQixJQUFJLEVBQUUsUUFBUTtnQkFDZCxXQUFXLEVBQUUsOENBQThDO2dCQUMzRCxJQUFJLEVBQUUsVUFBVTthQUNqQjtZQUNE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QUFDLElBQUksRUFBRSxLQUFLLEVBQUUsRUFBRTt3QkFDekQsSUFBSSxDQUFDLFVBQVUsR0FBRyxDQUFDLENBQUM7d0JBQ3BCLE9BQU8sS0FBSyxDQUFDO3FCQUNkO2lCQUNGO2FBQ0Y7U0FDQTtJQUNILENBQUM7SUFFRCxxQkFBcUIsQ0FBQyxLQUFVO1FBQzlCLE9BQU8sQ0FBQyxHQUFHLENBQUMsaUJBQWlCLEVBQUUsS0FBSyxDQUFDLENBQUE7UUFDckMsSUFBSSxDQUFDLHFCQUFxQixHQUFHLEtBQUssQ0FBQTtJQUNwQyxDQUFDOzs7WUEzT0YsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxpQkFBaUI7Z0JBQzNCLDIvQ0FBMkM7O2FBRTVDOzs7WUFOUSxlQUFlO1lBRDBCLGlCQUFpQjs7OzhCQVNoRSxNQUFNOzZCQUNOLE1BQU07NkJBRU4sS0FBSztvQ0FDTCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY2xvbmVEZWVwIH0gZnJvbSAnbG9kYXNoLWVzJztcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIE9uSW5pdCwgT3V0cHV0LCBDaGFuZ2VEZXRlY3RvclJlZiwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgU25hY2tCYXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vdWkta2l0L3NuYWNrLWJhci9zbmFjay1iYXIuc2VydmljZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FwcC1jaGVja3BvaW50cycsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2NoZWNrcG9pbnRzLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9jaGVja3BvaW50cy5jb21wb25lbnQubGVzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDaGVja3BvaW50c0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgQE91dHB1dCgpIGNsb3NlQ2hlY2tQb2ludCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICBAT3V0cHV0KCkgc2F2ZUNoZWNrUG9pbnQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgYW5pbWF0aW9uID0gdHJ1ZTtcclxuICBASW5wdXQoKSBjaGVja3BvaW50RGF0YTogYW55ID0gW107XHJcbiAgQElucHV0KCkgY2hlY2twb2ludEluc3RydWN0aW9uID0gJyc7XHJcbiAgZXJyb3JJbmRleCA9IC0xO1xyXG4gIHF1ZXN0aW9uVHlwZUxpc3QgPSBbXHJcbiAgICB7XHJcbiAgICAgIHRleHQ6ICdUZXh0JyxcclxuICAgICAgdHlwZTogJ3RleHRib3gnLFxyXG4gICAgICBkZXNjcmlwdGlvbjogJ1NlbGVjdCBhIHRleHQgYXJlYS4nLFxyXG4gICAgICBpY29uOiAnJiN4ZWFjZTsnXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICB0ZXh0OiAnRHJvcGRvd24nLFxyXG4gICAgICB0eXBlOiAnc2VsZWN0JyxcclxuICAgICAgZGVzY3JpcHRpb246ICdDaG9vc2UgYW4gb3B0aW9uIGZyb20gYSBtdWx0aXBsZSBzZWxlY3QgYm94LicsXHJcbiAgICAgIGljb246ICcmI3hlYWI5OydcclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgIHRleHQ6ICdTaW5nbGUgc2VsZWN0aW9uJyxcclxuICAgICAgdHlwZTogJ3JhZGlvJyxcclxuICAgICAgZGVzY3JpcHRpb246ICdTZWxlY3Qgb25seSBvbmUgb3B0aW9uIHdpdGggYSByYWRpbyBidXR0b24uJyxcclxuICAgICAgaWNvbjogJyYjeGVhYjU7J1xyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgdGV4dDogJ011bHRpcGxlIHNlbGVjdGlvbicsXHJcbiAgICAgIHR5cGU6ICdjaGVja2JveCcsXHJcbiAgICAgIGRlc2NyaXB0aW9uOiAnU2VsZWN0IG11bHRpcGxlIG9wdGlvbnMgdXNpbmcgYSBjaGVja2JveC4nLFxyXG4gICAgICBpY29uOiAnJiN4ZWFiNDsnXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICB0ZXh0OiAnRGF0ZScsXHJcbiAgICAgIHR5cGU6ICdkYXRlJyxcclxuICAgICAgZGVzY3JpcHRpb246ICdTZWxlY3QgZGF0ZSBmcm9tIGEgZGF0ZSBwaWNrZXIuJyxcclxuICAgICAgaWNvbjogJyYjeGVhYmE7J1xyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgdGV4dDogJ1VwbG9hZCBGaWxlJyxcclxuICAgICAgdHlwZTogJ3VwbG9hZCcsXHJcbiAgICAgIGRlc2NyaXB0aW9uOiAnVXBsb2FkIGRvY3VtZW50cyAmIGZpbGVzLicsXHJcbiAgICAgIGljb246ICcmI3hlYTk3OydcclxuICAgIH1cclxuICBdO1xyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgc25hY2tiYXI6IFNuYWNrQmFyU2VydmljZSwgcHJpdmF0ZSBjZHI6IENoYW5nZURldGVjdG9yUmVmKSB7IH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICBjb25zb2xlLmxvZyhcImNoZWNrcG9pbnRJbnN0cnVjdGlvbiA9PT5cIiwgdGhpcy5jaGVja3BvaW50SW5zdHJ1Y3Rpb24sdGhpcy5jaGVja3BvaW50RGF0YSk7XHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgdGhpcy5hbmltYXRpb24gPSBmYWxzZTtcclxuICAgIH0sIDMwMCk7XHJcbiAgICB0aGlzLmNoZWNrcG9pbnREYXRhID0gdGhpcy5jaGVja3BvaW50RGF0YSAmJiB0aGlzLmNoZWNrcG9pbnREYXRhICE9ICcnID8gY2xvbmVEZWVwKHRoaXMuY2hlY2twb2ludERhdGEpIDogW107XHJcbiAgfVxyXG5cclxuICBhZGRRdWVzdGlvbihldnQ6IGFueSwgaW5kZXg/OiBudW1iZXIpe1xyXG4gICBjb25zb2xlLmxvZyhldnQpO1xyXG4gICBzd2l0Y2ggKGV2dCl7XHJcbiAgICAgY2FzZSAndGV4dGJveCcgOiB7XHJcbiAgICAgICAgdGhpcy5jcmVhdGVUZXh0Qm94KGluZGV4KTtcclxuICAgICAgICBicmVhaztcclxuICAgICB9XHJcbiAgICAgY2FzZSAnc2VsZWN0JyA6IHtcclxuICAgICAgdGhpcy5jcmVhdGVTZWxlY3QoaW5kZXgpO1xyXG4gICAgICBicmVhaztcclxuICAgfVxyXG4gICAgICBjYXNlICdyYWRpbycgOiB7XHJcbiAgICAgICAgdGhpcy5jcmVhdGVSYWRpbyhpbmRleCk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICB9XHJcbiAgICAgIGNhc2UgJ2NoZWNrYm94JyA6IHtcclxuICAgICAgICB0aGlzLmNyZWF0ZUNoZWNrQm94KGluZGV4KTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgfVxyXG4gICAgICBjYXNlICdkYXRlJyA6IHtcclxuICAgICAgICB0aGlzLmNyZWF0ZURhdGUoaW5kZXgpO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICB9Y2FzZSAndXBsb2FkJyA6IHtcclxuICAgICAgICB0aGlzLmNyZWF0ZVVwbG9hZChpbmRleCk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIH1cclxuICAgfVxyXG4gIH1cclxuXHJcblxyXG5cclxuICBjcmVhdGVUZXh0Qm94KGluZGV4PzogbnVtYmVyKSB7XHJcbiAgICAvLyB0aGlzLmdvdG9MYXN0T3B0aW9uKCk7XHJcbiAgICBpZiAoaW5kZXggPT09IHVuZGVmaW5lZCkge1xyXG4gICAgICB0aGlzLmNoZWNrcG9pbnREYXRhLnB1c2goeyB0eXBlOiAndGV4dGJveCcsIGlkOiAndGV4dGJveF8xJywgcmVxdWlyZWQ6IGZhbHNlLCBsYWJlbDogJycsIG9wdGlvbnM6IFtdIH0pO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5jaGVja3BvaW50RGF0YS5zcGxpY2UoaW5kZXggKyAxLCAwLCB7IHR5cGU6ICd0ZXh0Ym94JywgaWQ6IGB0ZXh0Ym94X3tpbmRleCsxfWAsIHJlcXVpcmVkOiBmYWxzZSwgbGFiZWw6ICcnLCBvcHRpb25zOiBbXSB9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGNyZWF0ZVNlbGVjdChpbmRleD86IG51bWJlcikge1xyXG4gICAgLy8gdGhpcy5nb3RvTGFzdE9wdGlvbigpO1xyXG4gICAgaWYgKGluZGV4ID09PSB1bmRlZmluZWQpIHtcclxuICAgICAgdGhpcy5jaGVja3BvaW50RGF0YS5wdXNoKHsgdHlwZTogJ3NlbGVjdCcsIGlkOiAnc2VsZWN0XzEnLCByZXF1aXJlZDogZmFsc2UsIGxhYmVsOiAnJywgb3B0aW9uczogW3sgbGFiZWw6ICcnLCB2YWx1ZTogMSwgaXNfc2VsZWN0ZWQ6IGZhbHNlIH1dIH0pO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5jaGVja3BvaW50RGF0YS5zcGxpY2UoaW5kZXggKyAxLCAwLCB7XHJcbiAgICAgICAgdHlwZTogJ3NlbGVjdCcsXHJcbiAgICAgICAgaWQ6ICdzZWxlY3Rfe2luZGV4KzF9JyxcclxuICAgICAgICByZXF1aXJlZDogZmFsc2UsXHJcbiAgICAgICAgbGFiZWw6ICcnLFxyXG4gICAgICAgIG9wdGlvbnM6IFt7IGxhYmVsOiAnJywgdmFsdWU6IDEsIGlzX3NlbGVjdGVkOiBmYWxzZSB9XSxcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBjcmVhdGVSYWRpbyhpbmRleD86IG51bWJlcikge1xyXG4gICAgLy8gdGhpcy5nb3RvTGFzdE9wdGlvbigpO1xyXG4gICAgaWYgKGluZGV4ID09PSB1bmRlZmluZWQpIHtcclxuICAgICAgdGhpcy5jaGVja3BvaW50RGF0YS5wdXNoKHsgdHlwZTogJ3JhZGlvJywgaWQ6ICdyYWRpb18xJywgcmVxdWlyZWQ6IGZhbHNlLCBsYWJlbDogJycsIG9wdGlvbnM6IFt7IGxhYmVsOiAnJywgdmFsdWU6IDEsIGlzX3NlbGVjdGVkOiBmYWxzZSB9XSB9KTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuY2hlY2twb2ludERhdGEuc3BsaWNlKGluZGV4ICsgMSwgMCwgeyB0eXBlOiAncmFkaW8nLCBpZDogJ3JhZGlvX3tpbmRleCsxfScsIHJlcXVpcmVkOiBmYWxzZSwgbGFiZWw6ICcnLCBvcHRpb25zOiBbeyBsYWJlbDogJycsIHZhbHVlOiAxLCBpc19zZWxlY3RlZDogZmFsc2UgfV0gfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBjcmVhdGVDaGVja0JveChpbmRleD86IG51bWJlcikge1xyXG4gICAgLy8gdGhpcy5nb3RvTGFzdE9wdGlvbigpO1xyXG4gICAgaWYgKGluZGV4ID09PSB1bmRlZmluZWQpIHtcclxuICAgICAgdGhpcy5jaGVja3BvaW50RGF0YS5wdXNoKHsgdHlwZTogJ2NoZWNrYm94JywgaWQ6ICdjaGVja2JveF8xJywgcmVxdWlyZWQ6IGZhbHNlLCBsYWJlbDogJycsIG9wdGlvbnM6IFt7IGxhYmVsOiAnJywgdmFsdWU6IDEsIGlzX3NlbGVjdGVkOiBmYWxzZSwgcmVxdWlyZWQ6IDAgfV0gfSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLmNoZWNrcG9pbnREYXRhLnNwbGljZShpbmRleCArIDEsIDAsIHtcclxuICAgICAgICB0eXBlOiAnY2hlY2tib3gnLFxyXG4gICAgICAgIGlkOiAnY2hlY2tib3hfe2luZGV4KzF9JyxcclxuICAgICAgICByZXF1aXJlZDogZmFsc2UsXHJcbiAgICAgICAgbGFiZWw6ICcnLFxyXG4gICAgICAgIG9wdGlvbnM6IFt7IGxhYmVsOiAnJywgdmFsdWU6IDEsIGlzX3NlbGVjdGVkOiBmYWxzZSwgcmVxdWlyZWQ6IDAgfV0sXHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgY3JlYXRlRGF0ZShpbmRleD86IG51bWJlcikge1xyXG4gICAgLy8gdGhpcy5nb3RvTGFzdE9wdGlvbigpO1xyXG4gICAgaWYgKGluZGV4ID09PSB1bmRlZmluZWQpIHtcclxuICAgICAgdGhpcy5jaGVja3BvaW50RGF0YS5wdXNoKHsgdHlwZTogJ2RhdGUnLCBpZDogJ2RhdGVfMScsIHJlcXVpcmVkOiBmYWxzZSwgbGFiZWw6ICcnLCBvcHRpb25zOiBbXSB9KTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuY2hlY2twb2ludERhdGEuc3BsaWNlKGluZGV4ICsgMSwgMCwgeyB0eXBlOiAnZGF0ZScsIGlkOiAnZGF0ZV97aW5kZXgrMX0nLCByZXF1aXJlZDogZmFsc2UsIGxhYmVsOiAnJywgb3B0aW9uczogW10gfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBjcmVhdGVVcGxvYWQoaW5kZXg/OiBudW1iZXIpIHtcclxuICAgIC8vIHRoaXMuZ290b0xhc3RPcHRpb24oKTtcclxuICAgIGlmIChpbmRleCA9PT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgIHRoaXMuY2hlY2twb2ludERhdGEucHVzaCh7IHR5cGU6ICd1cGxvYWQnLCBpZDogJ3VwbG9hZF8xJywgcmVxdWlyZWQ6IGZhbHNlLCBsYWJlbDogJycsIG9wdGlvbnM6IFtdIH0pO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5jaGVja3BvaW50RGF0YS5zcGxpY2UoaW5kZXggKyAxLCAwLCB7IHR5cGU6ICd1cGxvYWQnLCBpZDogJ3VwbG9hZF97aW5kZXgrMX0nLCByZXF1aXJlZDogZmFsc2UsIGxhYmVsOiAnJywgb3B0aW9uczogW10gfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuXHJcblxyXG5cclxuICBjcmVhdGVPcHRpb24oaTogbnVtYmVyLCBqOiBudW1iZXIsIHR5cGU6IGFueSkge1xyXG4gICAgdGhpcy5jaGVja3BvaW50RGF0YVtpXS5vcHRpb25zLnNwbGljZShqICsgMSwgMCwgeyBsYWJlbDogJycsIGlkOiAnJywgdmFsdWU6IDAsIGlzX3NlbGVjdGVkOiBmYWxzZSB9KTtcclxuICAgIGZvciAobGV0IGsgPSAwOyBrIDw9IHRoaXMuY2hlY2twb2ludERhdGFbaV0ub3B0aW9ucy5sZW5ndGggLSAxOyBrKyspIHtcclxuICAgICAgdGhpcy5jaGVja3BvaW50RGF0YVtpXS5vcHRpb25zW2tdLnZhbHVlID0gayArIDE7XHJcbiAgICB9XHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgY29uc3QgRUw6IGFueSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHR5cGUgKyAnLScgKyBpICsgJycgKyAoaiArIDEpKTtcclxuICAgICAgaWYgKEVMKSB7IEVMLmZvY3VzKCk7IH1cclxuICAgIH0sIDEwKTtcclxuXHJcbiAgfVxyXG5cclxuICBkZWxldGVPcHRpb24oaTogbnVtYmVyLCBqOiBudW1iZXIsIHR5cGU6IGFueSkge1xyXG4gICAgaWYgKHRoaXMuY2hlY2twb2ludERhdGFbaV0ub3B0aW9ucy5sZW5ndGggPT09IDEpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgdGhpcy5jaGVja3BvaW50RGF0YVtpXS5vcHRpb25zLnNwbGljZShqLCAxKTtcclxuICAgIGZvciAobGV0IGsgPSAwOyBrIDw9IHRoaXMuY2hlY2twb2ludERhdGFbaV0ub3B0aW9ucy5sZW5ndGggLSAxOyBrKyspIHtcclxuICAgICAgdGhpcy5jaGVja3BvaW50RGF0YVtpXS5vcHRpb25zW2tdLnZhbHVlID0gayArIDE7XHJcbiAgICB9XHJcbiAgICBpZiAoaiAtIDEgPj0gMCkge1xyXG4gICAgICBjb25zdCBFTDogYW55ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQodHlwZSArICctJyArIGkgKyAnJyArIChqIC0gMSkpO1xyXG4gICAgICBpZiAoRUwpIHsgRUwuZm9jdXMoKTsgfVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgY29uc3QgRUw6IGFueSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHR5cGUgKyAnLScgKyBpICsgJycgKyAwKTtcclxuICAgICAgaWYgKEVMKSB7IEVMLmZvY3VzKCk7IH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIHJlbW92ZVF1ZXN0aW9uKGluZGV4OiBudW1iZXIpe1xyXG4gICAgdGhpcy5jaGVja3BvaW50RGF0YS5zcGxpY2UoaW5kZXgsIDEpO1xyXG4gIH1cclxuXHJcbiAgY29weVF1ZXN0aW9uKGluZGV4OiBudW1iZXIpe1xyXG4gICAgY29uc3QgQ09QWV9BUlIgPSBKU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KHRoaXMuY2hlY2twb2ludERhdGFbaW5kZXhdKSk7XHJcbiAgICB0aGlzLmNoZWNrcG9pbnREYXRhLnNwbGljZShpbmRleCArIDEsIDAsIENPUFlfQVJSKTtcclxuICB9XHJcblxyXG5cclxuICBzYXZlKCl7XHJcbiAgICBjb25zb2xlLmxvZyh0aGlzLnZhbGlkYXRlQ2hlY2twb2ludCgpKTtcclxuICAgIGlmICh0aGlzLnZhbGlkYXRlQ2hlY2twb2ludCgpID09PSBmYWxzZSl7XHJcbiAgICAgIHRoaXMuc25hY2tiYXIuc2hvdygnUGxlYXNlIGZpbGwgaW4gdGhlIGRldGFpbHMuJyk7XHJcbiAgICB9XHJcbiAgICBlbHNle1xyXG4gICAgICB0aGlzLmVycm9ySW5kZXggPSAtMTtcclxuICAgICAgdGhpcy5zYXZlQ2hlY2tQb2ludC5lbWl0KHtjaGVja3BvaW50SW5zdHJ1Y3Rpb246IHRoaXMuY2hlY2twb2ludEluc3RydWN0aW9uLCBjaGVja3BvaW50RGV0YWlsczogdGhpcy5jaGVja3BvaW50RGF0YX0pO1xyXG4gICAgfVxyXG5cclxuICB9XHJcbiAgY2xvc2UoKXtcclxuICAgIGNvbnNvbGUubG9nKCdjbG9zZWQnKTtcclxuICAgIHRoaXMuY2xvc2VDaGVja1BvaW50LmVtaXQoKTtcclxuICB9XHJcblxyXG4gIHZhbGlkYXRlQ2hlY2twb2ludCgpIHtcclxuICAgIGZvciAobGV0IGkgPSAwOyBpIDw9IHRoaXMuY2hlY2twb2ludERhdGEubGVuZ3RoIC0gMTsgaSsrKSB7XHJcbiAgICAgIGlmICh0aGlzLmNoZWNrcG9pbnREYXRhW2ldLmxhYmVsLnRyaW0oKSA9PT0gJycpIHtcclxuICAgICAgICB0aGlzLmVycm9ySW5kZXggPSBpO1xyXG4gICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgfVxyXG4gICAgICBpZiAodGhpcy5jaGVja3BvaW50RGF0YVtpXS5vcHRpb25zLmxlbmd0aCA+IDApe1xyXG4gICAgICBmb3IgKGxldCBqID0gMDsgaiA8IHRoaXMuY2hlY2twb2ludERhdGFbaV0ub3B0aW9ucy5sZW5ndGg7IGorKykge1xyXG4gICAgICAgIGlmICh0aGlzLmNoZWNrcG9pbnREYXRhW2ldLm9wdGlvbnNbal0ubGFiZWwudHJpbSgpID09PSAnJykge1xyXG4gICAgICAgICAgdGhpcy5lcnJvckluZGV4ID0gaTtcclxuICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIGNoZWNrcG9pbnREZXNjcmlwdGlvbihldmVudDogYW55KSB7XHJcbiAgICBjb25zb2xlLmxvZyhcImRlc2NyaXB0aW9uID09PlwiLCBldmVudClcclxuICAgIHRoaXMuY2hlY2twb2ludEluc3RydWN0aW9uID0gZXZlbnRcclxuICB9XHJcblxyXG59XHJcbiJdfQ==
@@ -54,4 +54,4 @@ export function View_CheckpointsComponent_0(_l) { return i1.ɵvid(0, [(_l()(), i
54
54
  export function View_CheckpointsComponent_Host_0(_l) { return i1.ɵvid(0, [(_l()(), i1.ɵeld(0, 0, null, null, 1, "app-checkpoints", [], null, null, null, View_CheckpointsComponent_0, RenderType_CheckpointsComponent)), i1.ɵdid(1, 114688, null, 0, i10.CheckpointsComponent, [i6.SnackBarService, i1.ChangeDetectorRef], null, null)], function (_ck, _v) { _ck(_v, 1, 0); }, null); }
55
55
  var CheckpointsComponentNgFactory = i1.ɵccf("app-checkpoints", i10.CheckpointsComponent, View_CheckpointsComponent_Host_0, { checkpointData: "checkpointData", checkpointInstruction: "checkpointInstruction" }, { closeCheckPoint: "closeCheckPoint", saveCheckPoint: "saveCheckPoint" }, []);
56
56
  export { CheckpointsComponentNgFactory as CheckpointsComponentNgFactory };
57
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2twb2ludHMuY29tcG9uZW50Lm5nZmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Z4LXdvcmtmbG93LWVuZ2luZS9zcmMvbGliL3NoYXJlZENvbXBvbmVudHMvY2hlY2twb2ludC9jaGVja3BvaW50cy9jaGVja3BvaW50cy5jb21wb25lbnQubmdmYWN0b3J5LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdngtd29ya2Zsb3ctZW5naW5lL3NyYy9saWIvc2hhcmVkQ29tcG9uZW50cy9jaGVja3BvaW50L2NoZWNrcG9pbnRzL2NoZWNrcG9pbnRzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OytEQ01RLDBKQUErSixZQUFwRzs7d0JBQXNDO01BQWpHLDBPQUErSixtREFBN0QsbUJBQXFDLG1CQUF2SSxZQUErSixFQUE3RCxTQUFxQzsrREFDdkksdVRBR3NLLFlBRm5LOzt3QkFBc0M7TUFBQzs7d0JBQXlDO01BQUM7O3dCQUFxQztNQUN0SDs7d0JBQXVEO01BQUM7O3dCQUFrRjtNQUMxSTs7d0JBQWtGO01BQUM7O3dCQUFtRDtNQUh6SSx5bEJBR3NLLG1EQUg5QixtQkFBaUMsaUJBQUMsbUJBQXFDLG1CQUFqRyxtQkFBeUIsYUFBekUsbUJBQStDLHdCQUE3RyxZQUdzSyxFQUg5QixTQUFpQyxFQUFDLFNBQXFDLEVBQWpHLFNBQXlCLEVBQXpFLFNBQStDO3NFQU5ySCx1SEFlTSxLQWRGLHlHQUVNLEtBREYseUdBQWtELEtBQXBCLDRDQUFlLE1BRWpELGdJQU1NLEtBTEYsb0xBQStKLElBQy9KLG9MQUdzSyxJQUUxSywyR0FHTSxLQUZGLGlMQUNvRCxZQURTOzt3QkFBbUI7TUFDaEY7O3dCQUFxQjtNQURyQixxVEFDb0QsbURBUjlCLHdGQUFvQyxHQUExRCxZQUErSixFQUF6SSxTQUFvQyxHQUMvQixzRkFBa0MsR0FBN0QsWUFHc0ssRUFIM0ksU0FBa0MsR0FNaEMsbUJBQStCLHdCQUFxQix1Q0FBc0MsRUFBQyxzQ0FBdUMsRUFBL0osYUFDb0QsRUFEdkIsU0FBK0IsRUFBcUIsU0FBc0MsRUFBQyxTQUF1QyxtREFaOUksbUJBQTJCLFlBQXBELFlBZU0sRUFmbUIsU0FBMkIsR0FJbEIsd0ZBQW1ELEdBQWpGLFlBTU0sRUFOd0IsU0FBbUQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBpMCBmcm9tICdAYW5ndWxhci9jb3JlJztcbmkwLkNvbXBvbmVudEZhY3Rvcnk7XG4iLCI8IS0tIDxwPmNoZWNrcG9pbnRzIHdvcmtzITwvcD4gLS0+XHJcbjxkaXYgY2xhc3M9XCJjaGVja3BvaW50c1wiIFtjbGFzcy5hbmltYXRlXT1cImFuaW1hdGlvblwiPlxyXG4gICAgPGRpdiBjbGFzcz1cImNoZWNrcG9pbnRzLWhlYWRcIj5cclxuICAgICAgICA8aDMgY2xhc3M9XCJjaGVja3BvaW50cy10aXRsZVwiPkFkZCBDaGVja3BvaW50czwvaDM+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgY2xhc3M9XCJjaGVja3BvaW50cy1ib2R5XCIgW2NsYXNzLmFsaWduLWNlbnRlcl09XCJjaGVja3BvaW50RGF0YT8ubGVuZ3RoID09PSAwXCI+XHJcbiAgICAgICAgPGFwcC1jaGVja3BvaW50cy1saXN0ICpuZ0lmPVwiY2hlY2twb2ludERhdGE/Lmxlbmd0aCA9PT0gMFwiIChjcmVhdGVRdWVzdGlvbik9XCJhZGRRdWVzdGlvbigkZXZlbnQpXCIgW3F1ZXN0aW9uVHlwZUxpc3RdPVwicXVlc3Rpb25UeXBlTGlzdFwiPjwvYXBwLWNoZWNrcG9pbnRzLWxpc3Q+XHJcbiAgICAgICAgPGFwcC1jaGVja3BvaW50cy1xdWVzdGlvbnMgKm5nSWY9XCJjaGVja3BvaW50RGF0YT8ubGVuZ3RoID4gMFwiIFtjaGVja3BvaW50SW5zdHJ1Y3Rpb25dPVwiY2hlY2twb2ludEluc3RydWN0aW9uXCIgW2Vycm9ySW5kZXhdPSdlcnJvckluZGV4JyBbY2hlY2twb2ludERhdGFdPVwiY2hlY2twb2ludERhdGFcIiBbcXVlc3Rpb25UeXBlTGlzdF09XCJxdWVzdGlvblR5cGVMaXN0XCJcclxuICAgICAgICAgICAoY3JlYXRlUXVlc3Rpb24pPVwiYWRkUXVlc3Rpb24oJGV2ZW50KVwiIChkZWxldGVRdWVzdGlvbik9XCJyZW1vdmVRdWVzdGlvbigkZXZlbnQpXCIgKGNvcHlRdWVzdGlvbik9XCJjb3B5UXVlc3Rpb24oJGV2ZW50KVwiXHJcbiAgICAgICAgICAgKGJsYW5rUXVlc3Rpb24pPVwiYWRkUXVlc3Rpb24oJGV2ZW50LnR5cGUsJGV2ZW50LmluZGV4KVwiIChjcmVhdGVPcHRpb24pPVwiY3JlYXRlT3B0aW9uKCRldmVudC5xdWVzdGlvbkluZGV4LCRldmVudC5vcHRpb25JbmRleCwkZXZlbnQudHlwZSlcIlxyXG4gICAgICAgICAgIChyZW1vdmVPcHRpb24pPVwiZGVsZXRlT3B0aW9uKCRldmVudC5xdWVzdGlvbkluZGV4LCRldmVudC5vcHRpb25JbmRleCwkZXZlbnQudHlwZSlcIiAodXBkYXRlRGVzY3JpcHRpb24pPVwiY2hlY2twb2ludERlc2NyaXB0aW9uKCRldmVudClcIj48L2FwcC1jaGVja3BvaW50cy1xdWVzdGlvbnM+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgY2xhc3M9XCJjaGVja3BvaW50cy1mb290ZXJcIj5cclxuICAgICAgICA8YXBwLWNoZWNrcG9pbnQtZmxvYXRpbmctYmFyIFtjb3VudF09XCJjaGVja3BvaW50RGF0YS5sZW5ndGhcIiAoc2F2ZUxpc3QpPVwic2F2ZSgpXCIgW3BsdXJhbFRleHRdPVwiJ0NoZWNrcG9pbnRzIHNlbGVjdGVkLidcIiBbc2luZ3VsYXJUZXh0XT1cIidDaGVja3BvaW50IHNlbGVjdGVkLidcIlxyXG4gICAgICAgIChjbG9zZUxpc3QpPVwiY2xvc2UoKVwiPjwvYXBwLWNoZWNrcG9pbnQtZmxvYXRpbmctYmFyPlxyXG4gICAgPC9kaXY+XHJcbjwvZGl2PlxyXG4iXX0=
57
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2twb2ludHMuY29tcG9uZW50Lm5nZmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Z4LXdvcmtmbG93LWVuZ2luZS9zcmMvbGliL3NoYXJlZENvbXBvbmVudHMvY2hlY2twb2ludC9jaGVja3BvaW50cy9jaGVja3BvaW50cy5jb21wb25lbnQubmdmYWN0b3J5LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdngtd29ya2Zsb3ctZW5naW5lL3NyYy9saWIvc2hhcmVkQ29tcG9uZW50cy9jaGVja3BvaW50L2NoZWNrcG9pbnRzL2NoZWNrcG9pbnRzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OytEQ01RLDBKQUErSixZQUFwRzs7d0JBQXNDO01BQWpHLDBPQUErSixtREFBN0QsbUJBQXFDLG1CQUF2SSxZQUErSixFQUE3RCxTQUFxQzsrREFDdkksdVRBR3NLLFlBRm5LOzt3QkFBc0M7TUFBQzs7d0JBQXlDO01BQUM7O3dCQUFxQztNQUN0SDs7d0JBQXVEO01BQUM7O3dCQUFrRjtNQUMxSTs7d0JBQWtGO01BQUM7O3dCQUFtRDtNQUh6SSx5bEJBR3NLLG1EQUg5QixtQkFBaUMsaUJBQUMsbUJBQXFDLG1CQUFqRyxtQkFBeUIsYUFBekUsbUJBQStDLHdCQUE3RyxZQUdzSyxFQUg5QixTQUFpQyxFQUFDLFNBQXFDLEVBQWpHLFNBQXlCLEVBQXpFLFNBQStDO3NFQU5ySCx1SEFlTSxLQWRGLHlHQUVNLEtBREYseUdBQWtELEtBQXBCLDRDQUFlLE1BRWpELGdJQU1NLEtBTEYsb0xBQStKLElBQy9KLG9MQUdzSyxJQUUxSywyR0FHTSxLQUZGLGlMQUNxRCxZQURROzt3QkFBbUI7TUFDaEY7O3dCQUFxQjtNQURyQixxVEFDcUQsbURBUi9CLHdGQUFvQyxHQUExRCxZQUErSixFQUF6SSxTQUFvQyxHQUMvQixzRkFBa0MsR0FBN0QsWUFHc0ssRUFIM0ksU0FBa0MsR0FNaEMsbUJBQStCLHdCQUFxQix1Q0FBc0MsRUFBQyxzQ0FBdUMsRUFBL0osYUFDcUQsRUFEeEIsU0FBK0IsRUFBcUIsU0FBc0MsRUFBQyxTQUF1QyxtREFaOUksbUJBQTJCLFlBQXBELFlBZU0sRUFmbUIsU0FBMkIsR0FJbEIsd0ZBQW1ELEdBQWpGLFlBTU0sRUFOd0IsU0FBbUQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBpMCBmcm9tICdAYW5ndWxhci9jb3JlJztcbmkwLkNvbXBvbmVudEZhY3Rvcnk7XG4iLCI8IS0tIDxwPmNoZWNrcG9pbnRzIHdvcmtzITwvcD4gLS0+XHJcbjxkaXYgY2xhc3M9XCJjaGVja3BvaW50c1wiIFtjbGFzcy5hbmltYXRlXT1cImFuaW1hdGlvblwiPlxyXG4gICAgPGRpdiBjbGFzcz1cImNoZWNrcG9pbnRzLWhlYWRcIj5cclxuICAgICAgICA8aDMgY2xhc3M9XCJjaGVja3BvaW50cy10aXRsZVwiPkFkZCBDaGVja3BvaW50czwvaDM+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgY2xhc3M9XCJjaGVja3BvaW50cy1ib2R5XCIgW2NsYXNzLmFsaWduLWNlbnRlcl09XCJjaGVja3BvaW50RGF0YT8ubGVuZ3RoID09PSAwXCI+XHJcbiAgICAgICAgPGFwcC1jaGVja3BvaW50cy1saXN0ICpuZ0lmPVwiY2hlY2twb2ludERhdGE/Lmxlbmd0aCA9PT0gMFwiIChjcmVhdGVRdWVzdGlvbik9XCJhZGRRdWVzdGlvbigkZXZlbnQpXCIgW3F1ZXN0aW9uVHlwZUxpc3RdPVwicXVlc3Rpb25UeXBlTGlzdFwiPjwvYXBwLWNoZWNrcG9pbnRzLWxpc3Q+XHJcbiAgICAgICAgPGFwcC1jaGVja3BvaW50cy1xdWVzdGlvbnMgKm5nSWY9XCJjaGVja3BvaW50RGF0YT8ubGVuZ3RoID4gMFwiIFtjaGVja3BvaW50SW5zdHJ1Y3Rpb25dPVwiY2hlY2twb2ludEluc3RydWN0aW9uXCIgW2Vycm9ySW5kZXhdPSdlcnJvckluZGV4JyBbY2hlY2twb2ludERhdGFdPVwiY2hlY2twb2ludERhdGFcIiBbcXVlc3Rpb25UeXBlTGlzdF09XCJxdWVzdGlvblR5cGVMaXN0XCJcclxuICAgICAgICAgICAoY3JlYXRlUXVlc3Rpb24pPVwiYWRkUXVlc3Rpb24oJGV2ZW50KVwiIChkZWxldGVRdWVzdGlvbik9XCJyZW1vdmVRdWVzdGlvbigkZXZlbnQpXCIgKGNvcHlRdWVzdGlvbik9XCJjb3B5UXVlc3Rpb24oJGV2ZW50KVwiXHJcbiAgICAgICAgICAgKGJsYW5rUXVlc3Rpb24pPVwiYWRkUXVlc3Rpb24oJGV2ZW50LnR5cGUsJGV2ZW50LmluZGV4KVwiIChjcmVhdGVPcHRpb24pPVwiY3JlYXRlT3B0aW9uKCRldmVudC5xdWVzdGlvbkluZGV4LCRldmVudC5vcHRpb25JbmRleCwkZXZlbnQudHlwZSlcIlxyXG4gICAgICAgICAgIChyZW1vdmVPcHRpb24pPVwiZGVsZXRlT3B0aW9uKCRldmVudC5xdWVzdGlvbkluZGV4LCRldmVudC5vcHRpb25JbmRleCwkZXZlbnQudHlwZSlcIiAodXBkYXRlRGVzY3JpcHRpb24pPVwiY2hlY2twb2ludERlc2NyaXB0aW9uKCRldmVudClcIj48L2FwcC1jaGVja3BvaW50cy1xdWVzdGlvbnM+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgY2xhc3M9XCJjaGVja3BvaW50cy1mb290ZXJcIj5cclxuICAgICAgICA8YXBwLWNoZWNrcG9pbnQtZmxvYXRpbmctYmFyIFtjb3VudF09XCJjaGVja3BvaW50RGF0YS5sZW5ndGhcIiAoc2F2ZUxpc3QpPVwic2F2ZSgpXCIgW3BsdXJhbFRleHRdPVwiJ0NoZWNrcG9pbnRzIHNlbGVjdGVkLidcIiBbc2luZ3VsYXJUZXh0XT1cIidDaGVja3BvaW50IHNlbGVjdGVkLidcIlxyXG4gICAgICAgIChjbG9zZUxpc3QpPVwiY2xvc2UoKVwiID48L2FwcC1jaGVja3BvaW50LWZsb2F0aW5nLWJhcj5cclxuICAgIDwvZGl2PlxyXG48L2Rpdj5cclxuIl19
@@ -7,7 +7,7 @@ export class CheckpointsListComponent {
7
7
  ngOnInit() {
8
8
  }
9
9
  addQuestion(type) {
10
- this.createQuestion.emit(type.type);
10
+ // this.createQuestion.emit(type.type);
11
11
  }
12
12
  }
13
13
  CheckpointsListComponent.decorators = [
@@ -22,4 +22,4 @@ CheckpointsListComponent.propDecorators = {
22
22
  createQuestion: [{ type: Output }],
23
23
  questionTypeList: [{ type: Input }]
24
24
  };
25
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2twb2ludHMtbGlzdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92eC13b3JrZmxvdy1lbmdpbmUvc3JjL2xpYi9zaGFyZWRDb21wb25lbnRzL2NoZWNrcG9pbnQvY2hlY2twb2ludHMtbGlzdC9jaGVja3BvaW50cy1saXN0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLE1BQU0sRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBTy9FLE1BQU0sT0FBTyx3QkFBd0I7SUFHbkM7UUFGVSxtQkFBYyxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFDckMscUJBQWdCLEdBQUcsRUFBRSxDQUFDO0lBQ2YsQ0FBQztJQUVqQixRQUFRO0lBQ1IsQ0FBQztJQUNELFdBQVcsQ0FBQyxJQUFTO1FBQ3BCLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNyQyxDQUFDOzs7WUFkRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLHNCQUFzQjtnQkFDaEMsZ3BCQUFnRDs7YUFFakQ7Ozs7NkJBRUUsTUFBTTsrQkFDTixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIE91dHB1dCwgRXZlbnRFbWl0dGVyLCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhcHAtY2hlY2twb2ludHMtbGlzdCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2NoZWNrcG9pbnRzLWxpc3QuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2NoZWNrcG9pbnRzLWxpc3QuY29tcG9uZW50Lmxlc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgQ2hlY2twb2ludHNMaXN0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICBAT3V0cHV0KCkgY3JlYXRlUXVlc3Rpb24gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgQElucHV0KCkgcXVlc3Rpb25UeXBlTGlzdCA9IFtdO1xyXG4gIGNvbnN0cnVjdG9yKCkgeyB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gIH1cclxuICBhZGRRdWVzdGlvbih0eXBlOiBhbnkpe1xyXG4gICB0aGlzLmNyZWF0ZVF1ZXN0aW9uLmVtaXQodHlwZS50eXBlKTtcclxuICB9XHJcblxyXG59XHJcbiJdfQ==
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2twb2ludHMtbGlzdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92eC13b3JrZmxvdy1lbmdpbmUvc3JjL2xpYi9zaGFyZWRDb21wb25lbnRzL2NoZWNrcG9pbnQvY2hlY2twb2ludHMtbGlzdC9jaGVja3BvaW50cy1saXN0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLE1BQU0sRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBTy9FLE1BQU0sT0FBTyx3QkFBd0I7SUFHbkM7UUFGVSxtQkFBYyxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFDckMscUJBQWdCLEdBQUcsRUFBRSxDQUFDO0lBQ2YsQ0FBQztJQUVqQixRQUFRO0lBQ1IsQ0FBQztJQUNELFdBQVcsQ0FBQyxJQUFTO1FBQ3RCLHdDQUF3QztJQUN2QyxDQUFDOzs7WUFkRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLHNCQUFzQjtnQkFDaEMsZ3BCQUFnRDs7YUFFakQ7Ozs7NkJBRUUsTUFBTTsrQkFDTixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIE91dHB1dCwgRXZlbnRFbWl0dGVyLCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhcHAtY2hlY2twb2ludHMtbGlzdCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2NoZWNrcG9pbnRzLWxpc3QuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2NoZWNrcG9pbnRzLWxpc3QuY29tcG9uZW50Lmxlc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgQ2hlY2twb2ludHNMaXN0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICBAT3V0cHV0KCkgY3JlYXRlUXVlc3Rpb24gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgQElucHV0KCkgcXVlc3Rpb25UeXBlTGlzdCA9IFtdO1xyXG4gIGNvbnN0cnVjdG9yKCkgeyB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gIH1cclxuICBhZGRRdWVzdGlvbih0eXBlOiBhbnkpe1xyXG4gLy8gIHRoaXMuY3JlYXRlUXVlc3Rpb24uZW1pdCh0eXBlLnR5cGUpO1xyXG4gIH1cclxuXHJcbn1cclxuIl19
@@ -59,23 +59,23 @@ export class CheckpointsQuestionsComponent {
59
59
  this.datePickerOverlay = false;
60
60
  }
61
61
  addQuestion(type) {
62
- this.createQuestion.emit(type.type);
63
- this.activeQuestionIndex = this.checkpointData.length - 1;
62
+ // this.createQuestion.emit(type.type);
63
+ // this.activeQuestionIndex = this.checkpointData.length - 1;
64
64
  }
65
65
  removeQuestion(index) {
66
66
  this.deleteQuestion.emit(index);
67
67
  this.activeQuestionIndex = index - 1;
68
68
  }
69
69
  cloneQuestion(index) {
70
- this.activeQuestionIndex = index + 1;
71
- this.copyQuestion.emit(index);
70
+ // this.activeQuestionIndex = index + 1;
71
+ // this.copyQuestion.emit(index);
72
72
  }
73
73
  blankClone(type, index) {
74
- this.blankQuestion.emit({ type, index });
75
- this.activeQuestionIndex = index + 1;
74
+ // this.blankQuestion.emit({type, index});
75
+ // this.activeQuestionIndex = index + 1;
76
76
  }
77
77
  addOption(questionIndex, optionIndex, type) {
78
- this.createOption.emit({ questionIndex, optionIndex, type });
78
+ // this.createOption.emit({questionIndex, optionIndex, type});
79
79
  }
80
80
  deleteOption(questionIndex, optionIndex, type) {
81
81
  this.removeOption.emit({ questionIndex, optionIndex, type });
@@ -89,7 +89,7 @@ export class CheckpointsQuestionsComponent {
89
89
  CheckpointsQuestionsComponent.decorators = [
90
90
  { type: Component, args: [{
91
91
  selector: 'app-checkpoints-questions',
92
- template: "<!-- <p>checkpoints-questions works!</p> -->\r\n<div class=\"checkpoints-questions\">\r\n <div class=\"checkpoints-questions-blocks instruction\"\r\n [class.filled]=\"checkpointInstruction.length>0 && !addInstruction\">\r\n <div class=\"container\">\r\n <h3 class=\"question\">\r\n <span class=\"counter\" *ngIf=\"!addInstruction\"><i class=\"icons\">&#xe932;</i></span>\r\n <span class=\"text\" *ngIf=\"!addInstruction\" (click)=\"addInstruction = true\"\r\n [innerHTML]=\"checkpointInstruction.length>0 ? (checkpointInstruction | formatHtml) :'Add instruction'\"></span>\r\n <span class=\"text\" *ngIf=\"addInstruction\">\r\n <marx-editor [(ngModel)]=\"checkpointInstruction\" [editorConfig]=\"{mode: 'prime',\r\n colorPalette: true,\r\n link: true,\r\n placeholder: 'Add instruction',\r\n buttonName:'SAVE', id:'checkpoint-instructions'}\" (comment)=\"saveDescription()\"></marx-editor>\r\n </span>\r\n </h3>\r\n </div>\r\n </div>\r\n\r\n <ng-container *ngFor=\"let question of checkpointData; let questionIndex = index\">\r\n <div (click)=\"activeQuestionIndex = questionIndex\" class=\"checkpoints-questions-blocks\"\r\n *ngIf=\"['textbox','date','upload'].includes(question?.type)\"\r\n [class.active]=\"activeQuestionIndex === questionIndex\" [class.error]=\"errorIndex === questionIndex\">\r\n <div class=\"container\">\r\n <h3 class=\"question\">\r\n <span class=\"counter\">{{questionIndex+1}}. <span class=\"required\"\r\n *ngIf=\"question.required\">*</span></span>\r\n <input class=\"text\" type=\"text\" [placeholder]=\"placeholder[question.type]\"\r\n [(ngModel)]=\"question.label\" [readonly]=\"activeQuestionIndex !== questionIndex\">\r\n </h3>\r\n <ng-container class=\"preview\" *ngIf=\"activeQuestionIndex !== questionIndex\">\r\n <label class=\"file-upload\" *ngIf=\"question.type==='upload'\">\r\n <input type=\"file\" disabled>\r\n <span><i class=\"icons\">&#xe9ed;</i> Browse File</span>\r\n </label>\r\n <ng-container *ngIf=\"question.type === 'date'\">\r\n <div class=\"date-picker\">\r\n <i class=\"icons\">&#xe92d;</i>\r\n <input type=\"text\" placeholder=\"Select date\"\r\n (click)=\"openDatePicker();$event.stopPropagation(); datePickerOverlay = true;\" disabled>\r\n <dp-date-picker #datePicker (click)=\"$event.stopPropagation();\"> </dp-date-picker>\r\n <div class=\"vx-overlay\" (click)=\"closeDatepicker();$event.stopPropagation();\"\r\n *ngIf=\"datePickerOverlay\"></div>\r\n </div>\r\n </ng-container>\r\n </ng-container>\r\n </div>\r\n <div class=\"footer\">\r\n <div class=\"left\">\r\n <app-cs-checkbox [ngValue]=\"question.required\" (ngValueChange)=\"question.required = $event\">Is\r\n required</app-cs-checkbox>\r\n </div>\r\n <div class=\"right\">\r\n <ul>\r\n <li>\r\n <button [appTooltip]=\"'Add new'\" placement=\"bottom\" delay=\"0\" [tooltipMandatory]=\"true\"\r\n (click)=\"blankClone(question.type,questionIndex);$event.stopPropagation();\">\r\n <i class=\"icons\">&#xe915;</i>\r\n </button>\r\n </li>\r\n <li>\r\n <button class=\"delete\" [appTooltip]=\"'Delete'\" placement=\"bottom\" delay=\"0\"\r\n [tooltipMandatory]=\"true\"\r\n (click)=\"removeQuestion(questionIndex);$event.stopPropagation();\">\r\n <i class=\"icons\">&#xe923;</i>\r\n </button>\r\n </li>\r\n <li>\r\n <button [appTooltip]=\"'Copy'\" placement=\"bottom\" delay=\"0\" [tooltipMandatory]=\"true\"\r\n (click)=\"cloneQuestion(questionIndex);$event.stopPropagation();\">\r\n <i class=\"icons\">&#xe9b6;</i>\r\n </button>\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n </div>\r\n <div (click)=\"activeQuestionIndex = questionIndex\" class=\"checkpoints-questions-blocks\"\r\n *ngIf=\"question?.type === 'radio'\" [class.active]=\"activeQuestionIndex === questionIndex\"\r\n [class.error]=\"errorIndex === questionIndex\">\r\n <div class=\"container\">\r\n <h3 class=\"question\">\r\n <span class=\"counter\">{{questionIndex+1}}. <span class=\"required\"\r\n *ngIf=\"question.required\">*</span></span>\r\n <input class=\"text\" type=\"text\" [placeholder]=\"placeholder[question.type]\"\r\n [(ngModel)]=\"question.label\" [readonly]=\"activeQuestionIndex !== questionIndex\">\r\n </h3>\r\n <ul class=\"list\">\r\n\r\n <li *ngFor=\"let option of question?.options; let opIndex = index\">\r\n <app-cs-radio [oneLine]=\"true\" [readonly]=\"true\"\r\n [disabled]=\"activeQuestionIndex === questionIndex\"><input [(ngModel)]=\"option.label\"\r\n (keydown.enter)=\"addOption(questionIndex,opIndex,question.type)\"\r\n (keydown.backspace)=\"deleteOnBackspace(questionIndex,opIndex,question.type)\"\r\n [id]=\"'radio-' + '' + questionIndex + '' + opIndex\" type=\"text\" placeholder=\"Option\">\r\n </app-cs-radio>\r\n <button class=\"close\" (click)=\"deleteOption(questionIndex,opIndex,question.type)\"\r\n *ngIf=\"activeQuestionIndex === questionIndex && question?.options.length > 1\"><i\r\n class=\"icons\">&#xe90d;</i></button>\r\n </li>\r\n <li *ngIf=\"activeQuestionIndex === questionIndex\" class=\"add-new\">\r\n <app-cs-radio [oneLine]=\"true\" [readonly]=\"true\">\r\n <input type=\"text\" readonly placeholder=\"Add more option\"\r\n (click)=\"addOption(questionIndex,question?.options?.length-1,question.type)\">\r\n </app-cs-radio>\r\n </li>\r\n </ul>\r\n </div>\r\n\r\n <div class=\"footer\">\r\n <div class=\"left\">\r\n <app-cs-checkbox [ngValue]=\"question.required\" (ngValueChange)=\"question.required = $event\">Is required</app-cs-checkbox>\r\n </div>\r\n <div class=\"right\">\r\n <ul>\r\n <li>\r\n <button [appTooltip]=\"'Add new'\" placement=\"bottom\" delay=\"0\" [tooltipMandatory]=\"true\"\r\n (click)=\"blankClone(question.type,questionIndex);$event.stopPropagation();\">\r\n <i class=\"icons\">&#xe915;</i>\r\n </button>\r\n </li>\r\n <li>\r\n <button class=\"delete\" [appTooltip]=\"'Delete'\" placement=\"bottom\" delay=\"0\" [tooltipMandatory]=\"true\"\r\n (click)=\"removeQuestion(questionIndex);$event.stopPropagation();\">\r\n <i class=\"icons\">&#xe923;</i>\r\n </button>\r\n </li>\r\n <li>\r\n <button [appTooltip]=\"'Copy'\" placement=\"bottom\" delay=\"0\" [tooltipMandatory]=\"true\"\r\n (click)=\"cloneQuestion(questionIndex);$event.stopPropagation();\">\r\n <i class=\"icons\">&#xe9b6;</i>\r\n </button>\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n </div>\r\n <div (click)=\"activeQuestionIndex = questionIndex\" class=\"checkpoints-questions-blocks\"\r\n *ngIf=\"question?.type === 'select'\" [class.active]=\"activeQuestionIndex === questionIndex\"\r\n [class.error]=\"errorIndex === questionIndex\">\r\n <div class=\"container\">\r\n <h3 class=\"question\">\r\n <span class=\"counter\">{{questionIndex+1}}. <span class=\"required\"\r\n *ngIf=\"question.required\">*</span></span>\r\n <input class=\"text\" type=\"text\" [placeholder]=\"placeholder[question.type]\"\r\n [(ngModel)]=\"question.label\" [readonly]=\"activeQuestionIndex !== questionIndex\">\r\n </h3>\r\n <ul class=\"list\">\r\n\r\n <li *ngFor=\"let option of question?.options; let opIndex = index\">\r\n <app-cs-radio [oneLine]=\"true\" [readonly]=\"true\"\r\n [disabled]=\"activeQuestionIndex === questionIndex\">\r\n <input [(ngModel)]=\"option.label\"\r\n name =\"'select-' + '' + questionIndex + '' + opIndex\" (keydown.enter)=\"addOption(questionIndex,opIndex,question.type)\"\r\n (keydown.backspace)=\"deleteOnBackspace(questionIndex,opIndex,question.type)\"\r\n [id]=\"'select-' + '' + questionIndex + '' + opIndex\" type=\"text\" placeholder=\"Option\">\r\n </app-cs-radio>\r\n <button class=\"close\" (click)=\"deleteOption(questionIndex,opIndex,question.type)\"\r\n *ngIf=\"activeQuestionIndex === questionIndex && question?.options.length > 1\"><i\r\n class=\"icons\">&#xe90d;</i></button>\r\n </li>\r\n\r\n <li *ngIf=\"activeQuestionIndex === questionIndex\" class=\"add-new\">\r\n <app-cs-radio [oneLine]=\"true\" [readonly]=\"true\"><input readonly type=\"text\"\r\n placeholder=\"Add more option\"\r\n (click)=\"addOption(questionIndex,question?.options?.length-1,question.type)\">\r\n </app-cs-radio>\r\n </li>\r\n <!-- <button (click)=\"addOption(questionIndex,question?.options?.length,question.type)\"\r\n *ngIf=\"activeQuestionIndex === questionIndex\">Add More Options</button> -->\r\n </ul>\r\n </div>\r\n\r\n <div class=\"footer\">\r\n <div class=\"left\">\r\n <app-cs-checkbox [ngValue]=\"question.required\" (ngValueChange)=\"question.required = $event\">Is\r\n required</app-cs-checkbox>\r\n </div>\r\n <div class=\"right\">\r\n <ul>\r\n <li>\r\n <button [appTooltip]=\"'Add new'\" placement=\"bottom\" delay=\"0\" [tooltipMandatory]=\"true\"\r\n (click)=\"blankClone(question.type,questionIndex);$event.stopPropagation();\">\r\n <i class=\"icons\">&#xe915;</i>\r\n </button>\r\n </li>\r\n <li>\r\n <button class=\"delete\" [appTooltip]=\"'Delete'\" placement=\"bottom\" delay=\"0\"\r\n [tooltipMandatory]=\"true\"\r\n (click)=\"removeQuestion(questionIndex);$event.stopPropagation();\">\r\n <i class=\"icons\">&#xe923;</i>\r\n </button>\r\n </li>\r\n <li>\r\n <button [appTooltip]=\"'Copy'\" placement=\"bottom\" delay=\"0\" [tooltipMandatory]=\"true\"\r\n (click)=\"cloneQuestion(questionIndex);$event.stopPropagation();\">\r\n <i class=\"icons\">&#xe9b6;</i>\r\n </button>\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n </div>\r\n <div (click)=\"activeQuestionIndex = questionIndex\" class=\"checkpoints-questions-blocks\"\r\n *ngIf=\"question?.type === 'checkbox'\" [class.active]=\"activeQuestionIndex === questionIndex\"\r\n [class.error]=\"errorIndex === questionIndex\">\r\n <div class=\"container\">\r\n <h3 class=\"question\">\r\n <span class=\"counter\">{{questionIndex+1}}. <span class=\"required\"\r\n *ngIf=\"question.required\">*</span></span>\r\n <input class=\"text\" type=\"text\" [placeholder]=\"placeholder[question.type]\"\r\n [(ngModel)]=\"question.label\" [readonly]=\"activeQuestionIndex !== questionIndex\">\r\n </h3>\r\n <ul class=\"list\">\r\n <li *ngFor=\"let option of question?.options; let opIndex = index\">\r\n <app-cs-checkbox [oneLine]=\"true\" [readonly]=\"true\">\r\n <input [(ngModel)]=\"option.label\" type=\"text\" placeholder=\"Option\"\r\n [id]=\"'checkbox-' + '' + questionIndex + '' + opIndex\"\r\n (keydown.enter)=\"addOption(questionIndex,opIndex,question.type)\"\r\n (keydown.backspace)=\"deleteOnBackspace(questionIndex,opIndex,question.type)\">\r\n </app-cs-checkbox>\r\n <button class=\"close\" (click)=\"deleteOption(questionIndex,opIndex,question.type)\"\r\n *ngIf=\"activeQuestionIndex === questionIndex && question?.options.length > 1\"><i\r\n class=\"icons\">&#xe90d;</i></button>\r\n </li>\r\n <li *ngIf=\"activeQuestionIndex === questionIndex\" class=\"add-new\">\r\n <app-cs-checkbox [oneLine]=\"true\"\r\n (click)=\"addOption(questionIndex,question?.options?.length-1,question.type)\"\r\n [disabled]=\"true\">\r\n <input [disabled]=\"true\" type=\"text\" placeholder=\"Add more option\">\r\n </app-cs-checkbox>\r\n </li>\r\n </ul>\r\n </div>\r\n\r\n <div class=\"footer\">\r\n <div class=\"left\">\r\n <app-cs-checkbox [ngValue]=\"question.required\" (ngValueChange)=\"question.required = $event\">Is\r\n required</app-cs-checkbox>\r\n </div>\r\n <div class=\"right\">\r\n <ul>\r\n <li>\r\n <button [appTooltip]=\"'Add new'\" placement=\"bottom\" delay=\"0\" [tooltipMandatory]=\"true\"\r\n (click)=\"blankClone(question.type,questionIndex);$event.stopPropagation();\">\r\n <i class=\"icons\">&#xe915;</i>\r\n </button>\r\n </li>\r\n <li>\r\n <button class=\"delete\" [appTooltip]=\"'Delete'\" placement=\"bottom\" delay=\"0\"\r\n [tooltipMandatory]=\"true\"\r\n (click)=\"removeQuestion(questionIndex);$event.stopPropagation();\">\r\n <i class=\"icons\">&#xe923;</i>\r\n </button>\r\n </li>\r\n <li>\r\n <button [appTooltip]=\"'Copy'\" placement=\"bottom\" delay=\"0\" [tooltipMandatory]=\"true\"\r\n (click)=\"cloneQuestion(questionIndex);$event.stopPropagation();\">\r\n <i class=\"icons\">&#xe9b6;</i>\r\n </button>\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n </div>\r\n <!-- <div class=\"checkpoints-questions-blocks\" [class.active]=\"true\">\r\n <div class=\"container\">\r\n <h3 class=\"question\">\r\n <span class=\"counter\">2. <span class=\"required\">*</span></span>\r\n <input class=\"text\" type=\"text\" placeholder=\"Type your question here [Select Box]\" value=\"Has the previous audit report been closed out?\">\r\n </h3>\r\n <ul class=\"list\">\r\n <li>\r\n <app-cs-radio [oneLine]=\"true\"><span>Yes</span></app-cs-radio> <button class=\"close\"><i class=\"icons\">&#xe90d;</i></button>\r\n </li>\r\n <li>\r\n <app-cs-radio [oneLine]=\"true\"><span>No</span></app-cs-radio><button class=\"close\"><i class=\"icons\">&#xe90d;</i></button>\r\n </li>\r\n <li>\r\n <app-cs-radio [oneLine]=\"true\"><span>N/A</span></app-cs-radio><button class=\"close\"><i class=\"icons\">&#xe90d;</i></button>\r\n </li>\r\n <li>\r\n <app-cs-radio [oneLine]=\"true\"><input type=\"text\" placeholder=\"Option\"></app-cs-radio> <button class=\"close\"><i class=\"icons\">&#xe90d;</i></button>\r\n </li>\r\n </ul>\r\n </div>\r\n <div class=\"footer\">\r\n <div class=\"left\">\r\n <app-cs-checkbox [ngValue]=\"question.required\" (ngValueChange)=\"question.required = $event\">Is required</app-cs-checkbox>\r\n </div>\r\n <div class=\"right\">\r\n <ul>\r\n <li><button><i class=\"icons\">&#xe915;</i></button></li>\r\n <li><button><i class=\"icons\">&#xe923;</i></button></li>\r\n <li><button><i class=\"icons\">&#xe9b6;</i></button></li>\r\n </ul>\r\n </div>\r\n </div>\r\n </div> -->\r\n </ng-container>\r\n <button class=\"btn-add-new\" type=\"button\" appPopover (click)=\"newCheckpoint.popover()\" placement=\"left\">+ Add a new\r\n checkpoint</button>\r\n <app-popover #newCheckpoint>\r\n\r\n <ul class=\"checkpoint-type-list\">\r\n <li><span class=\"checkpoint-type-list-title\">Add Checkpoints</span></li>\r\n <li *ngFor=\"let type of questionTypeList\">\r\n <button (click)=\"addQuestion(type)\">\r\n <i class=\"icons\" [innerHTML]=\"type.icon\"></i>\r\n <span class=\"value\">\r\n {{type?.text}}\r\n </span>\r\n </button>\r\n </li>\r\n </ul>\r\n </app-popover>\r\n</div>\r\n",
92
+ template: "<!-- <p>checkpoints-questions works!</p> -->\r\n<div class=\"checkpoints-questions\">\r\n <div class=\"checkpoints-questions-blocks instruction\"\r\n [class.filled]=\"checkpointInstruction.length>0 && !addInstruction\">\r\n <div class=\"container\">\r\n <h3 class=\"question\">\r\n <span class=\"counter\" *ngIf=\"!addInstruction\"><i class=\"icons\">&#xe932;</i></span>\r\n <span class=\"text\" *ngIf=\"!addInstruction\" \r\n [innerHTML]=\"checkpointInstruction.length>0 ? (checkpointInstruction | formatHtml) :'Add instruction'\"></span>\r\n <span class=\"text\" *ngIf=\"addInstruction && false\">\r\n <marx-editor [(ngModel)]=\"checkpointInstruction\" [editorConfig]=\"{mode: 'prime',\r\n colorPalette: true,\r\n link: true,\r\n placeholder: 'Add instruction',\r\n buttonName:'SAVE', id:'checkpoint-instructions'}\" (comment)=\"saveDescription()\"></marx-editor>\r\n </span>\r\n </h3>\r\n </div>\r\n </div>\r\n\r\n <ng-container *ngFor=\"let question of checkpointData; let questionIndex = index\">\r\n <div class=\"checkpoints-questions-blocks\"\r\n *ngIf=\"['textbox','date','upload'].includes(question?.type)\"\r\n [class.error]=\"errorIndex === questionIndex\">\r\n <div class=\"container\">\r\n <h3 class=\"question\">\r\n <span class=\"counter\">{{questionIndex+1}}. <span class=\"required\"\r\n *ngIf=\"question.required\">*</span></span>\r\n <input class=\"text\" type=\"text\" [placeholder]=\"placeholder[question.type]\"\r\n [(ngModel)]=\"question.label\" readonly>\r\n </h3>\r\n <ng-container class=\"preview\" *ngIf=\"activeQuestionIndex !== questionIndex\">\r\n <label class=\"file-upload\" *ngIf=\"question.type==='upload'\">\r\n <input type=\"file\" disabled>\r\n <span><i class=\"icons\">&#xe9ed;</i> Browse File</span>\r\n </label>\r\n <ng-container *ngIf=\"question.type === 'date'\">\r\n <div class=\"date-picker\">\r\n <i class=\"icons\">&#xe92d;</i>\r\n <input type=\"text\" placeholder=\"Select date\"\r\n (click)=\"openDatePicker();$event.stopPropagation(); datePickerOverlay = true;\" disabled>\r\n <dp-date-picker #datePicker (click)=\"$event.stopPropagation();\"> </dp-date-picker>\r\n <div class=\"vx-overlay\" (click)=\"closeDatepicker();$event.stopPropagation();\"\r\n *ngIf=\"datePickerOverlay\"></div>\r\n </div>\r\n </ng-container>\r\n </ng-container>\r\n </div>\r\n <div class=\"footer\">\r\n <div class=\"left\">\r\n <app-cs-checkbox [ngValue]=\"question.required\" (ngValueChange)=\"question.required = $event\">Is\r\n required</app-cs-checkbox>\r\n </div>\r\n <div class=\"right\">\r\n <ul>\r\n <li>\r\n <button [appTooltip]=\"'Add new'\" placement=\"bottom\" delay=\"0\" [tooltipMandatory]=\"true\"\r\n (click)=\"blankClone(question.type,questionIndex);$event.stopPropagation();\">\r\n <i class=\"icons\">&#xe915;</i>\r\n </button>\r\n </li>\r\n <li>\r\n <button class=\"delete\" [appTooltip]=\"'Delete'\" placement=\"bottom\" delay=\"0\"\r\n [tooltipMandatory]=\"true\"\r\n (click)=\"removeQuestion(questionIndex);$event.stopPropagation();\">\r\n <i class=\"icons\">&#xe923;</i>\r\n </button>\r\n </li>\r\n <li>\r\n <!-- <button [appTooltip]=\"'Copy'\" placement=\"bottom\" delay=\"0\" [tooltipMandatory]=\"true\"\r\n (click)=\"cloneQuestion(questionIndex);$event.stopPropagation();\">\r\n <i class=\"icons\">&#xe9b6;</i>\r\n </button> -->\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"checkpoints-questions-blocks\"\r\n *ngIf=\"question?.type === 'radio'\"\r\n [class.error]=\"errorIndex === questionIndex\">\r\n <div class=\"container\">\r\n <h3 class=\"question\">\r\n <span class=\"counter\">{{questionIndex+1}}. <span class=\"required\"\r\n *ngIf=\"question.required\">*</span></span>\r\n <input class=\"text\" type=\"text\" [placeholder]=\"placeholder[question.type]\"\r\n [(ngModel)]=\"question.label\"readonly>\r\n </h3>\r\n <ul class=\"list\">\r\n\r\n <li *ngFor=\"let option of question?.options; let opIndex = index\">\r\n <app-cs-radio [oneLine]=\"true\" [readonly]=\"true\"\r\n [disabled]=\"activeQuestionIndex === questionIndex\"><input [(ngModel)]=\"option.label\"\r\n \r\n [id]=\"'radio-' + '' + questionIndex + '' + opIndex\" type=\"text\" placeholder=\"Option\">\r\n </app-cs-radio>\r\n <!-- <button class=\"close\" (click)=\"deleteOption(questionIndex,opIndex,question.type)\"\r\n *ngIf=\"activeQuestionIndex === questionIndex && question?.options.length > 1\"><i\r\n class=\"icons\">&#xe90d;</i></button> -->\r\n </li>\r\n <!-- <li *ngIf=\"activeQuestionIndex === questionIndex && false\" class=\"add-new\">\r\n <app-cs-radio [oneLine]=\"true\" [readonly]=\"true\">\r\n <input type=\"text\" readonly placeholder=\"Add more option\"\r\n (click)=\"addOption(questionIndex,question?.options?.length-1,question.type)\">\r\n </app-cs-radio>\r\n </li> -->\r\n </ul>\r\n </div>\r\n\r\n <div class=\"footer\">\r\n <div class=\"left\">\r\n <app-cs-checkbox [ngValue]=\"question.required\" (ngValueChange)=\"question.required = $event\">Is required</app-cs-checkbox>\r\n </div>\r\n <div class=\"right\">\r\n <ul>\r\n <!-- <li>\r\n <button [appTooltip]=\"'Add new'\" placement=\"bottom\" delay=\"0\" [tooltipMandatory]=\"true\"\r\n (click)=\"blankClone(question.type,questionIndex);$event.stopPropagation();\">\r\n <i class=\"icons\">&#xe915;</i>\r\n </button>\r\n </li> -->\r\n <li>\r\n <button class=\"delete\" [appTooltip]=\"'Delete'\" placement=\"bottom\" delay=\"0\" [tooltipMandatory]=\"true\"\r\n (click)=\"removeQuestion(questionIndex);$event.stopPropagation();\">\r\n <i class=\"icons\">&#xe923;</i>\r\n </button>\r\n </li>\r\n <!-- <li>\r\n <button [appTooltip]=\"'Copy'\" placement=\"bottom\" delay=\"0\" [tooltipMandatory]=\"true\"\r\n (click)=\"cloneQuestion(questionIndex);$event.stopPropagation();\">\r\n <i class=\"icons\">&#xe9b6;</i>\r\n </button>\r\n </li> -->\r\n </ul>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"checkpoints-questions-blocks\"\r\n *ngIf=\"question?.type === 'select'\" \r\n [class.error]=\"errorIndex === questionIndex\">\r\n <div class=\"container\">\r\n <h3 class=\"question\">\r\n <span class=\"counter\">{{questionIndex+1}}. <span class=\"required\"\r\n *ngIf=\"question.required\">*</span></span>\r\n <input class=\"text\" type=\"text\" [placeholder]=\"placeholder[question.type]\"\r\n [(ngModel)]=\"question.label\"readonly>\r\n </h3>\r\n <ul class=\"list\">\r\n\r\n <li *ngFor=\"let option of question?.options; let opIndex = index\">\r\n <app-cs-radio [oneLine]=\"true\" readonly\r\n [disabled]=\"activeQuestionIndex === questionIndex\">\r\n <input [(ngModel)]=\"option.label\"\r\n name =\"'select-' + '' + questionIndex + '' + opIndex\" (keydown.enter)=\"addOption(questionIndex,opIndex,question.type)\"\r\n (keydown.backspace)=\"deleteOnBackspace(questionIndex,opIndex,question.type)\"\r\n [id]=\"'select-' + '' + questionIndex + '' + opIndex\" type=\"text\" placeholder=\"Option\">\r\n </app-cs-radio>\r\n <!-- <button class=\"close\" (click)=\"deleteOption(questionIndex,opIndex,question.type)\"\r\n *ngIf=\"activeQuestionIndex === questionIndex && question?.options.length > 1\"><i\r\n class=\"icons\">&#xe90d;</i></button> -->\r\n </li>\r\n<!-- \r\n <li *ngIf=\"activeQuestionIndex === questionIndex\" class=\"add-new\">\r\n <app-cs-radio [oneLine]=\"true\" [readonly]=\"true\"><input readonly type=\"text\"\r\n placeholder=\"Add more option\"\r\n (click)=\"addOption(questionIndex,question?.options?.length-1,question.type)\">\r\n </app-cs-radio>\r\n </li> -->\r\n <!-- <button (click)=\"addOption(questionIndex,question?.options?.length,question.type)\"\r\n *ngIf=\"activeQuestionIndex === questionIndex\">Add More Options</button> -->\r\n </ul>\r\n </div>\r\n\r\n <div class=\"footer\">\r\n <div class=\"left\">\r\n <app-cs-checkbox [ngValue]=\"question.required\" (ngValueChange)=\"question.required = $event\">Is\r\n required</app-cs-checkbox>\r\n </div>\r\n <div class=\"right\">\r\n <ul>\r\n <!-- <li>\r\n <button [appTooltip]=\"'Add new'\" placement=\"bottom\" delay=\"0\" [tooltipMandatory]=\"true\"\r\n (click)=\"blankClone(question.type,questionIndex);$event.stopPropagation();\">\r\n <i class=\"icons\">&#xe915;</i>\r\n </button>\r\n </li> -->\r\n <li>\r\n <button class=\"delete\" [appTooltip]=\"'Delete'\" placement=\"bottom\" delay=\"0\"\r\n [tooltipMandatory]=\"true\"\r\n (click)=\"removeQuestion(questionIndex);$event.stopPropagation();\">\r\n <i class=\"icons\">&#xe923;</i>\r\n </button>\r\n </li>\r\n <!-- <li>\r\n <button [appTooltip]=\"'Copy'\" placement=\"bottom\" delay=\"0\" [tooltipMandatory]=\"true\"\r\n (click)=\"cloneQuestion(questionIndex);$event.stopPropagation();\">\r\n <i class=\"icons\">&#xe9b6;</i>\r\n </button>\r\n </li> -->\r\n </ul>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"checkpoints-questions-blocks\"\r\n *ngIf=\"question?.type === 'checkbox'\" \r\n [class.error]=\"errorIndex === questionIndex\">\r\n <div class=\"container\">\r\n <h3 class=\"question\">\r\n <span class=\"counter\">{{questionIndex+1}}. <span class=\"required\"\r\n *ngIf=\"question.required\">*</span></span>\r\n <input class=\"text\" type=\"text\" [placeholder]=\"placeholder[question.type]\"\r\n [(ngModel)]=\"question.label\"readonly>\r\n </h3>\r\n <ul class=\"list\">\r\n <li *ngFor=\"let option of question?.options; let opIndex = index\">\r\n <app-cs-checkbox [oneLine]=\"true\" [readonly]=\"true\">\r\n <input [(ngModel)]=\"option.label\" type=\"text\" placeholder=\"Option\"\r\n [id]=\"'checkbox-' + '' + questionIndex + '' + opIndex\"\r\n (keydown.enter)=\"addOption(questionIndex,opIndex,question.type)\"\r\n (keydown.backspace)=\"deleteOnBackspace(questionIndex,opIndex,question.type)\">\r\n </app-cs-checkbox>\r\n <!-- <button class=\"close\" (click)=\"deleteOption(questionIndex,opIndex,question.type)\"\r\n *ngIf=\"activeQuestionIndex === questionIndex && question?.options.length > 1\"><i\r\n class=\"icons\">&#xe90d;</i></button> -->\r\n </li>\r\n <!-- <li *ngIf=\"activeQuestionIndex === questionIndex\" class=\"add-new\">\r\n <app-cs-checkbox [oneLine]=\"true\"\r\n (click)=\"addOption(questionIndex,question?.options?.length-1,question.type)\"\r\n [disabled]=\"true\">\r\n <input [disabled]=\"true\" type=\"text\" placeholder=\"Add more option\">\r\n </app-cs-checkbox>\r\n </li> -->\r\n </ul>\r\n </div>\r\n\r\n <div class=\"footer\">\r\n <div class=\"left\">\r\n <app-cs-checkbox [ngValue]=\"question.required\" (ngValueChange)=\"question.required = $event\">Is\r\n required</app-cs-checkbox>\r\n </div>\r\n <div class=\"right\">\r\n <ul>\r\n <!-- <li>\r\n <button [appTooltip]=\"'Add new'\" placement=\"bottom\" delay=\"0\" [tooltipMandatory]=\"true\"\r\n (click)=\"blankClone(question.type,questionIndex);$event.stopPropagation();\">\r\n <i class=\"icons\">&#xe915;</i>\r\n </button>\r\n </li> -->\r\n <li>\r\n <button class=\"delete\" [appTooltip]=\"'Delete'\" placement=\"bottom\" delay=\"0\"\r\n [tooltipMandatory]=\"true\"\r\n (click)=\"removeQuestion(questionIndex);$event.stopPropagation();\">\r\n <i class=\"icons\">&#xe923;</i>\r\n </button>\r\n </li>\r\n <!-- <li>\r\n <button [appTooltip]=\"'Copy'\" placement=\"bottom\" delay=\"0\" [tooltipMandatory]=\"true\"\r\n (click)=\"cloneQuestion(questionIndex);$event.stopPropagation();\">\r\n <i class=\"icons\">&#xe9b6;</i>\r\n </button>\r\n </li> -->\r\n </ul>\r\n </div>\r\n </div>\r\n </div>\r\n <!-- <div class=\"checkpoints-questions-blocks\" [class.active]=\"true\">\r\n <div class=\"container\">\r\n <h3 class=\"question\">\r\n <span class=\"counter\">2. <span class=\"required\">*</span></span>\r\n <input class=\"text\" type=\"text\" placeholder=\"Type your question here [Select Box]\" value=\"Has the previous audit report been closed out?\">\r\n </h3>\r\n <ul class=\"list\">\r\n <li>\r\n <app-cs-radio [oneLine]=\"true\"><span>Yes</span></app-cs-radio> <button class=\"close\"><i class=\"icons\">&#xe90d;</i></button>\r\n </li>\r\n <li>\r\n <app-cs-radio [oneLine]=\"true\"><span>No</span></app-cs-radio><button class=\"close\"><i class=\"icons\">&#xe90d;</i></button>\r\n </li>\r\n <li>\r\n <app-cs-radio [oneLine]=\"true\"><span>N/A</span></app-cs-radio><button class=\"close\"><i class=\"icons\">&#xe90d;</i></button>\r\n </li>\r\n <li>\r\n <app-cs-radio [oneLine]=\"true\"><input type=\"text\" placeholder=\"Option\"></app-cs-radio> <button class=\"close\"><i class=\"icons\">&#xe90d;</i></button>\r\n </li>\r\n </ul>\r\n </div>\r\n <div class=\"footer\">\r\n <div class=\"left\">\r\n <app-cs-checkbox [ngValue]=\"question.required\" (ngValueChange)=\"question.required = $event\">Is required</app-cs-checkbox>\r\n </div>\r\n <div class=\"right\">\r\n <ul>\r\n <li><button><i class=\"icons\">&#xe915;</i></button></li>\r\n <li><button><i class=\"icons\">&#xe923;</i></button></li>\r\n <li><button><i class=\"icons\">&#xe9b6;</i></button></li>\r\n </ul>\r\n </div>\r\n </div>\r\n </div> -->\r\n </ng-container>\r\n <!-- <button class=\"btn-add-new\" type=\"button\" appPopover (click)=\"newCheckpoint.popover()\" placement=\"left\">+ Add a new\r\n checkpoint</button> -->\r\n <!-- <app-popover #newCheckpoint>\r\n\r\n <ul class=\"checkpoint-type-list\">\r\n <li><span class=\"checkpoint-type-list-title\">Add Checkpoints</span></li>\r\n <li *ngFor=\"let type of questionTypeList\">\r\n <button (click)=\"addQuestion(type)\">\r\n <i class=\"icons\" [innerHTML]=\"type.icon\"></i>\r\n <span class=\"value\">\r\n {{type?.text}}\r\n </span>\r\n </button>\r\n </li>\r\n </ul>\r\n </app-popover> -->\r\n</div>\r\n",
93
93
  styles: ["@import url(\"https://cdn.v-comply.com/design-system/css/icons/icons.css\");::ng-deep .checkpoints-questions-blocks{padding:0;overflow:hidden;border-radius:4px}::ng-deep .checkpoints-questions-blocks .container{padding:28px 32px 24px 45px}::ng-deep .checkpoints-questions-blocks .question{font-size:16px;font-weight:300;color:#161b2f;line-height:24px;position:relative;display:flex;align-items:flex-start;margin:0}::ng-deep .checkpoints-questions-blocks .question:before{top:1px;left:-45px;height:24px;width:4px;content:\"\";background:#dbdbdb;position:absolute}::ng-deep .checkpoints-questions-blocks .question span.counter{display:inline-block;font-weight:600;width:auto;padding:0 0 0 8px;position:absolute;left:-41px;top:1px;line-height:25px}::ng-deep .checkpoints-questions-blocks .question span.counter .required{color:#eb2424;position:absolute;top:0;right:-6px}::ng-deep .checkpoints-questions-blocks .question input.text{font-size:16px;font-weight:300;color:#161b2f;line-height:24px;width:calc(100% - 28px);border:none;border-bottom:1px solid transparent;outline:none;padding-left:0;margin:0}::ng-deep .checkpoints-questions-blocks .question input.text:focus{border-color:#1e5dd3}::ng-deep .checkpoints-questions-blocks .question input.text:-moz-read-only{border:none}::ng-deep .checkpoints-questions-blocks .question input.text:read-only{border:none}::ng-deep .checkpoints-questions-blocks .date-picker{margin:12px 0;position:relative;width:400px}::ng-deep .checkpoints-questions-blocks .date-picker input{width:100%;border:1px solid #dbdbdb;height:36px;line-height:24px;border-radius:4px;padding:4px 8px 4px 28px}::ng-deep .checkpoints-questions-blocks .date-picker input:focus{outline:none;color:#1e5dd3}::ng-deep .checkpoints-questions-blocks .date-picker i{font-size:16px;margin-right:8px;position:absolute;top:10px;left:10px;color:#747576}::ng-deep .checkpoints-questions-blocks .file-upload{position:relative;display:block;margin:12px 0;cursor:pointer;width:400px}::ng-deep .checkpoints-questions-blocks .file-upload input{opacity:0;width:100%;height:100%;position:absolute;top:0;right:0;bottom:0;left:0;cursor:pointer}::ng-deep .checkpoints-questions-blocks .file-upload span{background:#1e5dd3;height:32px;border-radius:4px;display:flex;color:#fff;font-weight:400;font-size:11px;padding:8px 12px;justify-content:flex-starts;cursor:pointer;align-items:center}::ng-deep .checkpoints-questions-blocks .file-upload span i{margin-right:8px}::ng-deep .checkpoints-questions-blocks dp-date-picker{width:100%;position:fixed!important;z-index:14;top:-40px;left:0}::ng-deep .checkpoints-questions-blocks dp-date-picker input{width:100%;border:none;opacity:0;pointer-events:none}::ng-deep .checkpoints-questions-blocks dp-date-picker input:focus{outline:none}::ng-deep .checkpoints-questions-blocks dp-date-picker .dp-popup{width:412px;box-shadow:0 0 20px #161b2f26;background-color:#fff;border-radius:4px;-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}::ng-deep .checkpoints-questions-blocks dp-date-picker .dp-popup dp-day-calendar,::ng-deep .checkpoints-questions-blocks dp-date-picker .dp-popup dp-month-calendar{width:100%;pointer-events:auto}::ng-deep .checkpoints-questions-blocks dp-date-picker .dp-popup dp-day-calendar button,::ng-deep .checkpoints-questions-blocks dp-date-picker .dp-popup dp-month-calendar button{background:transparent;border:none;outline:none}::ng-deep .checkpoints-questions-blocks dp-date-picker .dp-popup dp-day-calendar button.dp-calendar-nav-left,::ng-deep .checkpoints-questions-blocks dp-date-picker .dp-popup dp-day-calendar button.dp-calendar-nav-right,::ng-deep .checkpoints-questions-blocks dp-date-picker .dp-popup dp-day-calendar button.dp-current-location-btn,::ng-deep .checkpoints-questions-blocks dp-date-picker .dp-popup dp-month-calendar button.dp-calendar-nav-left,::ng-deep .checkpoints-questions-blocks dp-date-picker .dp-popup dp-month-calendar button.dp-calendar-nav-right,::ng-deep .checkpoints-questions-blocks dp-date-picker .dp-popup dp-month-calendar button.dp-current-location-btn{width:40px;height:40px;display:flex;justify-content:center;align-items:center;border-radius:50%;font-size:14px}::ng-deep .checkpoints-questions-blocks dp-date-picker .dp-popup dp-day-calendar button.dp-calendar-nav-left:hover,::ng-deep .checkpoints-questions-blocks dp-date-picker .dp-popup dp-day-calendar button.dp-calendar-nav-right:hover,::ng-deep .checkpoints-questions-blocks dp-date-picker .dp-popup dp-day-calendar button.dp-current-location-btn:hover,::ng-deep .checkpoints-questions-blocks dp-date-picker .dp-popup dp-month-calendar button.dp-calendar-nav-left:hover,::ng-deep .checkpoints-questions-blocks dp-date-picker .dp-popup dp-month-calendar button.dp-calendar-nav-right:hover,::ng-deep .checkpoints-questions-blocks dp-date-picker .dp-popup dp-month-calendar button.dp-current-location-btn:hover{background-color:#f3f3f3}::ng-deep .checkpoints-questions-blocks dp-date-picker .dp-popup dp-day-calendar button.dp-current-location-btn,::ng-deep .checkpoints-questions-blocks dp-date-picker .dp-popup dp-month-calendar button.dp-current-location-btn{display:none}::ng-deep .checkpoints-questions-blocks dp-date-picker .dp-popup dp-day-calendar button.dp-current-location-btn:before,::ng-deep .checkpoints-questions-blocks dp-date-picker .dp-popup dp-month-calendar button.dp-current-location-btn:before{content:\"\";height:10px;width:10px;border-radius:50%;background:#000;display:inline-flex}::ng-deep .checkpoints-questions-blocks dp-date-picker .dp-popup dp-day-calendar .dp-calendar-week,::ng-deep .checkpoints-questions-blocks dp-date-picker .dp-popup dp-day-calendar .dp-weekdays,::ng-deep .checkpoints-questions-blocks dp-date-picker .dp-popup dp-month-calendar .dp-calendar-week,::ng-deep .checkpoints-questions-blocks dp-date-picker .dp-popup dp-month-calendar .dp-weekdays{display:flex;justify-content:space-around}::ng-deep .checkpoints-questions-blocks dp-date-picker .dp-popup dp-day-calendar .dp-calendar-week .dp-calendar-weekday,::ng-deep .checkpoints-questions-blocks dp-date-picker .dp-popup dp-day-calendar .dp-weekdays .dp-calendar-weekday,::ng-deep .checkpoints-questions-blocks dp-date-picker .dp-popup dp-month-calendar .dp-calendar-week .dp-calendar-weekday,::ng-deep .checkpoints-questions-blocks dp-date-picker .dp-popup dp-month-calendar .dp-weekdays .dp-calendar-weekday{width:52px;border-left:none;border-bottom-color:#fff;color:#747576;font-size:11px;font-weight:600;text-transform:uppercase}::ng-deep .checkpoints-questions-blocks dp-date-picker .dp-popup dp-day-calendar .dp-calendar-week button,::ng-deep .checkpoints-questions-blocks dp-date-picker .dp-popup dp-day-calendar .dp-weekdays button,::ng-deep .checkpoints-questions-blocks dp-date-picker .dp-popup dp-month-calendar .dp-calendar-week button,::ng-deep .checkpoints-questions-blocks dp-date-picker .dp-popup dp-month-calendar .dp-weekdays button{width:40px;height:40px;border-radius:50%;display:inline-flex;justify-content:center;align-items:center}::ng-deep .checkpoints-questions-blocks dp-date-picker .dp-popup dp-day-calendar .dp-calendar-week button:hover,::ng-deep .checkpoints-questions-blocks dp-date-picker .dp-popup dp-day-calendar .dp-weekdays button:hover,::ng-deep .checkpoints-questions-blocks dp-date-picker .dp-popup dp-month-calendar .dp-calendar-week button:hover,::ng-deep .checkpoints-questions-blocks dp-date-picker .dp-popup dp-month-calendar .dp-weekdays button:hover{background-color:#f3f3f3}::ng-deep .checkpoints-questions-blocks dp-date-picker .dp-popup dp-day-calendar .dp-calendar-week button.dp-selected,::ng-deep .checkpoints-questions-blocks dp-date-picker .dp-popup dp-day-calendar .dp-weekdays button.dp-selected,::ng-deep .checkpoints-questions-blocks dp-date-picker .dp-popup dp-month-calendar .dp-calendar-week button.dp-selected,::ng-deep .checkpoints-questions-blocks dp-date-picker .dp-popup dp-month-calendar .dp-weekdays button.dp-selected{background:#1e5dd3}::ng-deep .checkpoints-questions-blocks dp-date-picker .dp-popup dp-day-calendar .dp-calendar-week button.dp-current-day,::ng-deep .checkpoints-questions-blocks dp-date-picker .dp-popup dp-day-calendar .dp-weekdays button.dp-current-day,::ng-deep .checkpoints-questions-blocks dp-date-picker .dp-popup dp-month-calendar .dp-calendar-week button.dp-current-day,::ng-deep .checkpoints-questions-blocks dp-date-picker .dp-popup dp-month-calendar .dp-weekdays button.dp-current-day{border:1px solid rgba(0,0,0,.38);color:#1e5dd3;background-color:#fff}::ng-deep .checkpoints-questions-blocks dp-date-picker .dp-popup dp-day-calendar .dp-day-calendar-container,::ng-deep .checkpoints-questions-blocks dp-date-picker .dp-popup dp-month-calendar .dp-day-calendar-container{padding:20px;border-radius:2px}::ng-deep .checkpoints-questions-blocks dp-date-picker .dp-popup dp-day-calendar .dp-calendar-nav-container,::ng-deep .checkpoints-questions-blocks dp-date-picker .dp-popup dp-month-calendar .dp-calendar-nav-container{display:flex;margin:0 0 20px;border:none}::ng-deep .checkpoints-questions-blocks dp-date-picker .dp-popup dp-day-calendar .dp-calendar-nav-container .dp-nav-header button,::ng-deep .checkpoints-questions-blocks dp-date-picker .dp-popup dp-month-calendar .dp-calendar-nav-container .dp-nav-header button{color:#000;font-size:17px;font-weight:500;margin:0 0 0 12px;padding:0}::ng-deep .checkpoints-questions-blocks dp-date-picker .dp-popup dp-day-calendar .dp-nav-btns-container,::ng-deep .checkpoints-questions-blocks dp-date-picker .dp-popup dp-month-calendar .dp-nav-btns-container{width:80px;display:flex}::ng-deep .checkpoints-questions-blocks dp-date-picker .dp-popup dp-day-calendar .dp-nav-btns-container .dp-calendar-nav-container-left button,::ng-deep .checkpoints-questions-blocks dp-date-picker .dp-popup dp-day-calendar .dp-nav-btns-container .dp-calendar-nav-container-right button,::ng-deep .checkpoints-questions-blocks dp-date-picker .dp-popup dp-month-calendar .dp-nav-btns-container .dp-calendar-nav-container-left button,::ng-deep .checkpoints-questions-blocks dp-date-picker .dp-popup dp-month-calendar .dp-nav-btns-container .dp-calendar-nav-container-right button{margin:0!important}::ng-deep .checkpoints-questions-blocks dp-date-picker .dp-popup dp-day-calendar .dp-calendar-wrapper,::ng-deep .checkpoints-questions-blocks dp-date-picker .dp-popup dp-month-calendar .dp-calendar-wrapper{border:none}::ng-deep .checkpoints-questions-blocks dp-date-picker .dp-open+div{position:fixed!important;top:0!important;right:0!important;bottom:0!important;left:0!important;display:flex;justify-content:center;align-items:center;z-index:99;pointer-events:none;background:rgba(0,0,0,.3)}::ng-deep .checkpoints-questions-blocks .footer{background:#f1f1f180;display:none;border-top:1px solid #dbdbdb;justify-content:space-between;padding:0 0 0 8px;align-items:center}::ng-deep .checkpoints-questions-blocks .footer .left{width:150px;display:flex;align-items:center}::ng-deep .checkpoints-questions-blocks .footer .left app-cs-checkbox{display:flex}::ng-deep .checkpoints-questions-blocks .footer .left app-cs-checkbox label.checkbox-item span.value{white-space:nowrap;text-transform:uppercase;font-size:11px;font-weight:500}::ng-deep .checkpoints-questions-blocks .footer .right{width:calc(100% - 100px);display:flex;justify-content:flex-end}::ng-deep .checkpoints-questions-blocks .footer .right ul{padding:0;margin:0;display:flex}::ng-deep .checkpoints-questions-blocks .footer .right ul li{list-style:none;border-left:1px solid #dbdbdb;padding:0}::ng-deep .checkpoints-questions-blocks .footer .right ul li button{width:48px;height:36px;font-size:15px;color:#1e5dd3;outline:none;display:flex;align-items:center;justify-content:center;background:transparent;border:none}::ng-deep .checkpoints-questions-blocks .footer .right ul li button.delete{color:#ee3939}::ng-deep .checkpoints-questions-blocks ul.list{padding:8px 0;margin:0;display:inline-block;min-width:400px}::ng-deep .checkpoints-questions-blocks ul.list li{list-style:none;display:flex;padding:0;position:relative}::ng-deep .checkpoints-questions-blocks ul.list li app-cs-checkbox,::ng-deep .checkpoints-questions-blocks ul.list li app-cs-radio{display:block;width:100%;pointer-events:none}::ng-deep .checkpoints-questions-blocks ul.list li app-cs-checkbox label.checkbox-item,::ng-deep .checkpoints-questions-blocks ul.list li app-cs-checkbox label.radio-item,::ng-deep .checkpoints-questions-blocks ul.list li app-cs-radio label.checkbox-item,::ng-deep .checkpoints-questions-blocks ul.list li app-cs-radio label.radio-item{width:100%}::ng-deep .checkpoints-questions-blocks ul.list li app-cs-checkbox label.checkbox-item span.checkbox,::ng-deep .checkpoints-questions-blocks ul.list li app-cs-checkbox label.checkbox-item span.radio,::ng-deep .checkpoints-questions-blocks ul.list li app-cs-checkbox label.radio-item span.checkbox,::ng-deep .checkpoints-questions-blocks ul.list li app-cs-checkbox label.radio-item span.radio,::ng-deep .checkpoints-questions-blocks ul.list li app-cs-radio label.checkbox-item span.checkbox,::ng-deep .checkpoints-questions-blocks ul.list li app-cs-radio label.checkbox-item span.radio,::ng-deep .checkpoints-questions-blocks ul.list li app-cs-radio label.radio-item span.checkbox,::ng-deep .checkpoints-questions-blocks ul.list li app-cs-radio label.radio-item span.radio{position:absolute!important;top:9px;left:8px;height:20px!important;width:20px!important}::ng-deep .checkpoints-questions-blocks ul.list li app-cs-checkbox label.checkbox-item span.value,::ng-deep .checkpoints-questions-blocks ul.list li app-cs-checkbox label.radio-item span.value,::ng-deep .checkpoints-questions-blocks ul.list li app-cs-radio label.checkbox-item span.value,::ng-deep .checkpoints-questions-blocks ul.list li app-cs-radio label.radio-item span.value{padding:8px 8px 8px 40px;width:100%;max-width:100%!important;justify-content:flex-start;border:1px solid #bcbcbc;border-radius:4px;color:#161b2f!important}::ng-deep .checkpoints-questions-blocks ul.list li app-cs-checkbox label.checkbox-item svg,::ng-deep .checkpoints-questions-blocks ul.list li app-cs-checkbox label.radio-item svg,::ng-deep .checkpoints-questions-blocks ul.list li app-cs-radio label.checkbox-item svg,::ng-deep .checkpoints-questions-blocks ul.list li app-cs-radio label.radio-item svg{position:absolute;top:8px;bottom:8px;left:8px;height:20px!important;width:20px!important}::ng-deep .checkpoints-questions-blocks ul.list li app-cs-checkbox label.checkbox-item input:checked~span.value,::ng-deep .checkpoints-questions-blocks ul.list li app-cs-checkbox label.radio-item input:checked~span.value,::ng-deep .checkpoints-questions-blocks ul.list li app-cs-radio label.checkbox-item input:checked~span.value,::ng-deep .checkpoints-questions-blocks ul.list li app-cs-radio label.radio-item input:checked~span.value{background:#eefcf0;border-color:#34aa44}::ng-deep .checkpoints-questions-blocks ul.list li input,::ng-deep .checkpoints-questions-blocks ul.list li span{color:#161b2f;font-size:14px;line-height:20px;display:block;border:none;outline:none;margin-left:0!important;margin:0;padding:0}::ng-deep .checkpoints-questions-blocks ul.list li input{height:20px;background:transparent;width:100%}::ng-deep .checkpoints-questions-blocks ul.list li+li{margin-top:8px}::ng-deep .checkpoints-questions-blocks ul.list li button.close{font-size:12px;color:#9c1d22;padding:8px;cursor:pointer;background:transparent;border:none;outline:none}::ng-deep .checkpoints-questions-blocks.active{border:1px solid #1e5dd3;padding-bottom:0;box-shadow:0 3px 6px #1e5dd326}::ng-deep .checkpoints-questions-blocks.active .question:before{background:#1e5dd3}::ng-deep .checkpoints-questions-blocks.active .footer{display:flex}::ng-deep .checkpoints-questions-blocks.active ul.list li app-cs-checkbox,::ng-deep .checkpoints-questions-blocks.active ul.list li app-cs-radio{display:block;width:100%;pointer-events:auto}::ng-deep .checkpoints-questions-blocks.active ul.list li app-cs-checkbox label.checkbox-item,::ng-deep .checkpoints-questions-blocks.active ul.list li app-cs-checkbox label.radio-item,::ng-deep .checkpoints-questions-blocks.active ul.list li app-cs-radio label.checkbox-item,::ng-deep .checkpoints-questions-blocks.active ul.list li app-cs-radio label.radio-item{width:100%}::ng-deep .checkpoints-questions-blocks.active ul.list li app-cs-checkbox label.checkbox-item span.value,::ng-deep .checkpoints-questions-blocks.active ul.list li app-cs-checkbox label.radio-item span.value,::ng-deep .checkpoints-questions-blocks.active ul.list li app-cs-radio label.checkbox-item span.value,::ng-deep .checkpoints-questions-blocks.active ul.list li app-cs-radio label.radio-item span.value{width:100%;max-width:100%!important;justify-content:flex-start;border:1px solid transparent;border-radius:4px;color:#161b2f!important}::ng-deep .checkpoints-questions-blocks.active ul.list li app-cs-checkbox label.checkbox-item svg,::ng-deep .checkpoints-questions-blocks.active ul.list li app-cs-checkbox label.radio-item svg,::ng-deep .checkpoints-questions-blocks.active ul.list li app-cs-radio label.checkbox-item svg,::ng-deep .checkpoints-questions-blocks.active ul.list li app-cs-radio label.radio-item svg{position:absolute;top:8px;bottom:8px;left:8px}::ng-deep .checkpoints-questions-blocks.active ul.list li app-cs-checkbox label.checkbox-item input:checked~span.value,::ng-deep .checkpoints-questions-blocks.active ul.list li app-cs-checkbox label.radio-item input:checked~span.value,::ng-deep .checkpoints-questions-blocks.active ul.list li app-cs-radio label.checkbox-item input:checked~span.value,::ng-deep .checkpoints-questions-blocks.active ul.list li app-cs-radio label.radio-item input:checked~span.value{background:#eefcf0;border:1px solid #34aa44}::ng-deep .checkpoints-questions-blocks.active ul.list li.add-new{opacity:.6;cursor:pointer}::ng-deep .checkpoints-questions-blocks.active ul.list li.add-new app-cs-checkbox label.checkbox-item span.value input,::ng-deep .checkpoints-questions-blocks.active ul.list li.add-new app-cs-checkbox label.radio-item span.value input,::ng-deep .checkpoints-questions-blocks.active ul.list li.add-new app-cs-radio label.checkbox-item span.value input,::ng-deep .checkpoints-questions-blocks.active ul.list li.add-new app-cs-radio label.radio-item span.value input{cursor:pointer}::ng-deep .checkpoints-questions-blocks.instruction{border:1px solid #dbdbdb;margin-bottom:12px}::ng-deep .checkpoints-questions-blocks.instruction .question span.counter i{font-weight:400;color:#f2bf19}::ng-deep .checkpoints-questions-blocks.instruction .question span.text{width:100%;cursor:pointer}::ng-deep .checkpoints-questions-blocks.instruction .question span.text marx-editor{cursor:text}::ng-deep .checkpoints-questions-blocks.instruction .question span.text *{margin-top:0}::ng-deep .checkpoints-questions-blocks.instruction.filled{background:#f8f8f8;max-height:100px;overflow:auto}::ng-deep .checkpoints-questions-blocks.instruction.filled .container{padding:12px 12px 12px 32px}::ng-deep .checkpoints-questions-blocks.instruction.filled .container .question{font-size:14px;line-height:22px}::ng-deep .checkpoints-questions-blocks.instruction.filled .container .question:before{left:-32px}::ng-deep .checkpoints-questions-blocks.instruction.filled .container .question span.counter{left:-32px}::ng-deep .checkpoints-questions .btn-add-new{display:flex;justify-content:center;align-items:center;line-height:16px;height:36px;border-radius:4px;color:#1e5dd3;border:1px dashed #1e5dd3;margin-top:20px;width:100%;background:transparent;text-transform:uppercase;font-weight:600}.checkpoint-type-list{background:#fff;padding:0;margin:0;width:220px;box-shadow:0 3px 6px #1c5bd140;border-radius:4px}.checkpoint-type-list-title{font-size:12px;font-weight:500;color:#161b2f;text-transform:uppercase;line-height:20px;padding:8px 12px;display:block}.checkpoint-type-list li{list-style:none}.checkpoint-type-list li+li{border-top:1px solid #f8f8f8}.checkpoint-type-list li button{padding:4px;background:transparent;border:none;outline:none;display:flex;justify-content:flex-start;cursor:pointer;width:100%}.checkpoint-type-list li button i{font-size:16px;color:#1e5dd3;padding:0 4px;display:flex;justify-content:center;width:40px;height:32px;align-items:center;margin-right:8px}.checkpoint-type-list li button span.value{width:calc(100% - 48px);display:block;color:#747576;font-size:11px;line-height:32px;text-transform:uppercase;text-align:left}.checkpoint-type-list li button:hover{background:#f8f8f8}.error{border-color:red}.vx-overlay{position:fixed;z-index:1;top:0;right:0;bottom:0;left:0}@-webkit-keyframes slide-bottom{0%{transform:translateY(-100px)}to{transform:translateY(0)}}@keyframes slide-bottom{0%{transform:translateY(-100px)}to{transform:translateY(0)}}"]
94
94
  },] }
95
95
  ];
@@ -111,4 +111,4 @@ CheckpointsQuestionsComponent.propDecorators = {
111
111
  updateDescription: [{ type: Output }],
112
112
  datePicker: [{ type: ViewChild, args: ['datePicker',] }]
113
113
  };
114
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2twb2ludHMtcXVlc3Rpb25zLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Z4LXdvcmtmbG93LWVuZ2luZS9zcmMvbGliL3NoYXJlZENvbXBvbmVudHMvY2hlY2twb2ludC9jaGVja3BvaW50cy1xdWVzdGlvbnMvY2hlY2twb2ludHMtcXVlc3Rpb25zLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsWUFBWSxFQUFFLFNBQVMsRUFBNEIsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRWhJLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQztBQU85RSxNQUFNLE9BQU8sNkJBQTZCO0lBRXhDLFlBQW9CLFVBQXFCLEVBQVUsUUFBeUI7UUFBeEQsZUFBVSxHQUFWLFVBQVUsQ0FBVztRQUFVLGFBQVEsR0FBUixRQUFRLENBQWlCO1FBQ25FLG1CQUFjLEdBQVEsRUFBRSxDQUFDO1FBQ3pCLHFCQUFnQixHQUFHLEVBQUUsQ0FBQztRQUN0QixlQUFVLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDaEIsMEJBQXFCLEdBQVcsRUFBRSxDQUFDO1FBQ2xDLG1CQUFjLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUNwQyxtQkFBYyxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFDcEMsaUJBQVksR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQ2xDLGtCQUFhLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUNuQyxpQkFBWSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFDbEMsaUJBQVksR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQ2xDLHNCQUFpQixHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFFakQsc0JBQWlCLEdBQUcsS0FBSyxDQUFDO1FBQzFCLHdC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QixFQUFFLFdBQW1CLEVBQUUsSUFBWTtRQUNoRSxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxFQUFDLGFBQWEsRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFDLENBQUMsQ0FBQztJQUM3RCxDQUFDO0lBRUQsWUFBWSxDQUFDLGFBQXFCLEVBQUUsV0FBbUIsRUFBRSxJQUFZO1FBQ25FLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLEVBQUMsYUFBYSxFQUFFLFdBQVcsRUFBRSxJQUFJLEVBQUMsQ0FBQyxDQUFDO0lBQzdELENBQUM7SUFFRCxpQkFBaUIsQ0FBQyxhQUFxQixFQUFFLFdBQW1CLEVBQUUsSUFBWTtRQUN4RSxJQUFJLElBQUksQ0FBQyxjQUFjLENBQUMsYUFBYSxDQUFDLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxJQUFJLElBQUksQ0FBQyxjQUFjLENBQUMsYUFBYSxDQUFDLENBQUMsT0FBTyxDQUFDLE1BQU0sR0FBSSxDQUFDLEVBQUU7WUFDdEksSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsRUFBQyxhQUFhLEVBQUUsV0FBVyxFQUFFLElBQUksRUFBQyxDQUFDLENBQUM7U0FDNUQ7SUFDSCxDQUFDOzs7WUEvRkYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSwyQkFBMkI7Z0JBQ3JDLCtsbkJBQXFEOzthQUV0RDs7O1lBUjZGLFVBQVU7WUFFL0YsZUFBZTs7OzZCQVVyQixLQUFLOytCQUNMLEtBQUs7eUJBQ0wsS0FBSztvQ0FDTCxLQUFLOzZCQUNMLE1BQU07NkJBQ04sTUFBTTsyQkFDTixNQUFNOzRCQUNOLE1BQU07MkJBQ04sTUFBTTsyQkFDTixNQUFNO2dDQUNOLE1BQU07eUJBQ04sU0FBUyxTQUFDLFlBQVkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkluaXQsIE91dHB1dCwgRXZlbnRFbWl0dGVyLCBWaWV3Q2hpbGQsIE9uQ2hhbmdlcywgU2ltcGxlQ2hhbmdlcywgRWxlbWVudFJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBEYXRlUGlja2VyQ29tcG9uZW50IH0gZnJvbSAnbmcyLWRhdGUtcGlja2VyJztcclxuaW1wb3J0IHsgU25hY2tCYXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vdWkta2l0L3NuYWNrLWJhci9zbmFjay1iYXIuc2VydmljZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FwcC1jaGVja3BvaW50cy1xdWVzdGlvbnMnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9jaGVja3BvaW50cy1xdWVzdGlvbnMuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2NoZWNrcG9pbnRzLXF1ZXN0aW9ucy5jb21wb25lbnQubGVzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDaGVja3BvaW50c1F1ZXN0aW9uc0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzIHtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBlbGVtZW50UmVmOkVsZW1lbnRSZWYsIHByaXZhdGUgc25hY2tiYXI6IFNuYWNrQmFyU2VydmljZSkgeyB9XHJcbiAgQElucHV0KCkgY2hlY2twb2ludERhdGE6IGFueSA9IFtdO1xyXG4gIEBJbnB1dCgpIHF1ZXN0aW9uVHlwZUxpc3QgPSBbXTtcclxuICBASW5wdXQoKSBlcnJvckluZGV4ID0gLTE7XHJcbiAgQElucHV0KCkgY2hlY2twb2ludEluc3RydWN0aW9uIDpzdHJpbmcgPSAnJztcclxuICBAT3V0cHV0KCkgY3JlYXRlUXVlc3Rpb24gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgQE91dHB1dCgpIGRlbGV0ZVF1ZXN0aW9uID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gIEBPdXRwdXQoKSBjb3B5UXVlc3Rpb24gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgQE91dHB1dCgpIGJsYW5rUXVlc3Rpb24gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgQE91dHB1dCgpIGNyZWF0ZU9wdGlvbiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICBAT3V0cHV0KCkgcmVtb3ZlT3B0aW9uID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gIEBPdXRwdXQoKSB1cGRhdGVEZXNjcmlwdGlvbiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICBAVmlld0NoaWxkKCdkYXRlUGlja2VyJykgZGF0ZVBpY2tlciE6IERhdGVQaWNrZXJDb21wb25lbnQ7XHJcbiAgZGF0ZVBpY2tlck92ZXJsYXkgPSBmYWxzZTtcclxuICBhY3RpdmVRdWVzdGlvbkluZGV4ID0gMDtcclxuICBhZGRJbnN0cnVjdGlvbiE6IGJvb2xlYW4gO1xyXG5cclxuICBwbGFjZWhvbGRlcjogYW55ID0ge1xyXG4gICAgdGV4dGJveDogJ1R5cGUgeW91ciBxdWVzdGlvbiBoZXJlIFtUZXh0IEJveF0nLFxyXG4gICAgc2VsZWN0OiAnVHlwZSB5b3VyIHF1ZXN0aW9uIGhlcmUgW1NlbGVjdF0nLFxyXG4gICAgcmFkaW86ICdUeXBlIHlvdXIgcXVlc3Rpb24gaGVyZSBbUmFkaW9dJyxcclxuICAgIGNoZWNrYm94OiAnVHlwZSB5b3VyIHF1ZXN0aW9uIGhlcmUgW0NoZWNrQm94XScsXHJcbiAgICBkYXRlOiAnVHlwZSB5b3VyIHF1ZXN0aW9uIGhlcmUgW0RhdGVdJyxcclxuICAgIHVwbG9hZDogJ1R5cGUgeW91ciBxdWVzdGlvbiBoZXJlIFtVcGxvYWRdJ1xyXG4gIH07XHJcbiAgZGVzY3JpcHRpb246IGFueSA9ICcnO1xyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG5cclxuICB9XHJcblxyXG4gIHNhdmVEZXNjcmlwdGlvbigpe1xyXG4gICAgdGhpcy5hZGRJbnN0cnVjdGlvbiA9IGZhbHNlO1xyXG4gICAgaWYodGhpcy5leHRyYWN0Q29udGVudCh0aGlzLmNoZWNrcG9pbnRJbnN0cnVjdGlvbikgPT09ICcnKXtcclxuICAgICAgdGhpcy5jaGVja3BvaW50SW5zdHJ1Y3Rpb24gPSAnJztcclxuICAgIH1cclxuICAgIHRoaXMudXBkYXRlRGVzY3JpcHRpb24uZW1pdCh0aGlzLmNoZWNrcG9pbnRJbnN0cnVjdGlvbilcclxuICB9XHJcbiAgZXh0cmFjdENvbnRlbnQoczpzdHJpbmcpIHtcclxuICAgIHZhciBzcGFuID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc3BhbicpO1xyXG4gICAgc3Bhbi5pbm5lckhUTUwgPSBzO1xyXG4gICAgcmV0dXJuIChzcGFuLnRleHRDb250ZW50IHx8IHNwYW4uaW5uZXJUZXh0KS5yZXBsYWNlKC8mbmJzcDsvZywgJycpLnJlcGxhY2UoL1xcPGJyXFxzKltcXC9dPz4vZ2ksICcnKS50cmltKCk7XHJcbiAgfTtcclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKXtcclxuICAgIGNvbnNvbGUubG9nKGNoYW5nZXMsIHRoaXMuZXJyb3JJbmRleCk7XHJcbiAgICBpZiAoY2hhbmdlcy5lcnJvckluZGV4KXtcclxuICAgICAgaWYgKHRoaXMuZXJyb3JJbmRleCA+PSAwICl7XHJcbiAgICAgICAgdGhpcy5hY3RpdmVRdWVzdGlvbkluZGV4ID0gdGhpcy5lcnJvckluZGV4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIG9wZW5EYXRlUGlja2VyKCkge1xyXG4gICAgdGhpcy5kYXRlUGlja2VyLmFwaS5vcGVuKCk7XHJcbiAgICB0aGlzLmRhdGVQaWNrZXJPdmVybGF5ID0gdHJ1ZTtcclxuICB9XHJcbiAgY2xvc2VEYXRlcGlja2VyKCkge1xyXG4gICAgdGhpcy5kYXRlUGlja2VyLmFwaS5jbG9zZSgpO1xyXG4gICAgdGhpcy5kYXRlUGlja2VyT3ZlcmxheSA9IGZhbHNlO1xyXG4gIH1cclxuICBhZGRRdWVzdGlvbih0eXBlOiBhbnkpe1xyXG4gICAgdGhpcy5jcmVhdGVRdWVzdGlvbi5lbWl0KHR5cGUudHlwZSk7XHJcbiAgICB0aGlzLmFjdGl2ZVF1ZXN0aW9uSW5kZXggPSB0aGlzLmNoZWNrcG9pbnREYXRhLmxlbmd0aCAtIDE7XHJcbiAgfVxyXG4gIHJlbW92ZVF1ZXN0aW9uKGluZGV4OiBudW1iZXIpe1xyXG4gICAgdGhpcy5kZWxldGVRdWVzdGlvbi5lbWl0KGluZGV4KTtcclxuICAgIHRoaXMuYWN0aXZlUXVlc3Rpb25JbmRleCA9IGluZGV4IC0gMTtcclxuICB9XHJcbiAgY2xvbmVRdWVzdGlvbihpbmRleDogbnVtYmVyKXtcclxuICAgIHRoaXMuYWN0aXZlUXVlc3Rpb25JbmRleCA9IGluZGV4ICsgMTtcclxuICAgIHRoaXMuY29weVF1ZXN0aW9uLmVtaXQoaW5kZXgpO1xyXG5cclxuICB9XHJcbiAgYmxhbmtDbG9uZSh0eXBlOiBzdHJpbmcsIGluZGV4OiBudW1iZXIpe1xyXG4gICAgdGhpcy5ibGFua1F1ZXN0aW9uLmVtaXQoe3R5cGUsIGluZGV4fSk7XHJcbiAgICB0aGlzLmFjdGl2ZVF1ZXN0aW9uSW5kZXggPSBpbmRleCArIDE7XHJcbiAgfVxyXG5cclxuICBhZGRPcHRpb24ocXVlc3Rpb25JbmRleDogbnVtYmVyLCBvcHRpb25JbmRleDogbnVtYmVyLCB0eXBlOiBzdHJpbmcpe1xyXG4gICAgdGhpcy5jcmVhdGVPcHRpb24uZW1pdCh7cXVlc3Rpb25JbmRleCwgb3B0aW9uSW5kZXgsIHR5cGV9KTtcclxuICB9XHJcblxyXG4gIGRlbGV0ZU9wdGlvbihxdWVzdGlvbkluZGV4OiBudW1iZXIsIG9wdGlvbkluZGV4OiBudW1iZXIsIHR5cGU6IHN0cmluZyl7XHJcbiAgICB0aGlzLnJlbW92ZU9wdGlvbi5lbWl0KHtxdWVzdGlvbkluZGV4LCBvcHRpb25JbmRleCwgdHlwZX0pO1xyXG4gIH1cclxuXHJcbiAgZGVsZXRlT25CYWNrc3BhY2UocXVlc3Rpb25JbmRleDogbnVtYmVyLCBvcHRpb25JbmRleDogbnVtYmVyLCB0eXBlOiBzdHJpbmcpe1xyXG4gICAgaWYgKHRoaXMuY2hlY2twb2ludERhdGFbcXVlc3Rpb25JbmRleF0ub3B0aW9uc1tvcHRpb25JbmRleF0ubGFiZWwubGVuZ3RoIDwgMSAmJiB0aGlzLmNoZWNrcG9pbnREYXRhW3F1ZXN0aW9uSW5kZXhdLm9wdGlvbnMubGVuZ3RoICA+IDEpIHtcclxuICAgICAgdGhpcy5yZW1vdmVPcHRpb24uZW1pdCh7cXVlc3Rpb25JbmRleCwgb3B0aW9uSW5kZXgsIHR5cGV9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG5cclxufVxyXG4iXX0=
114
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2twb2ludHMtcXVlc3Rpb25zLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Z4LXdvcmtmbG93LWVuZ2luZS9zcmMvbGliL3NoYXJlZENvbXBvbmVudHMvY2hlY2twb2ludC9jaGVja3BvaW50cy1xdWVzdGlvbnMvY2hlY2twb2ludHMtcXVlc3Rpb25zLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsWUFBWSxFQUFFLFNBQVMsRUFBNEIsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRWhJLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQztBQU85RSxNQUFNLE9BQU8sNkJBQTZCO0lBRXhDLFlBQW9CLFVBQXFCLEVBQVUsUUFBeUI7UUFBeEQsZUFBVSxHQUFWLFVBQVUsQ0FBVztRQUFVLGFBQVEsR0FBUixRQUFRLENBQWlCO1FBQ25FLG1CQUFjLEdBQVEsRUFBRSxDQUFDO1FBQ3pCLHFCQUFnQixHQUFHLEVBQUUsQ0FBQztRQUN0QixlQUFVLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDaEIsMEJBQXFCLEdBQVcsRUFBRSxDQUFDO1FBQ2xDLG1CQUFjLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUNwQyxtQkFBYyxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFDcEMsaUJBQVksR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQ2xDLGtCQUFhLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUNuQyxpQkFBWSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFDbEMsaUJBQVksR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQ2xDLHNCQUFpQixHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFFakQsc0JBQWlCLEdBQUcsS0FBSyxDQUFDO1FBQzFCLHdC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QyxPQUFPLENBQUMsV0FBVyxDQUFDLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDLElBQUksSUFBSSxDQUFDLGNBQWMsQ0FBQyxhQUFhLENBQUMsQ0FBQyxPQUFPLENBQUMsTUFBTSxHQUFJLENBQUMsRUFBRTtZQUN0SSxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxFQUFDLGFBQWEsRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFDLENBQUMsQ0FBQztTQUM1RDtJQUNILENBQUM7OztZQS9GRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLDJCQUEyQjtnQkFDckMsdThsQkFBcUQ7O2FBRXREOzs7WUFSNkYsVUFBVTtZQUUvRixlQUFlOzs7NkJBVXJCLEtBQUs7K0JBQ0wsS0FBSzt5QkFDTCxLQUFLO29DQUNMLEtBQUs7NkJBQ0wsTUFBTTs2QkFDTixNQUFNOzJCQUNOLE1BQU07NEJBQ04sTUFBTTsyQkFDTixNQUFNOzJCQUNOLE1BQU07Z0NBQ04sTUFBTTt5QkFDTixTQUFTLFNBQUMsWUFBWSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0LCBFdmVudEVtaXR0ZXIsIFZpZXdDaGlsZCwgT25DaGFuZ2VzLCBTaW1wbGVDaGFuZ2VzLCBFbGVtZW50UmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IERhdGVQaWNrZXJDb21wb25lbnQgfSBmcm9tICduZzItZGF0ZS1waWNrZXInO1xyXG5pbXBvcnQgeyBTbmFja0JhclNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi91aS1raXQvc25hY2stYmFyL3NuYWNrLWJhci5zZXJ2aWNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYXBwLWNoZWNrcG9pbnRzLXF1ZXN0aW9ucycsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2NoZWNrcG9pbnRzLXF1ZXN0aW9ucy5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vY2hlY2twb2ludHMtcXVlc3Rpb25zLmNvbXBvbmVudC5sZXNzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIENoZWNrcG9pbnRzUXVlc3Rpb25zQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGVsZW1lbnRSZWY6RWxlbWVudFJlZiwgcHJpdmF0ZSBzbmFja2JhcjogU25hY2tCYXJTZXJ2aWNlKSB7IH1cclxuICBASW5wdXQoKSBjaGVja3BvaW50RGF0YTogYW55ID0gW107XHJcbiAgQElucHV0KCkgcXVlc3Rpb25UeXBlTGlzdCA9IFtdO1xyXG4gIEBJbnB1dCgpIGVycm9ySW5kZXggPSAtMTtcclxuICBASW5wdXQoKSBjaGVja3BvaW50SW5zdHJ1Y3Rpb24gOnN0cmluZyA9ICcnO1xyXG4gIEBPdXRwdXQoKSBjcmVhdGVRdWVzdGlvbiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICBAT3V0cHV0KCkgZGVsZXRlUXVlc3Rpb24gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgQE91dHB1dCgpIGNvcHlRdWVzdGlvbiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICBAT3V0cHV0KCkgYmxhbmtRdWVzdGlvbiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICBAT3V0cHV0KCkgY3JlYXRlT3B0aW9uID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gIEBPdXRwdXQoKSByZW1vdmVPcHRpb24gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgQE91dHB1dCgpIHVwZGF0ZURlc2NyaXB0aW9uID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gIEBWaWV3Q2hpbGQoJ2RhdGVQaWNrZXInKSBkYXRlUGlja2VyITogRGF0ZVBpY2tlckNvbXBvbmVudDtcclxuICBkYXRlUGlja2VyT3ZlcmxheSA9IGZhbHNlO1xyXG4gIGFjdGl2ZVF1ZXN0aW9uSW5kZXggPSAwO1xyXG4gIGFkZEluc3RydWN0aW9uITogYm9vbGVhbiA7XHJcblxyXG4gIHBsYWNlaG9sZGVyOiBhbnkgPSB7XHJcbiAgICB0ZXh0Ym94OiAnVHlwZSB5b3VyIHF1ZXN0aW9uIGhlcmUgW1RleHQgQm94XScsXHJcbiAgICBzZWxlY3Q6ICdUeXBlIHlvdXIgcXVlc3Rpb24gaGVyZSBbU2VsZWN0XScsXHJcbiAgICByYWRpbzogJ1R5cGUgeW91ciBxdWVzdGlvbiBoZXJlIFtSYWRpb10nLFxyXG4gICAgY2hlY2tib3g6ICdUeXBlIHlvdXIgcXVlc3Rpb24gaGVyZSBbQ2hlY2tCb3hdJyxcclxuICAgIGRhdGU6ICdUeXBlIHlvdXIgcXVlc3Rpb24gaGVyZSBbRGF0ZV0nLFxyXG4gICAgdXBsb2FkOiAnVHlwZSB5b3VyIHF1ZXN0aW9uIGhlcmUgW1VwbG9hZF0nXHJcbiAgfTtcclxuICBkZXNjcmlwdGlvbjogYW55ID0gJyc7XHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcblxyXG4gIH1cclxuXHJcbiAgc2F2ZURlc2NyaXB0aW9uKCl7XHJcbiAgICB0aGlzLmFkZEluc3RydWN0aW9uID0gZmFsc2U7XHJcbiAgICBpZih0aGlzLmV4dHJhY3RDb250ZW50KHRoaXMuY2hlY2twb2ludEluc3RydWN0aW9uKSA9PT0gJycpe1xyXG4gICAgICB0aGlzLmNoZWNrcG9pbnRJbnN0cnVjdGlvbiA9ICcnO1xyXG4gICAgfVxyXG4gICAgdGhpcy51cGRhdGVEZXNjcmlwdGlvbi5lbWl0KHRoaXMuY2hlY2twb2ludEluc3RydWN0aW9uKVxyXG4gIH1cclxuICBleHRyYWN0Q29udGVudChzOnN0cmluZykge1xyXG4gICAgdmFyIHNwYW4gPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzcGFuJyk7XHJcbiAgICBzcGFuLmlubmVySFRNTCA9IHM7XHJcbiAgICByZXR1cm4gKHNwYW4udGV4dENvbnRlbnQgfHwgc3Bhbi5pbm5lclRleHQpLnJlcGxhY2UoLyZuYnNwOy9nLCAnJykucmVwbGFjZSgvXFw8YnJcXHMqW1xcL10/Pi9naSwgJycpLnRyaW0oKTtcclxuICB9O1xyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpe1xyXG4gICAgY29uc29sZS5sb2coY2hhbmdlcywgdGhpcy5lcnJvckluZGV4KTtcclxuICAgIGlmIChjaGFuZ2VzLmVycm9ySW5kZXgpe1xyXG4gICAgICBpZiAodGhpcy5lcnJvckluZGV4ID49IDAgKXtcclxuICAgICAgICB0aGlzLmFjdGl2ZVF1ZXN0aW9uSW5kZXggPSB0aGlzLmVycm9ySW5kZXg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgb3BlbkRhdGVQaWNrZXIoKSB7XHJcbiAgICB0aGlzLmRhdGVQaWNrZXIuYXBpLm9wZW4oKTtcclxuICAgIHRoaXMuZGF0ZVBpY2tlck92ZXJsYXkgPSB0cnVlO1xyXG4gIH1cclxuICBjbG9zZURhdGVwaWNrZXIoKSB7XHJcbiAgICB0aGlzLmRhdGVQaWNrZXIuYXBpLmNsb3NlKCk7XHJcbiAgICB0aGlzLmRhdGVQaWNrZXJPdmVybGF5ID0gZmFsc2U7XHJcbiAgfVxyXG4gIGFkZFF1ZXN0aW9uKHR5cGU6IGFueSl7XHJcbiAgLy8gIHRoaXMuY3JlYXRlUXVlc3Rpb24uZW1pdCh0eXBlLnR5cGUpO1xyXG4gICAvLyB0aGlzLmFjdGl2ZVF1ZXN0aW9uSW5kZXggPSB0aGlzLmNoZWNrcG9pbnREYXRhLmxlbmd0aCAtIDE7XHJcbiAgfVxyXG4gIHJlbW92ZVF1ZXN0aW9uKGluZGV4OiBudW1iZXIpe1xyXG4gICAgdGhpcy5kZWxldGVRdWVzdGlvbi5lbWl0KGluZGV4KTtcclxuICAgIHRoaXMuYWN0aXZlUXVlc3Rpb25JbmRleCA9IGluZGV4IC0gMTtcclxuICB9XHJcbiAgY2xvbmVRdWVzdGlvbihpbmRleDogbnVtYmVyKXtcclxuICAgIC8vIHRoaXMuYWN0aXZlUXVlc3Rpb25JbmRleCA9IGluZGV4ICsgMTtcclxuICAgIC8vIHRoaXMuY29weVF1ZXN0aW9uLmVtaXQoaW5kZXgpO1xyXG5cclxuICB9XHJcbiAgYmxhbmtDbG9uZSh0eXBlOiBzdHJpbmcsIGluZGV4OiBudW1iZXIpe1xyXG4gICAgLy8gdGhpcy5ibGFua1F1ZXN0aW9uLmVtaXQoe3R5cGUsIGluZGV4fSk7XHJcbiAgICAvLyB0aGlzLmFjdGl2ZVF1ZXN0aW9uSW5kZXggPSBpbmRleCArIDE7XHJcbiAgfVxyXG5cclxuICBhZGRPcHRpb24ocXVlc3Rpb25JbmRleDogbnVtYmVyLCBvcHRpb25JbmRleDogbnVtYmVyLCB0eXBlOiBzdHJpbmcpe1xyXG4gICAgLy8gdGhpcy5jcmVhdGVPcHRpb24uZW1pdCh7cXVlc3Rpb25JbmRleCwgb3B0aW9uSW5kZXgsIHR5cGV9KTtcclxuICB9XHJcblxyXG4gIGRlbGV0ZU9wdGlvbihxdWVzdGlvbkluZGV4OiBudW1iZXIsIG9wdGlvbkluZGV4OiBudW1iZXIsIHR5cGU6IHN0cmluZyl7XHJcbiAgICB0aGlzLnJlbW92ZU9wdGlvbi5lbWl0KHtxdWVzdGlvbkluZGV4LCBvcHRpb25JbmRleCwgdHlwZX0pO1xyXG4gIH1cclxuXHJcbiAgZGVsZXRlT25CYWNrc3BhY2UocXVlc3Rpb25JbmRleDogbnVtYmVyLCBvcHRpb25JbmRleDogbnVtYmVyLCB0eXBlOiBzdHJpbmcpe1xyXG4gICAgaWYgKHRoaXMuY2hlY2twb2ludERhdGFbcXVlc3Rpb25JbmRleF0ub3B0aW9uc1tvcHRpb25JbmRleF0ubGFiZWwubGVuZ3RoIDwgMSAmJiB0aGlzLmNoZWNrcG9pbnREYXRhW3F1ZXN0aW9uSW5kZXhdLm9wdGlvbnMubGVuZ3RoICA+IDEpIHtcclxuICAgICAgdGhpcy5yZW1vdmVPcHRpb24uZW1pdCh7cXVlc3Rpb25JbmRleCwgb3B0aW9uSW5kZXgsIHR5cGV9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG5cclxufVxyXG4iXX0=