@colijnit/sharedcomponents 261.1.0 → 261.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1184) hide show
  1. package/.browserslistrc +16 -0
  2. package/.editorconfig +16 -0
  3. package/README.md +11 -8
  4. package/Sharedcomponents.iml +15 -0
  5. package/angular.json +177 -0
  6. package/build.xml +31 -0
  7. package/custom-login-bundle.webpack.config.js +3 -0
  8. package/karma.conf.js +44 -0
  9. package/move-assets.js +14 -0
  10. package/package.json +79 -33
  11. package/projects/sharedcomponents/.browserslistrc +16 -0
  12. package/projects/sharedcomponents/README.md +24 -0
  13. package/projects/sharedcomponents/karma.conf.js +44 -0
  14. package/projects/sharedcomponents/ng-package.json +17 -0
  15. package/projects/sharedcomponents/package.json +25 -0
  16. package/projects/sharedcomponents/src/lib/assets/dictionary/text.properties.ts +8 -0
  17. package/projects/sharedcomponents/src/lib/assets/icons/account.svg +1 -0
  18. package/projects/sharedcomponents/src/lib/assets/icons/angle_left_solid.svg +1 -0
  19. package/projects/sharedcomponents/src/lib/assets/icons/angle_right_solid.svg +1 -0
  20. package/projects/sharedcomponents/src/lib/assets/icons/arrow_down.svg +1 -0
  21. package/projects/sharedcomponents/src/lib/assets/icons/arrow_down_regular.svg +1 -0
  22. package/projects/sharedcomponents/src/lib/assets/icons/arrow_fat_right.svg +1 -0
  23. package/projects/sharedcomponents/src/lib/assets/icons/arrow_left_round_open.svg +1 -0
  24. package/projects/sharedcomponents/src/lib/assets/icons/arrow_point_down.svg +6 -0
  25. package/projects/sharedcomponents/src/lib/assets/icons/arrow_point_left.svg +1 -0
  26. package/projects/sharedcomponents/src/lib/assets/icons/arrow_point_right.svg +1 -0
  27. package/projects/sharedcomponents/src/lib/assets/icons/arrow_point_up.svg +8 -0
  28. package/projects/sharedcomponents/src/lib/assets/icons/arrow_right_arrow_left_regular.svg +1 -0
  29. package/projects/sharedcomponents/src/lib/assets/icons/at_solid.svg +1 -0
  30. package/projects/sharedcomponents/src/lib/assets/icons/barcode_read_regular.svg +1 -0
  31. package/projects/sharedcomponents/src/lib/assets/icons/bell_regular.svg +1 -0
  32. package/projects/sharedcomponents/src/lib/assets/icons/bell_slash_regular.svg +1 -0
  33. package/projects/sharedcomponents/src/lib/assets/icons/bring_forward_regular.svg +1 -0
  34. package/projects/sharedcomponents/src/lib/assets/icons/camera.svg +1 -0
  35. package/projects/sharedcomponents/src/lib/assets/icons/check_duotone.svg +1 -0
  36. package/projects/sharedcomponents/src/lib/assets/icons/check_round.svg +1 -0
  37. package/projects/sharedcomponents/src/lib/assets/icons/check_solid.svg +1 -0
  38. package/projects/sharedcomponents/src/lib/assets/icons/chevron_right_regular.svg +1 -0
  39. package/projects/sharedcomponents/src/lib/assets/icons/clock_regular.svg +1 -0
  40. package/projects/sharedcomponents/src/lib/assets/icons/comment_regular.svg +1 -0
  41. package/projects/sharedcomponents/src/lib/assets/icons/cross_skinny.svg +1 -0
  42. package/projects/sharedcomponents/src/lib/assets/icons/cubes.svg +1 -0
  43. package/projects/sharedcomponents/src/lib/assets/icons/delete_left_regular.svg +1 -0
  44. package/projects/sharedcomponents/src/lib/assets/icons/delivery_truck.svg +12 -0
  45. package/projects/sharedcomponents/src/lib/assets/icons/detail_view.svg +1 -0
  46. package/projects/sharedcomponents/src/lib/assets/icons/diagram_project_regular.svg +1 -0
  47. package/projects/sharedcomponents/src/lib/assets/icons/dropzone.svg +1 -0
  48. package/projects/sharedcomponents/src/lib/assets/icons/edit_pen_regular.svg +1 -0
  49. package/projects/sharedcomponents/src/lib/assets/icons/email.svg +5 -0
  50. package/projects/sharedcomponents/src/lib/assets/icons/email_regular.svg +1 -0
  51. package/projects/sharedcomponents/src/lib/assets/icons/employee.svg +1 -0
  52. package/projects/sharedcomponents/src/lib/assets/icons/envelope_regular.svg +1 -0
  53. package/projects/sharedcomponents/src/lib/assets/icons/eye_regular.svg +1 -0
  54. package/projects/sharedcomponents/src/lib/assets/icons/file_export_regular.svg +1 -0
  55. package/projects/sharedcomponents/src/lib/assets/icons/file_export_solid.svg +1 -0
  56. package/projects/sharedcomponents/src/lib/assets/icons/file_magnifying_glass.svg +1 -0
  57. package/projects/sharedcomponents/src/lib/assets/icons/file_pdf_regular.svg +1 -0
  58. package/projects/sharedcomponents/src/lib/assets/icons/file_pdf_solid.svg +1 -0
  59. package/projects/sharedcomponents/src/lib/assets/icons/file_signature_regular.svg +1 -0
  60. package/projects/sharedcomponents/src/lib/assets/icons/folders_sharp_regular.svg +1 -0
  61. package/projects/sharedcomponents/src/lib/assets/icons/house_blank_regular.svg +1 -0
  62. package/projects/sharedcomponents/src/lib/assets/icons/ione_workflow.svg +62 -0
  63. package/projects/sharedcomponents/src/lib/assets/icons/list_ul_regular.svg +1 -0
  64. package/projects/sharedcomponents/src/lib/assets/icons/lock.svg +1 -0
  65. package/projects/sharedcomponents/src/lib/assets/icons/message_sms_regular.svg +1 -0
  66. package/projects/sharedcomponents/src/lib/assets/icons/message_sms_solid.svg +1 -0
  67. package/projects/sharedcomponents/src/lib/assets/icons/minus_simple.svg +1 -0
  68. package/projects/sharedcomponents/src/lib/assets/icons/notification.svg +1 -0
  69. package/projects/sharedcomponents/src/lib/assets/icons/paper_plane_top_solid.svg +1 -0
  70. package/projects/sharedcomponents/src/lib/assets/icons/paperclip_regular.svg +1 -0
  71. package/projects/sharedcomponents/src/lib/assets/icons/pdf.svg +15 -0
  72. package/projects/sharedcomponents/src/lib/assets/icons/person_digging_regular.svg +1 -0
  73. package/projects/sharedcomponents/src/lib/assets/icons/pin_round_open.svg +11 -0
  74. package/projects/sharedcomponents/src/lib/assets/icons/plus_regular.svg +1 -0
  75. package/projects/sharedcomponents/src/lib/assets/icons/plus_simple.svg +1 -0
  76. package/projects/sharedcomponents/src/lib/assets/icons/print.svg +10 -0
  77. package/projects/sharedcomponents/src/lib/assets/icons/print_regular.svg +1 -0
  78. package/projects/sharedcomponents/src/lib/assets/icons/print_solid.svg +1 -0
  79. package/projects/sharedcomponents/src/lib/assets/icons/regular_file_signature_circle_plus.svg +1 -0
  80. package/projects/sharedcomponents/src/lib/assets/icons/share_solid.svg +1 -0
  81. package/projects/sharedcomponents/src/lib/assets/icons/signature_field.svg +9 -0
  82. package/projects/sharedcomponents/src/lib/assets/icons/solid_barcode_read_tag.svg +1 -0
  83. package/projects/sharedcomponents/src/lib/assets/icons/square_plus_regular.svg +1 -0
  84. package/projects/sharedcomponents/src/lib/assets/icons/tag_regular.svg +1 -0
  85. package/projects/sharedcomponents/src/lib/assets/icons/task.svg +1 -0
  86. package/projects/sharedcomponents/src/lib/assets/icons/trash_can_regular.svg +1 -0
  87. package/projects/sharedcomponents/src/lib/assets/icons/trashbin.svg +2 -0
  88. package/projects/sharedcomponents/src/lib/assets/icons/x_solid.svg +1 -0
  89. package/projects/sharedcomponents/src/lib/assets/icons/xml.svg +1 -0
  90. package/projects/sharedcomponents/src/lib/businessobject/build-images-and-documentation-result.ts +8 -0
  91. package/projects/sharedcomponents/src/lib/businessobject/document-allowed-extension.bo.ts +12 -0
  92. package/projects/sharedcomponents/src/lib/businessobject/drag-drop-container-element.ts +9 -0
  93. package/projects/sharedcomponents/src/lib/businessobject/drag-drop-container.ts +9 -0
  94. package/projects/sharedcomponents/src/lib/businessobject/user-group.bo.ts +34 -0
  95. package/projects/sharedcomponents/src/lib/components/access/read-write-access.component.ts +103 -0
  96. package/projects/sharedcomponents/src/lib/components/access/read-write-access.module.ts +15 -0
  97. package/projects/sharedcomponents/src/lib/components/activity-list/activity-list.component.ts +225 -0
  98. package/projects/sharedcomponents/src/lib/components/activity-list/activity-list.module.ts +22 -0
  99. package/projects/sharedcomponents/src/lib/components/activity-list-header/activity-list-header.component.ts +78 -0
  100. package/projects/sharedcomponents/src/lib/components/activity-list-header/activity-list-header.module.ts +27 -0
  101. package/projects/sharedcomponents/src/lib/components/activity-list-header/components/period-filter/period-filter-popup.component.ts +63 -0
  102. package/projects/sharedcomponents/src/lib/components/activity-list-header/components/period-filter/period-filter.component.ts +117 -0
  103. package/projects/sharedcomponents/src/lib/components/activity-list-header/components/period-filter/period-filter.module.ts +32 -0
  104. package/projects/sharedcomponents/src/lib/components/activity-overview-component/component-activity-overview.component.ts +224 -0
  105. package/projects/sharedcomponents/src/lib/components/activity-overview-component/component-activity-overview.module.ts +25 -0
  106. package/projects/sharedcomponents/src/lib/components/activity-overview-component/components/base-activity-overview.component.ts +342 -0
  107. package/projects/sharedcomponents/src/lib/components/app-file-dropzone/app-file-dropzone.component.ts +45 -0
  108. package/projects/sharedcomponents/src/lib/components/app-file-dropzone/app-file-dropzone.module.ts +21 -0
  109. package/projects/sharedcomponents/src/lib/components/custom-pdf/custom-pdf-dialog.component.ts +299 -0
  110. package/projects/sharedcomponents/src/lib/components/custom-pdf/custom-pdf-dialog.module.ts +28 -0
  111. package/projects/sharedcomponents/src/lib/components/date-planning/component/agenda/agenda-base-view.component.ts +68 -0
  112. package/projects/sharedcomponents/src/lib/components/date-planning/component/agenda/agenda-day-view.component.ts +35 -0
  113. package/projects/sharedcomponents/src/lib/components/date-planning/component/agenda/agenda-event.component.ts +73 -0
  114. package/projects/sharedcomponents/src/lib/components/date-planning/component/agenda/agenda-events.component.ts +53 -0
  115. package/projects/sharedcomponents/src/lib/components/date-planning/component/agenda/agenda-half-hour-cell.component.ts +81 -0
  116. package/projects/sharedcomponents/src/lib/components/date-planning/component/agenda/agenda-header.component.ts +405 -0
  117. package/projects/sharedcomponents/src/lib/components/date-planning/component/agenda/agenda-hour-cell.component.ts +38 -0
  118. package/projects/sharedcomponents/src/lib/components/date-planning/component/agenda/agenda-hour-view-labels.component.ts +50 -0
  119. package/projects/sharedcomponents/src/lib/components/date-planning/component/agenda/agenda-hour-view.component.ts +46 -0
  120. package/projects/sharedcomponents/src/lib/components/date-planning/component/agenda/agenda-month-view.component.ts +65 -0
  121. package/projects/sharedcomponents/src/lib/components/date-planning/component/agenda/agenda-select-event.component.ts +39 -0
  122. package/projects/sharedcomponents/src/lib/components/date-planning/component/agenda/agenda-view.component.ts +41 -0
  123. package/projects/sharedcomponents/src/lib/components/date-planning/component/agenda/agenda-week-select-view.component.ts +63 -0
  124. package/projects/sharedcomponents/src/lib/components/date-planning/component/agenda/agenda-week-view.component.ts +50 -0
  125. package/projects/sharedcomponents/src/lib/components/date-planning/component/agenda/view-select.component.ts +78 -0
  126. package/projects/sharedcomponents/src/lib/components/date-planning/component/calendar/calendar-all-months.component.ts +37 -0
  127. package/projects/sharedcomponents/src/lib/components/date-planning/component/calendar/calendar-all-years.component.ts +52 -0
  128. package/projects/sharedcomponents/src/lib/components/date-planning/component/calendar/calendar-header.component.ts +123 -0
  129. package/projects/sharedcomponents/src/lib/components/date-planning/component/calendar/calendar-view.component.ts +200 -0
  130. package/projects/sharedcomponents/src/lib/components/date-planning/component/calendar/calendar.component.ts +35 -0
  131. package/projects/sharedcomponents/src/lib/components/date-planning/date-planning.component.ts +145 -0
  132. package/projects/sharedcomponents/src/lib/components/date-planning/date-planning.module.ts +63 -0
  133. package/projects/sharedcomponents/src/lib/components/docsign/component/signature/signature.component.ts +82 -0
  134. package/projects/sharedcomponents/src/lib/components/docsign/component/signatures/signatures.component.ts +50 -0
  135. package/projects/sharedcomponents/src/lib/components/docsign/docsign.component.ts +293 -0
  136. package/projects/sharedcomponents/src/lib/components/docsign/docsign.module.ts +22 -0
  137. package/projects/sharedcomponents/src/lib/components/email-selector/email-selector.component.ts +121 -0
  138. package/projects/sharedcomponents/src/lib/components/email-selector/email-selector.module.ts +32 -0
  139. package/projects/sharedcomponents/src/lib/components/file-upload/file-upload.component.ts +241 -0
  140. package/projects/sharedcomponents/src/lib/components/file-upload/file-upload.module.ts +28 -0
  141. package/projects/sharedcomponents/src/lib/components/file-upload-popup/file-upload-popup.component.ts +451 -0
  142. package/projects/sharedcomponents/src/lib/components/file-upload-popup/file-upload-popup.module.ts +39 -0
  143. package/projects/sharedcomponents/src/lib/components/files-upload/components/base-file-upload.component.ts +549 -0
  144. package/projects/sharedcomponents/src/lib/components/files-upload/components/drag-drop-container.component.ts +131 -0
  145. package/projects/sharedcomponents/src/lib/components/files-upload/files-upload.component.ts +187 -0
  146. package/projects/sharedcomponents/src/lib/components/files-upload/files-upload.module.ts +54 -0
  147. package/projects/sharedcomponents/src/lib/components/form-builder/form-builder-user-form/components/forms-test-component/forms-test-component.component.ts +58 -0
  148. package/projects/sharedcomponents/src/lib/components/form-builder/form-builder-user-form/components/forms-test-component/forms-test-component.module.ts +19 -0
  149. package/projects/sharedcomponents/src/lib/components/form-builder/form-builder-user-form/components/user-form-input-scale/user-form-input-scale.component.ts +113 -0
  150. package/projects/sharedcomponents/src/lib/components/form-builder/form-builder-user-form/components/user-form-input-scale/user-form-input-scale.module.ts +21 -0
  151. package/projects/sharedcomponents/src/lib/components/form-builder/form-builder-user-form/form-builder-question.component.ts +161 -0
  152. package/projects/sharedcomponents/src/lib/components/form-builder/form-builder-user-form/form-builder-user-form.component.ts +296 -0
  153. package/projects/sharedcomponents/src/lib/components/form-builder/form-builder-user-form/form-builder-user-form.module.ts +53 -0
  154. package/projects/sharedcomponents/src/lib/components/image-display/image-display.component.ts +42 -0
  155. package/projects/sharedcomponents/src/lib/components/image-display/image-display.module.ts +22 -0
  156. package/projects/sharedcomponents/src/lib/components/key-pad/key-pad.component.ts +216 -0
  157. package/projects/sharedcomponents/src/lib/components/key-pad/key-pad.module.ts +20 -0
  158. package/projects/sharedcomponents/src/lib/components/layout-switcher/layout-switcher.component.ts +98 -0
  159. package/projects/sharedcomponents/src/lib/components/layout-switcher/layout-switcher.module.ts +21 -0
  160. package/projects/sharedcomponents/src/lib/components/linear-gauge/co-linear-gauge.component.ts +63 -0
  161. package/projects/sharedcomponents/src/lib/components/linear-gauge/co-linear-gauge.module.ts +17 -0
  162. package/projects/sharedcomponents/src/lib/components/login/components/input-code/input-code.component.ts +187 -0
  163. package/projects/sharedcomponents/src/lib/components/login/components/input-code/input-code.module.ts +19 -0
  164. package/projects/sharedcomponents/src/lib/components/login/components/login-base.component.ts +150 -0
  165. package/projects/sharedcomponents/src/lib/components/login/components/login-change-password.component.ts +178 -0
  166. package/projects/sharedcomponents/src/lib/components/login/components/login-mfa-code-entry.component.ts +113 -0
  167. package/projects/sharedcomponents/src/lib/components/login/components/login-mfa-code-setup.component.ts +44 -0
  168. package/projects/sharedcomponents/src/lib/components/login/components/login-username-password.component.ts +160 -0
  169. package/projects/sharedcomponents/src/lib/components/login/enum/mfa-send-method-type.enum.ts +6 -0
  170. package/projects/sharedcomponents/src/lib/components/login/interface/finger-print-result.interface.ts +4 -0
  171. package/projects/sharedcomponents/src/lib/components/login/localization/login-translation.ts +15 -0
  172. package/projects/sharedcomponents/src/lib/components/login/login.component.ts +184 -0
  173. package/projects/sharedcomponents/src/lib/components/login/login.module.ts +54 -0
  174. package/projects/sharedcomponents/src/lib/components/login/service/finger-print.service.ts +45 -0
  175. package/projects/sharedcomponents/src/lib/components/login/service/login-adapter.service.ts +109 -0
  176. package/projects/sharedcomponents/src/lib/components/login/service/login.service.ts +104 -0
  177. package/projects/sharedcomponents/src/lib/components/modify-task-form/components/activity-summary-block/activity-summary-block.component.ts +117 -0
  178. package/projects/sharedcomponents/src/lib/components/modify-task-form/components/activity-summary-block/activity-summary-block.module.ts +24 -0
  179. package/projects/sharedcomponents/src/lib/components/modify-task-form/components/activity-summary-block/style/_layout.scss +211 -0
  180. package/projects/sharedcomponents/src/lib/components/modify-task-form/components/base-activity-summary.component.ts +164 -0
  181. package/projects/sharedcomponents/src/lib/components/modify-task-form/components/creation-summary-block/creation-summary-block.component.ts +140 -0
  182. package/projects/sharedcomponents/src/lib/components/modify-task-form/components/creation-summary-block/creation-summary-block.module.ts +26 -0
  183. package/projects/sharedcomponents/src/lib/components/modify-task-form/components/executive-summary-block/executive-summary-block.component.ts +83 -0
  184. package/projects/sharedcomponents/src/lib/components/modify-task-form/components/executive-summary-block/executive-summary-block.module.ts +23 -0
  185. package/projects/sharedcomponents/src/lib/components/modify-task-form/components/notification-summary-block/notification-summary-block.component.ts +149 -0
  186. package/projects/sharedcomponents/src/lib/components/modify-task-form/components/notification-summary-block/notification-summary-block.module.ts +29 -0
  187. package/projects/sharedcomponents/src/lib/components/modify-task-form/components/status-summary-block/status-summary-block.component.ts +65 -0
  188. package/projects/sharedcomponents/src/lib/components/modify-task-form/components/status-summary-block/status-summary-block.module.ts +24 -0
  189. package/projects/sharedcomponents/src/lib/components/modify-task-form/components/task-details/task-details.component.ts +103 -0
  190. package/projects/sharedcomponents/src/lib/components/modify-task-form/components/task-details/task-details.module.ts +24 -0
  191. package/projects/sharedcomponents/src/lib/components/modify-task-form/modify-task-form.component.ts +340 -0
  192. package/projects/sharedcomponents/src/lib/components/modify-task-form/modify-task-form.module.ts +40 -0
  193. package/projects/sharedcomponents/src/lib/components/multi-property-toggler/multiple-property-toggler.component.ts +106 -0
  194. package/projects/sharedcomponents/src/lib/components/multi-property-toggler/multiple-property-toggler.module.ts +20 -0
  195. package/projects/sharedcomponents/src/lib/components/open-activity-list/component-activity-list.component.ts +377 -0
  196. package/projects/sharedcomponents/src/lib/components/open-activity-list/component-activity-list.module.ts +30 -0
  197. package/projects/sharedcomponents/src/lib/components/open-activity-list/components/base-open-activity-list.component.ts +299 -0
  198. package/projects/sharedcomponents/src/lib/components/open-activity-list/components/personal-activity-overview/personal-activity-overview.component.ts +40 -0
  199. package/projects/sharedcomponents/src/lib/components/open-activity-list/components/personal-activity-overview/personal-activity-overview.module..ts +18 -0
  200. package/projects/sharedcomponents/src/lib/components/preferred-planning/preferred-planning.component.ts +254 -0
  201. package/projects/sharedcomponents/src/lib/components/preferred-planning/preferred-planning.module.ts +30 -0
  202. package/projects/sharedcomponents/src/lib/components/preview-pdf-dialog/preview-pdf-dialog.component.ts +86 -0
  203. package/projects/sharedcomponents/src/lib/components/preview-pdf-dialog/preview-pdf-dialog.module.ts +26 -0
  204. package/projects/sharedcomponents/src/lib/components/role-email-selector/role-email-selector.component.ts +181 -0
  205. package/projects/sharedcomponents/src/lib/components/role-email-selector/role-email-selector.module.ts +29 -0
  206. package/projects/sharedcomponents/src/lib/components/screen-config-generator/enums/field-type.enum.ts +9 -0
  207. package/projects/sharedcomponents/src/lib/components/screen-config-generator/models/Config.ts +6 -0
  208. package/projects/sharedcomponents/src/lib/components/screen-config-generator/models/Field.ts +8 -0
  209. package/projects/sharedcomponents/src/lib/components/screen-config-generator/models/Header.ts +8 -0
  210. package/projects/sharedcomponents/src/lib/components/screen-config-generator/models/Module.ts +6 -0
  211. package/projects/sharedcomponents/src/lib/components/screen-config-generator/models/Rubric.ts +10 -0
  212. package/projects/sharedcomponents/src/lib/components/screen-config-generator/models/ScreenConfig.ts +9 -0
  213. package/projects/sharedcomponents/src/lib/components/screen-config-generator/models/SubCat.ts +9 -0
  214. package/projects/sharedcomponents/src/lib/components/screen-config-generator/models/SubRubric.ts +8 -0
  215. package/projects/sharedcomponents/src/lib/components/screen-config-generator/screen-config-generator.component.ts +539 -0
  216. package/projects/sharedcomponents/src/lib/components/screen-config-generator/screen-config-generator.module.ts +21 -0
  217. package/projects/sharedcomponents/src/lib/components/send-method-dialog/components/additional-file-button/additional-file-button.component.ts +78 -0
  218. package/projects/sharedcomponents/src/lib/components/send-method-dialog/components/additional-file-button/additional-file-button.module.ts +21 -0
  219. package/projects/sharedcomponents/src/lib/components/send-method-dialog/components/layout-selection/layout-selection.component.ts +80 -0
  220. package/projects/sharedcomponents/src/lib/components/send-method-dialog/components/layout-selection/layout-selection.module.ts +22 -0
  221. package/projects/sharedcomponents/src/lib/components/send-method-dialog/components/printer-selection/printer-selection.component.ts +60 -0
  222. package/projects/sharedcomponents/src/lib/components/send-method-dialog/components/printer-selection/printer-selection.module.ts +22 -0
  223. package/projects/sharedcomponents/src/lib/components/send-method-dialog/components/send-method-combine-print-email/send-method-combine-print-email.component.ts +276 -0
  224. package/projects/sharedcomponents/src/lib/components/send-method-dialog/components/send-method-combine-print-email/send-method-combine-print-email.module.ts +26 -0
  225. package/projects/sharedcomponents/src/lib/components/send-method-dialog/components/send-method-email/send-method-email.component.ts +104 -0
  226. package/projects/sharedcomponents/src/lib/components/send-method-dialog/components/send-method-email/send-method-email.module.ts +28 -0
  227. package/projects/sharedcomponents/src/lib/components/send-method-dialog/components/send-method-pdf/send-method-pdf.component.ts +40 -0
  228. package/projects/sharedcomponents/src/lib/components/send-method-dialog/components/send-method-pdf/send-method-pdf.module.ts +23 -0
  229. package/projects/sharedcomponents/src/lib/components/send-method-dialog/components/send-method-printer/send-method-printer.component.ts +182 -0
  230. package/projects/sharedcomponents/src/lib/components/send-method-dialog/components/send-method-printer/send-method-printer.module.ts +34 -0
  231. package/projects/sharedcomponents/src/lib/components/send-method-dialog/components/signature-button/signature-button.component.ts +64 -0
  232. package/projects/sharedcomponents/src/lib/components/send-method-dialog/components/signature-button/signature-button.module.ts +20 -0
  233. package/projects/sharedcomponents/src/lib/components/send-method-dialog/model/email-address-viewmodel.ts +9 -0
  234. package/projects/sharedcomponents/src/lib/components/send-method-dialog/send-method-dialog.component.ts +495 -0
  235. package/projects/sharedcomponents/src/lib/components/send-method-dialog/send-method-dialog.module.ts +38 -0
  236. package/projects/sharedcomponents/src/lib/components/send-method-dialog/send-method-params.interface.ts +13 -0
  237. package/projects/sharedcomponents/src/lib/components/send-method-dialog/service/send-method.service.ts +86 -0
  238. package/projects/sharedcomponents/src/lib/components/simple-tags/simple-tags.component.ts +92 -0
  239. package/projects/sharedcomponents/src/lib/components/simple-tags/simple-tags.module.ts +26 -0
  240. package/projects/sharedcomponents/src/lib/components/simple-tags-form/simple-tags-form.component.ts +208 -0
  241. package/projects/sharedcomponents/src/lib/components/simple-tags-form/simple-tags-form.module.ts +24 -0
  242. package/projects/sharedcomponents/src/lib/components/statusbar/statusbar-popup.component.ts +118 -0
  243. package/projects/sharedcomponents/src/lib/components/statusbar/statusbar.component.ts +115 -0
  244. package/projects/sharedcomponents/src/lib/components/statusbar/statusbar.module.ts +25 -0
  245. package/projects/sharedcomponents/src/lib/components/stock/base/base-stock.component.ts +17 -0
  246. package/projects/sharedcomponents/src/lib/components/stock/components/allocation-stock-history/allocation-stock-history.component.ts +77 -0
  247. package/projects/sharedcomponents/src/lib/components/stock/components/order-commission-stock-history/order-commission-stock-history.component.ts +56 -0
  248. package/projects/sharedcomponents/src/lib/components/stock/components/order-stock-history/order-stock-history.component.ts +55 -0
  249. package/projects/sharedcomponents/src/lib/components/stock/components/order-stock-tab/order-stock-tab.component.ts +54 -0
  250. package/projects/sharedcomponents/src/lib/components/stock/components/order-supply-stock-history/order-supply-stock-history.component.ts +55 -0
  251. package/projects/sharedcomponents/src/lib/components/stock/components/order-tab/order-tab.component.ts +180 -0
  252. package/projects/sharedcomponents/src/lib/components/stock/components/stock-history/stock-history.component.ts +63 -0
  253. package/projects/sharedcomponents/src/lib/components/stock/components/stock-location/components/stock-location-popup/stock-location-popup.component.ts +266 -0
  254. package/projects/sharedcomponents/src/lib/components/stock/components/stock-location/stock-location.component.ts +373 -0
  255. package/projects/sharedcomponents/src/lib/components/stock/components/stock-prognose/stock-prognose.component.ts +71 -0
  256. package/projects/sharedcomponents/src/lib/components/stock/components/stock-tab/stock-tab.component.ts +41 -0
  257. package/projects/sharedcomponents/src/lib/components/stock/service/stock-module-screen-config.service.ts +23 -0
  258. package/projects/sharedcomponents/src/lib/components/stock/stock-history-tabs/stock-history-tabs.component.ts +32 -0
  259. package/projects/sharedcomponents/src/lib/components/stock/stock-information/stock-information.component.ts +86 -0
  260. package/projects/sharedcomponents/src/lib/components/stock/stock-information-grid/stock-information-grid.component.ts +500 -0
  261. package/projects/sharedcomponents/src/lib/components/stock/stock-tabs/stock-tabs.component.ts +191 -0
  262. package/projects/sharedcomponents/src/lib/components/stock/stock-transfer/co-drop-down-list-fields.interface.ts +4 -0
  263. package/projects/sharedcomponents/src/lib/components/stock/stock-transfer/stock-change-amount.component.ts +77 -0
  264. package/projects/sharedcomponents/src/lib/components/stock/stock-transfer/stock-transfer.component.ts +264 -0
  265. package/projects/sharedcomponents/src/lib/components/stock/stock-transfer-allocated/stock-transfer-allocated.component.ts +317 -0
  266. package/projects/sharedcomponents/src/lib/components/stock/stock.component.ts +249 -0
  267. package/projects/sharedcomponents/src/lib/components/stock/stock.module.ts +99 -0
  268. package/projects/sharedcomponents/src/lib/components/stock-statusbar/stock-statusbar.component.ts +23 -0
  269. package/projects/sharedcomponents/src/lib/components/stock-statusbar/stock-statusbar.module.ts +17 -0
  270. package/projects/sharedcomponents/src/lib/components/tab-bar/tab-bar.component.ts +110 -0
  271. package/projects/sharedcomponents/src/lib/components/tab-bar/tab-bar.module.ts +22 -0
  272. package/projects/sharedcomponents/src/lib/components/tab-bar/tab.interface.ts +8 -0
  273. package/projects/sharedcomponents/src/lib/components/tags/component/tag-join-label/tag-join-label.component.ts +61 -0
  274. package/projects/sharedcomponents/src/lib/components/tags/component/tag-label/tag-label.component.ts +47 -0
  275. package/projects/sharedcomponents/src/lib/components/tags/component/treeview/model/tree-view-node-item.ts +132 -0
  276. package/projects/sharedcomponents/src/lib/components/tags/component/treeview/treeview.component.ts +261 -0
  277. package/projects/sharedcomponents/src/lib/components/tags/tags.component.ts +192 -0
  278. package/projects/sharedcomponents/src/lib/components/tags/tags.module.ts +28 -0
  279. package/projects/sharedcomponents/src/lib/components/task-creator/style/_layout.scss +213 -0
  280. package/projects/sharedcomponents/src/lib/components/task-creator/task-creator.component.ts +497 -0
  281. package/projects/sharedcomponents/src/lib/components/task-creator/task-creator.module.ts +49 -0
  282. package/projects/sharedcomponents/src/lib/components/task-modifyer/task-modifier.component.ts +355 -0
  283. package/projects/sharedcomponents/src/lib/components/task-modifyer/task-modifyer.module..ts +32 -0
  284. package/projects/sharedcomponents/src/lib/components/tile-renderer/tile-render.component.ts +137 -0
  285. package/projects/sharedcomponents/src/lib/components/tile-renderer/tile-render.module.ts +26 -0
  286. package/projects/sharedcomponents/src/lib/components/workflow-info-tiles/components/workflow-info-tile.component.ts +59 -0
  287. package/projects/sharedcomponents/src/lib/components/workflow-info-tiles/components/workflow-info-tile.module.ts +22 -0
  288. package/projects/sharedcomponents/src/lib/components/workflow-info-tiles/workflow-info-tiles.component.ts +63 -0
  289. package/projects/sharedcomponents/src/lib/components/workflow-info-tiles/workflow-info-tiles.module.ts +22 -0
  290. package/projects/sharedcomponents/src/lib/components/workflow-notification-toggle/workflow-notification-toggle-popup.ts +55 -0
  291. package/projects/sharedcomponents/src/lib/components/workflow-notification-toggle/workflow-notification-toggle.component.ts +88 -0
  292. package/projects/sharedcomponents/src/lib/components/workflow-notification-toggle/workflow-notification-toggle.module.ts +34 -0
  293. package/projects/sharedcomponents/src/lib/decorator/input-boolean.decorator.ts +35 -0
  294. package/projects/sharedcomponents/src/lib/directives/absolute-overlay-template.directive.ts +26 -0
  295. package/projects/sharedcomponents/src/lib/directives/align-with.directive.ts +191 -0
  296. package/projects/sharedcomponents/src/lib/directives/click-outside.directive.ts +25 -0
  297. package/projects/sharedcomponents/src/lib/directives/directives.module.ts +22 -0
  298. package/projects/sharedcomponents/src/lib/enum/activity-cfg-name.enum.ts +28 -0
  299. package/projects/sharedcomponents/src/lib/enum/app-button-type.enum.ts +9 -0
  300. package/projects/sharedcomponents/src/lib/enum/calendar-view.enum.ts +10 -0
  301. package/projects/sharedcomponents/src/lib/enum/co-document-type.ts +11 -0
  302. package/projects/sharedcomponents/src/lib/enum/document-allowed-type.enum.ts +10 -0
  303. package/projects/sharedcomponents/src/lib/enum/document-email-report.enum.ts +16 -0
  304. package/projects/sharedcomponents/src/lib/enum/domain-multiple-name.enum.ts +11 -0
  305. package/projects/sharedcomponents/src/lib/enum/file-type.ts +12 -0
  306. package/projects/sharedcomponents/src/lib/enum/files-upload-config-objects.ts +25 -0
  307. package/projects/sharedcomponents/src/lib/enum/gauge-color.enum.ts +9 -0
  308. package/projects/sharedcomponents/src/lib/enum/icon.enum.ts +77 -0
  309. package/projects/sharedcomponents/src/lib/enum/internal-param.enum.ts +38 -0
  310. package/projects/sharedcomponents/src/lib/enum/keyboard-code.enum.ts +31 -0
  311. package/projects/sharedcomponents/src/lib/enum/language-code.enum.ts +6 -0
  312. package/projects/sharedcomponents/src/lib/enum/login-component-extra-action-type.enum.ts +4 -0
  313. package/projects/sharedcomponents/src/lib/enum/login-component-page.type.enum.ts +6 -0
  314. package/projects/sharedcomponents/src/lib/enum/login-component-query-variables-name.enum.ts +5 -0
  315. package/projects/sharedcomponents/src/lib/enum/month.enum.ts +15 -0
  316. package/projects/sharedcomponents/src/lib/enum/read-write-access-config-names.enum.ts +5 -0
  317. package/projects/sharedcomponents/src/lib/enum/shared-cfg-name.enum.ts +32 -0
  318. package/projects/sharedcomponents/src/lib/enum/table-name.enum.ts +85 -0
  319. package/projects/sharedcomponents/src/lib/enum/tag-category.enum.ts +20 -0
  320. package/projects/sharedcomponents/src/lib/enum/tags-component-config-names.ts +5 -0
  321. package/projects/sharedcomponents/src/lib/enum/thumb-three-way-state.ts +18 -0
  322. package/projects/sharedcomponents/src/lib/enum/tile-size-type.ts +5 -0
  323. package/projects/sharedcomponents/src/lib/enum/time-period.enum.ts +9 -0
  324. package/projects/sharedcomponents/src/lib/enum/user-form-mode.enum.ts +5 -0
  325. package/projects/sharedcomponents/src/lib/event/co-drag-event.ts +6 -0
  326. package/projects/sharedcomponents/src/lib/event/co-drop-event.ts +12 -0
  327. package/projects/sharedcomponents/src/lib/interface/operation-callback-activity.ts +6 -0
  328. package/projects/sharedcomponents/src/lib/interface/operation-callback-function-with-validation.ts +6 -0
  329. package/projects/sharedcomponents/src/lib/interface/operation-callback-simple-function.ts +4 -0
  330. package/projects/sharedcomponents/src/lib/model/agenda-event-per-day.model.ts +6 -0
  331. package/projects/sharedcomponents/src/lib/model/agenda-event.model.ts +19 -0
  332. package/projects/sharedcomponents/src/lib/model/agenda-null-objects.ts +11 -0
  333. package/projects/sharedcomponents/src/lib/model/constant/all-months.ts +17 -0
  334. package/projects/sharedcomponents/src/lib/model/date-range.ts +10 -0
  335. package/projects/sharedcomponents/src/lib/model/day.model.ts +9 -0
  336. package/projects/sharedcomponents/src/lib/model/icon-svg.ts +77 -0
  337. package/projects/sharedcomponents/src/lib/model/month.model.ts +11 -0
  338. package/projects/sharedcomponents/src/lib/model/send-method.ts +13 -0
  339. package/projects/sharedcomponents/src/lib/model/settings.ts +5 -0
  340. package/projects/sharedcomponents/src/lib/model/tag-tree-item.bo.ts +28 -0
  341. package/projects/sharedcomponents/src/lib/model/time-window.bo.ts +21 -0
  342. package/projects/sharedcomponents/src/lib/model/tree-object.ts +13 -0
  343. package/projects/sharedcomponents/src/lib/model/tree-view-default.model.ts +107 -0
  344. package/projects/sharedcomponents/src/lib/model/tree-view-node-default.model.ts +196 -0
  345. package/projects/sharedcomponents/src/lib/model/tree-view-node-item-options.model.ts +12 -0
  346. package/projects/sharedcomponents/src/lib/model/tree-view-node.model.ts +150 -0
  347. package/projects/sharedcomponents/src/lib/model/tree-view.model.ts +57 -0
  348. package/projects/sharedcomponents/src/lib/model/util/forms-null-object.ts +7 -0
  349. package/projects/sharedcomponents/src/lib/model/week.model.ts +5 -0
  350. package/projects/sharedcomponents/src/lib/model/weekday.model.ts +17 -0
  351. package/projects/sharedcomponents/src/lib/pipe/array-number.pipe.ts +14 -0
  352. package/projects/sharedcomponents/src/lib/pipe/file-type-image.pipe.ts +50 -0
  353. package/projects/sharedcomponents/src/lib/pipe/master-pipes.ts +9 -0
  354. package/projects/sharedcomponents/src/lib/pipe/ucfirst.pipe.ts +14 -0
  355. package/projects/sharedcomponents/src/lib/res/dictionary/dictionaries.ts +7 -0
  356. package/projects/sharedcomponents/src/lib/res/dictionary/text_de.properties.json +1 -0
  357. package/projects/sharedcomponents/src/lib/res/dictionary/text_en.properties.json +1 -0
  358. package/projects/sharedcomponents/src/lib/res/dictionary/text_fr.properties.json +1 -0
  359. package/projects/sharedcomponents/src/lib/res/dictionary/text_nl.properties.json +1 -0
  360. package/projects/sharedcomponents/src/lib/service/app-absolute-overlay-outlet.service.ts +20 -0
  361. package/projects/sharedcomponents/src/lib/service/drag-drop.service.ts +423 -0
  362. package/projects/sharedcomponents/src/lib/service/icon-cache.service.ts +51 -0
  363. package/projects/sharedcomponents/src/lib/service/options.service.ts +43 -0
  364. package/projects/sharedcomponents/src/lib/service/shared-connector.service.ts +863 -0
  365. package/projects/sharedcomponents/src/lib/service/shared-event.service.ts +9 -0
  366. package/projects/sharedcomponents/src/lib/service/shared-initializer.service.ts +44 -0
  367. package/projects/sharedcomponents/src/lib/service/shared.service.ts +244 -0
  368. package/projects/sharedcomponents/src/lib/service/stock.service.ts +124 -0
  369. package/projects/sharedcomponents/src/lib/translation/shared-components-dictionary.service.ts +73 -0
  370. package/projects/sharedcomponents/src/lib/translation/shared-components-translation.module.ts +12 -0
  371. package/projects/sharedcomponents/src/lib/translation/shared-localize.pipe.ts +21 -0
  372. package/projects/sharedcomponents/src/lib/typings/local/fingerprintjs2/index.d.ts +42 -0
  373. package/projects/sharedcomponents/src/lib/utils/array-utils.ts +225 -0
  374. package/projects/sharedcomponents/src/lib/utils/browser-utils.ts +124 -0
  375. package/projects/sharedcomponents/src/lib/utils/calendar.utils.ts +199 -0
  376. package/projects/sharedcomponents/src/lib/utils/check-precision-and-scale-result.ts +5 -0
  377. package/projects/sharedcomponents/src/lib/utils/co-document-shared-field-logic.ts +58 -0
  378. package/projects/sharedcomponents/src/lib/utils/date-utils.ts +302 -0
  379. package/projects/sharedcomponents/src/lib/utils/enum-utils.ts +149 -0
  380. package/projects/sharedcomponents/src/lib/utils/event-utils.ts +70 -0
  381. package/projects/sharedcomponents/src/lib/utils/form-utils.ts +33 -0
  382. package/projects/sharedcomponents/src/lib/utils/function/not-nill.function.ts +4 -0
  383. package/projects/sharedcomponents/src/lib/utils/is-nill.function.ts +4 -0
  384. package/projects/sharedcomponents/src/lib/utils/map-utils.ts +44 -0
  385. package/projects/sharedcomponents/src/lib/utils/number-utils.ts +439 -0
  386. package/projects/sharedcomponents/src/lib/utils/object-utils.ts +310 -0
  387. package/projects/sharedcomponents/src/lib/utils/ref-code-utils.ts +60 -0
  388. package/projects/sharedcomponents/src/lib/utils/string-utils.ts +102 -0
  389. package/projects/sharedcomponents/src/lib/utils/tree-utils.ts +63 -0
  390. package/projects/sharedcomponents/src/public-api.ts +50 -0
  391. package/projects/sharedcomponents/src/test.ts +27 -0
  392. package/projects/sharedcomponents/tsconfig.lib.json +18 -0
  393. package/projects/sharedcomponents/tsconfig.lib.prod.json +10 -0
  394. package/projects/sharedcomponents/tsconfig.spec.json +17 -0
  395. package/script/create-bundle-version.js +19 -0
  396. package/script/create-dictionaries.js +41 -0
  397. package/script/merge-icons.js +39 -0
  398. package/src/app/app-login.component.ts +18 -0
  399. package/src/app/app-module.service.ts +7 -0
  400. package/src/app/app-screen-config.service.ts +13 -0
  401. package/src/app/app.component.scss +31 -0
  402. package/src/app/app.component.spec.ts +31 -0
  403. package/src/app/app.component.ts +798 -0
  404. package/src/app/app.module.ts +100 -0
  405. package/src/app/bundle/index.html +14 -0
  406. package/src/app/bundle/login/login-bundle.component.scss +8 -0
  407. package/src/app/bundle/login/login-bundle.component.ts +150 -0
  408. package/src/app/bundle/login/login-bundle.module.ts +32 -0
  409. package/src/app/bundle/main-login-bundle.ts +11 -0
  410. package/src/app/bundle/polyfills.ts +63 -0
  411. package/src/app/bundle/shared-version.ts +7 -0
  412. package/src/app/test-data.service.ts +230 -0
  413. package/src/assets/.gitkeep +0 -0
  414. package/src/environments/environment.bundle.prod.ts +3 -0
  415. package/src/environments/environment.prod.ts +3 -0
  416. package/src/environments/environment.ts +16 -0
  417. package/src/favicon.ico +0 -0
  418. package/src/index.html +13 -0
  419. package/src/main.ts +12 -0
  420. package/src/polyfills.ts +53 -0
  421. package/src/styles.scss +92 -0
  422. package/src/test.ts +26 -0
  423. package/tsconfig.app.json +15 -0
  424. package/tsconfig.bundle.json +38 -0
  425. package/tsconfig.json +64 -0
  426. package/tsconfig.spec.json +18 -0
  427. package/webpack.login.bundle.config.js +32 -0
  428. package/bundles/colijnit-sharedcomponents.umd.js +0 -17989
  429. package/bundles/colijnit-sharedcomponents.umd.js.map +0 -1
  430. package/colijnit-sharedcomponents.d.ts +0 -143
  431. package/colijnit-sharedcomponents.metadata.json +0 -1
  432. package/esm2015/colijnit-sharedcomponents.js +0 -144
  433. package/esm2015/lib/businessobject/build-images-and-documentation-result.js +0 -2
  434. package/esm2015/lib/businessobject/drag-drop-container-element.js +0 -2
  435. package/esm2015/lib/businessobject/drag-drop-container.js +0 -7
  436. package/esm2015/lib/components/activity-list/activity-list.component.js +0 -192
  437. package/esm2015/lib/components/activity-list/activity-list.module.js +0 -24
  438. package/esm2015/lib/components/activity-list-header/activity-list-header.component.js +0 -67
  439. package/esm2015/lib/components/activity-list-header/activity-list-header.module.js +0 -28
  440. package/esm2015/lib/components/activity-list-header/components/period-filter/period-filter-popup.component.js +0 -55
  441. package/esm2015/lib/components/activity-list-header/components/period-filter/period-filter.component.js +0 -103
  442. package/esm2015/lib/components/activity-list-header/components/period-filter/period-filter.module.js +0 -33
  443. package/esm2015/lib/components/activity-overview-component/component-activity-overview.component.js +0 -215
  444. package/esm2015/lib/components/activity-overview-component/component-activity-overview.module.js +0 -26
  445. package/esm2015/lib/components/activity-overview-component/components/base-activity-overview.component.js +0 -283
  446. package/esm2015/lib/components/app-file-dropzone/app-file-dropzone.component.js +0 -47
  447. package/esm2015/lib/components/app-file-dropzone/app-file-dropzone.module.js +0 -20
  448. package/esm2015/lib/components/custom-pdf/custom-pdf-dialog.component.js +0 -279
  449. package/esm2015/lib/components/custom-pdf/custom-pdf-dialog.module.js +0 -27
  450. package/esm2015/lib/components/date-planning/component/agenda/agenda-base-view.component.js +0 -61
  451. package/esm2015/lib/components/date-planning/component/agenda/agenda-day-view.component.js +0 -36
  452. package/esm2015/lib/components/date-planning/component/agenda/agenda-event.component.js +0 -56
  453. package/esm2015/lib/components/date-planning/component/agenda/agenda-events.component.js +0 -47
  454. package/esm2015/lib/components/date-planning/component/agenda/agenda-half-hour-cell.component.js +0 -68
  455. package/esm2015/lib/components/date-planning/component/agenda/agenda-header.component.js +0 -366
  456. package/esm2015/lib/components/date-planning/component/agenda/agenda-hour-cell.component.js +0 -36
  457. package/esm2015/lib/components/date-planning/component/agenda/agenda-hour-view-labels.component.js +0 -50
  458. package/esm2015/lib/components/date-planning/component/agenda/agenda-hour-view.component.js +0 -46
  459. package/esm2015/lib/components/date-planning/component/agenda/agenda-month-view.component.js +0 -61
  460. package/esm2015/lib/components/date-planning/component/agenda/agenda-select-event.component.js +0 -39
  461. package/esm2015/lib/components/date-planning/component/agenda/agenda-view.component.js +0 -35
  462. package/esm2015/lib/components/date-planning/component/agenda/agenda-week-select-view.component.js +0 -64
  463. package/esm2015/lib/components/date-planning/component/agenda/agenda-week-view.component.js +0 -48
  464. package/esm2015/lib/components/date-planning/component/agenda/view-select.component.js +0 -75
  465. package/esm2015/lib/components/date-planning/component/calendar/calendar-all-months.component.js +0 -34
  466. package/esm2015/lib/components/date-planning/component/calendar/calendar-all-years.component.js +0 -48
  467. package/esm2015/lib/components/date-planning/component/calendar/calendar-header.component.js +0 -107
  468. package/esm2015/lib/components/date-planning/component/calendar/calendar-view.component.js +0 -178
  469. package/esm2015/lib/components/date-planning/component/calendar/calendar.component.js +0 -34
  470. package/esm2015/lib/components/date-planning/date-planning.component.js +0 -116
  471. package/esm2015/lib/components/date-planning/date-planning.module.js +0 -65
  472. package/esm2015/lib/components/docsign/component/signature/signature.component.js +0 -75
  473. package/esm2015/lib/components/docsign/component/signatures/signatures.component.js +0 -44
  474. package/esm2015/lib/components/docsign/docsign.component.js +0 -263
  475. package/esm2015/lib/components/docsign/docsign.module.js +0 -23
  476. package/esm2015/lib/components/email-selector/email-selector.component.js +0 -117
  477. package/esm2015/lib/components/email-selector/email-selector.module.js +0 -32
  478. package/esm2015/lib/components/file-upload/file-upload.component.js +0 -210
  479. package/esm2015/lib/components/file-upload/file-upload.module.js +0 -27
  480. package/esm2015/lib/components/file-upload-popup/file-upload-popup.component.js +0 -404
  481. package/esm2015/lib/components/file-upload-popup/file-upload-popup.module.js +0 -31
  482. package/esm2015/lib/components/files-upload/components/base-file-upload.component.js +0 -468
  483. package/esm2015/lib/components/files-upload/components/drag-drop-container.component.js +0 -115
  484. package/esm2015/lib/components/files-upload/files-upload.component.js +0 -148
  485. package/esm2015/lib/components/files-upload/files-upload.module.js +0 -47
  486. package/esm2015/lib/components/form-builder/form-builder-user-form/components/user-form-input-scale/user-form-input-scale.component.js +0 -98
  487. package/esm2015/lib/components/form-builder/form-builder-user-form/components/user-form-input-scale/user-form-input-scale.module.js +0 -23
  488. package/esm2015/lib/components/form-builder/form-builder-user-form/form-builder-question.component.js +0 -148
  489. package/esm2015/lib/components/form-builder/form-builder-user-form/form-builder-user-form.component.js +0 -266
  490. package/esm2015/lib/components/form-builder/form-builder-user-form/form-builder-user-form.module.js +0 -43
  491. package/esm2015/lib/components/image-display/image-display.component.js +0 -36
  492. package/esm2015/lib/components/image-display/image-display.module.js +0 -23
  493. package/esm2015/lib/components/key-pad/key-pad.component.js +0 -200
  494. package/esm2015/lib/components/key-pad/key-pad.module.js +0 -22
  495. package/esm2015/lib/components/layout-switcher/layout-switcher.component.js +0 -74
  496. package/esm2015/lib/components/layout-switcher/layout-switcher.module.js +0 -21
  497. package/esm2015/lib/components/linear-gauge/co-linear-gauge.component.js +0 -67
  498. package/esm2015/lib/components/linear-gauge/co-linear-gauge.module.js +0 -19
  499. package/esm2015/lib/components/modify-task-form/components/activity-summary-block/activity-summary-block.component.js +0 -100
  500. package/esm2015/lib/components/modify-task-form/components/activity-summary-block/activity-summary-block.module.js +0 -25
  501. package/esm2015/lib/components/modify-task-form/components/base-activity-summary.component.js +0 -131
  502. package/esm2015/lib/components/modify-task-form/components/creation-summary-block/creation-summary-block.component.js +0 -120
  503. package/esm2015/lib/components/modify-task-form/components/creation-summary-block/creation-summary-block.module.js +0 -27
  504. package/esm2015/lib/components/modify-task-form/components/executive-summary-block/executive-summary-block.component.js +0 -88
  505. package/esm2015/lib/components/modify-task-form/components/executive-summary-block/executive-summary-block.module.js +0 -24
  506. package/esm2015/lib/components/modify-task-form/components/notification-summary-block/notification-summary-block.component.js +0 -108
  507. package/esm2015/lib/components/modify-task-form/components/notification-summary-block/notification-summary-block.module.js +0 -28
  508. package/esm2015/lib/components/modify-task-form/components/status-summary-block/status-summary-block.component.js +0 -74
  509. package/esm2015/lib/components/modify-task-form/components/status-summary-block/status-summary-block.module.js +0 -25
  510. package/esm2015/lib/components/modify-task-form/components/task-details/task-details.component.js +0 -105
  511. package/esm2015/lib/components/modify-task-form/components/task-details/task-details.module.js +0 -25
  512. package/esm2015/lib/components/modify-task-form/modify-task-form.component.js +0 -293
  513. package/esm2015/lib/components/modify-task-form/modify-task-form.module.js +0 -40
  514. package/esm2015/lib/components/multi-property-toggler/multiple-property-toggler.component.js +0 -89
  515. package/esm2015/lib/components/multi-property-toggler/multiple-property-toggler.module.js +0 -21
  516. package/esm2015/lib/components/open-activity-list/component-activity-list.component.js +0 -296
  517. package/esm2015/lib/components/open-activity-list/component-activity-list.module.js +0 -30
  518. package/esm2015/lib/components/open-activity-list/components/base-open-activity-list.component.js +0 -266
  519. package/esm2015/lib/components/open-activity-list/components/personal-activity-overview/personal-activity-overview.component.js +0 -41
  520. package/esm2015/lib/components/open-activity-list/components/personal-activity-overview/personal-activity-overview.module..js +0 -19
  521. package/esm2015/lib/components/preferred-planning/preferred-planning.component.js +0 -218
  522. package/esm2015/lib/components/preferred-planning/preferred-planning.module.js +0 -25
  523. package/esm2015/lib/components/preview-pdf-dialog/preview-pdf-dialog.component.js +0 -77
  524. package/esm2015/lib/components/preview-pdf-dialog/preview-pdf-dialog.module.js +0 -26
  525. package/esm2015/lib/components/role-email-selector/role-email-selector.component.js +0 -159
  526. package/esm2015/lib/components/role-email-selector/role-email-selector.module.js +0 -29
  527. package/esm2015/lib/components/send-method-dialog/components/additional-file-button/additional-file-button.component.js +0 -64
  528. package/esm2015/lib/components/send-method-dialog/components/additional-file-button/additional-file-button.module.js +0 -23
  529. package/esm2015/lib/components/send-method-dialog/components/layout-selection/layout-selection.component.js +0 -73
  530. package/esm2015/lib/components/send-method-dialog/components/layout-selection/layout-selection.module.js +0 -24
  531. package/esm2015/lib/components/send-method-dialog/components/printer-selection/printer-selection.component.js +0 -58
  532. package/esm2015/lib/components/send-method-dialog/components/printer-selection/printer-selection.module.js +0 -24
  533. package/esm2015/lib/components/send-method-dialog/components/send-method-combine-print-email/send-method-combine-print-email.component.js +0 -239
  534. package/esm2015/lib/components/send-method-dialog/components/send-method-combine-print-email/send-method-combine-print-email.module.js +0 -28
  535. package/esm2015/lib/components/send-method-dialog/components/send-method-email/send-method-email.component.js +0 -94
  536. package/esm2015/lib/components/send-method-dialog/components/send-method-email/send-method-email.module.js +0 -30
  537. package/esm2015/lib/components/send-method-dialog/components/send-method-pdf/send-method-pdf.component.js +0 -42
  538. package/esm2015/lib/components/send-method-dialog/components/send-method-pdf/send-method-pdf.module.js +0 -25
  539. package/esm2015/lib/components/send-method-dialog/components/send-method-printer/send-method-printer.component.js +0 -163
  540. package/esm2015/lib/components/send-method-dialog/components/send-method-printer/send-method-printer.module.js +0 -36
  541. package/esm2015/lib/components/send-method-dialog/components/signature-button/signature-button.component.js +0 -57
  542. package/esm2015/lib/components/send-method-dialog/components/signature-button/signature-button.module.js +0 -22
  543. package/esm2015/lib/components/send-method-dialog/model/email-address-viewmodel.js +0 -7
  544. package/esm2015/lib/components/send-method-dialog/send-method-dialog.component.js +0 -404
  545. package/esm2015/lib/components/send-method-dialog/send-method-dialog.module.js +0 -39
  546. package/esm2015/lib/components/send-method-dialog/send-method-params.interface.js +0 -2
  547. package/esm2015/lib/components/send-method-dialog/service/send-method.service.js +0 -75
  548. package/esm2015/lib/components/simple-tags/simple-tags.component.js +0 -87
  549. package/esm2015/lib/components/simple-tags/simple-tags.module.js +0 -28
  550. package/esm2015/lib/components/simple-tags-form/simple-tags-form.component.js +0 -196
  551. package/esm2015/lib/components/simple-tags-form/simple-tags-form.module.js +0 -26
  552. package/esm2015/lib/components/statusbar/statusbar-popup.component.js +0 -114
  553. package/esm2015/lib/components/statusbar/statusbar.component.js +0 -86
  554. package/esm2015/lib/components/statusbar/statusbar.module.js +0 -27
  555. package/esm2015/lib/components/stock/base/base-stock.component.js +0 -18
  556. package/esm2015/lib/components/stock/components/allocation-stock-history/allocation-stock-history.component.js +0 -79
  557. package/esm2015/lib/components/stock/components/order-commission-stock-history/order-commission-stock-history.component.js +0 -58
  558. package/esm2015/lib/components/stock/components/order-stock-history/order-stock-history.component.js +0 -58
  559. package/esm2015/lib/components/stock/components/order-stock-tab/order-stock-tab.component.js +0 -58
  560. package/esm2015/lib/components/stock/components/order-supply-stock-history/order-supply-stock-history.component.js +0 -58
  561. package/esm2015/lib/components/stock/components/order-tab/order-tab.component.js +0 -162
  562. package/esm2015/lib/components/stock/components/stock-history/stock-history.component.js +0 -66
  563. package/esm2015/lib/components/stock/components/stock-location/components/stock-location-popup/stock-location-popup.component.js +0 -241
  564. package/esm2015/lib/components/stock/components/stock-location/stock-location.component.js +0 -327
  565. package/esm2015/lib/components/stock/components/stock-prognose/stock-prognose.component.js +0 -73
  566. package/esm2015/lib/components/stock/components/stock-tab/stock-tab.component.js +0 -42
  567. package/esm2015/lib/components/stock/service/stock-module-screen-config.service.js +0 -27
  568. package/esm2015/lib/components/stock/stock-history-tabs/stock-history-tabs.component.js +0 -33
  569. package/esm2015/lib/components/stock/stock-information/stock-information.component.js +0 -76
  570. package/esm2015/lib/components/stock/stock-information-grid/stock-information-grid.component.js +0 -457
  571. package/esm2015/lib/components/stock/stock-tabs/stock-tabs.component.js +0 -173
  572. package/esm2015/lib/components/stock/stock-transfer/co-drop-down-list-fields.interface.js +0 -2
  573. package/esm2015/lib/components/stock/stock-transfer/stock-change-amount.component.js +0 -72
  574. package/esm2015/lib/components/stock/stock-transfer/stock-transfer.component.js +0 -219
  575. package/esm2015/lib/components/stock/stock-transfer-allocated/stock-transfer-allocated.component.js +0 -273
  576. package/esm2015/lib/components/stock/stock.component.js +0 -211
  577. package/esm2015/lib/components/stock/stock.module.js +0 -86
  578. package/esm2015/lib/components/stock-statusbar/stock-statusbar.component.js +0 -23
  579. package/esm2015/lib/components/stock-statusbar/stock-statusbar.module.js +0 -19
  580. package/esm2015/lib/components/tab-bar/tab-bar.component.js +0 -98
  581. package/esm2015/lib/components/tab-bar/tab-bar.module.js +0 -23
  582. package/esm2015/lib/components/tab-bar/tab.interface.js +0 -2
  583. package/esm2015/lib/components/task-creator/task-creator.component.js +0 -410
  584. package/esm2015/lib/components/task-creator/task-creator.module.js +0 -40
  585. package/esm2015/lib/components/task-modifyer/task-modifier.component.js +0 -282
  586. package/esm2015/lib/components/task-modifyer/task-modifyer.module..js +0 -32
  587. package/esm2015/lib/components/tile-renderer/tile-render.component.js +0 -90
  588. package/esm2015/lib/components/tile-renderer/tile-render.module.js +0 -26
  589. package/esm2015/lib/components/workflow-info-tiles/components/workflow-info-tile.component.js +0 -52
  590. package/esm2015/lib/components/workflow-info-tiles/components/workflow-info-tile.module.js +0 -22
  591. package/esm2015/lib/components/workflow-info-tiles/workflow-info-tiles.component.js +0 -60
  592. package/esm2015/lib/components/workflow-info-tiles/workflow-info-tiles.module.js +0 -22
  593. package/esm2015/lib/components/workflow-notification-toggle/workflow-notification-toggle-popup.js +0 -53
  594. package/esm2015/lib/components/workflow-notification-toggle/workflow-notification-toggle.component.js +0 -81
  595. package/esm2015/lib/components/workflow-notification-toggle/workflow-notification-toggle.module.js +0 -34
  596. package/esm2015/lib/decorator/input-boolean.decorator.js +0 -34
  597. package/esm2015/lib/directives/absolute-overlay-template.directive.js +0 -29
  598. package/esm2015/lib/directives/align-with.directive.js +0 -174
  599. package/esm2015/lib/directives/click-outside.directive.js +0 -25
  600. package/esm2015/lib/directives/directives.module.js +0 -22
  601. package/esm2015/lib/enum/activity-cfg-name.enum.js +0 -29
  602. package/esm2015/lib/enum/app-button-type.enum.js +0 -11
  603. package/esm2015/lib/enum/calendar-view.enum.js +0 -12
  604. package/esm2015/lib/enum/document-email-report.enum.js +0 -18
  605. package/esm2015/lib/enum/domain-multiple-name.enum.js +0 -13
  606. package/esm2015/lib/enum/file-type.js +0 -14
  607. package/esm2015/lib/enum/files-upload-config-objects.js +0 -3
  608. package/esm2015/lib/enum/gauge-color.enum.js +0 -11
  609. package/esm2015/lib/enum/icon.enum.js +0 -78
  610. package/esm2015/lib/enum/internal-param.enum.js +0 -38
  611. package/esm2015/lib/enum/keyboard-code.enum.js +0 -33
  612. package/esm2015/lib/enum/language-code.enum.js +0 -8
  613. package/esm2015/lib/enum/month.enum.js +0 -17
  614. package/esm2015/lib/enum/read-write-access-config-names.enum.js +0 -2
  615. package/esm2015/lib/enum/shared-cfg-name.enum.js +0 -19
  616. package/esm2015/lib/enum/table-name.enum.js +0 -86
  617. package/esm2015/lib/enum/tag-category.enum.js +0 -22
  618. package/esm2015/lib/enum/tags-component-config-names.js +0 -2
  619. package/esm2015/lib/enum/thumb-three-way-state.js +0 -19
  620. package/esm2015/lib/enum/tile-size-type.js +0 -7
  621. package/esm2015/lib/enum/time-period.enum.js +0 -11
  622. package/esm2015/lib/enum/user-form-mode.enum.js +0 -7
  623. package/esm2015/lib/event/co-drag-event.js +0 -2
  624. package/esm2015/lib/event/co-drop-event.js +0 -2
  625. package/esm2015/lib/interface/activities-task-config-names.js +0 -2
  626. package/esm2015/lib/interface/key-value-pair.js +0 -2
  627. package/esm2015/lib/interface/operation-callback-activity.js +0 -5
  628. package/esm2015/lib/interface/operation-callback-function-with-validation.js +0 -5
  629. package/esm2015/lib/interface/operation-callback-simple-function.js +0 -4
  630. package/esm2015/lib/model/agenda-event-per-day.model.js +0 -6
  631. package/esm2015/lib/model/agenda-event.model.js +0 -8
  632. package/esm2015/lib/model/agenda-null-objects.js +0 -11
  633. package/esm2015/lib/model/constant/all-months.js +0 -17
  634. package/esm2015/lib/model/date-range.js +0 -5
  635. package/esm2015/lib/model/day.model.js +0 -7
  636. package/esm2015/lib/model/icon-svg.js +0 -77
  637. package/esm2015/lib/model/month.model.js +0 -11
  638. package/esm2015/lib/model/send-method.js +0 -8
  639. package/esm2015/lib/model/settings.js +0 -4
  640. package/esm2015/lib/model/tag-tree-item.bo.js +0 -16
  641. package/esm2015/lib/model/time-window.bo.js +0 -26
  642. package/esm2015/lib/model/tree-object.js +0 -15
  643. package/esm2015/lib/model/util/forms-null-object.js +0 -7
  644. package/esm2015/lib/model/week.model.js +0 -6
  645. package/esm2015/lib/model/weekday.model.js +0 -10
  646. package/esm2015/lib/pipe/array-number.pipe.js +0 -15
  647. package/esm2015/lib/pipe/file-type-image.pipe.js +0 -51
  648. package/esm2015/lib/pipe/master-pipes.js +0 -9
  649. package/esm2015/lib/pipe/ucfirst.pipe.js +0 -16
  650. package/esm2015/lib/res/dictionary/dictionaries.js +0 -9
  651. package/esm2015/lib/service/app-absolute-overlay-outlet.service.js +0 -20
  652. package/esm2015/lib/service/drag-drop.service.js +0 -365
  653. package/esm2015/lib/service/icon-cache.service.js +0 -51
  654. package/esm2015/lib/service/options.service.js +0 -48
  655. package/esm2015/lib/service/shared-connector.service.js +0 -932
  656. package/esm2015/lib/service/shared-event.service.js +0 -15
  657. package/esm2015/lib/service/shared.service.js +0 -252
  658. package/esm2015/lib/service/stock.service.js +0 -109
  659. package/esm2015/lib/translation/shared-components-dictionary.service.js +0 -69
  660. package/esm2015/lib/translation/shared-components-translation.module.js +0 -15
  661. package/esm2015/lib/translation/shared-localize.pipe.js +0 -26
  662. package/esm2015/lib/utils/array-utils.js +0 -202
  663. package/esm2015/lib/utils/browser-utils.js +0 -100
  664. package/esm2015/lib/utils/calendar.utils.js +0 -179
  665. package/esm2015/lib/utils/check-precision-and-scale-result.js +0 -2
  666. package/esm2015/lib/utils/check-within-stepped-bounds-result.js +0 -2
  667. package/esm2015/lib/utils/co-document-shared-field-logic.js +0 -50
  668. package/esm2015/lib/utils/date-utils.js +0 -264
  669. package/esm2015/lib/utils/enum-utils.js +0 -128
  670. package/esm2015/lib/utils/event-utils.js +0 -59
  671. package/esm2015/lib/utils/form-utils.js +0 -32
  672. package/esm2015/lib/utils/function/not-nill.function.js +0 -5
  673. package/esm2015/lib/utils/is-nill.function.js +0 -5
  674. package/esm2015/lib/utils/map-utils.js +0 -41
  675. package/esm2015/lib/utils/number-utils.js +0 -390
  676. package/esm2015/lib/utils/object-utils.js +0 -278
  677. package/esm2015/lib/utils/ref-code-utils.js +0 -49
  678. package/esm2015/lib/utils/string-utils.js +0 -97
  679. package/esm2015/public-api.js +0 -48
  680. package/fesm2015/colijnit-sharedcomponents.js +0 -18716
  681. package/fesm2015/colijnit-sharedcomponents.js.map +0 -1
  682. package/lib/businessobject/build-images-and-documentation-result.d.ts +0 -5
  683. package/lib/businessobject/drag-drop-container-element.d.ts +0 -6
  684. package/lib/businessobject/drag-drop-container.d.ts +0 -6
  685. package/lib/components/activity-list/activity-list.component.d.ts +0 -51
  686. package/lib/components/activity-list/activity-list.module.d.ts +0 -2
  687. package/lib/components/activity-list-header/activity-list-header.component.d.ts +0 -25
  688. package/lib/components/activity-list-header/activity-list-header.module.d.ts +0 -2
  689. package/lib/components/activity-list-header/components/period-filter/period-filter-popup.component.d.ts +0 -11
  690. package/lib/components/activity-list-header/components/period-filter/period-filter.component.d.ts +0 -26
  691. package/lib/components/activity-list-header/components/period-filter/period-filter.module.d.ts +0 -2
  692. package/lib/components/activity-overview-component/component-activity-overview.component.d.ts +0 -24
  693. package/lib/components/activity-overview-component/component-activity-overview.module.d.ts +0 -2
  694. package/lib/components/activity-overview-component/components/base-activity-overview.component.d.ts +0 -81
  695. package/lib/components/app-file-dropzone/app-file-dropzone.component.d.ts +0 -14
  696. package/lib/components/app-file-dropzone/app-file-dropzone.module.d.ts +0 -2
  697. package/lib/components/custom-pdf/custom-pdf-dialog.component.d.ts +0 -41
  698. package/lib/components/custom-pdf/custom-pdf-dialog.module.d.ts +0 -2
  699. package/lib/components/date-planning/component/agenda/agenda-base-view.component.d.ts +0 -21
  700. package/lib/components/date-planning/component/agenda/agenda-day-view.component.d.ts +0 -7
  701. package/lib/components/date-planning/component/agenda/agenda-event.component.d.ts +0 -18
  702. package/lib/components/date-planning/component/agenda/agenda-events.component.d.ts +0 -13
  703. package/lib/components/date-planning/component/agenda/agenda-half-hour-cell.component.d.ts +0 -18
  704. package/lib/components/date-planning/component/agenda/agenda-header.component.d.ts +0 -51
  705. package/lib/components/date-planning/component/agenda/agenda-hour-cell.component.d.ts +0 -9
  706. package/lib/components/date-planning/component/agenda/agenda-hour-view-labels.component.d.ts +0 -8
  707. package/lib/components/date-planning/component/agenda/agenda-hour-view.component.d.ts +0 -7
  708. package/lib/components/date-planning/component/agenda/agenda-month-view.component.d.ts +0 -10
  709. package/lib/components/date-planning/component/agenda/agenda-select-event.component.d.ts +0 -12
  710. package/lib/components/date-planning/component/agenda/agenda-view.component.d.ts +0 -12
  711. package/lib/components/date-planning/component/agenda/agenda-week-select-view.component.d.ts +0 -10
  712. package/lib/components/date-planning/component/agenda/agenda-week-view.component.d.ts +0 -9
  713. package/lib/components/date-planning/component/agenda/view-select.component.d.ts +0 -13
  714. package/lib/components/date-planning/component/calendar/calendar-all-months.component.d.ts +0 -9
  715. package/lib/components/date-planning/component/calendar/calendar-all-years.component.d.ts +0 -9
  716. package/lib/components/date-planning/component/calendar/calendar-header.component.d.ts +0 -23
  717. package/lib/components/date-planning/component/calendar/calendar-view.component.d.ts +0 -31
  718. package/lib/components/date-planning/component/calendar/calendar.component.d.ts +0 -10
  719. package/lib/components/date-planning/date-planning.component.d.ts +0 -29
  720. package/lib/components/date-planning/date-planning.module.d.ts +0 -2
  721. package/lib/components/docsign/component/signature/signature.component.d.ts +0 -16
  722. package/lib/components/docsign/component/signatures/signatures.component.d.ts +0 -12
  723. package/lib/components/docsign/docsign.component.d.ts +0 -99
  724. package/lib/components/docsign/docsign.module.d.ts +0 -2
  725. package/lib/components/email-selector/email-selector.component.d.ts +0 -33
  726. package/lib/components/email-selector/email-selector.module.d.ts +0 -2
  727. package/lib/components/file-upload/file-upload.component.d.ts +0 -49
  728. package/lib/components/file-upload/file-upload.module.d.ts +0 -2
  729. package/lib/components/file-upload-popup/file-upload-popup.component.d.ts +0 -79
  730. package/lib/components/file-upload-popup/file-upload-popup.module.d.ts +0 -2
  731. package/lib/components/files-upload/components/base-file-upload.component.d.ts +0 -98
  732. package/lib/components/files-upload/components/drag-drop-container.component.d.ts +0 -34
  733. package/lib/components/files-upload/files-upload.component.d.ts +0 -32
  734. package/lib/components/files-upload/files-upload.module.d.ts +0 -2
  735. package/lib/components/form-builder/form-builder-user-form/components/user-form-input-scale/user-form-input-scale.component.d.ts +0 -23
  736. package/lib/components/form-builder/form-builder-user-form/components/user-form-input-scale/user-form-input-scale.module.d.ts +0 -2
  737. package/lib/components/form-builder/form-builder-user-form/form-builder-question.component.d.ts +0 -32
  738. package/lib/components/form-builder/form-builder-user-form/form-builder-user-form.component.d.ts +0 -64
  739. package/lib/components/form-builder/form-builder-user-form/form-builder-user-form.module.d.ts +0 -2
  740. package/lib/components/image-display/image-display.component.d.ts +0 -14
  741. package/lib/components/image-display/image-display.module.d.ts +0 -2
  742. package/lib/components/key-pad/key-pad.component.d.ts +0 -38
  743. package/lib/components/key-pad/key-pad.module.d.ts +0 -2
  744. package/lib/components/layout-switcher/layout-switcher.component.d.ts +0 -16
  745. package/lib/components/layout-switcher/layout-switcher.module.d.ts +0 -2
  746. package/lib/components/linear-gauge/co-linear-gauge.component.d.ts +0 -11
  747. package/lib/components/linear-gauge/co-linear-gauge.module.d.ts +0 -2
  748. package/lib/components/modify-task-form/components/activity-summary-block/activity-summary-block.component.d.ts +0 -31
  749. package/lib/components/modify-task-form/components/activity-summary-block/activity-summary-block.module.d.ts +0 -2
  750. package/lib/components/modify-task-form/components/activity-summary-block/style/_layout.scss +0 -160
  751. package/lib/components/modify-task-form/components/base-activity-summary.component.d.ts +0 -51
  752. package/lib/components/modify-task-form/components/creation-summary-block/creation-summary-block.component.d.ts +0 -28
  753. package/lib/components/modify-task-form/components/creation-summary-block/creation-summary-block.module.d.ts +0 -2
  754. package/lib/components/modify-task-form/components/executive-summary-block/executive-summary-block.component.d.ts +0 -24
  755. package/lib/components/modify-task-form/components/executive-summary-block/executive-summary-block.module.d.ts +0 -2
  756. package/lib/components/modify-task-form/components/notification-summary-block/notification-summary-block.component.d.ts +0 -28
  757. package/lib/components/modify-task-form/components/notification-summary-block/notification-summary-block.module.d.ts +0 -2
  758. package/lib/components/modify-task-form/components/status-summary-block/status-summary-block.component.d.ts +0 -17
  759. package/lib/components/modify-task-form/components/status-summary-block/status-summary-block.module.d.ts +0 -2
  760. package/lib/components/modify-task-form/components/task-details/task-details.component.d.ts +0 -23
  761. package/lib/components/modify-task-form/components/task-details/task-details.module.d.ts +0 -2
  762. package/lib/components/modify-task-form/modify-task-form.component.d.ts +0 -56
  763. package/lib/components/modify-task-form/modify-task-form.module.d.ts +0 -2
  764. package/lib/components/multi-property-toggler/multiple-property-toggler.component.d.ts +0 -27
  765. package/lib/components/multi-property-toggler/multiple-property-toggler.module.d.ts +0 -2
  766. package/lib/components/open-activity-list/component-activity-list.component.d.ts +0 -78
  767. package/lib/components/open-activity-list/component-activity-list.module.d.ts +0 -2
  768. package/lib/components/open-activity-list/components/base-open-activity-list.component.d.ts +0 -48
  769. package/lib/components/open-activity-list/components/personal-activity-overview/personal-activity-overview.component.d.ts +0 -4
  770. package/lib/components/open-activity-list/components/personal-activity-overview/personal-activity-overview.module..d.ts +0 -2
  771. package/lib/components/preferred-planning/preferred-planning.component.d.ts +0 -34
  772. package/lib/components/preferred-planning/preferred-planning.module.d.ts +0 -2
  773. package/lib/components/preview-pdf-dialog/preview-pdf-dialog.component.d.ts +0 -18
  774. package/lib/components/preview-pdf-dialog/preview-pdf-dialog.module.d.ts +0 -2
  775. package/lib/components/role-email-selector/role-email-selector.component.d.ts +0 -44
  776. package/lib/components/role-email-selector/role-email-selector.module.d.ts +0 -2
  777. package/lib/components/send-method-dialog/components/additional-file-button/additional-file-button.component.d.ts +0 -22
  778. package/lib/components/send-method-dialog/components/additional-file-button/additional-file-button.module.d.ts +0 -2
  779. package/lib/components/send-method-dialog/components/layout-selection/layout-selection.component.d.ts +0 -20
  780. package/lib/components/send-method-dialog/components/layout-selection/layout-selection.module.d.ts +0 -2
  781. package/lib/components/send-method-dialog/components/printer-selection/printer-selection.component.d.ts +0 -16
  782. package/lib/components/send-method-dialog/components/printer-selection/printer-selection.module.d.ts +0 -2
  783. package/lib/components/send-method-dialog/components/send-method-combine-print-email/send-method-combine-print-email.component.d.ts +0 -53
  784. package/lib/components/send-method-dialog/components/send-method-combine-print-email/send-method-combine-print-email.module.d.ts +0 -2
  785. package/lib/components/send-method-dialog/components/send-method-email/send-method-email.component.d.ts +0 -25
  786. package/lib/components/send-method-dialog/components/send-method-email/send-method-email.module.d.ts +0 -2
  787. package/lib/components/send-method-dialog/components/send-method-pdf/send-method-pdf.component.d.ts +0 -11
  788. package/lib/components/send-method-dialog/components/send-method-pdf/send-method-pdf.module.d.ts +0 -2
  789. package/lib/components/send-method-dialog/components/send-method-printer/send-method-printer.component.d.ts +0 -41
  790. package/lib/components/send-method-dialog/components/send-method-printer/send-method-printer.module.d.ts +0 -2
  791. package/lib/components/send-method-dialog/components/signature-button/signature-button.component.d.ts +0 -16
  792. package/lib/components/send-method-dialog/components/signature-button/signature-button.module.d.ts +0 -2
  793. package/lib/components/send-method-dialog/model/email-address-viewmodel.d.ts +0 -5
  794. package/lib/components/send-method-dialog/send-method-dialog.component.d.ts +0 -103
  795. package/lib/components/send-method-dialog/send-method-dialog.module.d.ts +0 -2
  796. package/lib/components/send-method-dialog/send-method-params.interface.d.ts +0 -13
  797. package/lib/components/send-method-dialog/service/send-method.service.d.ts +0 -29
  798. package/lib/components/simple-tags/simple-tags.component.d.ts +0 -24
  799. package/lib/components/simple-tags/simple-tags.module.d.ts +0 -2
  800. package/lib/components/simple-tags-form/simple-tags-form.component.d.ts +0 -29
  801. package/lib/components/simple-tags-form/simple-tags-form.module.d.ts +0 -2
  802. package/lib/components/statusbar/statusbar-popup.component.d.ts +0 -25
  803. package/lib/components/statusbar/statusbar.component.d.ts +0 -29
  804. package/lib/components/statusbar/statusbar.module.d.ts +0 -2
  805. package/lib/components/stock/base/base-stock.component.d.ts +0 -6
  806. package/lib/components/stock/components/allocation-stock-history/allocation-stock-history.component.d.ts +0 -14
  807. package/lib/components/stock/components/order-commission-stock-history/order-commission-stock-history.component.d.ts +0 -11
  808. package/lib/components/stock/components/order-stock-history/order-stock-history.component.d.ts +0 -11
  809. package/lib/components/stock/components/order-stock-tab/order-stock-tab.component.d.ts +0 -13
  810. package/lib/components/stock/components/order-supply-stock-history/order-supply-stock-history.component.d.ts +0 -11
  811. package/lib/components/stock/components/order-tab/order-tab.component.d.ts +0 -41
  812. package/lib/components/stock/components/stock-history/stock-history.component.d.ts +0 -15
  813. package/lib/components/stock/components/stock-location/components/stock-location-popup/stock-location-popup.component.d.ts +0 -47
  814. package/lib/components/stock/components/stock-location/stock-location.component.d.ts +0 -72
  815. package/lib/components/stock/components/stock-prognose/stock-prognose.component.d.ts +0 -16
  816. package/lib/components/stock/components/stock-tab/stock-tab.component.d.ts +0 -9
  817. package/lib/components/stock/service/stock-module-screen-config.service.d.ts +0 -9
  818. package/lib/components/stock/stock-history-tabs/stock-history-tabs.component.d.ts +0 -7
  819. package/lib/components/stock/stock-information/stock-information.component.d.ts +0 -16
  820. package/lib/components/stock/stock-information-grid/stock-information-grid.component.d.ts +0 -75
  821. package/lib/components/stock/stock-tabs/stock-tabs.component.d.ts +0 -36
  822. package/lib/components/stock/stock-transfer/co-drop-down-list-fields.interface.d.ts +0 -4
  823. package/lib/components/stock/stock-transfer/stock-change-amount.component.d.ts +0 -18
  824. package/lib/components/stock/stock-transfer/stock-transfer.component.d.ts +0 -51
  825. package/lib/components/stock/stock-transfer-allocated/stock-transfer-allocated.component.d.ts +0 -59
  826. package/lib/components/stock/stock.component.d.ts +0 -67
  827. package/lib/components/stock/stock.module.d.ts +0 -2
  828. package/lib/components/stock-statusbar/stock-statusbar.component.d.ts +0 -4
  829. package/lib/components/stock-statusbar/stock-statusbar.module.d.ts +0 -2
  830. package/lib/components/tab-bar/tab-bar.component.d.ts +0 -21
  831. package/lib/components/tab-bar/tab-bar.module.d.ts +0 -2
  832. package/lib/components/tab-bar/tab.interface.d.ts +0 -7
  833. package/lib/components/task-creator/style/_layout.scss +0 -201
  834. package/lib/components/task-creator/task-creator.component.d.ts +0 -91
  835. package/lib/components/task-creator/task-creator.module.d.ts +0 -2
  836. package/lib/components/task-modifyer/task-modifier.component.d.ts +0 -67
  837. package/lib/components/task-modifyer/task-modifyer.module..d.ts +0 -2
  838. package/lib/components/tile-renderer/tile-render.component.d.ts +0 -35
  839. package/lib/components/tile-renderer/tile-render.module.d.ts +0 -2
  840. package/lib/components/workflow-info-tiles/components/workflow-info-tile.component.d.ts +0 -17
  841. package/lib/components/workflow-info-tiles/components/workflow-info-tile.module.d.ts +0 -2
  842. package/lib/components/workflow-info-tiles/workflow-info-tiles.component.d.ts +0 -22
  843. package/lib/components/workflow-info-tiles/workflow-info-tiles.module.d.ts +0 -2
  844. package/lib/components/workflow-notification-toggle/workflow-notification-toggle-popup.d.ts +0 -15
  845. package/lib/components/workflow-notification-toggle/workflow-notification-toggle.component.d.ts +0 -28
  846. package/lib/components/workflow-notification-toggle/workflow-notification-toggle.module.d.ts +0 -2
  847. package/lib/decorator/input-boolean.decorator.d.ts +0 -8
  848. package/lib/directives/absolute-overlay-template.directive.d.ts +0 -9
  849. package/lib/directives/align-with.directive.d.ts +0 -35
  850. package/lib/directives/click-outside.directive.d.ts +0 -7
  851. package/lib/directives/directives.module.d.ts +0 -2
  852. package/lib/enum/activity-cfg-name.enum.d.ts +0 -27
  853. package/lib/enum/app-button-type.enum.d.ts +0 -9
  854. package/lib/enum/calendar-view.enum.d.ts +0 -10
  855. package/lib/enum/document-email-report.enum.d.ts +0 -15
  856. package/lib/enum/domain-multiple-name.enum.d.ts +0 -10
  857. package/lib/enum/file-type.d.ts +0 -7
  858. package/lib/enum/files-upload-config-objects.d.ts +0 -22
  859. package/lib/enum/gauge-color.enum.d.ts +0 -9
  860. package/lib/enum/icon.enum.d.ts +0 -76
  861. package/lib/enum/internal-param.enum.d.ts +0 -34
  862. package/lib/enum/keyboard-code.enum.d.ts +0 -31
  863. package/lib/enum/language-code.enum.d.ts +0 -6
  864. package/lib/enum/month.enum.d.ts +0 -14
  865. package/lib/enum/read-write-access-config-names.enum.d.ts +0 -4
  866. package/lib/enum/shared-cfg-name.enum.d.ts +0 -14
  867. package/lib/enum/table-name.enum.d.ts +0 -84
  868. package/lib/enum/tag-category.enum.d.ts +0 -19
  869. package/lib/enum/tags-component-config-names.d.ts +0 -4
  870. package/lib/enum/thumb-three-way-state.d.ts +0 -6
  871. package/lib/enum/tile-size-type.d.ts +0 -4
  872. package/lib/enum/time-period.enum.d.ts +0 -8
  873. package/lib/enum/user-form-mode.enum.d.ts +0 -4
  874. package/lib/event/co-drag-event.d.ts +0 -5
  875. package/lib/event/co-drop-event.d.ts +0 -8
  876. package/lib/interface/operation-callback-activity.d.ts +0 -5
  877. package/lib/interface/operation-callback-function-with-validation.d.ts +0 -5
  878. package/lib/interface/operation-callback-simple-function.d.ts +0 -4
  879. package/lib/model/agenda-event-per-day.model.d.ts +0 -5
  880. package/lib/model/agenda-event.model.d.ts +0 -17
  881. package/lib/model/agenda-null-objects.d.ts +0 -10
  882. package/lib/model/constant/all-months.d.ts +0 -2
  883. package/lib/model/date-range.d.ts +0 -7
  884. package/lib/model/day.model.d.ts +0 -8
  885. package/lib/model/icon-svg.d.ts +0 -4
  886. package/lib/model/month.model.d.ts +0 -5
  887. package/lib/model/send-method.d.ts +0 -7
  888. package/lib/model/settings.d.ts +0 -3
  889. package/lib/model/tag-tree-item.bo.d.ts +0 -18
  890. package/lib/model/time-window.bo.d.ts +0 -13
  891. package/lib/model/tree-object.d.ts +0 -8
  892. package/lib/model/util/forms-null-object.d.ts +0 -6
  893. package/lib/model/week.model.d.ts +0 -4
  894. package/lib/model/weekday.model.d.ts +0 -16
  895. package/lib/pipe/array-number.pipe.d.ts +0 -4
  896. package/lib/pipe/file-type-image.pipe.d.ts +0 -12
  897. package/lib/pipe/master-pipes.d.ts +0 -1
  898. package/lib/pipe/ucfirst.pipe.d.ts +0 -4
  899. package/lib/res/dictionary/dictionaries.d.ts +0 -31988
  900. package/lib/service/app-absolute-overlay-outlet.service.d.ts +0 -9
  901. package/lib/service/drag-drop.service.d.ts +0 -86
  902. package/lib/service/icon-cache.service.d.ts +0 -18
  903. package/lib/service/options.service.d.ts +0 -13
  904. package/lib/service/shared-connector.service.d.ts +0 -115
  905. package/lib/service/shared-event.service.d.ts +0 -4
  906. package/lib/service/shared.service.d.ts +0 -75
  907. package/lib/service/stock.service.d.ts +0 -39
  908. package/lib/translation/shared-components-dictionary.service.d.ts +0 -19
  909. package/lib/translation/shared-components-translation.module.d.ts +0 -2
  910. package/lib/translation/shared-localize.pipe.d.ts +0 -7
  911. package/lib/utils/array-utils.d.ts +0 -63
  912. package/lib/utils/browser-utils.d.ts +0 -15
  913. package/lib/utils/calendar.utils.d.ts +0 -14
  914. package/lib/utils/check-precision-and-scale-result.d.ts +0 -4
  915. package/lib/utils/co-document-shared-field-logic.d.ts +0 -7
  916. package/lib/utils/date-utils.d.ts +0 -44
  917. package/lib/utils/enum-utils.d.ts +0 -31
  918. package/lib/utils/event-utils.d.ts +0 -12
  919. package/lib/utils/form-utils.d.ts +0 -5
  920. package/lib/utils/function/not-nill.function.d.ts +0 -1
  921. package/lib/utils/is-nill.function.d.ts +0 -1
  922. package/lib/utils/map-utils.d.ts +0 -16
  923. package/lib/utils/number-utils.d.ts +0 -125
  924. package/lib/utils/object-utils.d.ts +0 -40
  925. package/lib/utils/ref-code-utils.d.ts +0 -10
  926. package/lib/utils/string-utils.d.ts +0 -39
  927. package/public-api.d.ts +0 -44
  928. /package/{lib → projects/sharedcomponents/src/lib}/components/access/read-write-access.scss +0 -0
  929. /package/{lib → projects/sharedcomponents/src/lib}/components/access/style/_layout.scss +0 -0
  930. /package/{lib → projects/sharedcomponents/src/lib}/components/access/style/_material-definition.scss +0 -0
  931. /package/{lib → projects/sharedcomponents/src/lib}/components/access/style/_theme.scss +0 -0
  932. /package/{lib → projects/sharedcomponents/src/lib}/components/access/style/material.scss +0 -0
  933. /package/{lib → projects/sharedcomponents/src/lib}/components/activity-list/style/_layout.scss +0 -0
  934. /package/{lib → projects/sharedcomponents/src/lib}/components/activity-list/style/_material-definition.scss +0 -0
  935. /package/{lib → projects/sharedcomponents/src/lib}/components/activity-list/style/_theme.scss +0 -0
  936. /package/{lib → projects/sharedcomponents/src/lib}/components/activity-list/style/material.scss +0 -0
  937. /package/{lib → projects/sharedcomponents/src/lib}/components/activity-list-header/components/period-filter/style/_layout.scss +0 -0
  938. /package/{lib → projects/sharedcomponents/src/lib}/components/activity-list-header/components/period-filter/style/_material-definition.scss +0 -0
  939. /package/{lib → projects/sharedcomponents/src/lib}/components/activity-list-header/components/period-filter/style/_theme.scss +0 -0
  940. /package/{lib → projects/sharedcomponents/src/lib}/components/activity-list-header/components/period-filter/style/material.scss +0 -0
  941. /package/{lib → projects/sharedcomponents/src/lib}/components/activity-list-header/style/_layout.scss +0 -0
  942. /package/{lib → projects/sharedcomponents/src/lib}/components/activity-list-header/style/_material-definition.scss +0 -0
  943. /package/{lib → projects/sharedcomponents/src/lib}/components/activity-list-header/style/_theme.scss +0 -0
  944. /package/{lib → projects/sharedcomponents/src/lib}/components/activity-list-header/style/material.scss +0 -0
  945. /package/{lib → projects/sharedcomponents/src/lib}/components/activity-overview-component/style/_layout.scss +0 -0
  946. /package/{lib → projects/sharedcomponents/src/lib}/components/activity-overview-component/style/_material-definition.scss +0 -0
  947. /package/{lib → projects/sharedcomponents/src/lib}/components/activity-overview-component/style/_theme.scss +0 -0
  948. /package/{lib → projects/sharedcomponents/src/lib}/components/activity-overview-component/style/material.scss +0 -0
  949. /package/{lib → projects/sharedcomponents/src/lib}/components/app-file-dropzone/style/_layout.scss +0 -0
  950. /package/{lib → projects/sharedcomponents/src/lib}/components/app-file-dropzone/style/_material-definition.scss +0 -0
  951. /package/{lib → projects/sharedcomponents/src/lib}/components/app-file-dropzone/style/_theme.scss +0 -0
  952. /package/{lib → projects/sharedcomponents/src/lib}/components/app-file-dropzone/style/material.scss +0 -0
  953. /package/{lib → projects/sharedcomponents/src/lib}/components/custom-pdf/style/_layout.scss +0 -0
  954. /package/{lib → projects/sharedcomponents/src/lib}/components/custom-pdf/style/_material-definition.scss +0 -0
  955. /package/{lib → projects/sharedcomponents/src/lib}/components/custom-pdf/style/_theme.scss +0 -0
  956. /package/{lib → projects/sharedcomponents/src/lib}/components/custom-pdf/style/material.scss +0 -0
  957. /package/{lib → projects/sharedcomponents/src/lib}/components/date-planning/component/agenda/style/_layout.scss +0 -0
  958. /package/{lib → projects/sharedcomponents/src/lib}/components/date-planning/component/agenda/style/_material-definition.scss +0 -0
  959. /package/{lib → projects/sharedcomponents/src/lib}/components/date-planning/component/agenda/style/_theme.scss +0 -0
  960. /package/{lib → projects/sharedcomponents/src/lib}/components/date-planning/component/agenda/style/material.scss +0 -0
  961. /package/{lib → projects/sharedcomponents/src/lib}/components/date-planning/component/calendar/style/_layout.scss +0 -0
  962. /package/{lib → projects/sharedcomponents/src/lib}/components/date-planning/component/calendar/style/_material-definition.scss +0 -0
  963. /package/{lib → projects/sharedcomponents/src/lib}/components/date-planning/component/calendar/style/_theme.scss +0 -0
  964. /package/{lib → projects/sharedcomponents/src/lib}/components/date-planning/component/calendar/style/material.scss +0 -0
  965. /package/{lib → projects/sharedcomponents/src/lib}/components/date-planning/style/_layout.scss +0 -0
  966. /package/{lib → projects/sharedcomponents/src/lib}/components/date-planning/style/_material-definition.scss +0 -0
  967. /package/{lib → projects/sharedcomponents/src/lib}/components/date-planning/style/_theme.scss +0 -0
  968. /package/{lib → projects/sharedcomponents/src/lib}/components/date-planning/style/material.scss +0 -0
  969. /package/{lib → projects/sharedcomponents/src/lib}/components/docsign/component/signature/style/_layout.scss +0 -0
  970. /package/{lib → projects/sharedcomponents/src/lib}/components/docsign/component/signature/style/_material-definition.scss +0 -0
  971. /package/{lib → projects/sharedcomponents/src/lib}/components/docsign/component/signature/style/_theme.scss +0 -0
  972. /package/{lib → projects/sharedcomponents/src/lib}/components/docsign/component/signature/style/material.scss +0 -0
  973. /package/{lib → projects/sharedcomponents/src/lib}/components/docsign/component/signatures/style/_layout.scss +0 -0
  974. /package/{lib → projects/sharedcomponents/src/lib}/components/docsign/component/signatures/style/_material-definition.scss +0 -0
  975. /package/{lib → projects/sharedcomponents/src/lib}/components/docsign/component/signatures/style/_theme.scss +0 -0
  976. /package/{lib → projects/sharedcomponents/src/lib}/components/docsign/component/signatures/style/material.scss +0 -0
  977. /package/{lib → projects/sharedcomponents/src/lib}/components/docsign/style/_layout.scss +0 -0
  978. /package/{lib → projects/sharedcomponents/src/lib}/components/docsign/style/_material-definition.scss +0 -0
  979. /package/{lib → projects/sharedcomponents/src/lib}/components/docsign/style/_theme.scss +0 -0
  980. /package/{lib → projects/sharedcomponents/src/lib}/components/docsign/style/material.scss +0 -0
  981. /package/{lib → projects/sharedcomponents/src/lib}/components/email-selector/style/_layout.scss +0 -0
  982. /package/{lib → projects/sharedcomponents/src/lib}/components/email-selector/style/_material-definition.scss +0 -0
  983. /package/{lib → projects/sharedcomponents/src/lib}/components/email-selector/style/_theme.scss +0 -0
  984. /package/{lib → projects/sharedcomponents/src/lib}/components/email-selector/style/material.scss +0 -0
  985. /package/{lib → projects/sharedcomponents/src/lib}/components/file-upload/style/_layout.scss +0 -0
  986. /package/{lib → projects/sharedcomponents/src/lib}/components/file-upload/style/_material-definition.scss +0 -0
  987. /package/{lib → projects/sharedcomponents/src/lib}/components/file-upload/style/_theme.scss +0 -0
  988. /package/{lib → projects/sharedcomponents/src/lib}/components/file-upload/style/material.scss +0 -0
  989. /package/{lib → projects/sharedcomponents/src/lib}/components/file-upload-popup/style/_layout.scss +0 -0
  990. /package/{lib → projects/sharedcomponents/src/lib}/components/file-upload-popup/style/_material-definition.scss +0 -0
  991. /package/{lib → projects/sharedcomponents/src/lib}/components/file-upload-popup/style/_theme.scss +0 -0
  992. /package/{lib → projects/sharedcomponents/src/lib}/components/file-upload-popup/style/material.scss +0 -0
  993. /package/{lib → projects/sharedcomponents/src/lib}/components/files-upload/style/_layout.scss +0 -0
  994. /package/{lib → projects/sharedcomponents/src/lib}/components/files-upload/style/_material-definition.scss +0 -0
  995. /package/{lib → projects/sharedcomponents/src/lib}/components/files-upload/style/_theme.scss +0 -0
  996. /package/{lib → projects/sharedcomponents/src/lib}/components/files-upload/style/material.scss +0 -0
  997. /package/{lib → projects/sharedcomponents/src/lib}/components/form-builder/form-builder-user-form/components/forms-test-component/style/_layout.component.ts.child.3.scss +0 -0
  998. /package/{lib → projects/sharedcomponents/src/lib}/components/form-builder/form-builder-user-form/components/forms-test-component/style/_material-definition.component.ts.child.0.scss +0 -0
  999. /package/{lib → projects/sharedcomponents/src/lib}/components/form-builder/form-builder-user-form/components/forms-test-component/style/_theme.component.ts.child.2.scss +0 -0
  1000. /package/{lib → projects/sharedcomponents/src/lib}/components/form-builder/form-builder-user-form/components/forms-test-component/style/material.component.ts.child.1.scss +0 -0
  1001. /package/{lib → projects/sharedcomponents/src/lib}/components/form-builder/form-builder-user-form/components/user-form-input-scale/style/_layout.scss +0 -0
  1002. /package/{lib → projects/sharedcomponents/src/lib}/components/form-builder/form-builder-user-form/components/user-form-input-scale/style/_material-definition.scss +0 -0
  1003. /package/{lib → projects/sharedcomponents/src/lib}/components/form-builder/form-builder-user-form/components/user-form-input-scale/style/_theme.scss +0 -0
  1004. /package/{lib → projects/sharedcomponents/src/lib}/components/form-builder/form-builder-user-form/components/user-form-input-scale/style/material.scss +0 -0
  1005. /package/{lib → projects/sharedcomponents/src/lib}/components/form-builder/form-builder-user-form/style/_layout.scss +0 -0
  1006. /package/{lib → projects/sharedcomponents/src/lib}/components/form-builder/form-builder-user-form/style/_material-definition.scss +0 -0
  1007. /package/{lib → projects/sharedcomponents/src/lib}/components/form-builder/form-builder-user-form/style/_theme.scss +0 -0
  1008. /package/{lib → projects/sharedcomponents/src/lib}/components/form-builder/form-builder-user-form/style/material.scss +0 -0
  1009. /package/{lib → projects/sharedcomponents/src/lib}/components/image-display/style/_layout.scss +0 -0
  1010. /package/{lib → projects/sharedcomponents/src/lib}/components/image-display/style/_material-definition.scss +0 -0
  1011. /package/{lib → projects/sharedcomponents/src/lib}/components/image-display/style/_theme.scss +0 -0
  1012. /package/{lib → projects/sharedcomponents/src/lib}/components/image-display/style/material.scss +0 -0
  1013. /package/{lib → projects/sharedcomponents/src/lib}/components/key-pad/style/_layout.scss +0 -0
  1014. /package/{lib → projects/sharedcomponents/src/lib}/components/key-pad/style/_material-definition.scss +0 -0
  1015. /package/{lib → projects/sharedcomponents/src/lib}/components/key-pad/style/_theme.scss +0 -0
  1016. /package/{lib → projects/sharedcomponents/src/lib}/components/key-pad/style/material.scss +0 -0
  1017. /package/{lib → projects/sharedcomponents/src/lib}/components/layout-switcher/style/_layout.scss +0 -0
  1018. /package/{lib → projects/sharedcomponents/src/lib}/components/layout-switcher/style/_material-definition.scss +0 -0
  1019. /package/{lib → projects/sharedcomponents/src/lib}/components/layout-switcher/style/_theme.scss +0 -0
  1020. /package/{lib → projects/sharedcomponents/src/lib}/components/layout-switcher/style/material.scss +0 -0
  1021. /package/{lib → projects/sharedcomponents/src/lib}/components/linear-gauge/style/_layout.scss +0 -0
  1022. /package/{lib → projects/sharedcomponents/src/lib}/components/linear-gauge/style/_material-definition.scss +0 -0
  1023. /package/{lib → projects/sharedcomponents/src/lib}/components/linear-gauge/style/_theme.scss +0 -0
  1024. /package/{lib → projects/sharedcomponents/src/lib}/components/linear-gauge/style/material.scss +0 -0
  1025. /package/{lib → projects/sharedcomponents/src/lib}/components/login/components/input-code/style/_layout.scss +0 -0
  1026. /package/{lib → projects/sharedcomponents/src/lib}/components/login/components/input-code/style/_material-definition.scss +0 -0
  1027. /package/{lib → projects/sharedcomponents/src/lib}/components/login/components/input-code/style/_theme.scss +0 -0
  1028. /package/{lib → projects/sharedcomponents/src/lib}/components/login/components/input-code/style/material.scss +0 -0
  1029. /package/{lib → projects/sharedcomponents/src/lib}/components/login/style/_layout.scss +0 -0
  1030. /package/{lib → projects/sharedcomponents/src/lib}/components/login/style/_material-definition.scss +0 -0
  1031. /package/{lib → projects/sharedcomponents/src/lib}/components/login/style/_theme.scss +0 -0
  1032. /package/{lib → projects/sharedcomponents/src/lib}/components/login/style/material.scss +0 -0
  1033. /package/{lib → projects/sharedcomponents/src/lib}/components/modify-task-form/components/activity-summary-block/style/_material-definition.scss +0 -0
  1034. /package/{lib → projects/sharedcomponents/src/lib}/components/modify-task-form/components/activity-summary-block/style/_theme.scss +0 -0
  1035. /package/{lib → projects/sharedcomponents/src/lib}/components/modify-task-form/components/activity-summary-block/style/material.scss +0 -0
  1036. /package/{lib → projects/sharedcomponents/src/lib}/components/modify-task-form/components/creation-summary-block/style/_layout.scss +0 -0
  1037. /package/{lib → projects/sharedcomponents/src/lib}/components/modify-task-form/components/creation-summary-block/style/_material-definition.scss +0 -0
  1038. /package/{lib → projects/sharedcomponents/src/lib}/components/modify-task-form/components/creation-summary-block/style/_theme.scss +0 -0
  1039. /package/{lib → projects/sharedcomponents/src/lib}/components/modify-task-form/components/creation-summary-block/style/material.scss +0 -0
  1040. /package/{lib → projects/sharedcomponents/src/lib}/components/modify-task-form/components/executive-summary-block/style/_layout.scss +0 -0
  1041. /package/{lib → projects/sharedcomponents/src/lib}/components/modify-task-form/components/executive-summary-block/style/_material-definition.scss +0 -0
  1042. /package/{lib → projects/sharedcomponents/src/lib}/components/modify-task-form/components/executive-summary-block/style/_theme.scss +0 -0
  1043. /package/{lib → projects/sharedcomponents/src/lib}/components/modify-task-form/components/executive-summary-block/style/material.scss +0 -0
  1044. /package/{lib → projects/sharedcomponents/src/lib}/components/modify-task-form/components/notification-summary-block/style/_layout.scss +0 -0
  1045. /package/{lib → projects/sharedcomponents/src/lib}/components/modify-task-form/components/notification-summary-block/style/_material-definition.scss +0 -0
  1046. /package/{lib → projects/sharedcomponents/src/lib}/components/modify-task-form/components/notification-summary-block/style/_theme.scss +0 -0
  1047. /package/{lib → projects/sharedcomponents/src/lib}/components/modify-task-form/components/notification-summary-block/style/material.scss +0 -0
  1048. /package/{lib → projects/sharedcomponents/src/lib}/components/modify-task-form/components/status-summary-block/style/_layout.scss +0 -0
  1049. /package/{lib → projects/sharedcomponents/src/lib}/components/modify-task-form/components/status-summary-block/style/_material-definition.scss +0 -0
  1050. /package/{lib → projects/sharedcomponents/src/lib}/components/modify-task-form/components/status-summary-block/style/_theme.scss +0 -0
  1051. /package/{lib → projects/sharedcomponents/src/lib}/components/modify-task-form/components/status-summary-block/style/material.scss +0 -0
  1052. /package/{lib → projects/sharedcomponents/src/lib}/components/modify-task-form/components/task-details/style/_layout.scss +0 -0
  1053. /package/{lib → projects/sharedcomponents/src/lib}/components/modify-task-form/components/task-details/style/_material-definition.scss +0 -0
  1054. /package/{lib → projects/sharedcomponents/src/lib}/components/modify-task-form/components/task-details/style/_theme.scss +0 -0
  1055. /package/{lib → projects/sharedcomponents/src/lib}/components/modify-task-form/components/task-details/style/material.scss +0 -0
  1056. /package/{lib → projects/sharedcomponents/src/lib}/components/modify-task-form/style/_layout.scss +0 -0
  1057. /package/{lib → projects/sharedcomponents/src/lib}/components/modify-task-form/style/_material-definition.scss +0 -0
  1058. /package/{lib → projects/sharedcomponents/src/lib}/components/modify-task-form/style/_theme.scss +0 -0
  1059. /package/{lib → projects/sharedcomponents/src/lib}/components/modify-task-form/style/material.scss +0 -0
  1060. /package/{lib → projects/sharedcomponents/src/lib}/components/multi-property-toggler/style/_layout.scss +0 -0
  1061. /package/{lib → projects/sharedcomponents/src/lib}/components/multi-property-toggler/style/_material-definition.scss +0 -0
  1062. /package/{lib → projects/sharedcomponents/src/lib}/components/multi-property-toggler/style/_theme.scss +0 -0
  1063. /package/{lib → projects/sharedcomponents/src/lib}/components/multi-property-toggler/style/material.scss +0 -0
  1064. /package/{lib → projects/sharedcomponents/src/lib}/components/open-activity-list/components/personal-activity-overview/style/_layout.scss +0 -0
  1065. /package/{lib → projects/sharedcomponents/src/lib}/components/open-activity-list/components/personal-activity-overview/style/_material-definition.scss +0 -0
  1066. /package/{lib → projects/sharedcomponents/src/lib}/components/open-activity-list/components/personal-activity-overview/style/_theme.scss +0 -0
  1067. /package/{lib → projects/sharedcomponents/src/lib}/components/open-activity-list/components/personal-activity-overview/style/material.scss +0 -0
  1068. /package/{lib → projects/sharedcomponents/src/lib}/components/open-activity-list/style/_layout.scss +0 -0
  1069. /package/{lib → projects/sharedcomponents/src/lib}/components/open-activity-list/style/_material-definition.scss +0 -0
  1070. /package/{lib → projects/sharedcomponents/src/lib}/components/open-activity-list/style/_theme.scss +0 -0
  1071. /package/{lib → projects/sharedcomponents/src/lib}/components/open-activity-list/style/material.scss +0 -0
  1072. /package/{lib → projects/sharedcomponents/src/lib}/components/preferred-planning/style/_layout.scss +0 -0
  1073. /package/{lib → projects/sharedcomponents/src/lib}/components/preferred-planning/style/_material-definition.scss +0 -0
  1074. /package/{lib → projects/sharedcomponents/src/lib}/components/preferred-planning/style/_theme.scss +0 -0
  1075. /package/{lib → projects/sharedcomponents/src/lib}/components/preferred-planning/style/material.scss +0 -0
  1076. /package/{lib → projects/sharedcomponents/src/lib}/components/preview-pdf-dialog/style/_layout.scss +0 -0
  1077. /package/{lib → projects/sharedcomponents/src/lib}/components/preview-pdf-dialog/style/_material-definition.scss +0 -0
  1078. /package/{lib → projects/sharedcomponents/src/lib}/components/preview-pdf-dialog/style/_theme.scss +0 -0
  1079. /package/{lib → projects/sharedcomponents/src/lib}/components/preview-pdf-dialog/style/material.scss +0 -0
  1080. /package/{lib → projects/sharedcomponents/src/lib}/components/role-email-selector/style/_layout.scss +0 -0
  1081. /package/{lib → projects/sharedcomponents/src/lib}/components/role-email-selector/style/_material-definition.scss +0 -0
  1082. /package/{lib → projects/sharedcomponents/src/lib}/components/role-email-selector/style/_theme.scss +0 -0
  1083. /package/{lib → projects/sharedcomponents/src/lib}/components/role-email-selector/style/material.scss +0 -0
  1084. /package/{lib → projects/sharedcomponents/src/lib}/components/screen-config-generator/style/_layout.scss +0 -0
  1085. /package/{lib → projects/sharedcomponents/src/lib}/components/screen-config-generator/style/_material-definition.scss +0 -0
  1086. /package/{lib → projects/sharedcomponents/src/lib}/components/screen-config-generator/style/_theme.scss +0 -0
  1087. /package/{lib → projects/sharedcomponents/src/lib}/components/screen-config-generator/style/material.scss +0 -0
  1088. /package/{lib → projects/sharedcomponents/src/lib}/components/send-method-dialog/components/additional-file-button/style/_layout.scss +0 -0
  1089. /package/{lib → projects/sharedcomponents/src/lib}/components/send-method-dialog/components/additional-file-button/style/_material-definition.scss +0 -0
  1090. /package/{lib → projects/sharedcomponents/src/lib}/components/send-method-dialog/components/additional-file-button/style/_theme.scss +0 -0
  1091. /package/{lib → projects/sharedcomponents/src/lib}/components/send-method-dialog/components/additional-file-button/style/material.scss +0 -0
  1092. /package/{lib → projects/sharedcomponents/src/lib}/components/send-method-dialog/components/layout-selection/style/_layout.scss +0 -0
  1093. /package/{lib → projects/sharedcomponents/src/lib}/components/send-method-dialog/components/layout-selection/style/_material-definition.scss +0 -0
  1094. /package/{lib → projects/sharedcomponents/src/lib}/components/send-method-dialog/components/layout-selection/style/_theme.scss +0 -0
  1095. /package/{lib → projects/sharedcomponents/src/lib}/components/send-method-dialog/components/layout-selection/style/material.scss +0 -0
  1096. /package/{lib → projects/sharedcomponents/src/lib}/components/send-method-dialog/components/printer-selection/style/_layout.scss +0 -0
  1097. /package/{lib → projects/sharedcomponents/src/lib}/components/send-method-dialog/components/printer-selection/style/_material-definition.scss +0 -0
  1098. /package/{lib → projects/sharedcomponents/src/lib}/components/send-method-dialog/components/printer-selection/style/_theme.scss +0 -0
  1099. /package/{lib → projects/sharedcomponents/src/lib}/components/send-method-dialog/components/printer-selection/style/material.scss +0 -0
  1100. /package/{lib → projects/sharedcomponents/src/lib}/components/send-method-dialog/components/send-method-combine-print-email/style/_layout.scss +0 -0
  1101. /package/{lib → projects/sharedcomponents/src/lib}/components/send-method-dialog/components/send-method-combine-print-email/style/_material-definition.scss +0 -0
  1102. /package/{lib → projects/sharedcomponents/src/lib}/components/send-method-dialog/components/send-method-combine-print-email/style/_theme.scss +0 -0
  1103. /package/{lib → projects/sharedcomponents/src/lib}/components/send-method-dialog/components/send-method-combine-print-email/style/material.scss +0 -0
  1104. /package/{lib → projects/sharedcomponents/src/lib}/components/send-method-dialog/components/send-method-email/style/_layout.scss +0 -0
  1105. /package/{lib → projects/sharedcomponents/src/lib}/components/send-method-dialog/components/send-method-email/style/_material-definition.scss +0 -0
  1106. /package/{lib → projects/sharedcomponents/src/lib}/components/send-method-dialog/components/send-method-email/style/_theme.scss +0 -0
  1107. /package/{lib → projects/sharedcomponents/src/lib}/components/send-method-dialog/components/send-method-email/style/material.scss +0 -0
  1108. /package/{lib → projects/sharedcomponents/src/lib}/components/send-method-dialog/components/send-method-pdf/style/_layout.scss +0 -0
  1109. /package/{lib → projects/sharedcomponents/src/lib}/components/send-method-dialog/components/send-method-pdf/style/_material-definition.scss +0 -0
  1110. /package/{lib → projects/sharedcomponents/src/lib}/components/send-method-dialog/components/send-method-pdf/style/_theme.scss +0 -0
  1111. /package/{lib → projects/sharedcomponents/src/lib}/components/send-method-dialog/components/send-method-pdf/style/material.scss +0 -0
  1112. /package/{lib → projects/sharedcomponents/src/lib}/components/send-method-dialog/components/send-method-printer/style/_layout.scss +0 -0
  1113. /package/{lib → projects/sharedcomponents/src/lib}/components/send-method-dialog/components/send-method-printer/style/_material-definition.scss +0 -0
  1114. /package/{lib → projects/sharedcomponents/src/lib}/components/send-method-dialog/components/send-method-printer/style/_theme.scss +0 -0
  1115. /package/{lib → projects/sharedcomponents/src/lib}/components/send-method-dialog/components/send-method-printer/style/material.scss +0 -0
  1116. /package/{lib → projects/sharedcomponents/src/lib}/components/send-method-dialog/components/signature-button/style/_layout.scss +0 -0
  1117. /package/{lib → projects/sharedcomponents/src/lib}/components/send-method-dialog/components/signature-button/style/_material-definition.scss +0 -0
  1118. /package/{lib → projects/sharedcomponents/src/lib}/components/send-method-dialog/components/signature-button/style/_theme.scss +0 -0
  1119. /package/{lib → projects/sharedcomponents/src/lib}/components/send-method-dialog/components/signature-button/style/material.scss +0 -0
  1120. /package/{lib → projects/sharedcomponents/src/lib}/components/send-method-dialog/style/_layout.scss +0 -0
  1121. /package/{lib → projects/sharedcomponents/src/lib}/components/send-method-dialog/style/_material-definition.scss +0 -0
  1122. /package/{lib → projects/sharedcomponents/src/lib}/components/send-method-dialog/style/_theme.scss +0 -0
  1123. /package/{lib → projects/sharedcomponents/src/lib}/components/send-method-dialog/style/material.scss +0 -0
  1124. /package/{lib → projects/sharedcomponents/src/lib}/components/simple-tags/style/_layout.scss +0 -0
  1125. /package/{lib → projects/sharedcomponents/src/lib}/components/simple-tags/style/_material-definition.scss +0 -0
  1126. /package/{lib → projects/sharedcomponents/src/lib}/components/simple-tags/style/_theme.scss +0 -0
  1127. /package/{lib → projects/sharedcomponents/src/lib}/components/simple-tags/style/material.scss +0 -0
  1128. /package/{lib → projects/sharedcomponents/src/lib}/components/simple-tags-form/style/_layout.scss +0 -0
  1129. /package/{lib → projects/sharedcomponents/src/lib}/components/simple-tags-form/style/_material-definition.scss +0 -0
  1130. /package/{lib → projects/sharedcomponents/src/lib}/components/simple-tags-form/style/_theme.scss +0 -0
  1131. /package/{lib → projects/sharedcomponents/src/lib}/components/simple-tags-form/style/material.scss +0 -0
  1132. /package/{lib → projects/sharedcomponents/src/lib}/components/statusbar/style/_layout.scss +0 -0
  1133. /package/{lib → projects/sharedcomponents/src/lib}/components/statusbar/style/_material-definition.scss +0 -0
  1134. /package/{lib → projects/sharedcomponents/src/lib}/components/statusbar/style/_theme.scss +0 -0
  1135. /package/{lib → projects/sharedcomponents/src/lib}/components/statusbar/style/material.scss +0 -0
  1136. /package/{lib → projects/sharedcomponents/src/lib}/components/stock/style/_layout.scss +0 -0
  1137. /package/{lib → projects/sharedcomponents/src/lib}/components/stock/style/_material-definition.scss +0 -0
  1138. /package/{lib → projects/sharedcomponents/src/lib}/components/stock/style/_theme.scss +0 -0
  1139. /package/{lib → projects/sharedcomponents/src/lib}/components/stock/style/material.scss +0 -0
  1140. /package/{lib → projects/sharedcomponents/src/lib}/components/stock-statusbar/style/_layout.scss +0 -0
  1141. /package/{lib → projects/sharedcomponents/src/lib}/components/stock-statusbar/style/_material-definition.scss +0 -0
  1142. /package/{lib → projects/sharedcomponents/src/lib}/components/stock-statusbar/style/_theme.scss +0 -0
  1143. /package/{lib → projects/sharedcomponents/src/lib}/components/stock-statusbar/style/material.scss +0 -0
  1144. /package/{lib → projects/sharedcomponents/src/lib}/components/tab-bar/style/_layout.scss +0 -0
  1145. /package/{lib → projects/sharedcomponents/src/lib}/components/tab-bar/style/_material-definition.scss +0 -0
  1146. /package/{lib → projects/sharedcomponents/src/lib}/components/tab-bar/style/_theme.scss +0 -0
  1147. /package/{lib → projects/sharedcomponents/src/lib}/components/tab-bar/style/material.scss +0 -0
  1148. /package/{lib → projects/sharedcomponents/src/lib}/components/tags/component/style/_layout.scss +0 -0
  1149. /package/{lib → projects/sharedcomponents/src/lib}/components/tags/component/style/_material-definition.scss +0 -0
  1150. /package/{lib → projects/sharedcomponents/src/lib}/components/tags/component/style/_theme.scss +0 -0
  1151. /package/{lib → projects/sharedcomponents/src/lib}/components/tags/component/style/material.scss +0 -0
  1152. /package/{lib → projects/sharedcomponents/src/lib}/components/tags/component/tag-join-label/style/_layout.scss +0 -0
  1153. /package/{lib → projects/sharedcomponents/src/lib}/components/tags/component/tag-join-label/style/_material-definition.scss +0 -0
  1154. /package/{lib → projects/sharedcomponents/src/lib}/components/tags/component/tag-join-label/style/_theme.scss +0 -0
  1155. /package/{lib → projects/sharedcomponents/src/lib}/components/tags/component/tag-join-label/style/material.scss +0 -0
  1156. /package/{lib → projects/sharedcomponents/src/lib}/components/task-creator/style/_material-definition.scss +0 -0
  1157. /package/{lib → projects/sharedcomponents/src/lib}/components/task-creator/style/_theme.scss +0 -0
  1158. /package/{lib → projects/sharedcomponents/src/lib}/components/task-creator/style/material.scss +0 -0
  1159. /package/{lib → projects/sharedcomponents/src/lib}/components/task-modifyer/style/_layout.scss +0 -0
  1160. /package/{lib → projects/sharedcomponents/src/lib}/components/task-modifyer/style/_material-definition.scss +0 -0
  1161. /package/{lib → projects/sharedcomponents/src/lib}/components/task-modifyer/style/_theme.scss +0 -0
  1162. /package/{lib → projects/sharedcomponents/src/lib}/components/task-modifyer/style/material.scss +0 -0
  1163. /package/{lib → projects/sharedcomponents/src/lib}/components/tile-renderer/style/_layout.scss +0 -0
  1164. /package/{lib → projects/sharedcomponents/src/lib}/components/tile-renderer/style/_material-definition.scss +0 -0
  1165. /package/{lib → projects/sharedcomponents/src/lib}/components/tile-renderer/style/_theme.scss +0 -0
  1166. /package/{lib → projects/sharedcomponents/src/lib}/components/tile-renderer/style/material.scss +0 -0
  1167. /package/{lib → projects/sharedcomponents/src/lib}/components/workflow-info-tiles/components/style/_layout.scss +0 -0
  1168. /package/{lib → projects/sharedcomponents/src/lib}/components/workflow-info-tiles/components/style/_material-definition.scss +0 -0
  1169. /package/{lib → projects/sharedcomponents/src/lib}/components/workflow-info-tiles/components/style/_theme.scss +0 -0
  1170. /package/{lib → projects/sharedcomponents/src/lib}/components/workflow-info-tiles/components/style/material.scss +0 -0
  1171. /package/{lib → projects/sharedcomponents/src/lib}/components/workflow-info-tiles/style/_layout.scss +0 -0
  1172. /package/{lib → projects/sharedcomponents/src/lib}/components/workflow-info-tiles/style/_material-definition.scss +0 -0
  1173. /package/{lib → projects/sharedcomponents/src/lib}/components/workflow-info-tiles/style/_theme.scss +0 -0
  1174. /package/{lib → projects/sharedcomponents/src/lib}/components/workflow-info-tiles/style/material.scss +0 -0
  1175. /package/{lib → projects/sharedcomponents/src/lib}/components/workflow-notification-toggle/style/_layout.scss +0 -0
  1176. /package/{lib → projects/sharedcomponents/src/lib}/components/workflow-notification-toggle/style/_material-definition.scss +0 -0
  1177. /package/{lib → projects/sharedcomponents/src/lib}/components/workflow-notification-toggle/style/_theme.scss +0 -0
  1178. /package/{lib → projects/sharedcomponents/src/lib}/components/workflow-notification-toggle/style/material.scss +0 -0
  1179. /package/{lib/interface/activities-task-config-names.d.ts → projects/sharedcomponents/src/lib/interface/activities-task-config-names.ts} +0 -0
  1180. /package/{lib/interface/key-value-pair.d.ts → projects/sharedcomponents/src/lib/interface/key-value-pair.ts} +0 -0
  1181. /package/{lib → projects/sharedcomponents/src/lib}/style/_mixin.scss +0 -0
  1182. /package/{lib → projects/sharedcomponents/src/lib}/style/_variables.scss +0 -0
  1183. /package/{lib → projects/sharedcomponents/src/lib}/style/sharedcomponents-globals.scss +0 -0
  1184. /package/{lib/utils/check-within-stepped-bounds-result.d.ts → projects/sharedcomponents/src/lib/utils/check-within-stepped-bounds-result.ts} +0 -0
@@ -1,468 +0,0 @@
1
- import { __awaiter, __decorate } from "tslib";
2
- import { ComponentFactoryResolver, Directive, EventEmitter, HostBinding, HostListener, Input, Output, ViewContainerRef } from "@angular/core";
3
- import { TableName } from "../../../enum/table-name.enum";
4
- import { FileType } from "@colijnit/mainapi/build/enum/file-type.enum";
5
- import { OperationWithAlwaysSuccessCallback } from "../../../interface/operation-callback-simple-function";
6
- import { ArrayUtils } from "../../../utils/array-utils";
7
- import { RefCodeUtils } from "../../../utils/ref-code-utils";
8
- import { CoDocumentSharedFieldLogic } from "../../../utils/co-document-shared-field-logic";
9
- import { ObjectRightType } from "@colijnit/sharedapi/build/enum/object-right-type.enum";
10
- import { InputBoolean } from "../../../decorator/input-boolean.decorator";
11
- import { AppFileDropzoneComponent } from "../../app-file-dropzone/app-file-dropzone.component";
12
- import { FileUtils } from "@colijnit/mainapi/build/utils/file-utils";
13
- import { CoDocument } from "@colijnit/mainapi/build/model/co-document.bo";
14
- import { CoDocumentType } from "@colijnit/mainapi/build/enum/co-document-type.enum";
15
- import { FileUploadPopupComponent } from "../../file-upload-popup/file-upload-popup.component";
16
- import { SharedComponentsDictionaryService } from '../../../translation/shared-components-dictionary.service';
17
- // A base component that lets the user make a list of files from its device. Doesn't actually upload, but outputs chosen files as filesChanged.
18
- export class BaseFileUploadComponent {
19
- // private static readonly _dummyTrueFunction: OperationCallbackSimpleFunction = (object: any) => Promise.resolve(true);
20
- constructor(
21
- //protected _promptService: PromptService,
22
- _dictionaryService,
23
- //protected _userService: UserService,
24
- _container, _factory) {
25
- this._dictionaryService = _dictionaryService;
26
- this._container = _container;
27
- this._factory = _factory;
28
- this.documents = [];
29
- // The ability to drop files on the page
30
- this.fullPageDrop = false;
31
- // If user gets the ability of adding files.
32
- this.canAdd = true;
33
- // Show add button
34
- this.addWithButton = true;
35
- // If user gets the ability of deleting files.
36
- this.canDelete = true;
37
- this.noDragDropOrdering = false;
38
- this.askBeforeDelete = true;
39
- this.resizeImages = false;
40
- this.lockOperation = OperationWithAlwaysSuccessCallback;
41
- this.unlockOperation = OperationWithAlwaysSuccessCallback;
42
- this.beforeDeleteOperation = OperationWithAlwaysSuccessCallback;
43
- this.afterDeleteOperation = OperationWithAlwaysSuccessCallback;
44
- this.beforeCreateOperation = OperationWithAlwaysSuccessCallback;
45
- this.afterCreateOperation = OperationWithAlwaysSuccessCallback;
46
- this.beforeEditOperation = OperationWithAlwaysSuccessCallback;
47
- this.dontAskBeforeDelete = false;
48
- this.noOwnDeleteOperation = false;
49
- this.useWithoutSettingProps = false;
50
- this.medicalUserGroups = false;
51
- // Use with customFileDropEvent
52
- this.useCustomFileDropEvent = false;
53
- // Use in conjunction with useCustomFileDropEvent
54
- this.customFileDropEvent = new EventEmitter();
55
- // Emits if user wants to add multiple documents at once
56
- this.documentsAdded = new EventEmitter();
57
- this.documentDeleted = new EventEmitter();
58
- // Emits every time the order of documents was changed
59
- this.sortableListChanged = new EventEmitter();
60
- this.documentChangeEvent = new EventEmitter();
61
- // Use this if consumer requires to perform extra actions, like locking a parent businessObject if it contains the collection of documents. Emit with true when popup opened, false for close
62
- this.popupOpenedStateChange = new EventEmitter();
63
- this._documentKey = "";
64
- this._readonly = false;
65
- }
66
- // The fileType that the documents should be saved as, leave empty to automatically detect filetype. Also determines file picker filter
67
- set fileType(value) {
68
- if (value) {
69
- this._fileType = value;
70
- //TODO Documentdataloader fix
71
- //this._coDocumentDataLoader.loadAllowedTypes().then(() => {this.handleAcceptedFileTypesLoaded(value)});
72
- }
73
- }
74
- get fileType() {
75
- return this._fileType;
76
- }
77
- set documentKey(value) {
78
- this._documentKey = value + ""; // force string
79
- }
80
- get documentKey() {
81
- return this._documentKey;
82
- }
83
- set readonly(value) {
84
- this._readonly = value;
85
- if (this._popup && this._popup.instance) {
86
- this._popup.instance.readonly = value;
87
- }
88
- }
89
- get readonly() {
90
- return this._readonly;
91
- }
92
- set maxUploadSizeParam(value) {
93
- if (value) {
94
- this._setInternalParamObj(value);
95
- }
96
- }
97
- onDrop(event) {
98
- event.preventDefault();
99
- event.stopPropagation();
100
- if (!this.useCustomFileDropEvent) {
101
- this.filesPicked(event.dataTransfer.files);
102
- }
103
- else {
104
- this.customFileDropEvent.emit(event.dataTransfer.files);
105
- }
106
- this._clearDropzone();
107
- }
108
- onDragEnd(event) {
109
- event.dataTransfer.clearData();
110
- this._clearDropzone();
111
- }
112
- onDragOver(event) {
113
- event.preventDefault();
114
- }
115
- onDragEnter(event) {
116
- this._dragEnterTarget = event.target;
117
- this._showDropzone();
118
- }
119
- onDragLeave(event) {
120
- if (event.target === this._dragEnterTarget) {
121
- this._clearDropzone();
122
- }
123
- }
124
- ngOnDestroy() {
125
- this._clearDropzone();
126
- }
127
- _showDropzone() {
128
- if (!this._dropZone) {
129
- const fact = this._factory.resolveComponentFactory(AppFileDropzoneComponent);
130
- this._dropZone = this._container.createComponent(fact);
131
- this._dropZone.instance.customDropActionMessage = this.dropMessage;
132
- }
133
- }
134
- _clearDropzone() {
135
- this._container.clear();
136
- if (this._dropZone) {
137
- this._dropZone.destroy();
138
- this._dropZone = undefined;
139
- }
140
- }
141
- // Remove file from upload array.
142
- handleDelete(file) {
143
- return __awaiter(this, void 0, void 0, function* () {
144
- let success = yield this.beforeDeleteOperation(file);
145
- try {
146
- if (success) {
147
- yield this._delete(file);
148
- success = true;
149
- }
150
- }
151
- finally {
152
- yield this.afterDeleteOperation(file);
153
- }
154
- return Promise.resolve(success);
155
- });
156
- }
157
- _delete(file) {
158
- return __awaiter(this, void 0, void 0, function* () {
159
- let doDelete = true;
160
- if (!this.dontAskBeforeDelete) {
161
- //TODO make dialogService
162
- //doDelete = await this._promptService.showYesNo("MESSAGE_DELETE_RECORD_QUESTION");
163
- }
164
- if (doDelete) {
165
- if (!this.noOwnDeleteOperation) {
166
- ArrayUtils.RemoveElement(file, this.documents);
167
- }
168
- this.documentDeleted.emit(file);
169
- }
170
- });
171
- }
172
- handleSortingChange(docs) {
173
- this.sortableListChanged.emit(docs);
174
- }
175
- handleFileChange(event) {
176
- return __awaiter(this, void 0, void 0, function* () {
177
- if (event && event.target && event.target.files && event.target.files.length > 0) {
178
- // check file sizes and extension
179
- //Todo: fix this
180
- //const allowedExtensions = await this._baseDataDalRepository.getAllowedExtensions();
181
- let allFilesAreSmallEnough = true;
182
- let allFilesHaveAllowedExtensions = true;
183
- const sizeToCompare = this._maxUploadFileSize ? this._maxUploadFileSize : undefined;
184
- const len = event.target.files.length;
185
- for (let i = 0; i < len; i++) {
186
- const uploadSizeAllowed = FileUtils.CheckMaxUploadSize(event.target.files[i], sizeToCompare);
187
- if (!uploadSizeAllowed) {
188
- allFilesAreSmallEnough = false;
189
- break;
190
- }
191
- const extensionAllowed = true; //FileUtils.CheckExtension(event.target.files[i], allowedExtensions);
192
- if (!extensionAllowed) {
193
- allFilesHaveAllowedExtensions = false;
194
- break;
195
- }
196
- }
197
- if (!allFilesAreSmallEnough) {
198
- //TODO make dialogService
199
- //this._promptService.showWarning(this._dictionaryService.get("FILE_TOO_LARGE_TO_UPLOAD", true, "" + [FileUtils.getMaxUploadSizeInMb(sizeToCompare)]));
200
- }
201
- else if (!allFilesHaveAllowedExtensions) {
202
- //const extensionsList = allowedExtensions.map(allowedExtension => allowedExtension.extension).sort().join(", ");
203
- //this._promptService.showWarning(this._dictionaryService.get("FILE_HAS_DISALLOWED_EXTENSION", false, extensionsList));
204
- }
205
- else {
206
- const filesToAdd = yield this.convertFilesIntoCoDocuments(event.target.files);
207
- if (filesToAdd.length > 1) {
208
- this.documentsAdded.emit(filesToAdd);
209
- }
210
- else {
211
- if (this.useWithoutSettingProps) {
212
- this.documentsAdded.next(filesToAdd);
213
- }
214
- else {
215
- this.documentUnderEdit = filesToAdd[0];
216
- this.openPopup();
217
- }
218
- }
219
- }
220
- }
221
- });
222
- }
223
- handleEditDocumentClick(docToEdit) {
224
- return __awaiter(this, void 0, void 0, function* () {
225
- this.documentUnderEdit = docToEdit;
226
- const showPopup = yield this.beforeEditOperation(docToEdit);
227
- if (showPopup) {
228
- this.openPopup();
229
- }
230
- });
231
- }
232
- openPopup() {
233
- return __awaiter(this, void 0, void 0, function* () {
234
- this._createAndFillPopupInstance();
235
- this._docChangeSub = this._popup.instance.documentChangeEvent.subscribe((doc) => {
236
- this.documentChangeEvent.emit(doc);
237
- });
238
- });
239
- }
240
- openPopupToAddDocumentByUrl() {
241
- this._createDocumentToAddByUrl();
242
- this._createAndFillPopupInstance(true);
243
- this._docChangeSub = this._popup.instance.documentChangeEvent.subscribe((doc) => {
244
- doc.fileName = doc.filePath;
245
- this.documentChangeEvent.emit(doc);
246
- });
247
- }
248
- _createDocumentToAddByUrl() {
249
- this.documentUnderEdit = new CoDocument();
250
- this.documentUnderEdit.table = this.documentTable;
251
- this.documentUnderEdit.key = this.documentKey;
252
- this.documentUnderEdit.fileType = this.fileType;
253
- this.documentUnderEdit.documentType = CoDocumentType.SaveAsLinkOnRandomLocation;
254
- this.documentUnderEdit.pathIsUrl = true;
255
- //TODO Fix user Input
256
- //this.documentUnderEdit.creationUser = this._userService.userName.toUpperCase();
257
- //this.documentUnderEdit.modifiedUser = this._userService.userName.toUpperCase();
258
- this.documentUnderEdit.creationDate = new Date();
259
- this.documentUnderEdit.modifiedDate = new Date();
260
- }
261
- _createAndFillPopupInstance(addDocumentByUrl = false) {
262
- this.popupOpenedStateChange.emit(true);
263
- const factory = this._factory.resolveComponentFactory(FileUploadPopupComponent);
264
- this._popup = this._container.createComponent(factory);
265
- this._popup.instance.readonly = this._readonly;
266
- this._popup.instance.addDocumentByUrl = addDocumentByUrl;
267
- this._popup.instance.hasPublicAccessVisible = this.documentTable === TableName.Goods;
268
- this._popup.instance.showDocumentReportPicker = (this.documentTable === TableName.Transactions || this.documentTable === TableName.TransactionLines);
269
- this._popup.instance.documentUnderEdit = this.documentUnderEdit;
270
- this._popup.instance.filesUploadConfigObjects = this.filesUploadConfigObjects;
271
- this._popup.instance.medicalUserGroups = this.medicalUserGroups;
272
- this._popup.instance.tagCategory = this.tagCategory;
273
- this._popup.instance.displayReadWriteAccess = this.displayReadWriteAccess;
274
- this._popup.instance.tagReferenceTable = this.tagReferenceTable;
275
- this._popup.instance.publicationIds = RefCodeUtils.GetMultiRefCodeChoices(this.documentUnderEdit.publication);
276
- this._popup.instance.storeGroupIds = this.documentUnderEdit.retailFormulas;
277
- this._prepareFileRights();
278
- this._popupCloseSub = this._popup.instance.popupCloseEvent.subscribe(() => {
279
- this._unlockDocument();
280
- this.popupOpenedStateChange.emit(false);
281
- this._popupCloseSub.unsubscribe();
282
- this._docChangeSub.unsubscribe();
283
- this._popup.destroy();
284
- this._popup = undefined;
285
- });
286
- }
287
- convertFilesIntoCoDocuments(files) {
288
- return __awaiter(this, void 0, void 0, function* () {
289
- const amountOfFiles = files.length;
290
- const filesToAdd = [];
291
- for (let i = 0; i < amountOfFiles; i++) {
292
- const fileAsDocument = yield this._getFileAsDocument(files[i]);
293
- fileAsDocument.index = CoDocumentSharedFieldLogic.GenerateAvailableIndexNr(this.documents || []) + i;
294
- filesToAdd.push(fileAsDocument);
295
- }
296
- return filesToAdd;
297
- });
298
- }
299
- filesPicked(files) {
300
- return __awaiter(this, void 0, void 0, function* () {
301
- if (files && files.length) {
302
- let allFilesAreValid = true;
303
- const amountOfFiles = files.length;
304
- for (let i = 0; i < amountOfFiles; i++) {
305
- if (!FileUtils.CheckMaxUploadSize(files[i], this._maxUploadFileSize)) {
306
- allFilesAreValid = false;
307
- break;
308
- }
309
- }
310
- if (!allFilesAreValid) {
311
- //TODO make dialogService
312
- //this._promptService.showWarning(this._dictionaryService.get("FILE_TOO_LARGE_TO_UPLOAD", true, "" + FileUtils.getMaxUploadSizeInMb(this._maxUploadFileSize).toString()));
313
- }
314
- else {
315
- const filesToAdd = yield this.convertFilesIntoCoDocuments(files);
316
- if (filesToAdd.length > 1 || this.useWithoutSettingProps) {
317
- this.documentsAdded.emit(filesToAdd);
318
- }
319
- else {
320
- this.documentUnderEdit = filesToAdd[0]; // Setting docUnderEdit opens the popup window
321
- this.openPopup();
322
- }
323
- }
324
- }
325
- });
326
- }
327
- handleAcceptedFileTypesLoaded(value) {
328
- //TODO fix loading
329
- //this.acceptedUploadFormats = this._coDocumentDataLoader.getAllowedExtensionsForType(value);
330
- }
331
- _getFileAsDocument(file) {
332
- return __awaiter(this, void 0, void 0, function* () {
333
- const fileAsCoDocument = yield FileUtils.ReadFileAsNewCoDocument(file, this.resizeImages);
334
- // set some extra known fields for the codocument:
335
- fileAsCoDocument.table = this.documentTable;
336
- fileAsCoDocument.key = this.documentKey;
337
- //TODO fix add users
338
- //fileAsCoDocument.creationUser = this._userService.userName.toUpperCase();
339
- //fileAsCoDocument.modifiedUser = this._userService.userName.toUpperCase();
340
- fileAsCoDocument.creationDate = new Date();
341
- fileAsCoDocument.modifiedDate = new Date();
342
- fileAsCoDocument.fileType = this.fileType ? this.fileType : FileUtils.IsImageFile(file) ? FileType.Image : FileType.Document;
343
- if (fileAsCoDocument) {
344
- return fileAsCoDocument;
345
- }
346
- });
347
- }
348
- _setInternalParamObj(value) {
349
- return __awaiter(this, void 0, void 0, function* () {
350
- //TODO fix params
351
- //const param: InternalParameterObject = await this._generalDalRepository.getInternalParamObject(value);
352
- //this._maxUploadFileSize = isNaN(parseInt(param.value, 0)) ? undefined : parseInt(param.value, 0);
353
- });
354
- }
355
- _lockDocument() {
356
- return __awaiter(this, void 0, void 0, function* () {
357
- if (!this.documentUnderEdit.documentId) {
358
- return true; // New document does not have an ID and therefore does not have to be locked
359
- }
360
- const lockOk = yield this.lockOperation(CoDocument);
361
- return lockOk;
362
- });
363
- }
364
- _unlockDocument() {
365
- return __awaiter(this, void 0, void 0, function* () {
366
- if (!this.documentUnderEdit.documentId) {
367
- return true; // New document does not have an ID and therefore does not have to be locked
368
- }
369
- const unlockOk = yield this.unlockOperation(CoDocument);
370
- return unlockOk;
371
- });
372
- }
373
- _prepareFileRights() {
374
- const len = this.documentUnderEdit.rights.length;
375
- for (let i = 0; i < len; i++) {
376
- const right = this.documentUnderEdit.rights[i];
377
- if (right.rightLevel === ObjectRightType.ReadWrite) {
378
- this._popup.instance.userGroupsForWrite.push(right.userGroupId);
379
- }
380
- if (right.rightLevel === ObjectRightType.ReadOnly) {
381
- this._popup.instance.userGroupsForRead.push(right.userGroupId);
382
- }
383
- }
384
- }
385
- }
386
- BaseFileUploadComponent.decorators = [
387
- { type: Directive }
388
- ];
389
- BaseFileUploadComponent.ctorParameters = () => [
390
- { type: SharedComponentsDictionaryService },
391
- { type: ViewContainerRef },
392
- { type: ComponentFactoryResolver }
393
- ];
394
- BaseFileUploadComponent.propDecorators = {
395
- fileType: [{ type: Input }],
396
- documents: [{ type: Input }],
397
- documentTable: [{ type: Input }],
398
- documentKey: [{ type: Input }],
399
- fullPageDrop: [{ type: Input }],
400
- canAdd: [{ type: Input }],
401
- dropMessage: [{ type: Input }],
402
- addWithButton: [{ type: Input }],
403
- canDelete: [{ type: Input }],
404
- noDragDropOrdering: [{ type: Input }],
405
- readonly: [{ type: Input }],
406
- askBeforeDelete: [{ type: Input }],
407
- resizeImages: [{ type: Input }],
408
- lockOperation: [{ type: Input }],
409
- unlockOperation: [{ type: Input }],
410
- beforeDeleteOperation: [{ type: Input }],
411
- afterDeleteOperation: [{ type: Input }],
412
- beforeCreateOperation: [{ type: Input }],
413
- afterCreateOperation: [{ type: Input }],
414
- beforeEditOperation: [{ type: Input }],
415
- dontAskBeforeDelete: [{ type: Input }],
416
- noOwnDeleteOperation: [{ type: Input }],
417
- maxUploadSizeParam: [{ type: Input }],
418
- useWithoutSettingProps: [{ type: Input }],
419
- filesUploadConfigObjects: [{ type: Input }],
420
- medicalUserGroups: [{ type: Input }],
421
- tagCategory: [{ type: Input }],
422
- tagReferenceTable: [{ type: Input }],
423
- displayReadWriteAccess: [{ type: Input }],
424
- useCustomFileDropEvent: [{ type: Input }],
425
- customFileDropEvent: [{ type: Output }],
426
- documentsAdded: [{ type: Output }],
427
- documentDeleted: [{ type: Output }],
428
- sortableListChanged: [{ type: Output }],
429
- documentChangeEvent: [{ type: Output }],
430
- popupOpenedStateChange: [{ type: Output }],
431
- hidden: [{ type: HostBinding, args: ["class.co-shared-hidden",] }],
432
- onDrop: [{ type: HostListener, args: ["drop", ["$event"],] }],
433
- onDragEnd: [{ type: HostListener, args: ["dragend", ["$event"],] }],
434
- onDragOver: [{ type: HostListener, args: ["dragover", ["$event"],] }],
435
- onDragEnter: [{ type: HostListener, args: ["dragenter", ["$event"],] }],
436
- onDragLeave: [{ type: HostListener, args: ["dragleave", ["$event"],] }]
437
- };
438
- __decorate([
439
- InputBoolean()
440
- ], BaseFileUploadComponent.prototype, "noDragDropOrdering", void 0);
441
- __decorate([
442
- InputBoolean()
443
- ], BaseFileUploadComponent.prototype, "readonly", null);
444
- __decorate([
445
- InputBoolean()
446
- ], BaseFileUploadComponent.prototype, "askBeforeDelete", void 0);
447
- __decorate([
448
- InputBoolean()
449
- ], BaseFileUploadComponent.prototype, "resizeImages", void 0);
450
- __decorate([
451
- InputBoolean()
452
- ], BaseFileUploadComponent.prototype, "dontAskBeforeDelete", void 0);
453
- __decorate([
454
- InputBoolean()
455
- ], BaseFileUploadComponent.prototype, "noOwnDeleteOperation", void 0);
456
- __decorate([
457
- InputBoolean()
458
- ], BaseFileUploadComponent.prototype, "useWithoutSettingProps", void 0);
459
- __decorate([
460
- InputBoolean()
461
- ], BaseFileUploadComponent.prototype, "medicalUserGroups", void 0);
462
- __decorate([
463
- InputBoolean()
464
- ], BaseFileUploadComponent.prototype, "displayReadWriteAccess", void 0);
465
- __decorate([
466
- InputBoolean()
467
- ], BaseFileUploadComponent.prototype, "useCustomFileDropEvent", void 0);
468
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1maWxlLXVwbG9hZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaGFyZWRjb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9maWxlcy11cGxvYWQvY29tcG9uZW50cy9iYXNlLWZpbGUtdXBsb2FkLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUVILHdCQUF3QixFQUV4QixTQUFTLEVBQ1QsWUFBWSxFQUNaLFdBQVcsRUFDWCxZQUFZLEVBQ1osS0FBSyxFQUVMLE1BQU0sRUFDTixnQkFBZ0IsRUFDbkIsTUFBTSxlQUFlLENBQUM7QUFHdkIsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLCtCQUErQixDQUFDO0FBQ3hELE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSw2Q0FBNkMsQ0FBQztBQUNyRSxPQUFPLEVBRUgsa0NBQWtDLEVBQ3JDLE1BQU0sdURBQXVELENBQUM7QUFJL0QsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBQ3RELE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSwrQkFBK0IsQ0FBQztBQUMzRCxPQUFPLEVBQUMsMEJBQTBCLEVBQUMsTUFBTSwrQ0FBK0MsQ0FBQztBQUN6RixPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sdURBQXVELENBQUM7QUFDdEYsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLDRDQUE0QyxDQUFDO0FBQ3hFLE9BQU8sRUFBQyx3QkFBd0IsRUFBQyxNQUFNLHFEQUFxRCxDQUFDO0FBQzdGLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSwwQ0FBMEMsQ0FBQztBQUNuRSxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sOENBQThDLENBQUM7QUFDeEUsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLG9EQUFvRCxDQUFDO0FBQ2xGLE9BQU8sRUFBQyx3QkFBd0IsRUFBQyxNQUFNLHFEQUFxRCxDQUFDO0FBQzdGLE9BQU8sRUFBQyxpQ0FBaUMsRUFBQyxNQUFNLDJEQUEyRCxDQUFDO0FBSzVHLCtJQUErSTtBQUUvSSxNQUFNLE9BQWdCLHVCQUF1QjtJQWdPekMsd0hBQXdIO0lBRXhIO0lBRUksMENBQTBDO0lBQ2hDLGtCQUFxRDtJQUMvRCxzQ0FBc0M7SUFDNUIsVUFBNEIsRUFDNUIsUUFBa0M7UUFIbEMsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFtQztRQUVyRCxlQUFVLEdBQVYsVUFBVSxDQUFrQjtRQUM1QixhQUFRLEdBQVIsUUFBUSxDQUEwQjtRQWpOekMsY0FBUyxHQUFpQixFQUFFLENBQUM7UUFjcEMsd0NBQXdDO1FBRWpDLGlCQUFZLEdBQVksS0FBSyxDQUFDO1FBRXJDLDRDQUE0QztRQUVyQyxXQUFNLEdBQVksSUFBSSxDQUFDO1FBSzlCLGtCQUFrQjtRQUVYLGtCQUFhLEdBQVksSUFBSSxDQUFDO1FBRXJDLDhDQUE4QztRQUV2QyxjQUFTLEdBQVksSUFBSSxDQUFDO1FBSTFCLHVCQUFrQixHQUFZLEtBQUssQ0FBQztRQWtCcEMsb0JBQWUsR0FBWSxJQUFJLENBQUM7UUFJaEMsaUJBQVksR0FBWSxLQUFLLENBQUM7UUFHOUIsa0JBQWEsR0FBb0Msa0NBQWtDLENBQUM7UUFHcEYsb0JBQWUsR0FBb0Msa0NBQWtDLENBQUM7UUFNdEYsMEJBQXFCLEdBQW9DLGtDQUFrQyxDQUFDO1FBRzVGLHlCQUFvQixHQUFvQyxrQ0FBa0MsQ0FBQztRQUczRiwwQkFBcUIsR0FBb0Msa0NBQWtDLENBQUM7UUFHNUYseUJBQW9CLEdBQW9DLGtDQUFrQyxDQUFDO1FBRzNGLHdCQUFtQixHQUFvQyxrQ0FBa0MsQ0FBQztRQUkxRix3QkFBbUIsR0FBWSxLQUFLLENBQUM7UUFJckMseUJBQW9CLEdBQVksS0FBSyxDQUFDO1FBYXRDLDJCQUFzQixHQUFZLEtBQUssQ0FBQztRQU94QyxzQkFBaUIsR0FBWSxLQUFLLENBQUM7UUFZMUMsK0JBQStCO1FBRXhCLDJCQUFzQixHQUFZLEtBQUssQ0FBQztRQUUvQyxpREFBaUQ7UUFFMUMsd0JBQW1CLEdBQTJCLElBQUksWUFBWSxFQUFZLENBQUM7UUFFbEYsd0RBQXdEO1FBRXhDLG1CQUFjLEdBQStCLElBQUksWUFBWSxFQUFnQixDQUFDO1FBRzlFLG9CQUFlLEdBQTZCLElBQUksWUFBWSxFQUFjLENBQUM7UUFFM0Ysc0RBQXNEO1FBRXRDLHdCQUFtQixHQUErQixJQUFJLFlBQVksRUFBZ0IsQ0FBQztRQUc1Rix3QkFBbUIsR0FBNkIsSUFBSSxZQUFZLEVBQWMsQ0FBQztRQUV0Riw2TEFBNkw7UUFFdEwsMkJBQXNCLEdBQTBCLElBQUksWUFBWSxFQUFXLENBQUM7UUFpRDNFLGlCQUFZLEdBQVcsRUFBRSxDQUFDO1FBSzFCLGNBQVMsR0FBWSxLQUFLLENBQUM7SUFpQm5DLENBQUM7SUF2T0QsdUlBQXVJO0lBQ3ZJLElBQ1csUUFBUSxDQUFDLEtBQWU7UUFDL0IsSUFBSSxLQUFLLEVBQUU7WUFDUCxJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztZQUN2Qiw2QkFBNkI7WUFDN0Isd0dBQXdHO1NBQzNHO0lBQ0wsQ0FBQztJQUVELElBQVcsUUFBUTtRQUNmLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQztJQUMxQixDQUFDO0lBUUQsSUFDVyxXQUFXLENBQUMsS0FBYTtRQUNoQyxJQUFJLENBQUMsWUFBWSxHQUFHLEtBQUssR0FBRyxFQUFFLENBQUMsQ0FBQyxlQUFlO0lBQ25ELENBQUM7SUFFRCxJQUFXLFdBQVc7UUFDbEIsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDO0lBQzdCLENBQUM7SUEyQkQsSUFBVyxRQUFRLENBQUMsS0FBYztRQUM5QixJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztRQUV2QixJQUFJLElBQUksQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLEVBQUU7WUFDckMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQztTQUN6QztJQUNMLENBQUM7SUFFRCxJQUFXLFFBQVE7UUFDZixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDMUIsQ0FBQztJQTRDRCxJQUNXLGtCQUFrQixDQUFDLEtBQW9CO1FBQzlDLElBQUksS0FBSyxFQUFFO1lBQ1AsSUFBSSxDQUFDLG9CQUFvQixDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQ3BDO0lBQ0wsQ0FBQztJQXFETSxNQUFNLENBQUMsS0FBZ0I7UUFDMUIsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3ZCLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUV4QixJQUFJLENBQUMsSUFBSSxDQUFDLHNCQUFzQixFQUFFO1lBQzlCLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUM5QzthQUFNO1lBQ0gsSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQzNEO1FBRUQsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFHTSxTQUFTLENBQUMsS0FBZ0I7UUFDN0IsS0FBSyxDQUFDLFlBQVksQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUMvQixJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUdNLFVBQVUsQ0FBQyxLQUFnQjtRQUM5QixLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDM0IsQ0FBQztJQUdNLFdBQVcsQ0FBQyxLQUFnQjtRQUMvQixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQztRQUNyQyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDekIsQ0FBQztJQUdNLFdBQVcsQ0FBQyxLQUFnQjtRQUMvQixJQUFJLEtBQUssQ0FBQyxNQUFNLEtBQUssSUFBSSxDQUFDLGdCQUFnQixFQUFFO1lBQ3hDLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztTQUN6QjtJQUNMLENBQUM7SUFnQ0QsV0FBVztRQUNQLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRU8sYUFBYTtRQUNqQixJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUNqQixNQUFNLElBQUksR0FBK0MsSUFBSSxDQUFDLFFBQVEsQ0FBQyx1QkFBdUIsQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO1lBQ3pILElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDdkQsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsdUJBQXVCLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQztTQUN0RTtJQUNMLENBQUM7SUFFTyxjQUFjO1FBQ2xCLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDeEIsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFO1lBQ2hCLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDekIsSUFBSSxDQUFDLFNBQVMsR0FBRyxTQUFTLENBQUM7U0FDOUI7SUFDTCxDQUFDO0lBRUQsaUNBQWlDO0lBQ3BCLFlBQVksQ0FBQyxJQUFnQjs7WUFDdEMsSUFBSSxPQUFPLEdBQVksTUFBTSxJQUFJLENBQUMscUJBQXFCLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDOUQsSUFBSTtnQkFDQSxJQUFJLE9BQU8sRUFBRTtvQkFDVCxNQUFNLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7b0JBQ3pCLE9BQU8sR0FBRyxJQUFJLENBQUM7aUJBQ2xCO2FBQ0o7b0JBQVM7Z0JBQ04sTUFBTSxJQUFJLENBQUMsb0JBQW9CLENBQUMsSUFBSSxDQUFDLENBQUM7YUFDekM7WUFDRCxPQUFPLE9BQU8sQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDcEMsQ0FBQztLQUFBO0lBRWEsT0FBTyxDQUFDLElBQWdCOztZQUNsQyxJQUFJLFFBQVEsR0FBWSxJQUFJLENBQUM7WUFDN0IsSUFBSSxDQUFDLElBQUksQ0FBQyxtQkFBbUIsRUFBRTtnQkFDN0IseUJBQXlCO2dCQUN2QixtRkFBbUY7YUFDdEY7WUFDRCxJQUFJLFFBQVEsRUFBRTtnQkFDVixJQUFJLENBQUMsSUFBSSxDQUFDLG9CQUFvQixFQUFFO29CQUM1QixVQUFVLENBQUMsYUFBYSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7aUJBQ2xEO2dCQUNELElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO2FBQ25DO1FBQ0wsQ0FBQztLQUFBO0lBRU0sbUJBQW1CLENBQUMsSUFBa0I7UUFDekMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN4QyxDQUFDO0lBRVksZ0JBQWdCLENBQUMsS0FBVTs7WUFDcEMsSUFBSSxLQUFLLElBQUksS0FBSyxDQUFDLE1BQU0sSUFBSSxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssSUFBSSxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO2dCQUM5RSxpQ0FBaUM7Z0JBQ2pDLGdCQUFnQjtnQkFDaEIscUZBQXFGO2dCQUNyRixJQUFJLHNCQUFzQixHQUFZLElBQUksQ0FBQztnQkFDM0MsSUFBSSw2QkFBNkIsR0FBWSxJQUFJLENBQUM7Z0JBQ2xELE1BQU0sYUFBYSxHQUFXLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7Z0JBQzVGLE1BQU0sR0FBRyxHQUFXLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQztnQkFDOUMsS0FBSyxJQUFJLENBQUMsR0FBVyxDQUFDLEVBQUUsQ0FBQyxHQUFHLEdBQUcsRUFBRSxDQUFDLEVBQUUsRUFBRTtvQkFDbEMsTUFBTSxpQkFBaUIsR0FBRyxTQUFTLENBQUMsa0JBQWtCLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsYUFBYSxDQUFDLENBQUM7b0JBQzdGLElBQUksQ0FBQyxpQkFBaUIsRUFBRTt3QkFDcEIsc0JBQXNCLEdBQUcsS0FBSyxDQUFDO3dCQUMvQixNQUFNO3FCQUNUO29CQUNELE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxDQUFBLENBQUEscUVBQXFFO29CQUNsRyxJQUFJLENBQUMsZ0JBQWdCLEVBQUU7d0JBQ25CLDZCQUE2QixHQUFHLEtBQUssQ0FBQzt3QkFDdEMsTUFBTTtxQkFDVDtpQkFDSjtnQkFFRCxJQUFJLENBQUMsc0JBQXNCLEVBQUU7b0JBQzNCLHlCQUF5QjtvQkFDdkIsdUpBQXVKO2lCQUMxSjtxQkFBTSxJQUFJLENBQUMsNkJBQTZCLEVBQUU7b0JBQ3ZDLGlIQUFpSDtvQkFDakgsdUhBQXVIO2lCQUMxSDtxQkFBTTtvQkFDSCxNQUFNLFVBQVUsR0FBaUIsTUFBTSxJQUFJLENBQUMsMkJBQTJCLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztvQkFFNUYsSUFBSSxVQUFVLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTt3QkFDdkIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7cUJBQ3hDO3lCQUFNO3dCQUNILElBQUksSUFBSSxDQUFDLHNCQUFzQixFQUFFOzRCQUM3QixJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQzt5QkFDeEM7NkJBQU07NEJBQ0gsSUFBSSxDQUFDLGlCQUFpQixHQUFHLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQzs0QkFDdkMsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO3lCQUNwQjtxQkFDSjtpQkFDSjthQUNKO1FBQ0wsQ0FBQztLQUFBO0lBRVksdUJBQXVCLENBQUMsU0FBcUI7O1lBQ3RELElBQUksQ0FBQyxpQkFBaUIsR0FBRyxTQUFTLENBQUM7WUFDbkMsTUFBTSxTQUFTLEdBQVksTUFBTSxJQUFJLENBQUMsbUJBQW1CLENBQUMsU0FBUyxDQUFDLENBQUM7WUFDckUsSUFBSSxTQUFTLEVBQUU7Z0JBQ1gsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO2FBQ3BCO1FBQ0wsQ0FBQztLQUFBO0lBRVksU0FBUzs7WUFDbEIsSUFBSSxDQUFDLDJCQUEyQixFQUFFLENBQUM7WUFFbkMsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxtQkFBbUIsQ0FBQyxTQUFTLENBQUMsQ0FBQyxHQUFlLEVBQUUsRUFBRTtnQkFDeEYsSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUN2QyxDQUFDLENBQUMsQ0FBQztRQUNQLENBQUM7S0FBQTtJQUVNLDJCQUEyQjtRQUM5QixJQUFJLENBQUMseUJBQXlCLEVBQUUsQ0FBQztRQUNqQyxJQUFJLENBQUMsMkJBQTJCLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFdkMsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxtQkFBbUIsQ0FBQyxTQUFTLENBQUMsQ0FBQyxHQUFlLEVBQUUsRUFBRTtZQUN4RixHQUFHLENBQUMsUUFBUSxHQUFHLEdBQUcsQ0FBQyxRQUFRLENBQUM7WUFDNUIsSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUN2QyxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFTyx5QkFBeUI7UUFDN0IsSUFBSSxDQUFDLGlCQUFpQixHQUFHLElBQUksVUFBVSxFQUFFLENBQUM7UUFDMUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDO1FBQ2xELElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQztRQUM5QyxJQUFJLENBQUMsaUJBQWlCLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUM7UUFDaEQsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFlBQVksR0FBRyxjQUFjLENBQUMsMEJBQTBCLENBQUM7UUFDaEYsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUM7UUFDeEMscUJBQXFCO1FBQ3JCLGlGQUFpRjtRQUNqRixpRkFBaUY7UUFDakYsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFlBQVksR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDO1FBQ2pELElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxZQUFZLEdBQUcsSUFBSSxJQUFJLEVBQUUsQ0FBQztJQUNyRCxDQUFDO0lBRU8sMkJBQTJCLENBQUMsbUJBQTRCLEtBQUs7UUFDakUsSUFBSSxDQUFDLHNCQUFzQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUV2QyxNQUFNLE9BQU8sR0FBK0MsSUFBSSxDQUFDLFFBQVEsQ0FBQyx1QkFBdUIsQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO1FBRTVILElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxlQUFlLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFdkQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUM7UUFDL0MsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLEdBQUcsZ0JBQWdCLENBQUM7UUFDekQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsc0JBQXNCLEdBQUcsSUFBSSxDQUFDLGFBQWEsS0FBSyxTQUFTLENBQUMsS0FBSyxDQUFDO1FBQ3JGLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLHdCQUF3QixHQUFHLENBQUMsSUFBSSxDQUFDLGFBQWEsS0FBSyxTQUFTLENBQUMsWUFBWSxJQUFJLElBQUksQ0FBQyxhQUFhLEtBQUssU0FBUyxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFDckosSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDO1FBQ2hFLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLHdCQUF3QixHQUFHLElBQUksQ0FBQyx3QkFBd0IsQ0FBQztRQUM5RSxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUM7UUFDaEUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUM7UUFDcEQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsc0JBQXNCLEdBQUcsSUFBSSxDQUFDLHNCQUFzQixDQUFDO1FBQzFFLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLGlCQUFpQixHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQztRQUNoRSxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxjQUFjLEdBQUcsWUFBWSxDQUFDLHNCQUFzQixDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUM5RyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGNBQWMsQ0FBQztRQUUzRSxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztRQUUxQixJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ3RFLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztZQUN2QixJQUFJLENBQUMsc0JBQXNCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ3hDLElBQUksQ0FBQyxjQUFjLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDbEMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUNqQyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ3RCLElBQUksQ0FBQyxNQUFNLEdBQUcsU0FBUyxDQUFDO1FBQzVCLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVlLDJCQUEyQixDQUFDLEtBQWU7O1lBQ3ZELE1BQU0sYUFBYSxHQUFXLEtBQUssQ0FBQyxNQUFNLENBQUM7WUFDM0MsTUFBTSxVQUFVLEdBQWlCLEVBQUUsQ0FBQztZQUVwQyxLQUFLLElBQUksQ0FBQyxHQUFXLENBQUMsRUFBRSxDQUFDLEdBQUcsYUFBYSxFQUFFLENBQUMsRUFBRSxFQUFFO2dCQUM1QyxNQUFNLGNBQWMsR0FBZSxNQUFNLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDM0UsY0FBYyxDQUFDLEtBQUssR0FBRywwQkFBMEIsQ0FBQyx3QkFBd0IsQ0FBQyxJQUFJLENBQUMsU0FBUyxJQUFJLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQztnQkFDckcsVUFBVSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQzthQUNuQztZQUNELE9BQU8sVUFBVSxDQUFDO1FBQ3RCLENBQUM7S0FBQTtJQUVZLFdBQVcsQ0FBQyxLQUFlOztZQUNwQyxJQUFJLEtBQUssSUFBSSxLQUFLLENBQUMsTUFBTSxFQUFFO2dCQUN2QixJQUFJLGdCQUFnQixHQUFZLElBQUksQ0FBQztnQkFDckMsTUFBTSxhQUFhLEdBQVcsS0FBSyxDQUFDLE1BQU0sQ0FBQztnQkFDM0MsS0FBSyxJQUFJLENBQUMsR0FBVyxDQUFDLEVBQUUsQ0FBQyxHQUFHLGFBQWEsRUFBRSxDQUFDLEVBQUUsRUFBRTtvQkFDNUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxrQkFBa0IsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLGtCQUFrQixDQUFDLEVBQUU7d0JBQ2xFLGdCQUFnQixHQUFHLEtBQUssQ0FBQzt3QkFDekIsTUFBTTtxQkFDVDtpQkFDSjtnQkFFRCxJQUFJLENBQUMsZ0JBQWdCLEVBQUU7b0JBQ3JCLHlCQUF5QjtvQkFDdkIsMEtBQTBLO2lCQUM3SztxQkFBTTtvQkFDSCxNQUFNLFVBQVUsR0FBaUIsTUFBTSxJQUFJLENBQUMsMkJBQTJCLENBQUMsS0FBSyxDQUFDLENBQUM7b0JBRS9FLElBQUksVUFBVSxDQUFDLE1BQU0sR0FBRyxDQUFDLElBQUksSUFBSSxDQUFDLHNCQUFzQixFQUFFO3dCQUN0RCxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztxQkFDeEM7eUJBQU07d0JBQ0gsSUFBSSxDQUFDLGlCQUFpQixHQUFHLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLDhDQUE4Qzt3QkFDdEYsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO3FCQUNwQjtpQkFDSjthQUNKO1FBQ0wsQ0FBQztLQUFBO0lBRU0sNkJBQTZCLENBQUMsS0FBZTtRQUNoRCxrQkFBa0I7UUFDbEIsNkZBQTZGO0lBQ2pHLENBQUM7SUFFYSxrQkFBa0IsQ0FBQyxJQUFVOztZQUN2QyxNQUFNLGdCQUFnQixHQUFlLE1BQU0sU0FBUyxDQUFDLHVCQUF1QixDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7WUFDdEcsa0RBQWtEO1lBQ2xELGdCQUFnQixDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDO1lBQzVDLGdCQUFnQixDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDO1lBQ3hDLG9CQUFvQjtZQUNwQiwyRUFBMkU7WUFDM0UsMkVBQTJFO1lBQzNFLGdCQUFnQixDQUFDLFlBQVksR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDO1lBQzNDLGdCQUFnQixDQUFDLFlBQVksR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDO1lBQzNDLGdCQUFnQixDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDO1lBRTdILElBQUksZ0JBQWdCLEVBQUU7Z0JBQ2xCLE9BQU8sZ0JBQWdCLENBQUM7YUFDM0I7UUFDTCxDQUFDO0tBQUE7SUFFYSxvQkFBb0IsQ0FBQyxLQUFvQjs7WUFDbkQsaUJBQWlCO1lBQ2pCLHdHQUF3RztZQUN4RyxtR0FBbUc7UUFDdkcsQ0FBQztLQUFBO0lBRWEsYUFBYTs7WUFDdkIsSUFBSSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxVQUFVLEVBQUU7Z0JBQ3BDLE9BQU8sSUFBSSxDQUFDLENBQUMsNEVBQTRFO2FBQzVGO1lBRUQsTUFBTSxNQUFNLEdBQVksTUFBTSxJQUFJLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1lBQzdELE9BQU8sTUFBTSxDQUFDO1FBQ2xCLENBQUM7S0FBQTtJQUVhLGVBQWU7O1lBQzNCLElBQUksQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsVUFBVSxFQUFFO2dCQUN0QyxPQUFPLElBQUksQ0FBQyxDQUFDLDRFQUE0RTthQUMxRjtZQUVELE1BQU0sUUFBUSxHQUFZLE1BQU0sSUFBSSxDQUFDLGVBQWUsQ0FBQyxVQUFVLENBQUMsQ0FBQztZQUNqRSxPQUFPLFFBQVEsQ0FBQztRQUNsQixDQUFDO0tBQUE7SUFFTyxrQkFBa0I7UUFDdEIsTUFBTSxHQUFHLEdBQVcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUM7UUFDekQsS0FBSyxJQUFJLENBQUMsR0FBVyxDQUFDLEVBQUUsQ0FBQyxHQUFHLEdBQUcsRUFBRSxDQUFDLEVBQUUsRUFBRTtZQUNsQyxNQUFNLEtBQUssR0FBb0IsSUFBSSxDQUFDLGlCQUFpQixDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNoRSxJQUFJLEtBQUssQ0FBQyxVQUFVLEtBQUssZUFBZSxDQUFDLFNBQVMsRUFBRTtnQkFDaEQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQzthQUNuRTtZQUNELElBQUksS0FBSyxDQUFDLFVBQVUsS0FBSyxlQUFlLENBQUMsUUFBUSxFQUFFO2dCQUMvQyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDO2FBQ2xFO1NBQ0o7SUFDTCxDQUFDOzs7WUEzZkosU0FBUzs7O1lBTkYsaUNBQWlDO1lBdkJyQyxnQkFBZ0I7WUFUaEIsd0JBQXdCOzs7dUJBZ0R2QixLQUFLO3dCQWFMLEtBQUs7NEJBR0wsS0FBSzswQkFHTCxLQUFLOzJCQVVMLEtBQUs7cUJBSUwsS0FBSzswQkFHTCxLQUFLOzRCQUlMLEtBQUs7d0JBSUwsS0FBSztpQ0FHTCxLQUFLO3VCQUlMLEtBQUs7OEJBY0wsS0FBSzsyQkFJTCxLQUFLOzRCQUlMLEtBQUs7OEJBR0wsS0FBSztvQ0FNTCxLQUFLO21DQUdMLEtBQUs7b0NBR0wsS0FBSzttQ0FHTCxLQUFLO2tDQUdMLEtBQUs7a0NBR0wsS0FBSzttQ0FJTCxLQUFLO2lDQU1MLEtBQUs7cUNBT0wsS0FBSzt1Q0FJTCxLQUFLO2dDQUdMLEtBQUs7MEJBSUwsS0FBSztnQ0FHTCxLQUFLO3FDQUdMLEtBQUs7cUNBS0wsS0FBSztrQ0FJTCxNQUFNOzZCQUlOLE1BQU07OEJBR04sTUFBTTtrQ0FJTixNQUFNO2tDQUdOLE1BQU07cUNBSU4sTUFBTTtxQkFHTixXQUFXLFNBQUMsd0JBQXdCO3FCQUdwQyxZQUFZLFNBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxDQUFDO3dCQWMvQixZQUFZLFNBQUMsU0FBUyxFQUFFLENBQUMsUUFBUSxDQUFDO3lCQU1sQyxZQUFZLFNBQUMsVUFBVSxFQUFFLENBQUMsUUFBUSxDQUFDOzBCQUtuQyxZQUFZLFNBQUMsV0FBVyxFQUFFLENBQUMsUUFBUSxDQUFDOzBCQU1wQyxZQUFZLFNBQUMsV0FBVyxFQUFFLENBQUMsUUFBUSxDQUFDOztBQWxKckM7SUFEQyxZQUFZLEVBQUU7bUVBQzRCO0FBSTNDO0lBREMsWUFBWSxFQUFFO3VEQU9kO0FBUUQ7SUFEQyxZQUFZLEVBQUU7Z0VBQ3dCO0FBSXZDO0lBREMsWUFBWSxFQUFFOzZEQUNzQjtBQTRCckM7SUFEQyxZQUFZLEVBQUU7b0VBQzZCO0FBSTVDO0lBREMsWUFBWSxFQUFFO3FFQUM4QjtBQWE3QztJQURDLFlBQVksRUFBRTt1RUFDZ0M7QUFPL0M7SUFEQyxZQUFZLEVBQUU7a0VBQzJCO0FBVTFDO0lBREMsWUFBWSxFQUFFO3VFQUN3QjtBQUl2QztJQURVLFlBQVksRUFBRTt1RUFDdUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gICAgQ29tcG9uZW50RmFjdG9yeSxcclxuICAgIENvbXBvbmVudEZhY3RvcnlSZXNvbHZlcixcclxuICAgIENvbXBvbmVudFJlZixcclxuICAgIERpcmVjdGl2ZSxcclxuICAgIEV2ZW50RW1pdHRlcixcclxuICAgIEhvc3RCaW5kaW5nLFxyXG4gICAgSG9zdExpc3RlbmVyLFxyXG4gICAgSW5wdXQsXHJcbiAgICBPbkRlc3Ryb3ksXHJcbiAgICBPdXRwdXQsXHJcbiAgICBWaWV3Q29udGFpbmVyUmVmXHJcbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHtTY3JlZW5Db25maWdBZGFwdGVyQ29tcG9uZW50fSBmcm9tIFwiQGNvbGlqbml0L2NvcmVjb21wb25lbnRzX3YxMlwiO1xyXG5pbXBvcnQge1N1YnNjcmlwdGlvbn0gZnJvbSBcInJ4anNcIjtcclxuaW1wb3J0IHtUYWJsZU5hbWV9IGZyb20gXCIuLi8uLi8uLi9lbnVtL3RhYmxlLW5hbWUuZW51bVwiO1xyXG5pbXBvcnQge0ZpbGVUeXBlfSBmcm9tIFwiQGNvbGlqbml0L21haW5hcGkvYnVpbGQvZW51bS9maWxlLXR5cGUuZW51bVwiO1xyXG5pbXBvcnQge1xyXG4gICAgT3BlcmF0aW9uQ2FsbGJhY2tTaW1wbGVGdW5jdGlvbixcclxuICAgIE9wZXJhdGlvbldpdGhBbHdheXNTdWNjZXNzQ2FsbGJhY2tcclxufSBmcm9tIFwiLi4vLi4vLi4vaW50ZXJmYWNlL29wZXJhdGlvbi1jYWxsYmFjay1zaW1wbGUtZnVuY3Rpb25cIjtcclxuaW1wb3J0IHtJbnRlcm5hbFBhcmFtfSBmcm9tIFwiLi4vLi4vLi4vZW51bS9pbnRlcm5hbC1wYXJhbS5lbnVtXCI7XHJcbmltcG9ydCB7RmlsZXNVcGxvYWRDb25maWdPYmplY3RzfSBmcm9tIFwiLi4vLi4vLi4vZW51bS9maWxlcy11cGxvYWQtY29uZmlnLW9iamVjdHNcIjtcclxuaW1wb3J0IHtUYWdDYXRlZ29yeX0gZnJvbSBcIi4uLy4uLy4uL2VudW0vdGFnLWNhdGVnb3J5LmVudW1cIjtcclxuaW1wb3J0IHtBcnJheVV0aWxzfSBmcm9tIFwiLi4vLi4vLi4vdXRpbHMvYXJyYXktdXRpbHNcIjtcclxuaW1wb3J0IHtSZWZDb2RlVXRpbHN9IGZyb20gXCIuLi8uLi8uLi91dGlscy9yZWYtY29kZS11dGlsc1wiO1xyXG5pbXBvcnQge0NvRG9jdW1lbnRTaGFyZWRGaWVsZExvZ2ljfSBmcm9tIFwiLi4vLi4vLi4vdXRpbHMvY28tZG9jdW1lbnQtc2hhcmVkLWZpZWxkLWxvZ2ljXCI7XHJcbmltcG9ydCB7T2JqZWN0UmlnaHRUeXBlfSBmcm9tIFwiQGNvbGlqbml0L3NoYXJlZGFwaS9idWlsZC9lbnVtL29iamVjdC1yaWdodC10eXBlLmVudW1cIjtcclxuaW1wb3J0IHtJbnB1dEJvb2xlYW59IGZyb20gXCIuLi8uLi8uLi9kZWNvcmF0b3IvaW5wdXQtYm9vbGVhbi5kZWNvcmF0b3JcIjtcclxuaW1wb3J0IHtBcHBGaWxlRHJvcHpvbmVDb21wb25lbnR9IGZyb20gXCIuLi8uLi9hcHAtZmlsZS1kcm9wem9uZS9hcHAtZmlsZS1kcm9wem9uZS5jb21wb25lbnRcIjtcclxuaW1wb3J0IHtGaWxlVXRpbHN9IGZyb20gXCJAY29saWpuaXQvbWFpbmFwaS9idWlsZC91dGlscy9maWxlLXV0aWxzXCI7XHJcbmltcG9ydCB7Q29Eb2N1bWVudH0gZnJvbSBcIkBjb2xpam5pdC9tYWluYXBpL2J1aWxkL21vZGVsL2NvLWRvY3VtZW50LmJvXCI7XHJcbmltcG9ydCB7Q29Eb2N1bWVudFR5cGV9IGZyb20gXCJAY29saWpuaXQvbWFpbmFwaS9idWlsZC9lbnVtL2NvLWRvY3VtZW50LXR5cGUuZW51bVwiO1xyXG5pbXBvcnQge0ZpbGVVcGxvYWRQb3B1cENvbXBvbmVudH0gZnJvbSBcIi4uLy4uL2ZpbGUtdXBsb2FkLXBvcHVwL2ZpbGUtdXBsb2FkLXBvcHVwLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQge1NoYXJlZENvbXBvbmVudHNEaWN0aW9uYXJ5U2VydmljZX0gZnJvbSAnLi4vLi4vLi4vdHJhbnNsYXRpb24vc2hhcmVkLWNvbXBvbmVudHMtZGljdGlvbmFyeS5zZXJ2aWNlJztcclxuaW1wb3J0IHtDb0RvY3VtZW50UmlnaHR9IGZyb20gJ0Bjb2xpam5pdC9tYWluYXBpL2J1aWxkL21vZGVsL2NvLWRvY3VtZW50LXJpZ2h0JztcclxuXHJcblxyXG5cclxuLy8gQSBiYXNlIGNvbXBvbmVudCB0aGF0IGxldHMgdGhlIHVzZXIgbWFrZSBhIGxpc3Qgb2YgZmlsZXMgZnJvbSBpdHMgZGV2aWNlLiBEb2Vzbid0IGFjdHVhbGx5IHVwbG9hZCwgYnV0IG91dHB1dHMgY2hvc2VuIGZpbGVzIGFzIGZpbGVzQ2hhbmdlZC5cclxuQERpcmVjdGl2ZSgpXHJcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBCYXNlRmlsZVVwbG9hZENvbXBvbmVudCBpbXBsZW1lbnRzIFNjcmVlbkNvbmZpZ0FkYXB0ZXJDb21wb25lbnQsIE9uRGVzdHJveSB7XHJcbiAgICBkZWNpbWFsczogbnVtYmVyO1xyXG4gICAgZm9yY2VSZWFkb25seTogYm9vbGVhbjtcclxuICAgIG1heExlbmd0aDogbnVtYmVyO1xyXG4gICAgb2JqZWN0Q29uZmlnTmFtZTogc3RyaW5nO1xyXG4gICAgcmVkRXJyb3JCYWNrZ3JvdW5kOiBib29sZWFuO1xyXG4gICAgcmVxdWlyZWQ6IGJvb2xlYW47XHJcblxyXG4gICAgLy8gVGhlIGZpbGVUeXBlIHRoYXQgdGhlIGRvY3VtZW50cyBzaG91bGQgYmUgc2F2ZWQgYXMsIGxlYXZlIGVtcHR5IHRvIGF1dG9tYXRpY2FsbHkgZGV0ZWN0IGZpbGV0eXBlLiBBbHNvIGRldGVybWluZXMgZmlsZSBwaWNrZXIgZmlsdGVyXHJcbiAgICBASW5wdXQoKVxyXG4gICAgcHVibGljIHNldCBmaWxlVHlwZSh2YWx1ZTogRmlsZVR5cGUpIHtcclxuICAgICAgICBpZiAodmFsdWUpIHtcclxuICAgICAgICAgICAgdGhpcy5fZmlsZVR5cGUgPSB2YWx1ZTtcclxuICAgICAgICAgICAgLy9UT0RPIERvY3VtZW50ZGF0YWxvYWRlciBmaXhcclxuICAgICAgICAgICAgLy90aGlzLl9jb0RvY3VtZW50RGF0YUxvYWRlci5sb2FkQWxsb3dlZFR5cGVzKCkudGhlbigoKSA9PiB7dGhpcy5oYW5kbGVBY2NlcHRlZEZpbGVUeXBlc0xvYWRlZCh2YWx1ZSl9KTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGdldCBmaWxlVHlwZSgpOiBGaWxlVHlwZSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX2ZpbGVUeXBlO1xyXG4gICAgfVxyXG5cclxuICAgIEBJbnB1dCgpXHJcbiAgICBwdWJsaWMgZG9jdW1lbnRzOiBDb0RvY3VtZW50W10gPSBbXTtcclxuXHJcbiAgICBASW5wdXQoKVxyXG4gICAgcHVibGljIGRvY3VtZW50VGFibGU6IFRhYmxlTmFtZTtcclxuXHJcbiAgICBASW5wdXQoKVxyXG4gICAgcHVibGljIHNldCBkb2N1bWVudEtleSh2YWx1ZTogc3RyaW5nKSB7XHJcbiAgICAgICAgdGhpcy5fZG9jdW1lbnRLZXkgPSB2YWx1ZSArIFwiXCI7IC8vIGZvcmNlIHN0cmluZ1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBnZXQgZG9jdW1lbnRLZXkoKTogc3RyaW5nIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5fZG9jdW1lbnRLZXk7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gVGhlIGFiaWxpdHkgdG8gZHJvcCBmaWxlcyBvbiB0aGUgcGFnZVxyXG4gICAgQElucHV0KClcclxuICAgIHB1YmxpYyBmdWxsUGFnZURyb3A6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgICAvLyBJZiB1c2VyIGdldHMgdGhlIGFiaWxpdHkgb2YgYWRkaW5nIGZpbGVzLlxyXG4gICAgQElucHV0KClcclxuICAgIHB1YmxpYyBjYW5BZGQ6IGJvb2xlYW4gPSB0cnVlO1xyXG5cclxuICAgIEBJbnB1dCgpXHJcbiAgICBwdWJsaWMgZHJvcE1lc3NhZ2U6IHN0cmluZztcclxuXHJcbiAgICAvLyBTaG93IGFkZCBidXR0b25cclxuICAgIEBJbnB1dCgpXHJcbiAgICBwdWJsaWMgYWRkV2l0aEJ1dHRvbjogYm9vbGVhbiA9IHRydWU7XHJcblxyXG4gICAgLy8gSWYgdXNlciBnZXRzIHRoZSBhYmlsaXR5IG9mIGRlbGV0aW5nIGZpbGVzLlxyXG4gICAgQElucHV0KClcclxuICAgIHB1YmxpYyBjYW5EZWxldGU6IGJvb2xlYW4gPSB0cnVlO1xyXG5cclxuICAgIEBJbnB1dCgpXHJcbiAgICBASW5wdXRCb29sZWFuKClcclxuICAgIHB1YmxpYyBub0RyYWdEcm9wT3JkZXJpbmc6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgICBASW5wdXQoKVxyXG4gICAgQElucHV0Qm9vbGVhbigpXHJcbiAgICBwdWJsaWMgc2V0IHJlYWRvbmx5KHZhbHVlOiBib29sZWFuKSB7XHJcbiAgICAgICAgdGhpcy5fcmVhZG9ubHkgPSB2YWx1ZTtcclxuXHJcbiAgICAgICAgaWYgKHRoaXMuX3BvcHVwICYmIHRoaXMuX3BvcHVwLmluc3RhbmNlKSB7XHJcbiAgICAgICAgICAgIHRoaXMuX3BvcHVwLmluc3RhbmNlLnJlYWRvbmx5ID0gdmFsdWU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBnZXQgcmVhZG9ubHkoKTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX3JlYWRvbmx5O1xyXG4gICAgfVxyXG5cclxuICAgIEBJbnB1dCgpXHJcbiAgICBASW5wdXRCb29sZWFuKClcclxuICAgIHB1YmxpYyBhc2tCZWZvcmVEZWxldGU6IGJvb2xlYW4gPSB0cnVlO1xyXG5cclxuICAgIEBJbnB1dCgpXHJcbiAgICBASW5wdXRCb29sZWFuKClcclxuICAgIHB1YmxpYyByZXNpemVJbWFnZXM6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgICBASW5wdXQoKVxyXG4gICAgcHVibGljIGxvY2tPcGVyYXRpb246IE9wZXJhdGlvbkNhbGxiYWNrU2ltcGxlRnVuY3Rpb24gPSBPcGVyYXRpb25XaXRoQWx3YXlzU3VjY2Vzc0NhbGxiYWNrO1xyXG5cclxuICAgIEBJbnB1dCgpXHJcbiAgICBwdWJsaWMgdW5sb2NrT3BlcmF0aW9uOiBPcGVyYXRpb25DYWxsYmFja1NpbXBsZUZ1bmN0aW9uID0gT3BlcmF0aW9uV2l0aEFsd2F5c1N1Y2Nlc3NDYWxsYmFjaztcclxuXHJcblxyXG5cclxuXHJcbiAgICBASW5wdXQoKVxyXG4gICAgcHVibGljIGJlZm9yZURlbGV0ZU9wZXJhdGlvbjogT3BlcmF0aW9uQ2FsbGJhY2tTaW1wbGVGdW5jdGlvbiA9IE9wZXJhdGlvbldpdGhBbHdheXNTdWNjZXNzQ2FsbGJhY2s7XHJcblxyXG4gICAgQElucHV0KClcclxuICAgIHB1YmxpYyBhZnRlckRlbGV0ZU9wZXJhdGlvbjogT3BlcmF0aW9uQ2FsbGJhY2tTaW1wbGVGdW5jdGlvbiA9IE9wZXJhdGlvbldpdGhBbHdheXNTdWNjZXNzQ2FsbGJhY2s7XHJcblxyXG4gICAgQElucHV0KClcclxuICAgIHB1YmxpYyBiZWZvcmVDcmVhdGVPcGVyYXRpb246IE9wZXJhdGlvbkNhbGxiYWNrU2ltcGxlRnVuY3Rpb24gPSBPcGVyYXRpb25XaXRoQWx3YXlzU3VjY2Vzc0NhbGxiYWNrO1xyXG5cclxuICAgIEBJbnB1dCgpXHJcbiAgICBwdWJsaWMgYWZ0ZXJDcmVhdGVPcGVyYXRpb246IE9wZXJhdGlvbkNhbGxiYWNrU2ltcGxlRnVuY3Rpb24gPSBPcGVyYXRpb25XaXRoQWx3YXlzU3VjY2Vzc0NhbGxiYWNrO1xyXG5cclxuICAgIEBJbnB1dCgpXHJcbiAgICBwdWJsaWMgYmVmb3JlRWRpdE9wZXJhdGlvbjogT3BlcmF0aW9uQ2FsbGJhY2tTaW1wbGVGdW5jdGlvbiA9IE9wZXJhdGlvbldpdGhBbHdheXNTdWNjZXNzQ2FsbGJhY2s7XHJcblxyXG4gICAgQElucHV0KClcclxuICAgIEBJbnB1dEJvb2xlYW4oKVxyXG4gICAgcHVibGljIGRvbnRBc2tCZWZvcmVEZWxldGU6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgICBASW5wdXQoKVxyXG4gICAgQElucHV0Qm9vbGVhbigpXHJcbiAgICBwdWJsaWMgbm9Pd25EZWxldGVPcGVyYXRpb246IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgICBwcml2YXRlIF9maWxlVHlwZTogRmlsZVR5cGU7XHJcblxyXG4gICAgQElucHV0KClcclxuICAgIHB1YmxpYyBzZXQgbWF4VXBsb2FkU2l6ZVBhcmFtKHZhbHVlOiBJbnRlcm5hbFBhcmFtKSB7XHJcbiAgICAgICAgaWYgKHZhbHVlKSB7XHJcbiAgICAgICAgICAgIHRoaXMuX3NldEludGVybmFsUGFyYW1PYmoodmFsdWUpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBASW5wdXQoKVxyXG4gICAgQElucHV0Qm9vbGVhbigpXHJcbiAgICBwdWJsaWMgdXNlV2l0aG91dFNldHRpbmdQcm9wczogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICAgIEBJbnB1dCgpXHJcbiAgICBwdWJsaWMgZmlsZXNVcGxvYWRDb25maWdPYmplY3RzOiBGaWxlc1VwbG9hZENvbmZpZ09iamVjdHM7XHJcblxyXG4gICAgQElucHV0KClcclxuICAgIEBJbnB1dEJvb2xlYW4oKVxyXG4gICAgcHVibGljIG1lZGljYWxVc2VyR3JvdXBzOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gICAgQElucHV0KClcclxuICAgIHB1YmxpYyB0YWdDYXRlZ29yeTogVGFnQ2F0ZWdvcnk7XHJcblxyXG4gICAgQElucHV0KClcclxuICAgIHB1YmxpYyB0YWdSZWZlcmVuY2VUYWJsZTogVGFibGVOYW1lO1xyXG5cclxuICAgIEBJbnB1dCgpXHJcbiAgICBASW5wdXRCb29sZWFuKClcclxuICAgIHB1YmxpYyBkaXNwbGF5UmVhZFdyaXRlQWNjZXNzOiBib29sZWFuO1xyXG5cclxuICAgIC8vIFVzZSB3aXRoIGN1c3RvbUZpbGVEcm9wRXZlbnRcclxuICAgIEBJbnB1dCgpIEBJbnB1dEJvb2xlYW4oKVxyXG4gICAgcHVibGljIHVzZUN1c3RvbUZpbGVEcm9wRXZlbnQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgICAvLyBVc2UgaW4gY29uanVuY3Rpb24gd2l0aCB1c2VDdXN0b21GaWxlRHJvcEV2ZW50XHJcbiAgICBAT3V0cHV0KClcclxuICAgIHB1YmxpYyBjdXN0b21GaWxlRHJvcEV2ZW50OiBFdmVudEVtaXR0ZXI8RmlsZUxpc3Q+ID0gbmV3IEV2ZW50RW1pdHRlcjxGaWxlTGlzdD4oKTtcclxuXHJcbiAgICAvLyBFbWl0cyBpZiB1c2VyIHdhbnRzIHRvIGFkZCBtdWx0aXBsZSBkb2N1bWVudHMgYXQgb25jZVxyXG4gICAgQE91dHB1dCgpXHJcbiAgICBwdWJsaWMgcmVhZG9ubHkgZG9jdW1lbnRzQWRkZWQ6IEV2ZW50RW1pdHRlcjxDb0RvY3VtZW50W10+ID0gbmV3IEV2ZW50RW1pdHRlcjxDb0RvY3VtZW50W10+KCk7XHJcblxyXG4gICAgQE91dHB1dCgpXHJcbiAgICBwdWJsaWMgcmVhZG9ubHkgZG9jdW1lbnREZWxldGVkOiBFdmVudEVtaXR0ZXI8Q29Eb2N1bWVudD4gPSBuZXcgRXZlbnRFbWl0dGVyPENvRG9jdW1lbnQ+KCk7XHJcblxyXG4gICAgLy8gRW1pdHMgZXZlcnkgdGltZSB0aGUgb3JkZXIgb2YgZG9jdW1lbnRzIHdhcyBjaGFuZ2VkXHJcbiAgICBAT3V0cHV0KClcclxuICAgIHB1YmxpYyByZWFkb25seSBzb3J0YWJsZUxpc3RDaGFuZ2VkOiBFdmVudEVtaXR0ZXI8Q29Eb2N1bWVudFtdPiA9IG5ldyBFdmVudEVtaXR0ZXI8Q29Eb2N1bWVudFtdPigpO1xyXG5cclxuICAgIEBPdXRwdXQoKVxyXG4gICAgcHVibGljIGRvY3VtZW50Q2hhbmdlRXZlbnQ6IEV2ZW50RW1pdHRlcjxDb0RvY3VtZW50PiA9IG5ldyBFdmVudEVtaXR0ZXI8Q29Eb2N1bWVudD4oKTtcclxuXHJcbiAgICAvLyBVc2UgdGhpcyBpZiBjb25zdW1lciByZXF1aXJlcyB0byBwZXJmb3JtIGV4dHJhIGFjdGlvbnMsIGxpa2UgbG9ja2luZyBhIHBhcmVudCBidXNpbmVzc09iamVjdCBpZiBpdCBjb250YWlucyB0aGUgY29sbGVjdGlvbiBvZiBkb2N1bWVudHMuIEVtaXQgd2l0aCB0cnVlIHdoZW4gcG9wdXAgb3BlbmVkLCBmYWxzZSBmb3IgY2xvc2VcclxuICAgIEBPdXRwdXQoKVxyXG4gICAgcHVibGljIHBvcHVwT3BlbmVkU3RhdGVDaGFuZ2U6IEV2ZW50RW1pdHRlcjxib29sZWFuPiA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcclxuXHJcbiAgICBASG9zdEJpbmRpbmcoXCJjbGFzcy5jby1zaGFyZWQtaGlkZGVuXCIpXHJcbiAgICBwdWJsaWMgaGlkZGVuOiBib29sZWFuO1xyXG5cclxuICAgIEBIb3N0TGlzdGVuZXIoXCJkcm9wXCIsIFtcIiRldmVudFwiXSlcclxuICAgIHB1YmxpYyBvbkRyb3AoZXZlbnQ6IERyYWdFdmVudCk6IHZvaWQge1xyXG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XHJcblxyXG4gICAgICAgIGlmICghdGhpcy51c2VDdXN0b21GaWxlRHJvcEV2ZW50KSB7XHJcbiAgICAgICAgICAgIHRoaXMuZmlsZXNQaWNrZWQoZXZlbnQuZGF0YVRyYW5zZmVyLmZpbGVzKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICB0aGlzLmN1c3RvbUZpbGVEcm9wRXZlbnQuZW1pdChldmVudC5kYXRhVHJhbnNmZXIuZmlsZXMpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdGhpcy5fY2xlYXJEcm9wem9uZSgpO1xyXG4gICAgfVxyXG5cclxuICAgIEBIb3N0TGlzdGVuZXIoXCJkcmFnZW5kXCIsIFtcIiRldmVudFwiXSlcclxuICAgIHB1YmxpYyBvbkRyYWdFbmQoZXZlbnQ6IERyYWdFdmVudCk6IHZvaWQge1xyXG4gICAgICAgIGV2ZW50LmRhdGFUcmFuc2Zlci5jbGVhckRhdGEoKTtcclxuICAgICAgICB0aGlzLl9jbGVhckRyb3B6b25lKCk7XHJcbiAgICB9XHJcblxyXG4gICAgQEhvc3RMaXN0ZW5lcihcImRyYWdvdmVyXCIsIFtcIiRldmVudFwiXSlcclxuICAgIHB1YmxpYyBvbkRyYWdPdmVyKGV2ZW50OiBEcmFnRXZlbnQpOiB2b2lkIHtcclxuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gICAgfVxyXG5cclxuICAgIEBIb3N0TGlzdGVuZXIoXCJkcmFnZW50ZXJcIiwgW1wiJGV2ZW50XCJdKVxyXG4gICAgcHVibGljIG9uRHJhZ0VudGVyKGV2ZW50OiBEcmFnRXZlbnQpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLl9kcmFnRW50ZXJUYXJnZXQgPSBldmVudC50YXJnZXQ7XHJcbiAgICAgICAgdGhpcy5fc2hvd0Ryb3B6b25lKCk7XHJcbiAgICB9XHJcblxyXG4gICAgQEhvc3RMaXN0ZW5lcihcImRyYWdsZWF2ZVwiLCBbXCIkZXZlbnRcIl0pXHJcbiAgICBwdWJsaWMgb25EcmFnTGVhdmUoZXZlbnQ6IERyYWdFdmVudCk6IHZvaWQge1xyXG4gICAgICAgIGlmIChldmVudC50YXJnZXQgPT09IHRoaXMuX2RyYWdFbnRlclRhcmdldCkge1xyXG4gICAgICAgICAgICB0aGlzLl9jbGVhckRyb3B6b25lKCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBkb2N1bWVudFVuZGVyRWRpdDogQ29Eb2N1bWVudDtcclxuICAgIHB1YmxpYyBhY2NlcHRlZFVwbG9hZEZvcm1hdHM6IHN0cmluZztcclxuXHJcbiAgICBwcm90ZWN0ZWQgX21heFVwbG9hZEZpbGVTaXplOiBudW1iZXI7XHJcblxyXG4gICAgcHJpdmF0ZSBfZHJhZ0VudGVyVGFyZ2V0OiBFdmVudFRhcmdldDtcclxuICAgIHByaXZhdGUgX2RvY3VtZW50S2V5OiBzdHJpbmcgPSBcIlwiO1xyXG4gICAgcHJpdmF0ZSBfZHJvcFpvbmU6IENvbXBvbmVudFJlZjxBcHBGaWxlRHJvcHpvbmVDb21wb25lbnQ+O1xyXG4gICAgcHJpdmF0ZSBfcG9wdXA6IENvbXBvbmVudFJlZjxGaWxlVXBsb2FkUG9wdXBDb21wb25lbnQ+O1xyXG4gICAgcHJpdmF0ZSBfZG9jQ2hhbmdlU3ViOiBTdWJzY3JpcHRpb247XHJcbiAgICBwcml2YXRlIF9wb3B1cENsb3NlU3ViOiBTdWJzY3JpcHRpb247XHJcbiAgICBwcml2YXRlIF9yZWFkb25seTogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICAgIC8vIHByaXZhdGUgc3RhdGljIHJlYWRvbmx5IF9kdW1teVRydWVGdW5jdGlvbjogT3BlcmF0aW9uQ2FsbGJhY2tTaW1wbGVGdW5jdGlvbiA9IChvYmplY3Q6IGFueSkgPT4gUHJvbWlzZS5yZXNvbHZlKHRydWUpO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKFxyXG5cclxuICAgICAgICAvL3Byb3RlY3RlZCBfcHJvbXB0U2VydmljZTogUHJvbXB0U2VydmljZSxcclxuICAgICAgICBwcm90ZWN0ZWQgX2RpY3Rpb25hcnlTZXJ2aWNlOiBTaGFyZWRDb21wb25lbnRzRGljdGlvbmFyeVNlcnZpY2UsXHJcbiAgICAgICAgLy9wcm90ZWN0ZWQgX3VzZXJTZXJ2aWNlOiBVc2VyU2VydmljZSxcclxuICAgICAgICBwcm90ZWN0ZWQgX2NvbnRhaW5lcjogVmlld0NvbnRhaW5lclJlZixcclxuICAgICAgICBwcm90ZWN0ZWQgX2ZhY3Rvcnk6IENvbXBvbmVudEZhY3RvcnlSZXNvbHZlcixcclxuICAgICAgICAvL3Byb3RlY3RlZCBfZ2VuZXJhbERhbFJlcG9zaXRvcnk6IEdlbmVyYWxEYWxSZXBvc2l0b3J5LFxyXG4gICAgICAgIC8vcHJvdGVjdGVkIF9kYXRhU2VydmljZTogRGF0YVNlcnZpY2UsXHJcbiAgICAgICAgLy9wcm90ZWN0ZWQgX2Jhc2VEYXRhRGFsUmVwb3NpdG9yeTogQmFzZURhdGFEYWxSZXBvc2l0b3J5LFxyXG4gICAgICAgIC8vcHJvdGVjdGVkIF9jb0RvY3VtZW50RGF0YUxvYWRlcjogQ29Eb2N1bWVudERhdGFMb2FkZXJTZXJ2aWNlXHJcbiAgICApIHtcclxuXHJcbiAgICB9XHJcblxyXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5fY2xlYXJEcm9wem9uZSgpO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgX3Nob3dEcm9wem9uZSgpOiB2b2lkIHtcclxuICAgICAgICBpZiAoIXRoaXMuX2Ryb3Bab25lKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IGZhY3Q6IENvbXBvbmVudEZhY3Rvcnk8QXBwRmlsZURyb3B6b25lQ29tcG9uZW50PiA9IHRoaXMuX2ZhY3RvcnkucmVzb2x2ZUNvbXBvbmVudEZhY3RvcnkoQXBwRmlsZURyb3B6b25lQ29tcG9uZW50KTtcclxuICAgICAgICAgICAgdGhpcy5fZHJvcFpvbmUgPSB0aGlzLl9jb250YWluZXIuY3JlYXRlQ29tcG9uZW50KGZhY3QpO1xyXG4gICAgICAgICAgICB0aGlzLl9kcm9wWm9uZS5pbnN0YW5jZS5jdXN0b21Ecm9wQWN0aW9uTWVzc2FnZSA9IHRoaXMuZHJvcE1lc3NhZ2U7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgX2NsZWFyRHJvcHpvbmUoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5fY29udGFpbmVyLmNsZWFyKCk7XHJcbiAgICAgICAgaWYgKHRoaXMuX2Ryb3Bab25lKSB7XHJcbiAgICAgICAgICAgIHRoaXMuX2Ryb3Bab25lLmRlc3Ryb3koKTtcclxuICAgICAgICAgICAgdGhpcy5fZHJvcFpvbmUgPSB1bmRlZmluZWQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8vIFJlbW92ZSBmaWxlIGZyb20gdXBsb2FkIGFycmF5LlxyXG4gICAgcHVibGljIGFzeW5jIGhhbmRsZURlbGV0ZShmaWxlOiBDb0RvY3VtZW50KTogUHJvbWlzZTxib29sZWFuPiB7XHJcbiAgICAgICAgbGV0IHN1Y2Nlc3M6IGJvb2xlYW4gPSBhd2FpdCB0aGlzLmJlZm9yZURlbGV0ZU9wZXJhdGlvbihmaWxlKTtcclxuICAgICAgICB0cnkge1xyXG4gICAgICAgICAgICBpZiAoc3VjY2Vzcykge1xyXG4gICAgICAgICAgICAgICAgYXdhaXQgdGhpcy5fZGVsZXRlKGZpbGUpO1xyXG4gICAgICAgICAgICAgICAgc3VjY2VzcyA9IHRydWU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9IGZpbmFsbHkge1xyXG4gICAgICAgICAgICBhd2FpdCB0aGlzLmFmdGVyRGVsZXRlT3BlcmF0aW9uKGZpbGUpO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHN1Y2Nlc3MpO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgYXN5bmMgX2RlbGV0ZShmaWxlOiBDb0RvY3VtZW50KTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICAgICAgbGV0IGRvRGVsZXRlOiBib29sZWFuID0gdHJ1ZTtcclxuICAgICAgICBpZiAoIXRoaXMuZG9udEFza0JlZm9yZURlbGV0ZSkge1xyXG4gICAgICAgICAgLy9UT0RPIG1ha2UgZGlhbG9nU2VydmljZVxyXG4gICAgICAgICAgICAvL2RvRGVsZXRlID0gYXdhaXQgdGhpcy5fcHJvbXB0U2VydmljZS5zaG93WWVzTm8oXCJNRVNTQUdFX0RFTEVURV9SRUNPUkRfUVVFU1RJT05cIik7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChkb0RlbGV0ZSkge1xyXG4gICAgICAgICAgICBpZiAoIXRoaXMubm9Pd25EZWxldGVPcGVyYXRpb24pIHtcclxuICAgICAgICAgICAgICAgIEFycmF5VXRpbHMuUmVtb3ZlRWxlbWVudChmaWxlLCB0aGlzLmRvY3VtZW50cyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgdGhpcy5kb2N1bWVudERlbGV0ZWQuZW1pdChmaWxlKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGhhbmRsZVNvcnRpbmdDaGFuZ2UoZG9jczogQ29Eb2N1bWVudFtdKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5zb3J0YWJsZUxpc3RDaGFuZ2VkLmVtaXQoZG9jcyk7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGFzeW5jIGhhbmRsZUZpbGVDaGFuZ2UoZXZlbnQ6IGFueSk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgICAgIGlmIChldmVudCAmJiBldmVudC50YXJnZXQgJiYgZXZlbnQudGFyZ2V0LmZpbGVzICYmIGV2ZW50LnRhcmdldC5maWxlcy5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICAgIC8vIGNoZWNrIGZpbGUgc2l6ZXMgYW5kIGV4dGVuc2lvblxyXG4gICAgICAgICAgICAvL1RvZG86IGZpeCB0aGlzXHJcbiAgICAgICAgICAgIC8vY29uc3QgYWxsb3dlZEV4dGVuc2lvbnMgPSBhd2FpdCB0aGlzLl9iYXNlRGF0YURhbFJlcG9zaXRvcnkuZ2V0QWxsb3dlZEV4dGVuc2lvbnMoKTtcclxuICAgICAgICAgICAgbGV0IGFsbEZpbGVzQXJlU21hbGxFbm91Z2g6IGJvb2xlYW4gPSB0cnVlO1xyXG4gICAgICAgICAgICBsZXQgYWxsRmlsZXNIYXZlQWxsb3dlZEV4dGVuc2lvbnM6IGJvb2xlYW4gPSB0cnVlO1xyXG4gICAgICAgICAgICBjb25zdCBzaXplVG9Db21wYXJlOiBudW1iZXIgPSB0aGlzLl9tYXhVcGxvYWRGaWxlU2l6ZSA/IHRoaXMuX21heFVwbG9hZEZpbGVTaXplIDogdW5kZWZpbmVkO1xyXG4gICAgICAgICAgICBjb25zdCBsZW46IG51bWJlciA9IGV2ZW50LnRhcmdldC5maWxlcy5sZW5ndGg7XHJcbiAgICAgICAgICAgIGZvciAobGV0IGk6IG51bWJlciA9IDA7IGkgPCBsZW47IGkrKykge1xyXG4gICAgICAgICAgICAgICAgY29uc3QgdXBsb2FkU2l6ZUFsbG93ZWQgPSBGaWxlVXRpbHMuQ2hlY2tNYXhVcGxvYWRTaXplKGV2ZW50LnRhcmdldC5maWxlc1tpXSwgc2l6ZVRvQ29tcGFyZSk7XHJcbiAgICAgICAgICAgICAgICBpZiAoIXVwbG9hZFNpemVBbGxvd2VkKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgYWxsRmlsZXNBcmVTbWFsbEVub3VnaCA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgY29uc3QgZXh0ZW5zaW9uQWxsb3dlZCA9IHRydWUvL0ZpbGVVdGlscy5DaGVja0V4dGVuc2lvbihldmVudC50YXJnZXQuZmlsZXNbaV0sIGFsbG93ZWRFeHRlbnNpb25zKTtcclxuICAgICAgICAgICAgICAgIGlmICghZXh0ZW5zaW9uQWxsb3dlZCkge1xyXG4gICAgICAgICAgICAgICAgICAgIGFsbEZpbGVzSGF2ZUFsbG93ZWRFeHRlbnNpb25zID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGlmICghYWxsRmlsZXNBcmVTbWFsbEVub3VnaCkge1xyXG4gICAgICAgICAgICAgIC8vVE9ETyBtYWtlIGRpYWxvZ1NlcnZpY2VcclxuICAgICAgICAgICAgICAgIC8vdGhpcy5fcHJvbXB0U2VydmljZS5zaG93V2FybmluZyh0aGlzLl9kaWN0aW9uYXJ5U2VydmljZS5nZXQoXCJGSUxFX1RPT19MQVJHRV9UT19VUExPQURcIiwgdHJ1ZSwgXCJcIiArIFtGaWxlVXRpbHMuZ2V0TWF4VXBsb2FkU2l6ZUluTWIoc2l6ZVRvQ29tcGFyZSldKSk7XHJcbiAgICAgICAgICAgIH0gZWxzZSBpZiAoIWFsbEZpbGVzSGF2ZUFsbG93ZWRFeHRlbnNpb25zKSB7XHJcbiAgICAgICAgICAgICAgICAvL2NvbnN0IGV4dGVuc2lvbnNMaXN0ID0gYWxsb3dlZEV4dGVuc2lvbnMubWFwKGFsbG93ZWRFeHRlbnNpb24gPT4gYWxsb3dlZEV4dGVuc2lvbi5leHRlbnNpb24pLnNvcnQoKS5qb2luKFwiLCBcIik7XHJcbiAgICAgICAgICAgICAgICAvL3RoaXMuX3Byb21wdFNlcnZpY2Uuc2hvd1dhcm5pbmcodGhpcy5fZGljdGlvbmFyeVNlcnZpY2UuZ2V0KFwiRklMRV9IQVNfRElTQUxMT1dFRF9FWFRFTlNJT05cIiwgZmFsc2UsIGV4dGVuc2lvbnNMaXN0KSk7XHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICBjb25zdCBmaWxlc1RvQWRkOiBDb0RvY3VtZW50W10gPSBhd2FpdCB0aGlzLmNvbnZlcnRGaWxlc0ludG9Db0RvY3VtZW50cyhldmVudC50YXJnZXQuZmlsZXMpO1xyXG5cclxuICAgICAgICAgICAgICAgIGlmIChmaWxlc1RvQWRkLmxlbmd0aCA+IDEpIHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmRvY3VtZW50c0FkZGVkLmVtaXQoZmlsZXNUb0FkZCk7XHJcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLnVzZVdpdGhvdXRTZXR0aW5nUHJvcHMpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5kb2N1bWVudHNBZGRlZC5uZXh0KGZpbGVzVG9BZGQpO1xyXG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZG9jdW1lbnRVbmRlckVkaXQgPSBmaWxlc1RvQWRkWzBdO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm9wZW5Qb3B1cCgpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgYXN5bmMgaGFuZGxlRWRpdERvY3VtZW50Q2xpY2soZG9jVG9FZGl0OiBDb0RvY3VtZW50KTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICAgICAgdGhpcy5kb2N1bWVudFVuZGVyRWRpdCA9IGRvY1RvRWRpdDtcclxuICAgICAgICBjb25zdCBzaG93UG9wdXA6IGJvb2xlYW4gPSBhd2FpdCB0aGlzLmJlZm9yZUVkaXRPcGVyYXRpb24oZG9jVG9FZGl0KTtcclxuICAgICAgICBpZiAoc2hvd1BvcHVwKSB7XHJcbiAgICAgICAgICAgIHRoaXMub3BlblBvcHVwKCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBhc3luYyBvcGVuUG9wdXAoKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICAgICAgdGhpcy5fY3JlYXRlQW5kRmlsbFBvcHVwSW5zdGFuY2UoKTtcclxuXHJcbiAgICAgICAgdGhpcy5fZG9jQ2hhbmdlU3ViID0gdGhpcy5fcG9wdXAuaW5zdGFuY2UuZG9jdW1lbnRDaGFuZ2VFdmVudC5zdWJzY3JpYmUoKGRvYzogQ29Eb2N1bWVudCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLmRvY3VtZW50Q2hhbmdlRXZlbnQuZW1pdChkb2MpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBvcGVuUG9wdXBUb0FkZERvY3VtZW50QnlVcmwoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5fY3JlYXRlRG9jdW1lbnRUb0FkZEJ5VXJsKCk7XHJcbiAgICAgICAgdGhpcy5fY3JlYXRlQW5kRmlsbFBvcHVwSW5zdGFuY2UodHJ1ZSk7XHJcblxyXG4gICAgICAgIHRoaXMuX2RvY0NoYW5nZVN1YiA9IHRoaXMuX3BvcHVwLmluc3RhbmNlLmRvY3VtZW50Q2hhbmdlRXZlbnQuc3Vic2NyaWJlKChkb2M6IENvRG9jdW1lbnQpID0+IHtcclxuICAgICAgICAgICAgZG9jLmZpbGVOYW1lID0gZG9jLmZpbGVQYXRoO1xyXG4gICAgICAgICAgICB0aGlzLmRvY3VtZW50Q2hhbmdlRXZlbnQuZW1pdChkb2MpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgX2NyZWF0ZURvY3VtZW50VG9BZGRCeVVybCgpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLmRvY3VtZW50VW5kZXJFZGl0ID0gbmV3IENvRG9jdW1lbnQoKTtcclxuICAgICAgICB0aGlzLmRvY3VtZW50VW5kZXJFZGl0LnRhYmxlID0gdGhpcy5kb2N1bWVudFRhYmxlO1xyXG4gICAgICAgIHRoaXMuZG9jdW1lbnRVbmRlckVkaXQua2V5ID0gdGhpcy5kb2N1bWVudEtleTtcclxuICAgICAgICB0aGlzLmRvY3VtZW50VW5kZXJFZGl0LmZpbGVUeXBlID0gdGhpcy5maWxlVHlwZTtcclxuICAgICAgICB0aGlzLmRvY3VtZW50VW5kZXJFZGl0LmRvY3VtZW50VHlwZSA9IENvRG9jdW1lbnRUeXBlLlNhdmVBc0xpbmtPblJhbmRvbUxvY2F0aW9uO1xyXG4gICAgICAgIHRoaXMuZG9jdW1lbnRVbmRlckVkaXQucGF0aElzVXJsID0gdHJ1ZTtcclxuICAgICAgICAvL1RPRE8gRml4IHVzZXIgSW5wdXRcclxuICAgICAgICAvL3RoaXMuZG9jdW1lbnRVbmRlckVkaXQuY3JlYXRpb25Vc2VyID0gdGhpcy5fdXNlclNlcnZpY2UudXNlck5hbWUudG9VcHBlckNhc2UoKTtcclxuICAgICAgICAvL3RoaXMuZG9jdW1lbnRVbmRlckVkaXQubW9kaWZpZWRVc2VyID0gdGhpcy5fdXNlclNlcnZpY2UudXNlck5hbWUudG9VcHBlckNhc2UoKTtcclxuICAgICAgICB0aGlzLmRvY3VtZW50VW5kZXJFZGl0LmNyZWF0aW9uRGF0ZSA9IG5ldyBEYXRlKCk7XHJcbiAgICAgICAgdGhpcy5kb2N1bWVudFVuZGVyRWRpdC5tb2RpZmllZERhdGUgPSBuZXcgRGF0ZSgpO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgX2NyZWF0ZUFuZEZpbGxQb3B1cEluc3RhbmNlKGFkZERvY3VtZW50QnlVcmw6IGJvb2xlYW4gPSBmYWxzZSk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMucG9wdXBPcGVuZWRTdGF0ZUNoYW5nZS5lbWl0KHRydWUpO1xyXG5cclxuICAgICAgICBjb25zdCBmYWN0b3J5OiBDb21wb25lbnRGYWN0b3J5PEZpbGVVcGxvYWRQb3B1cENvbXBvbmVudD4gPSB0aGlzLl9mYWN0b3J5LnJlc29sdmVDb21wb25lbnRGYWN0b3J5KEZpbGVVcGxvYWRQb3B1cENvbXBvbmVudCk7XHJcblxyXG4gICAgICAgIHRoaXMuX3BvcHVwID0gdGhpcy5fY29udGFpbmVyLmNyZWF0ZUNvbXBvbmVudChmYWN0b3J5KTtcclxuXHJcbiAgICAgICAgdGhpcy5fcG9wdXAuaW5zdGFuY2UucmVhZG9ubHkgPSB0aGlzLl9yZWFkb25seTtcclxuICAgICAgICB0aGlzLl9wb3B1cC5pbnN0YW5jZS5hZGREb2N1bWVudEJ5VXJsID0gYWRkRG9jdW1lbnRCeVVybDtcclxuICAgICAgICB0aGlzLl9wb3B1cC5pbnN0YW5jZS5oYXNQdWJsaWNBY2Nlc3NWaXNpYmxlID0gdGhpcy5kb2N1bWVudFRhYmxlID09PSBUYWJsZU5hbWUuR29vZHM7XHJcbiAgICAgICAgdGhpcy5fcG9wdXAuaW5zdGFuY2Uuc2hvd0RvY3VtZW50UmVwb3J0UGlja2VyID0gKHRoaXMuZG9jdW1lbnRUYWJsZSA9PT0gVGFibGVOYW1lLlRyYW5zYWN0aW9ucyB8fCB0aGlzLmRvY3VtZW50VGFibGUgPT09IFRhYmxlTmFtZS5UcmFuc2FjdGlvbkxpbmVzKTtcclxuICAgICAgICB0aGlzLl9wb3B1cC5pbnN0YW5jZS5kb2N1bWVudFVuZGVyRWRpdCA9IHRoaXMuZG9jdW1lbnRVbmRlckVkaXQ7XHJcbiAgICAgICAgdGhpcy5fcG9wdXAuaW5zdGFuY2UuZmlsZXNVcGxvYWRDb25maWdPYmplY3RzID0gdGhpcy5maWxlc1VwbG9hZENvbmZpZ09iamVjdHM7XHJcbiAgICAgICAgdGhpcy5fcG9wdXAuaW5zdGFuY2UubWVkaWNhbFVzZXJHcm91cHMgPSB0aGlzLm1lZGljYWxVc2VyR3JvdXBzO1xyXG4gICAgICAgIHRoaXMuX3BvcHVwLmluc3RhbmNlLnRhZ0NhdGVnb3J5ID0gdGhpcy50YWdDYXRlZ29yeTtcclxuICAgICAgICB0aGlzLl9wb3B1cC5pbnN0YW5jZS5kaXNwbGF5UmVhZFdyaXRlQWNjZXNzID0gdGhpcy5kaXNwbGF5UmVhZFdyaXRlQWNjZXNzO1xyXG4gICAgICAgIHRoaXMuX3BvcHVwLmluc3RhbmNlLnRhZ1JlZmVyZW5jZVRhYmxlID0gdGhpcy50YWdSZWZlcmVuY2VUYWJsZTtcclxuICAgICAgICB0aGlzLl9wb3B1cC5pbnN0YW5jZS5wdWJsaWNhdGlvbklkcyA9IFJlZkNvZGVVdGlscy5HZXRNdWx0aVJlZkNvZGVDaG9pY2VzKHRoaXMuZG9jdW1lbnRVbmRlckVkaXQucHVibGljYXRpb24pO1xyXG4gICAgICAgIHRoaXMuX3BvcHVwLmluc3RhbmNlLnN0b3JlR3JvdXBJZHMgPSB0aGlzLmRvY3VtZW50VW5kZXJFZGl0LnJldGFpbEZvcm11bGFzO1xyXG5cclxuICAgICAgICB0aGlzLl9wcmVwYXJlRmlsZVJpZ2h0cygpO1xyXG5cclxuICAgICAgICB0aGlzLl9wb3B1cENsb3NlU3ViID0gdGhpcy5fcG9wdXAuaW5zdGFuY2UucG9wdXBDbG9zZUV2ZW50LnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuX3VubG9ja0RvY3VtZW50KCk7XHJcbiAgICAgICAgICAgIHRoaXMucG9wdXBPcGVuZWRTdGF0ZUNoYW5nZS5lbWl0KGZhbHNlKTtcclxuICAgICAgICAgICAgdGhpcy5fcG9wdXBDbG9zZVN1Yi51bnN1YnNjcmliZSgpO1xyXG4gICAgICAgICAgICB0aGlzLl9kb2NDaGFuZ2VTdWIudW5zdWJzY3JpYmUoKTtcclxuICAgICAgICAgICAgdGhpcy5fcG9wdXAuZGVzdHJveSgpO1xyXG4gICAgICAgICAgICB0aGlzLl9wb3B1cCA9IHVuZGVmaW5lZDtcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBwcm90ZWN0ZWQgYXN5bmMgY29udmVydEZpbGVzSW50b0NvRG9jdW1lbnRzKGZpbGVzOiBGaWxlTGlzdCk6IFByb21pc2U8Q29Eb2N1bWVudFtdPiB7XHJcbiAgICAgICAgY29uc3QgYW1vdW50T2ZGaWxlczogbnVtYmVyID0gZmlsZXMubGVuZ3RoO1xyXG4gICAgICAgIGNvbnN0IGZpbGVzVG9BZGQ6IENvRG9jdW1lbnRbXSA9IFtdO1xyXG5cclxuICAgICAgICBmb3IgKGxldCBpOiBudW1iZXIgPSAwOyBpIDwgYW1vdW50T2ZGaWxlczsgaSsrKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IGZpbGVBc0RvY3VtZW50OiBDb0RvY3VtZW50ID0gYXdhaXQgdGhpcy5fZ2V0RmlsZUFzRG9jdW1lbnQoZmlsZXNbaV0pO1xyXG4gICAgICAgICAgICBmaWxlQXNEb2N1bWVudC5pbmRleCA9IENvRG9jdW1lbnRTaGFyZWRGaWVsZExvZ2ljLkdlbmVyYXRlQXZhaWxhYmxlSW5kZXhOcih0aGlzLmRvY3VtZW50cyB8fCBbXSkgKyBpO1xyXG4gICAgICAgICAgICBmaWxlc1RvQWRkLnB1c2goZmlsZUFzRG9jdW1lbnQpO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gZmlsZXNUb0FkZDtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgYXN5bmMgZmlsZXNQaWNrZWQoZmlsZXM6IEZpbGVMaXN0KTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICAgICAgaWYgKGZpbGVzICYmIGZpbGVzLmxlbmd0aCkge1xyXG4gICAgICAgICAgICBsZXQgYWxsRmlsZXNBcmVWYWxpZDogYm9vbGVhbiA9IHRydWU7XHJcbiAgICAgICAgICAgIGNvbnN0IGFtb3VudE9mRmlsZXM6IG51bWJlciA9IGZpbGVzLmxlbmd0aDtcclxuICAgICAgICAgICAgZm9yIChsZXQgaTogbnVtYmVyID0gMDsgaSA8IGFtb3VudE9mRmlsZXM7IGkrKykge1xyXG4gICAgICAgICAgICAgICAgaWYgKCFGaWxlVXRpbHMuQ2hlY2tNYXhVcGxvYWRTaXplKGZpbGVzW2ldLCB0aGlzLl9tYXhVcGxvYWRGaWxlU2l6ZSkpIHtcclxuICAgICAgICAgICAgICAgICAgICBhbGxGaWxlc0FyZVZhbGlkID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGlmICghYWxsRmlsZXNBcmVWYWxpZCkge1xyXG4gICAgICAgICAgICAgIC8vVE9ETyBtYWtlIGRpYWxvZ1NlcnZpY2VcclxuICAgICAgICAgICAgICAgIC8vdGhpcy5fcHJvbXB0U2VydmljZS5zaG93V2FybmluZyh0aGlzLl9kaWN0aW9uYXJ5U2VydmljZS5nZXQoXCJGSUxFX1RPT19MQVJHRV9UT19VUExPQURcIiwgdHJ1ZSwgXCJcIiArIEZpbGVVdGlscy5nZXRNYXhVcGxvYWRTaXplSW5NYih0aGlzLl9tYXhVcGxvYWRGaWxlU2l6ZSkudG9TdHJpbmcoKSkpO1xyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgY29uc3QgZmlsZXNUb0FkZDogQ29Eb2N1bWVudFtdID0gYXdhaXQgdGhpcy5jb252ZXJ0RmlsZXNJbnRvQ29Eb2N1bWVudHMoZmlsZXMpO1xyXG5cclxuICAgICAgICAgICAgICAgIGlmIChmaWxlc1RvQWRkLmxlbmd0aCA+IDEgfHwgdGhpcy51c2VXaXRob3V0U2V0dGluZ1Byb3BzKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5kb2N1bWVudHNBZGRlZC5lbWl0KGZpbGVzVG9BZGQpO1xyXG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmRvY3VtZW50VW5kZXJFZGl0ID0gZmlsZXNUb0FkZFswXTsgLy8gU2V0dGluZyBkb2NVbmRlckVkaXQgb3BlbnMgdGhlIHBvcHVwIHdpbmRvd1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMub3BlblBvcHVwKCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGhhbmRsZUFjY2VwdGVkRmlsZVR5cGVzTG9hZGVkKHZhbHVlOiBGaWxlVHlwZSk6IHZvaWQge1xyXG4gICAgICAgIC8vVE9ETyBmaXggbG9hZGluZ1xyXG4gICAgICAgIC8vdGhpcy5hY2NlcHRlZFVwbG9hZEZvcm1hdHMgPSB0aGlzLl9jb0RvY3VtZW50RGF0YUxvYWRlci5nZXRBbGxvd2VkRXh0ZW5zaW9uc0ZvclR5cGUodmFsdWUpO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgYXN5bmMgX2dldEZpbGVBc0RvY3VtZW50KGZpbGU6IEZpbGUpOiBQcm9taXNlPENvRG9jdW1lbnQ+IHtcclxuICAgICAgICBjb25zdCBmaWxlQXNDb0RvY3VtZW50OiBDb0RvY3VtZW50ID0gYXdhaXQgRmlsZVV0aWxzLlJlYWRGaWxlQXNOZXdDb0RvY3VtZW50KGZpbGUsIHRoaXMucmVzaXplSW1hZ2VzKTtcclxuICAgICAgICAvLyBzZXQgc29tZSBleHRyYSBrbm93biBmaWVsZHMgZm9yIHRoZSBjb2RvY3VtZW50OlxyXG4gICAgICAgIGZpbGVBc0NvRG9jdW1lbnQudGFibGUgPSB0aGlzLmRvY3VtZW50VGFibGU7XHJcbiAgICAgICAgZmlsZUFzQ29Eb2N1bWVudC5rZXkgPSB0aGlzLmRvY3VtZW50S2V5O1xyXG4gICAgICAgIC8vVE9ETyBmaXggYWRkIHVzZXJzXHJcbiAgICAgICAgLy9maWxlQXNDb0RvY3VtZW50LmNyZWF0aW9uVXNlciA9IHRoaXMuX3VzZXJTZXJ2aWNlLnVzZXJOYW1lLnRvVXBwZXJDYXNlKCk7XHJcbiAgICAgICAgLy9maWxlQXNDb0RvY3VtZW50Lm1vZGlmaWVkVXNlciA9IHRoaXMuX3VzZXJTZXJ2aWNlLnVzZXJOYW1lLnRvVXBwZXJDYXNlKCk7XHJcbiAgICAgICAgZmlsZUFzQ29Eb2N1bWVudC5jcmVhdGlvbkRhdGUgPSBuZXcgRGF0ZSgpO1xyXG4gICAgICAgIGZpbGVBc0NvRG9jdW1lbnQubW9kaWZpZWREYXRlID0gbmV3IERhdGUoKTtcclxuICAgICAgICBmaWxlQXNDb0RvY3VtZW50LmZpbGVUeXBlID0gdGhpcy5maWxlVHlwZSA/IHRoaXMuZmlsZVR5cGUgOiBGaWxlVXRpbHMuSXNJbWFnZUZpbGUoZmlsZSkgPyBGaWxlVHlwZS5JbWFnZSA6IEZpbGVUeXBlLkRvY3VtZW50O1xyXG5cclxuICAgICAgICBpZiAoZmlsZUFzQ29Eb2N1bWVudCkge1xyXG4gICAgICAgICAgICByZXR1cm4gZmlsZUFzQ29Eb2N1bWVudDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBhc3luYyBfc2V0SW50ZXJuYWxQYXJhbU9iaih2YWx1ZTogSW50ZXJuYWxQYXJhbSk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgICAgIC8vVE9ETyBmaXggcGFyYW1zXHJcbiAgICAgICAgLy9jb25zdCBwYXJhbTogSW50ZXJuYWxQYXJhbWV0ZXJPYmplY3QgPSBhd2FpdCB0aGlzLl9nZW5lcmFsRGFsUmVwb3NpdG9yeS5nZXRJbnRlcm5hbFBhcmFtT2JqZWN0KHZhbHVlKTtcclxuICAgICAgICAvL3RoaXMuX21heFVwbG9hZEZpbGVTaXplID0gaXNOYU4ocGFyc2VJbnQocGFyYW0udmFsdWUsIDApKSA/IHVuZGVmaW5lZCA6IHBhcnNlSW50KHBhcmFtLnZhbHVlLCAwKTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGFzeW5jIF9sb2NrRG9jdW1lbnQoKTogUHJvbWlzZTxib29sZWFuPiB7XHJcbiAgICAgICAgaWYgKCF0aGlzLmRvY3VtZW50VW5kZXJFZGl0LmRvY3VtZW50SWQpIHtcclxuICAgICAgICAgICAgcmV0dXJuIHRydWU7IC8vIE5ldyBkb2N1bWVudCBkb2VzIG5vdCBoYXZlIGFuIElEIGFuZCB0aGVyZWZvcmUgZG9lcyBub3QgaGF2ZSB0byBiZSBsb2NrZWRcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGNvbnN0IGxvY2tPazogYm9vbGVhbiA9IGF3YWl0IHRoaXMubG9ja09wZXJhdGlvbihDb0RvY3VtZW50KTtcclxuICAgICAgICByZXR1cm4gbG9ja09rO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgYXN5bmMgX3VubG9ja0RvY3VtZW50KCk6IFByb21pc2U8Ym9vbGVhbj4ge1xyXG4gICAgICBpZiAoIXRoaXMuZG9jdW1lbnRVbmRlckVkaXQuZG9jdW1lbnRJZCkge1xyXG4gICAgICAgIHJldHVybiB0cnVlOyAvLyBOZXcgZG9jdW1lbnQgZG9lcyBub3QgaGF2ZSBhbiBJRCBhbmQgdGhlcmVmb3JlIGRvZXMgbm90IGhhdmUgdG8gYmUgbG9ja2VkXHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGNvbnN0IHVubG9ja09rOiBib29sZWFuID0gYXdhaXQgdGhpcy51bmxvY2tPcGVyYXRpb24oQ29Eb2N1bWVudCk7XHJcbiAgICAgIHJldHVybiB1bmxvY2tPaztcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIF9wcmVwYXJlRmlsZVJpZ2h0cygpOiB2b2lkIHtcclxuICAgICAgICBjb25zdCBsZW46IG51bWJlciA9IHRoaXMuZG9jdW1lbnRVbmRlckVkaXQucmlnaHRzLmxlbmd0aDtcclxuICAgICAgICBmb3IgKGxldCBpOiBudW1iZXIgPSAwOyBpIDwgbGVuOyBpKyspIHtcclxuICAgICAgICAgICAgY29uc3QgcmlnaHQ6IENvRG9jdW1lbnRSaWdodCA9IHRoaXMuZG9jdW1lbnRVbmRlckVkaXQucmlnaHRzW2ldO1xyXG4gICAgICAgICAgICBpZiAocmlnaHQucmlnaHRMZXZlbCA9PT0gT2JqZWN0UmlnaHRUeXBlLlJlYWRXcml0ZSkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5fcG9wdXAuaW5zdGFuY2UudXNlckdyb3Vwc0ZvcldyaXRlLnB1c2gocmlnaHQudXNlckdyb3VwSWQpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGlmIChyaWdodC5yaWdodExldmVsID09PSBPYmplY3RSaWdodFR5cGUuUmVhZE9ubHkpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuX3BvcHVwLmluc3RhbmNlLnVzZXJHcm91cHNGb3JSZWFkLnB1c2gocmlnaHQudXNlckdyb3VwSWQpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiJdfQ==