nuxeo-development-framework 6.0.8 → 6.1.0

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 (1712) hide show
  1. package/bundles/nuxeo-development-framework.umd.js +285 -360
  2. package/bundles/nuxeo-development-framework.umd.js.map +1 -1
  3. package/esm2015/lib/components/activities-log/activities-log/activities-log.component.js +1 -1
  4. package/esm2015/lib/components/activities-log/activities-log/activities-log.service.js +1 -1
  5. package/esm2015/lib/components/activities-log/activities-log.module.js +1 -1
  6. package/esm2015/lib/components/activity/activity/activity.component.js +1 -1
  7. package/esm2015/lib/components/activity/activity.module.js +1 -1
  8. package/esm2015/lib/components/attachment-item/attachment-item/attachment-item.component.js +2 -2
  9. package/esm2015/lib/components/attachment-item/attachment-item.module.js +1 -1
  10. package/esm2015/lib/components/attachment-modal/attachment-modal.module.js +1 -1
  11. package/esm2015/lib/components/attachment-modal/attachments/attachments.component.js +1 -1
  12. package/esm2015/lib/components/avatar/avatar/avatar.component.js +1 -1
  13. package/esm2015/lib/components/avatar/avatar.module.js +1 -1
  14. package/esm2015/lib/components/card/card.component.js +1 -1
  15. package/esm2015/lib/components/card/card.module.js +1 -1
  16. package/esm2015/lib/components/comments/comments.module.js +1 -1
  17. package/esm2015/lib/components/comments/components/comment-item/comment-item.component.js +2 -2
  18. package/esm2015/lib/components/comments/components/comments-dashlet/comments-dashlet.component.js +1 -1
  19. package/esm2015/lib/components/comments/components/comments-list/comments-list.component.js +1 -1
  20. package/esm2015/lib/components/comments/components/edit-delete-modal/edit-delete-modal.component.js +1 -1
  21. package/esm2015/lib/components/comments/constants/comment.js +1 -1
  22. package/esm2015/lib/components/comments/services/comment-api.service.js +1 -1
  23. package/esm2015/lib/components/confirm-caller/confirm-caller.dialog.js +1 -1
  24. package/esm2015/lib/components/confirm-caller/confirm-caller.module.js +1 -1
  25. package/esm2015/lib/components/confirm-caller/confirm-dialog/confirm-dialog.component.js +1 -1
  26. package/esm2015/lib/components/confirmation-dialog/confirmation-dialog/confirmation-dialog.component.js +1 -1
  27. package/esm2015/lib/components/confirmation-dialog/confirmation-dialog.module.js +1 -1
  28. package/esm2015/lib/components/correspondence-relation/components/correspondence-relation/correspondence-relation.component.js +1 -1
  29. package/esm2015/lib/components/correspondence-relation/components/correspondence-relation-create-form/correspondence-relation-create-form.component.js +1 -1
  30. package/esm2015/lib/components/correspondence-relation/components/correspondence-relation-list/correspondence-relation-list.component.js +2 -2
  31. package/esm2015/lib/components/correspondence-relation/components/correspondence-relation-reply/correspondence-relation-reply.component.js +1 -1
  32. package/esm2015/lib/components/correspondence-relation/components/versions/versions.component.js +1 -1
  33. package/esm2015/lib/components/correspondence-relation/correspondence-relation.module.js +1 -1
  34. package/esm2015/lib/components/correspondence-relation/services/correspondence-realation.service.js +1 -1
  35. package/esm2015/lib/components/correspondence-relation/services/viewer-files.service.js +1 -1
  36. package/esm2015/lib/components/create-entity/create-entity/create-entity.component.js +1 -1
  37. package/esm2015/lib/components/create-entity/create-entity.module.js +1 -1
  38. package/esm2015/lib/components/cts-tags/components/correspondence-tags/correspondence-tags.component.js +2 -2
  39. package/esm2015/lib/components/cts-tags/cts-tags.module.js +1 -1
  40. package/esm2015/lib/components/cts-tags/services/tags-api.service.js +1 -1
  41. package/esm2015/lib/components/custom-toastr/components/custom-toastr/custom-toastr.component.js +1 -1
  42. package/esm2015/lib/components/custom-toastr/custom-toastr.module.js +1 -1
  43. package/esm2015/lib/components/custom-toastr/interfaces/toast-type.interface.js +1 -1
  44. package/esm2015/lib/components/custom-toastr/services/custom-toastr.service.js +1 -1
  45. package/esm2015/lib/components/diagrams/components/base-node.component.js +1 -1
  46. package/esm2015/lib/components/diagrams/components/circle-node/circle-node.component.js +1 -1
  47. package/esm2015/lib/components/diagrams/components/connection-label.component.js +1 -1
  48. package/esm2015/lib/components/diagrams/components/content-node/content-node.component.js +1 -1
  49. package/esm2015/lib/components/diagrams/components/custom-connection.component.js +1 -1
  50. package/esm2015/lib/components/diagrams/components/custom-socket.component.js +1 -1
  51. package/esm2015/lib/components/diagrams/components/gateway-node/gateway-node.component.js +1 -1
  52. package/esm2015/lib/components/diagrams/components/gateway-ports.component.js +1 -1
  53. package/esm2015/lib/components/diagrams/components/index.js +1 -1
  54. package/esm2015/lib/components/diagrams/components/node-icon.component.js +1 -1
  55. package/esm2015/lib/components/diagrams/components/node-inputs.component.js +1 -1
  56. package/esm2015/lib/components/diagrams/components/node-outputs.component.js +1 -1
  57. package/esm2015/lib/components/diagrams/components/node-ports.component.js +1 -1
  58. package/esm2015/lib/components/diagrams/components/remove-button.component.js +1 -1
  59. package/esm2015/lib/components/diagrams/components/status-icon.component.js +1 -1
  60. package/esm2015/lib/components/diagrams/components/template-node/template-node.component.js +1 -1
  61. package/esm2015/lib/components/diagrams/components/zoom-control.component.js +1 -1
  62. package/esm2015/lib/components/diagrams/constants/defaults.js +1 -1
  63. package/esm2015/lib/components/diagrams/constants/direction.js +1 -1
  64. package/esm2015/lib/components/diagrams/constants/index.js +1 -1
  65. package/esm2015/lib/components/diagrams/constants/message-type.js +1 -1
  66. package/esm2015/lib/components/diagrams/constants/node-type.js +1 -1
  67. package/esm2015/lib/components/diagrams/constants/notify-events.js +1 -1
  68. package/esm2015/lib/components/diagrams/constants/sizes.js +1 -1
  69. package/esm2015/lib/components/diagrams/constants/status.js +1 -1
  70. package/esm2015/lib/components/diagrams/diagrams.module.js +1 -1
  71. package/esm2015/lib/components/diagrams/directive/diagram.directive.js +1 -1
  72. package/esm2015/lib/components/diagrams/directive/index.js +1 -1
  73. package/esm2015/lib/components/diagrams/editor/customize.js +1 -1
  74. package/esm2015/lib/components/diagrams/editor/editor.js +1 -1
  75. package/esm2015/lib/components/diagrams/editor/index.js +1 -1
  76. package/esm2015/lib/components/diagrams/editor/overrides/connection-path.transformers.js +1 -1
  77. package/esm2015/lib/components/diagrams/editor/overrides/index.js +1 -1
  78. package/esm2015/lib/components/diagrams/editor/path-plugin.js +1 -1
  79. package/esm2015/lib/components/diagrams/editor/socket-position-watcher.js +1 -1
  80. package/esm2015/lib/components/diagrams/index.js +1 -1
  81. package/esm2015/lib/components/diagrams/models/base-node.model.js +1 -1
  82. package/esm2015/lib/components/diagrams/models/circle-node.model.js +1 -1
  83. package/esm2015/lib/components/diagrams/models/connection.model.js +1 -1
  84. package/esm2015/lib/components/diagrams/models/content-node.model.js +1 -1
  85. package/esm2015/lib/components/diagrams/models/gate-way.model.js +1 -1
  86. package/esm2015/lib/components/diagrams/models/index.js +1 -1
  87. package/esm2015/lib/components/diagrams/models/ports.model.js +1 -1
  88. package/esm2015/lib/components/diagrams/models/socket.model.js +1 -1
  89. package/esm2015/lib/components/diagrams/models/template-node.model.js +1 -1
  90. package/esm2015/lib/components/diagrams/public-api.js +1 -1
  91. package/esm2015/lib/components/diagrams/services/diagram-plugins.service.js +1 -1
  92. package/esm2015/lib/components/diagrams/services/diagram.service.js +1 -1
  93. package/esm2015/lib/components/diagrams/services/index.js +1 -1
  94. package/esm2015/lib/components/diagrams/services/message.service.js +1 -1
  95. package/esm2015/lib/components/diagrams/services/workflow.service.js +1 -1
  96. package/esm2015/lib/components/diagrams/types/common.type.js +1 -1
  97. package/esm2015/lib/components/diagrams/types/connection-config.type.js +1 -1
  98. package/esm2015/lib/components/diagrams/types/connection-label.type.js +1 -1
  99. package/esm2015/lib/components/diagrams/types/customization.type.js +1 -1
  100. package/esm2015/lib/components/diagrams/types/diagram-config.type.js +1 -1
  101. package/esm2015/lib/components/diagrams/types/diagram-editor.type.js +1 -1
  102. package/esm2015/lib/components/diagrams/types/emitter-type.js +1 -1
  103. package/esm2015/lib/components/diagrams/types/index.js +1 -1
  104. package/esm2015/lib/components/diagrams/types/layout.type.js +1 -1
  105. package/esm2015/lib/components/diagrams/types/node-content.js +1 -1
  106. package/esm2015/lib/components/diagrams/types/node-definition.js +1 -1
  107. package/esm2015/lib/components/diagrams/types/node-status.type.js +1 -1
  108. package/esm2015/lib/components/diagrams/types/node.type.js +1 -1
  109. package/esm2015/lib/components/diagrams/types/notify-event.type.js +1 -1
  110. package/esm2015/lib/components/diagrams/types/path.type.js +1 -1
  111. package/esm2015/lib/components/diagrams/types/ports-config.type.js +1 -1
  112. package/esm2015/lib/components/diagrams/types/schemes.type.js +1 -1
  113. package/esm2015/lib/components/diagrams/types/socket.type.js +1 -1
  114. package/esm2015/lib/components/diagrams/utilities/common.js +1 -1
  115. package/esm2015/lib/components/diagrams/utilities/index.js +1 -1
  116. package/esm2015/lib/components/diagrams/utilities/random.js +1 -1
  117. package/esm2015/lib/components/diagrams/utilities/remove.util.js +1 -1
  118. package/esm2015/lib/components/diagrams/utilities/serialize.js +1 -1
  119. package/esm2015/lib/components/display-suitable-icon/display-suitable-icon/display-suitable-icon.component.js +2 -2
  120. package/esm2015/lib/components/display-suitable-icon/display-suitable-icon/icon.service.js +1 -1
  121. package/esm2015/lib/components/display-suitable-icon/display-suitable-icon.module.js +1 -1
  122. package/esm2015/lib/components/documents/components/attachments-list/attachments-list.component.js +1 -1
  123. package/esm2015/lib/components/documents/components/attachments-page-provider/attachments-page-provider.component.js +1 -1
  124. package/esm2015/lib/components/documents/components/document-list/documents-list.component.js +1 -1
  125. package/esm2015/lib/components/documents/components/document-scan/document-scan.component.js +6 -3
  126. package/esm2015/lib/components/documents/components/document-scan/document-scan.service.js +1 -1
  127. package/esm2015/lib/components/documents/components/document-upload/document-upload.component.js +1 -1
  128. package/esm2015/lib/components/documents/components/documents/documents.component.js +1 -1
  129. package/esm2015/lib/components/documents/constants/document-templates.js +1 -1
  130. package/esm2015/lib/components/documents/constants/documents.js +1 -1
  131. package/esm2015/lib/components/documents/documents.module.js +1 -1
  132. package/esm2015/lib/components/documents/services/document-templates.service.js +1 -1
  133. package/esm2015/lib/components/documents/services/documents.service.js +1 -1
  134. package/esm2015/lib/components/dynamic-chart/dynamic-chart/dynamic-chart.component.js +1 -1
  135. package/esm2015/lib/components/dynamic-chart/dynamic-chart.module.js +1 -1
  136. package/esm2015/lib/components/dynamic-chart/services/chart-data.service.js +1 -1
  137. package/esm2015/lib/components/dynamic-fields-renderer/dynamic-fields-renderer/dynamic-fields-renderer.component.js +1 -1
  138. package/esm2015/lib/components/dynamic-fields-renderer/dynamic-fields-renderer.module.js +1 -1
  139. package/esm2015/lib/components/dynamic-filter/dynamic-filter/dynamic-filter.component.js +2 -2
  140. package/esm2015/lib/components/dynamic-filter/dynamic-filter.module.js +1 -1
  141. package/esm2015/lib/components/dynamic-form/components/department-form/department-form.component.js +1 -1
  142. package/esm2015/lib/components/dynamic-form/components/dynamic-form/dynamic-form.component.js +1 -1
  143. package/esm2015/lib/components/dynamic-form/components/dynamic-form/fields.adapter.js +1 -1
  144. package/esm2015/lib/components/dynamic-form/components/dynamic-form/form-builder.service.js +1 -1
  145. package/esm2015/lib/components/dynamic-form/components/dynamic-form-boolitem/dynamic-form-boolitem.component.js +1 -1
  146. package/esm2015/lib/components/dynamic-form/components/dynamic-form-builder/dynamic-form-builder.component.js +1 -1
  147. package/esm2015/lib/components/dynamic-form/components/dynamic-form-checkbox-item/dynamic-form-checkbox-item.component.js +1 -1
  148. package/esm2015/lib/components/dynamic-form/components/dynamic-form-dateitem/dynamic-form-dateitem.component.js +1 -1
  149. package/esm2015/lib/components/dynamic-form/components/dynamic-form-dateitem/owlDateTimeIntl.js +1 -1
  150. package/esm2015/lib/components/dynamic-form/components/dynamic-form-department/constants/department.js +1 -1
  151. package/esm2015/lib/components/dynamic-form/components/dynamic-form-department/dynamic-form-department.component.js +1 -1
  152. package/esm2015/lib/components/dynamic-form/components/dynamic-form-department/services/department-api.service.js +1 -1
  153. package/esm2015/lib/components/dynamic-form/components/dynamic-form-department/services/department-management.service.js +1 -1
  154. package/esm2015/lib/components/dynamic-form/components/dynamic-form-field/dynamic-form-field.component.js +1 -1
  155. package/esm2015/lib/components/dynamic-form/components/dynamic-form-hijri-dateitem/dynamic-form-hijri-dateitem.component.js +1 -1
  156. package/esm2015/lib/components/dynamic-form/components/dynamic-form-item-dispatcher/dynamic-form-item-dispatcher.component.js +1 -1
  157. package/esm2015/lib/components/dynamic-form/components/dynamic-form-mapitem/dynamic-form-mapitem.component.js +1 -1
  158. package/esm2015/lib/components/dynamic-form/components/dynamic-form-options/dynamic-form-options.component.js +1 -1
  159. package/esm2015/lib/components/dynamic-form/components/dynamic-form-select-tag/dynamic-form-select-tag.component.js +1 -1
  160. package/esm2015/lib/components/dynamic-form/components/dynamic-form-select-user-filter/dynamic-form-select-user-filter.component.js +1 -1
  161. package/esm2015/lib/components/dynamic-form/components/dynamic-form-select-users/dynamic-form-select-users.component.js +1 -1
  162. package/esm2015/lib/components/dynamic-form/components/dynamic-form-select-users/services/user-api.service.js +1 -1
  163. package/esm2015/lib/components/dynamic-form/components/dynamic-form-selectitem/dynamic-form-selectitem.component.js +1 -1
  164. package/esm2015/lib/components/dynamic-form/components/dynamic-form-slide-toggleitem/dynamic-form-slide-toggleitem.component.js +2 -2
  165. package/esm2015/lib/components/dynamic-form/components/dynamic-form-textarea/dynamic-form-textarea.component.js +1 -1
  166. package/esm2015/lib/components/dynamic-form/components/dynamic-form-textitem/dynamic-form-textitem.component.js +1 -1
  167. package/esm2015/lib/components/dynamic-form/components/dynamic-form-treeview-select/dropdown-treeview-select-i18n.js +1 -1
  168. package/esm2015/lib/components/dynamic-form/components/dynamic-form-treeview-select/dropdown-treeview-select.component.js +2 -2
  169. package/esm2015/lib/components/dynamic-form/components/dynamic-form-viewer/dynamic-form-viewer.component.js +1 -1
  170. package/esm2015/lib/components/dynamic-form/components/dynamic-form-vocabulary-item/dynamic-form-vocabulary-item.component.js +1 -1
  171. package/esm2015/lib/components/dynamic-form/components/form-wrappers/base-edit-form/base-edit-form.js +1 -1
  172. package/esm2015/lib/components/dynamic-form/components/form-wrappers/date-wrapper/date-wrapper.component.js +1 -1
  173. package/esm2015/lib/components/dynamic-form/components/form-wrappers/date-wrapper/date-wrapper.formio.js +1 -1
  174. package/esm2015/lib/components/dynamic-form/components/form-wrappers/toggle-wrapper/toggle-wrapper.component.js +1 -1
  175. package/esm2015/lib/components/dynamic-form/components/form-wrappers/toggle-wrapper/toggle-wrapper.formio.js +1 -1
  176. package/esm2015/lib/components/dynamic-form/components/form-wrappers/user-selector-wrapper/user-selector-wrapper.component.js +1 -1
  177. package/esm2015/lib/components/dynamic-form/components/form-wrappers/user-selector-wrapper/user-selector-wrapper.formio.js +1 -1
  178. package/esm2015/lib/components/dynamic-form/components/form-wrappers/vocabulary-wrapper/vocabulary-wrapper.component.js +1 -1
  179. package/esm2015/lib/components/dynamic-form/components/form-wrappers/vocabulary-wrapper/vocabulary-wrapper.formio.js +1 -1
  180. package/esm2015/lib/components/dynamic-form/directives/dynamic-form-content-proxy.directive.js +1 -1
  181. package/esm2015/lib/components/dynamic-form/dynamic-form.module.js +1 -1
  182. package/esm2015/lib/components/dynamic-form/interfaces/dynamic-form-boolitem-properties.interface.js +1 -1
  183. package/esm2015/lib/components/dynamic-form/interfaces/dynamic-form-dateitem-properties.interface.js +1 -1
  184. package/esm2015/lib/components/dynamic-form/interfaces/dynamic-form-item-properties.interface.js +1 -1
  185. package/esm2015/lib/components/dynamic-form/interfaces/dynamic-form-item-validator.interface.js +1 -1
  186. package/esm2015/lib/components/dynamic-form/interfaces/dynamic-form-item.interface.js +1 -1
  187. package/esm2015/lib/components/dynamic-form/interfaces/dynamic-form-keyvaluepairsitem-properties.interface.js +1 -1
  188. package/esm2015/lib/components/dynamic-form/interfaces/dynamic-form-selectitem-properties.interface.js +1 -1
  189. package/esm2015/lib/components/dynamic-form/interfaces/dynamic-form-textitem-pipe-property.interface.js +1 -1
  190. package/esm2015/lib/components/dynamic-form/interfaces/dynamic-form-textitem-properties.interface.js +1 -1
  191. package/esm2015/lib/components/dynamic-form/interfaces/dynamic-form.interfaces.js +1 -1
  192. package/esm2015/lib/components/dynamic-form/models/dynamic-form-baseitem.model.js +1 -1
  193. package/esm2015/lib/components/dynamic-form/models/dynamic-form-boolitem.model.js +1 -1
  194. package/esm2015/lib/components/dynamic-form/models/dynamic-form-dateitem.model.js +1 -1
  195. package/esm2015/lib/components/dynamic-form/models/dynamic-form-datetimeitem.model.js +1 -1
  196. package/esm2015/lib/components/dynamic-form/models/dynamic-form-mapitem.model.js +1 -1
  197. package/esm2015/lib/components/dynamic-form/models/dynamic-form-selectitem.model.js +1 -1
  198. package/esm2015/lib/components/dynamic-form/models/dynamic-form-textitem.model.js +1 -1
  199. package/esm2015/lib/components/dynamic-form/models/dynamic-form.models.js +1 -1
  200. package/esm2015/lib/components/dynamic-form/services/card-item-types.service.js +1 -1
  201. package/esm2015/lib/components/dynamic-form/services/dynamic-component-mapper.service.js +1 -1
  202. package/esm2015/lib/components/dynamic-form/services/dynamic-form-update.service.js +1 -1
  203. package/esm2015/lib/components/dynamic-form/services/vocabulary-api.service.js +1 -1
  204. package/esm2015/lib/components/dynamic-form/validators/length-validator.js +1 -1
  205. package/esm2015/lib/components/dynamic-form/validators/regex-validator.js +1 -1
  206. package/esm2015/lib/components/dynamic-form/validators/required-validator.js +1 -1
  207. package/esm2015/lib/components/dynamic-form/validators/value-validator.js +1 -1
  208. package/esm2015/lib/components/dynamic-search/dynamic-search/dynamic-search.component.js +1 -1
  209. package/esm2015/lib/components/dynamic-search/dynamic-search.module.js +1 -1
  210. package/esm2015/lib/components/dynamic-tabs/dynamic-tabs/dynamic-tabs.component.js +1 -1
  211. package/esm2015/lib/components/dynamic-tabs/dynamic-tabs.module.js +1 -1
  212. package/esm2015/lib/components/dynamic-view/boolean-viewer/boolean-viewer.component.js +2 -2
  213. package/esm2015/lib/components/dynamic-view/custom-document-viewer/custom-document-viewer.component.js +1 -1
  214. package/esm2015/lib/components/dynamic-view/custom-pp-viewer/custom-pp-viewer.component.js +1 -1
  215. package/esm2015/lib/components/dynamic-view/cutome-voc-viewer/cutome-voc-viewer.component.js +1 -1
  216. package/esm2015/lib/components/dynamic-view/data-viewer/data-viewer.component.js +2 -2
  217. package/esm2015/lib/components/dynamic-view/date-viewer/date-viewer.component.js +2 -2
  218. package/esm2015/lib/components/dynamic-view/department-viewer/department-viewer.component.js +2 -2
  219. package/esm2015/lib/components/dynamic-view/dropdown-viewer/dropdown-viewer.component.js +2 -2
  220. package/esm2015/lib/components/dynamic-view/dynamic-view.module.js +1 -1
  221. package/esm2015/lib/components/dynamic-view/dynamic-viewe.service.js +1 -1
  222. package/esm2015/lib/components/dynamic-view/list-viewer/list-viewer.component.js +1 -1
  223. package/esm2015/lib/components/file-manger/components/add-to-collection/add-to-collection.component.js +2 -2
  224. package/esm2015/lib/components/file-manger/components/clipboard/clipboard.component.js +2 -2
  225. package/esm2015/lib/components/file-manger/components/copy/copy.component.js +1 -1
  226. package/esm2015/lib/components/file-manger/components/create-directory/create-directory.component.js +2 -2
  227. package/esm2015/lib/components/file-manger/components/create-modal/create-modal.component.js +1 -1
  228. package/esm2015/lib/components/file-manger/components/creation-type/creation-type.component.js +1 -1
  229. package/esm2015/lib/components/file-manger/components/delete/delete.component.js +1 -1
  230. package/esm2015/lib/components/file-manger/components/folder-modal/folder-modal.component.js +1 -1
  231. package/esm2015/lib/components/file-manger/components/loan-request/loan-request.component.js +2 -2
  232. package/esm2015/lib/components/file-manger/components/move/move.component.js +1 -1
  233. package/esm2015/lib/components/file-manger/components/publish-dialog/publish-dialog.component.js +1 -1
  234. package/esm2015/lib/components/file-manger/components/rename/rename.component.js +2 -2
  235. package/esm2015/lib/components/file-manger/components/scan-modal/scan-modal.component.js +2 -2
  236. package/esm2015/lib/components/file-manger/components/share-dialog/share-dialog.component.js +2 -2
  237. package/esm2015/lib/components/file-manger/components/sidepanel/sidepanel.component.js +2 -2
  238. package/esm2015/lib/components/file-manger/components/template-modal/template-modal.component.js +1 -1
  239. package/esm2015/lib/components/file-manger/components/transfer-doc/transfer-doc.component.js +1 -1
  240. package/esm2015/lib/components/file-manger/components/update-modal/update-modal.component.js +1 -1
  241. package/esm2015/lib/components/file-manger/directives/file-grid-infinite-scroll.directive.js +1 -1
  242. package/esm2015/lib/components/file-manger/file-manager.abstract.js +1 -1
  243. package/esm2015/lib/components/file-manger/file-manger.module.js +1 -1
  244. package/esm2015/lib/components/file-manger/models/file-manager-config.model.js +1 -1
  245. package/esm2015/lib/components/file-manger/models/index.js +1 -1
  246. package/esm2015/lib/components/file-manger/models/pagination-payload.mode.js +1 -1
  247. package/esm2015/lib/components/file-manger/models/pagination-response.model.js +1 -1
  248. package/esm2015/lib/components/filter/filter/filter.component.js +1 -1
  249. package/esm2015/lib/components/filter/filter.module.js +1 -1
  250. package/esm2015/lib/components/hijri-gregorian-datepicker/hijri-gregorian-datepicker/gregorian-datepicker/gregorian-datepicker.component.js +1 -1
  251. package/esm2015/lib/components/hijri-gregorian-datepicker/hijri-gregorian-datepicker/hijri-datepicker/hijri-datepicker.component.js +1 -1
  252. package/esm2015/lib/components/hijri-gregorian-datepicker/hijri-gregorian-datepicker/hijri-gregorian-datepicker.component.js +1 -1
  253. package/esm2015/lib/components/hijri-gregorian-datepicker/hijri-gregorian-datepicker/provide-parent-form.directive.js +1 -1
  254. package/esm2015/lib/components/hijri-gregorian-datepicker/ngx-hijri-gregorian-datepicker.module.js +1 -1
  255. package/esm2015/lib/components/hijri-gregorian-datepicker/services/date-formatter.service.js +1 -1
  256. package/esm2015/lib/components/hijri-gregorian-datepicker/services/date-helper.service.js +1 -1
  257. package/esm2015/lib/components/hijri-gregorian-datepicker/utils/CustomNgbDateParserFormatter.js +1 -1
  258. package/esm2015/lib/components/hijri-gregorian-datepicker/utils/IslamicI18n.js +1 -1
  259. package/esm2015/lib/components/hijri-gregorian-datepicker/utils/consts.js +1 -1
  260. package/esm2015/lib/components/latest-activity/components/activity-line/activity-line.component.js +1 -1
  261. package/esm2015/lib/components/latest-activity/components/latest-activity/latest-activity.component.js +1 -1
  262. package/esm2015/lib/components/latest-activity/components/single-activity/single-activity.component.js +1 -1
  263. package/esm2015/lib/components/latest-activity/constants/activitylog.js +1 -1
  264. package/esm2015/lib/components/latest-activity/latest-activity.module.js +1 -1
  265. package/esm2015/lib/components/latest-activity/services/activity-log.service.js +1 -1
  266. package/esm2015/lib/components/mutiple-dynamic-form-viewer/multiple-dynamic-form-viewer/multiple-dynamic-form-viewer.component.js +1 -1
  267. package/esm2015/lib/components/mutiple-dynamic-form-viewer/mutiple-dynamic-form-viewer.module.js +1 -1
  268. package/esm2015/lib/components/ndf-config-editor/components/config-editor-actions/config-editor-actions.component.js +1 -1
  269. package/esm2015/lib/components/ndf-config-editor/components/editor-mode-switch.component.js +1 -1
  270. package/esm2015/lib/components/ndf-config-editor/components/index.js +1 -1
  271. package/esm2015/lib/components/ndf-config-editor/components/info-dialog/info-dialog.component.js +2 -2
  272. package/esm2015/lib/components/ndf-config-editor/config.token.js +1 -1
  273. package/esm2015/lib/components/ndf-config-editor/constants/index.js +1 -1
  274. package/esm2015/lib/components/ndf-config-editor/constants/mode.js +1 -1
  275. package/esm2015/lib/components/ndf-config-editor/constants/query.js +1 -1
  276. package/esm2015/lib/components/ndf-config-editor/containers/config-preview/config-preview.component.js +1 -1
  277. package/esm2015/lib/components/ndf-config-editor/containers/editor-settings/editor-settings.component.js +2 -2
  278. package/esm2015/lib/components/ndf-config-editor/containers/index.js +1 -1
  279. package/esm2015/lib/components/ndf-config-editor/containers/monaco-editor.component.js +1 -1
  280. package/esm2015/lib/components/ndf-config-editor/containers/ndf-config-editor/ndf-config-editor.component.js +1 -1
  281. package/esm2015/lib/components/ndf-config-editor/index.js +1 -1
  282. package/esm2015/lib/components/ndf-config-editor/metadata-token.js +1 -1
  283. package/esm2015/lib/components/ndf-config-editor/models/config.js +1 -1
  284. package/esm2015/lib/components/ndf-config-editor/models/dialog-data.js +1 -1
  285. package/esm2015/lib/components/ndf-config-editor/models/editor-model.js +1 -1
  286. package/esm2015/lib/components/ndf-config-editor/models/index.js +1 -1
  287. package/esm2015/lib/components/ndf-config-editor/models/payload-data.js +1 -1
  288. package/esm2015/lib/components/ndf-config-editor/models/type-helper.js +1 -1
  289. package/esm2015/lib/components/ndf-config-editor/ndf-config-editor.module.js +1 -1
  290. package/esm2015/lib/components/ndf-config-editor/pipes/index.js +1 -1
  291. package/esm2015/lib/components/ndf-config-editor/pipes/is-valid-json.pipe.js +1 -1
  292. package/esm2015/lib/components/ndf-config-editor/pipes/validate-object.pipe.js +1 -1
  293. package/esm2015/lib/components/ndf-config-editor/public/editor-navigate-button.js +2 -2
  294. package/esm2015/lib/components/ndf-config-editor/public/index.js +1 -1
  295. package/esm2015/lib/components/ndf-config-editor/public-api.js +1 -1
  296. package/esm2015/lib/components/ndf-config-editor/services/data-access.service.js +1 -1
  297. package/esm2015/lib/components/ndf-config-editor/services/data-store.service.js +1 -1
  298. package/esm2015/lib/components/ndf-config-editor/services/index.js +1 -1
  299. package/esm2015/lib/components/ndf-config-editor/services/monaco.loader.service.js +1 -1
  300. package/esm2015/lib/components/ndf-config-editor/utility/index.js +1 -1
  301. package/esm2015/lib/components/ndf-config-editor/utility/json.js +1 -1
  302. package/esm2015/lib/components/ndf-datepicker/adapters/hijri-adapter.js +1 -1
  303. package/esm2015/lib/components/ndf-datepicker/adapters/index.js +1 -1
  304. package/esm2015/lib/components/ndf-datepicker/adapters/moment-adapter.js +1 -1
  305. package/esm2015/lib/components/ndf-datepicker/base/base-value-accessor.js +1 -1
  306. package/esm2015/lib/components/ndf-datepicker/base/index.js +1 -1
  307. package/esm2015/lib/components/ndf-datepicker/components/base-datepicker.js +1 -1
  308. package/esm2015/lib/components/ndf-datepicker/components/index.js +1 -1
  309. package/esm2015/lib/components/ndf-datepicker/components/input-date.component.js +1 -1
  310. package/esm2015/lib/components/ndf-datepicker/components/input-range-date.component.js +1 -1
  311. package/esm2015/lib/components/ndf-datepicker/constants/date-locale-keys.js +1 -1
  312. package/esm2015/lib/components/ndf-datepicker/constants/date-picker.js +1 -1
  313. package/esm2015/lib/components/ndf-datepicker/constants/date-type.js +1 -1
  314. package/esm2015/lib/components/ndf-datepicker/constants/formats.js +1 -1
  315. package/esm2015/lib/components/ndf-datepicker/constants/hijri-dates-names.js +1 -1
  316. package/esm2015/lib/components/ndf-datepicker/constants/index.js +1 -1
  317. package/esm2015/lib/components/ndf-datepicker/containers/datepicker-container.js +1 -1
  318. package/esm2015/lib/components/ndf-datepicker/containers/index.js +1 -1
  319. package/esm2015/lib/components/ndf-datepicker/containers/ndf-gregorian-datepicker.component.js +1 -1
  320. package/esm2015/lib/components/ndf-datepicker/containers/ndf-hijri-datepicker.component.js +1 -1
  321. package/esm2015/lib/components/ndf-datepicker/index.js +1 -1
  322. package/esm2015/lib/components/ndf-datepicker/models/data-types.js +1 -1
  323. package/esm2015/lib/components/ndf-datepicker/models/index.js +1 -1
  324. package/esm2015/lib/components/ndf-datepicker/models/value-object.js +1 -1
  325. package/esm2015/lib/components/ndf-datepicker/ndf-datepicker.component.js +2 -2
  326. package/esm2015/lib/components/ndf-datepicker/ndf-datepicker.module.js +1 -1
  327. package/esm2015/lib/components/ndf-datepicker/services/calendar.service.js +1 -1
  328. package/esm2015/lib/components/ndf-datepicker/services/index.js +1 -1
  329. package/esm2015/lib/components/ndf-datepicker/services/localize-state.service.js +1 -1
  330. package/esm2015/lib/components/ndf-filters/base/base-aggregation-field.component.js +1 -1
  331. package/esm2015/lib/components/ndf-filters/base/base-checkbox-radio.component.js +1 -1
  332. package/esm2015/lib/components/ndf-filters/base/base-custom-field.component.js +1 -1
  333. package/esm2015/lib/components/ndf-filters/base/base-predicate-field.component.js +1 -1
  334. package/esm2015/lib/components/ndf-filters/base/base-value-accessor.component.js +1 -1
  335. package/esm2015/lib/components/ndf-filters/base/index.js +1 -1
  336. package/esm2015/lib/components/ndf-filters/components/__parts/field-header.component.js +1 -1
  337. package/esm2015/lib/components/ndf-filters/components/__parts/filter-autocomplete-input/filter-autocomplete-input.component.js +1 -1
  338. package/esm2015/lib/components/ndf-filters/components/__parts/filter-autocomplete-input/filter-autocomplete.service.js +1 -1
  339. package/esm2015/lib/components/ndf-filters/components/__parts/filter-collapse-control/filter-collapse-control.component.js +1 -1
  340. package/esm2015/lib/components/ndf-filters/components/__parts/filter-date-range/filter-date-range.component.js +1 -1
  341. package/esm2015/lib/components/ndf-filters/components/__parts/filter-empty-message.component.js +1 -1
  342. package/esm2015/lib/components/ndf-filters/components/__parts/filter-option-text/filter-option-text.component.js +2 -2
  343. package/esm2015/lib/components/ndf-filters/components/__parts/filter-options-sort/filter-options-sort.component.js +2 -2
  344. package/esm2015/lib/components/ndf-filters/components/__parts/filter-search-input/filter-search-input.component.js +1 -1
  345. package/esm2015/lib/components/ndf-filters/components/__parts/html-dialog/html-dialog.component.js +1 -1
  346. package/esm2015/lib/components/ndf-filters/components/__parts/index.js +1 -1
  347. package/esm2015/lib/components/ndf-filters/components/aggregation-autocomplete/aggregation-autocomplete.component.js +1 -1
  348. package/esm2015/lib/components/ndf-filters/components/aggregation-checkbox/aggregation-checkbox.component.js +1 -1
  349. package/esm2015/lib/components/ndf-filters/components/aggregation-custom/aggregation-custom.component.js +1 -1
  350. package/esm2015/lib/components/ndf-filters/components/aggregation-date-list/aggregation-date-list.component.js +1 -1
  351. package/esm2015/lib/components/ndf-filters/components/aggregation-radio/aggregation-radio.component.js +1 -1
  352. package/esm2015/lib/components/ndf-filters/components/aggregation-select/aggregation-select.component.js +1 -1
  353. package/esm2015/lib/components/ndf-filters/components/aggregation-switch/aggregation-switch.component.js +2 -2
  354. package/esm2015/lib/components/ndf-filters/components/index.js +1 -1
  355. package/esm2015/lib/components/ndf-filters/components/predicate-date-input/predicate-date-input.component.js +1 -1
  356. package/esm2015/lib/components/ndf-filters/components/predicate-text-input/predicate-text-input.component.js +2 -2
  357. package/esm2015/lib/components/ndf-filters/constants/common.js +1 -1
  358. package/esm2015/lib/components/ndf-filters/constants/field.js +1 -1
  359. package/esm2015/lib/components/ndf-filters/constants/index.js +1 -1
  360. package/esm2015/lib/components/ndf-filters/constants/operators.js +1 -1
  361. package/esm2015/lib/components/ndf-filters/constants/sort.js +1 -1
  362. package/esm2015/lib/components/ndf-filters/constants/type.js +1 -1
  363. package/esm2015/lib/components/ndf-filters/containers/aggregation-field/aggregation-field.component.js +1 -1
  364. package/esm2015/lib/components/ndf-filters/containers/base-field.js +1 -1
  365. package/esm2015/lib/components/ndf-filters/containers/custom-field/custom-field.component.js +1 -1
  366. package/esm2015/lib/components/ndf-filters/containers/filters-panel/base-filters-panel.js +1 -1
  367. package/esm2015/lib/components/ndf-filters/containers/filters-panel/filters-panel.component.js +1 -1
  368. package/esm2015/lib/components/ndf-filters/containers/index.js +1 -1
  369. package/esm2015/lib/components/ndf-filters/containers/predicate-field/predicate-field.component.js +1 -1
  370. package/esm2015/lib/components/ndf-filters/custom-components/active-user-switch/active-user-switch.component.js +2 -2
  371. package/esm2015/lib/components/ndf-filters/custom-components/active-user-switch/active-user.service.js +1 -1
  372. package/esm2015/lib/components/ndf-filters/custom-components/active-user-switch/user-types.js +1 -1
  373. package/esm2015/lib/components/ndf-filters/custom-components/aggregation-group/aggregation-group.component.js +1 -1
  374. package/esm2015/lib/components/ndf-filters/custom-components/aggregation-group/map-aggregation-config.js +1 -1
  375. package/esm2015/lib/components/ndf-filters/custom-components/index.js +1 -1
  376. package/esm2015/lib/components/ndf-filters/directives/autocomplete-template.directive.js +1 -1
  377. package/esm2015/lib/components/ndf-filters/directives/checkbox-template.directive.js +1 -1
  378. package/esm2015/lib/components/ndf-filters/directives/custom-template.directive.js +1 -1
  379. package/esm2015/lib/components/ndf-filters/directives/date-template.directive.js +1 -1
  380. package/esm2015/lib/components/ndf-filters/directives/dropdown-label-template.directive.js +1 -1
  381. package/esm2015/lib/components/ndf-filters/directives/dropdown-template.directive.js +1 -1
  382. package/esm2015/lib/components/ndf-filters/directives/index.js +1 -1
  383. package/esm2015/lib/components/ndf-filters/directives/radio-template.directive.js +1 -1
  384. package/esm2015/lib/components/ndf-filters/directives/switch-template.directive.js +1 -1
  385. package/esm2015/lib/components/ndf-filters/index.js +1 -1
  386. package/esm2015/lib/components/ndf-filters/models/aggregation-field-config.js +1 -1
  387. package/esm2015/lib/components/ndf-filters/models/aggregation-response.model.js +1 -1
  388. package/esm2015/lib/components/ndf-filters/models/base-field-config.js +1 -1
  389. package/esm2015/lib/components/ndf-filters/models/common.js +1 -1
  390. package/esm2015/lib/components/ndf-filters/models/custom-field-config.js +1 -1
  391. package/esm2015/lib/components/ndf-filters/models/field-config.model.js +1 -1
  392. package/esm2015/lib/components/ndf-filters/models/field-options/autocomplete-options.js +1 -1
  393. package/esm2015/lib/components/ndf-filters/models/field-options/checkbox-options.js +1 -1
  394. package/esm2015/lib/components/ndf-filters/models/field-options/common-utils.js +1 -1
  395. package/esm2015/lib/components/ndf-filters/models/field-options/custom-fields-options.js +1 -1
  396. package/esm2015/lib/components/ndf-filters/models/field-options/custom-options.js +1 -1
  397. package/esm2015/lib/components/ndf-filters/models/field-options/date-list-options.js +1 -1
  398. package/esm2015/lib/components/ndf-filters/models/field-options/date-options.js +1 -1
  399. package/esm2015/lib/components/ndf-filters/models/field-options/dropdown-options.js +1 -1
  400. package/esm2015/lib/components/ndf-filters/models/field-options/index.js +1 -1
  401. package/esm2015/lib/components/ndf-filters/models/field-options/input-options.js +1 -1
  402. package/esm2015/lib/components/ndf-filters/models/field-options/radio-options.js +1 -1
  403. package/esm2015/lib/components/ndf-filters/models/field-options/switch-options.js +1 -1
  404. package/esm2015/lib/components/ndf-filters/models/filter-option.model.js +1 -1
  405. package/esm2015/lib/components/ndf-filters/models/form-query-request.js +1 -1
  406. package/esm2015/lib/components/ndf-filters/models/index.js +1 -1
  407. package/esm2015/lib/components/ndf-filters/models/operator-value-object.js +1 -1
  408. package/esm2015/lib/components/ndf-filters/models/predicate-field-config.js +1 -1
  409. package/esm2015/lib/components/ndf-filters/models/types-helper.js +1 -1
  410. package/esm2015/lib/components/ndf-filters/models/value-object.model.js +1 -1
  411. package/esm2015/lib/components/ndf-filters/ndf-filters-panel.module.js +1 -1
  412. package/esm2015/lib/components/ndf-filters/pipes/autocomplete-filter.pipe.js +1 -1
  413. package/esm2015/lib/components/ndf-filters/pipes/check-condition.pipe.js +1 -1
  414. package/esm2015/lib/components/ndf-filters/pipes/filter.pipe.js +1 -1
  415. package/esm2015/lib/components/ndf-filters/pipes/hash-translate.pipe.js +1 -1
  416. package/esm2015/lib/components/ndf-filters/pipes/index.js +1 -1
  417. package/esm2015/lib/components/ndf-filters/pipes/localized-label.pipe.js +1 -1
  418. package/esm2015/lib/components/ndf-filters/pipes/roles-filters.pipe.js +1 -1
  419. package/esm2015/lib/components/ndf-filters/pipes/sanitizer.pipe.js +1 -1
  420. package/esm2015/lib/components/ndf-filters/pipes/sort.pipe.js +1 -1
  421. package/esm2015/lib/components/ndf-filters/pipes/tooltip.pipe.js +1 -1
  422. package/esm2015/lib/components/ndf-filters/public-api.js +1 -1
  423. package/esm2015/lib/components/ndf-filters/services/aggregation-field.service.js +1 -1
  424. package/esm2015/lib/components/ndf-filters/services/dynamic-component-loader.service.js +1 -1
  425. package/esm2015/lib/components/ndf-filters/services/filters-mapper.service.js +1 -1
  426. package/esm2015/lib/components/ndf-filters/services/filters-query.service.js +1 -1
  427. package/esm2015/lib/components/ndf-filters/services/index.js +1 -1
  428. package/esm2015/lib/components/ndf-filters/utility/index.js +1 -1
  429. package/esm2015/lib/components/ndf-filters/utility/nxql-query.js +1 -1
  430. package/esm2015/lib/components/ndf-filters/utility/nxql.js +1 -1
  431. package/esm2015/lib/components/ndf-filters/utility/object.js +1 -1
  432. package/esm2015/lib/components/ndf-panel/component/ndf-panel.component.js +1 -1
  433. package/esm2015/lib/components/ndf-panel/index.js +1 -1
  434. package/esm2015/lib/components/ndf-panel/ndf-panel.module.js +1 -1
  435. package/esm2015/lib/components/ndf-scanner/index.js +1 -1
  436. package/esm2015/lib/components/ndf-scanner/ndf-scanner.component.js +2 -2
  437. package/esm2015/lib/components/ndf-scanner/ndf-scanner.module.js +1 -1
  438. package/esm2015/lib/components/ndf-signatures/emdha/dialogs/auth/emdha-auth.dialog.js +1 -1
  439. package/esm2015/lib/components/ndf-signatures/emdha/dialogs/index.js +1 -1
  440. package/esm2015/lib/components/ndf-signatures/emdha/index.js +1 -1
  441. package/esm2015/lib/components/ndf-signatures/emdha/services/emdha.service.js +8 -15
  442. package/esm2015/lib/components/ndf-signatures/emdha/services/index.js +1 -1
  443. package/esm2015/lib/components/ndf-signatures/index.js +1 -1
  444. package/esm2015/lib/components/ndf-signatures/ndf-signature-panel/ndf-signature-panel.component.js +1 -1
  445. package/esm2015/lib/components/ndf-signatures/ndf-signatures.module.js +1 -1
  446. package/esm2015/lib/components/ndf-signatures/services/index.js +1 -1
  447. package/esm2015/lib/components/ndf-signatures/services/signatures.service.js +1 -4
  448. package/esm2015/lib/components/ndf-tabs/component/ndf-tabs.component.js +1 -1
  449. package/esm2015/lib/components/ndf-tabs/index.js +1 -1
  450. package/esm2015/lib/components/ndf-tabs/ndf-tabs.module.js +1 -1
  451. package/esm2015/lib/components/ndf-tabs/tab.type.js +1 -1
  452. package/esm2015/lib/components/ndf-uploader/components/bottom-sheet/ndf-uploader-bottom-sheet.component.js +6 -4
  453. package/esm2015/lib/components/ndf-uploader/components/index.js +1 -1
  454. package/esm2015/lib/components/ndf-uploader/config/index.js +1 -1
  455. package/esm2015/lib/components/ndf-uploader/config/uploader.config.js +1 -1
  456. package/esm2015/lib/components/ndf-uploader/constant/file-content.js +1 -1
  457. package/esm2015/lib/components/ndf-uploader/constant/index.js +1 -1
  458. package/esm2015/lib/components/ndf-uploader/helpers/index.js +1 -1
  459. package/esm2015/lib/components/ndf-uploader/helpers/uploader.helper.js +9 -1
  460. package/esm2015/lib/components/ndf-uploader/index.js +3 -1
  461. package/esm2015/lib/components/ndf-uploader/models/batch.model.js +1 -1
  462. package/esm2015/lib/components/ndf-uploader/models/index.js +1 -1
  463. package/esm2015/lib/components/ndf-uploader/models/ndf-file.model.js +2 -1
  464. package/esm2015/lib/components/ndf-uploader/models/provider.model.js +1 -1
  465. package/esm2015/lib/components/ndf-uploader/ndf-uploader-bottom-sheet.service.js +12 -19
  466. package/esm2015/lib/components/ndf-uploader/ndf-uploader.module.js +1 -1
  467. package/esm2015/lib/components/ndf-uploader/ndf-uploader.service.js +68 -23
  468. package/esm2015/lib/components/ndf-uploader/nuxeo-base-url.js +5 -0
  469. package/esm2015/lib/components/ndf-uploader/providers/index.js +1 -1
  470. package/esm2015/lib/components/ndf-uploader/providers/nuxeo-provider.service.js +11 -6
  471. package/esm2015/lib/components/ndf-uploader/providers/s3-provider.service.js +12 -7
  472. package/esm2015/lib/components/no-data-found/index.js +1 -1
  473. package/esm2015/lib/components/no-data-found/no-data-found.component.js +1 -1
  474. package/esm2015/lib/components/no-data-found/no-data.module.js +1 -1
  475. package/esm2015/lib/components/notifications/components/base-list-notfications.component.js +1 -1
  476. package/esm2015/lib/components/notifications/components/base-notifications.component.js +1 -1
  477. package/esm2015/lib/components/notifications/components/index.js +1 -1
  478. package/esm2015/lib/components/notifications/components/notification-item/get-icon.pipe.js +1 -1
  479. package/esm2015/lib/components/notifications/components/notification-item/notification-item.component.js +2 -2
  480. package/esm2015/lib/components/notifications/components/notification-sortby-toggle/notification-sortby-toggle.component.js +2 -2
  481. package/esm2015/lib/components/notifications/components/notification-source-select/notification-source-select.component.js +2 -2
  482. package/esm2015/lib/components/notifications/components/notification-status-toggle/notification-status-toggle.component.js +2 -2
  483. package/esm2015/lib/components/notifications/components/notifications-button/notifications-button.component.js +2 -2
  484. package/esm2015/lib/components/notifications/components/notifications-date-select/notifications-date-select.component.js +2 -2
  485. package/esm2015/lib/components/notifications/components/notifications-list/notifications-list.component.js +2 -2
  486. package/esm2015/lib/components/notifications/components/notifications-list/options.js +1 -1
  487. package/esm2015/lib/components/notifications/components/notifications-list-actions/notifications-list-actions.component.js +2 -2
  488. package/esm2015/lib/components/notifications/components/notifications-settings/check-if-subscribed.pipe.js +1 -1
  489. package/esm2015/lib/components/notifications/components/notifications-settings/notifications-settings.adapter.js +1 -1
  490. package/esm2015/lib/components/notifications/components/notifications-settings/notifications-settings.component.js +2 -2
  491. package/esm2015/lib/components/notifications/components/notifications-sidebar/notifications-sidebar-content.js +1 -1
  492. package/esm2015/lib/components/notifications/components/notifications-sidebar/notifications-sidebar.component.js +1 -1
  493. package/esm2015/lib/components/notifications/constants/date.js +1 -1
  494. package/esm2015/lib/components/notifications/constants/index.js +1 -1
  495. package/esm2015/lib/components/notifications/constants/pagination.js +1 -1
  496. package/esm2015/lib/components/notifications/constants/panel.js +1 -1
  497. package/esm2015/lib/components/notifications/constants/status.js +1 -1
  498. package/esm2015/lib/components/notifications/containers/index.js +1 -1
  499. package/esm2015/lib/components/notifications/containers/notifications-list-container/notifications-list-container.component.js +2 -2
  500. package/esm2015/lib/components/notifications/containers/notifications-list-container/options.js +1 -1
  501. package/esm2015/lib/components/notifications/containers/notifications-settings-container/notifications-settings-container.component.js +1 -1
  502. package/esm2015/lib/components/notifications/directives/button.directive.js +1 -1
  503. package/esm2015/lib/components/notifications/directives/index.js +1 -1
  504. package/esm2015/lib/components/notifications/directives/notification.directive.js +1 -1
  505. package/esm2015/lib/components/notifications/index.js +1 -1
  506. package/esm2015/lib/components/notifications/models/common.js +1 -1
  507. package/esm2015/lib/components/notifications/models/index.js +1 -1
  508. package/esm2015/lib/components/notifications/models/notification-definition.model.js +1 -1
  509. package/esm2015/lib/components/notifications/models/notification-message.mode.js +1 -1
  510. package/esm2015/lib/components/notifications/models/notification-options.js +1 -1
  511. package/esm2015/lib/components/notifications/models/notification-setting.presenter.js +1 -1
  512. package/esm2015/lib/components/notifications/models/notification-subscription.model.js +1 -1
  513. package/esm2015/lib/components/notifications/models/notification.model.js +1 -1
  514. package/esm2015/lib/components/notifications/models/notifications-list-options.js +1 -1
  515. package/esm2015/lib/components/notifications/models/paging-response.model.js +1 -1
  516. package/esm2015/lib/components/notifications/models/params.model.js +1 -1
  517. package/esm2015/lib/components/notifications/models/vocabularies.js +1 -1
  518. package/esm2015/lib/components/notifications/notifications.module.js +1 -1
  519. package/esm2015/lib/components/notifications/public-api.js +1 -1
  520. package/esm2015/lib/components/notifications/services/index.js +1 -1
  521. package/esm2015/lib/components/notifications/services/listener.service.js +1 -1
  522. package/esm2015/lib/components/notifications/services/notifications.service.js +1 -1
  523. package/esm2015/lib/components/notifications/services/params.service.js +1 -1
  524. package/esm2015/lib/components/notifications/services/response.service.js +1 -1
  525. package/esm2015/lib/components/notifications/services/socket.service.js +1 -1
  526. package/esm2015/lib/components/notifications/utilities/index.js +1 -1
  527. package/esm2015/lib/components/notifications/utilities/response.adapter.js +1 -1
  528. package/esm2015/lib/components/pagination/pagination/pagination.component.js +1 -1
  529. package/esm2015/lib/components/pagination/pagination.module.js +1 -1
  530. package/esm2015/lib/components/pdf-tron/directives/index.js +1 -1
  531. package/esm2015/lib/components/pdf-tron/directives/ndf-tron-extract-text.directive.js +1 -1
  532. package/esm2015/lib/components/pdf-tron/models/index.js +1 -1
  533. package/esm2015/lib/components/pdf-tron/models/tron.model.js +1 -1
  534. package/esm2015/lib/components/pdf-tron/pdf-tron.module.js +1 -1
  535. package/esm2015/lib/components/pdf-tron/pdftron/pdftron.component.js +1 -1
  536. package/esm2015/lib/components/pdf-tron/pdftron/pdftron.service.js +1 -1
  537. package/esm2015/lib/components/pdf-tron/pdftron/silent-pdftron.service.js +1 -1
  538. package/esm2015/lib/components/permissions/add-permissions-dialog/add-permissions-dialog.component.js +2 -2
  539. package/esm2015/lib/components/permissions/permission.service.js +1 -1
  540. package/esm2015/lib/components/permissions/permissions/permissions.component.js +1 -1
  541. package/esm2015/lib/components/permissions/permissions-template/permissions-template.component.js +1 -1
  542. package/esm2015/lib/components/permissions/permissions.module.js +1 -1
  543. package/esm2015/lib/components/reports/chart-panel.js +1 -1
  544. package/esm2015/lib/components/reports/charts/chart.const.js +1 -1
  545. package/esm2015/lib/components/reports/charts/chart.token.js +1 -1
  546. package/esm2015/lib/components/reports/charts/charts.module.js +1 -1
  547. package/esm2015/lib/components/reports/charts/components/base-chart.component.js +1 -1
  548. package/esm2015/lib/components/reports/charts/components/chart.component.js +1 -1
  549. package/esm2015/lib/components/reports/charts/components/data-chart.component.js +1 -1
  550. package/esm2015/lib/components/reports/charts/components/index.js +1 -1
  551. package/esm2015/lib/components/reports/charts/defaults/bar.js +1 -1
  552. package/esm2015/lib/components/reports/charts/defaults/doughnut.js +1 -1
  553. package/esm2015/lib/components/reports/charts/defaults/index.js +1 -1
  554. package/esm2015/lib/components/reports/charts/defaults/line.js +1 -1
  555. package/esm2015/lib/components/reports/charts/defaults/pie.js +1 -1
  556. package/esm2015/lib/components/reports/charts/index.js +1 -1
  557. package/esm2015/lib/components/reports/charts/models/index.js +1 -1
  558. package/esm2015/lib/components/reports/charts/models/options.js +1 -1
  559. package/esm2015/lib/components/reports/charts/models/plugins-options.js +1 -1
  560. package/esm2015/lib/components/reports/charts/models/response.js +1 -1
  561. package/esm2015/lib/components/reports/charts/models/statistic-request-config.js +1 -1
  562. package/esm2015/lib/components/reports/charts/plugins/data-labels.js +1 -1
  563. package/esm2015/lib/components/reports/charts/plugins/doughnut-center-text.js +1 -1
  564. package/esm2015/lib/components/reports/charts/plugins/doughnut-empty-state.js +1 -1
  565. package/esm2015/lib/components/reports/charts/plugins/index.js +1 -1
  566. package/esm2015/lib/components/reports/charts/plugins/legend-margin.js +1 -1
  567. package/esm2015/lib/components/reports/charts/plugins/scrollable-legends.js +1 -1
  568. package/esm2015/lib/components/reports/charts/public-api.js +1 -1
  569. package/esm2015/lib/components/reports/charts/services/index.js +1 -1
  570. package/esm2015/lib/components/reports/charts/services/statistic.service.js +1 -1
  571. package/esm2015/lib/components/reports/charts/utility/colors.js +1 -1
  572. package/esm2015/lib/components/reports/charts/utility/common.js +1 -1
  573. package/esm2015/lib/components/reports/charts/utility/css.js +1 -1
  574. package/esm2015/lib/components/reports/charts/utility/index.js +1 -1
  575. package/esm2015/lib/components/reports/index.js +1 -1
  576. package/esm2015/lib/components/reports/ndf-reports/base/base-chart.js +1 -1
  577. package/esm2015/lib/components/reports/ndf-reports/base/base-custom-report.js +1 -1
  578. package/esm2015/lib/components/reports/ndf-reports/base/base-graph.report.js +1 -1
  579. package/esm2015/lib/components/reports/ndf-reports/base/base-report.js +1 -1
  580. package/esm2015/lib/components/reports/ndf-reports/base/index.js +1 -1
  581. package/esm2015/lib/components/reports/ndf-reports/charts-components/custom-chart/custom-chart.component.js +1 -1
  582. package/esm2015/lib/components/reports/ndf-reports/charts-components/digit-chart/digit-chart.component.js +1 -1
  583. package/esm2015/lib/components/reports/ndf-reports/charts-components/graph-chart/graph-chart.component.js +1 -1
  584. package/esm2015/lib/components/reports/ndf-reports/charts-components/graph-chart/graph-chart.service.js +1 -1
  585. package/esm2015/lib/components/reports/ndf-reports/charts-components/index.js +1 -1
  586. package/esm2015/lib/components/reports/ndf-reports/components/_parts/chart-type-selector/chart-type-selector.component.js +2 -2
  587. package/esm2015/lib/components/reports/ndf-reports/components/_parts/custom-chart-dialog/custom-chart-dialog.component.js +2 -2
  588. package/esm2015/lib/components/reports/ndf-reports/components/_parts/graph-dialog/graph-dialog.component.js +2 -2
  589. package/esm2015/lib/components/reports/ndf-reports/components/_parts/index.js +1 -1
  590. package/esm2015/lib/components/reports/ndf-reports/components/_parts/report-actions/report-actions.component.js +2 -2
  591. package/esm2015/lib/components/reports/ndf-reports/components/_parts/time-group-selector/time-group-selector.component.js +1 -1
  592. package/esm2015/lib/components/reports/ndf-reports/components/_parts/timeline-dialog/timeline-dialog.component.js +2 -2
  593. package/esm2015/lib/components/reports/ndf-reports/components/custom-report/custom-report.component.js +2 -2
  594. package/esm2015/lib/components/reports/ndf-reports/components/digit-report/digit-report.component.js +1 -1
  595. package/esm2015/lib/components/reports/ndf-reports/components/dynamic-timeline-report/dynamic-timeline-report.component.js +2 -2
  596. package/esm2015/lib/components/reports/ndf-reports/components/graph-report/graph-report.component.js +2 -2
  597. package/esm2015/lib/components/reports/ndf-reports/components/index.js +1 -1
  598. package/esm2015/lib/components/reports/ndf-reports/constants/charts-types.js +1 -1
  599. package/esm2015/lib/components/reports/ndf-reports/constants/index.js +1 -1
  600. package/esm2015/lib/components/reports/ndf-reports/constants/time-group.js +1 -1
  601. package/esm2015/lib/components/reports/ndf-reports/containers/index.js +1 -1
  602. package/esm2015/lib/components/reports/ndf-reports/containers/ndf-report/ndf-report.component.js +1 -1
  603. package/esm2015/lib/components/reports/ndf-reports/containers/ndf-reports/ndf-reports.component.js +1 -1
  604. package/esm2015/lib/components/reports/ndf-reports/directives/index.js +1 -1
  605. package/esm2015/lib/components/reports/ndf-reports/directives/scrollable-div.directive.js +1 -1
  606. package/esm2015/lib/components/reports/ndf-reports/index.js +1 -1
  607. package/esm2015/lib/components/reports/ndf-reports/models/base.js +1 -1
  608. package/esm2015/lib/components/reports/ndf-reports/models/common.js +1 -1
  609. package/esm2015/lib/components/reports/ndf-reports/models/custom-definition.js +1 -1
  610. package/esm2015/lib/components/reports/ndf-reports/models/details.js +1 -1
  611. package/esm2015/lib/components/reports/ndf-reports/models/dialog-data.js +1 -1
  612. package/esm2015/lib/components/reports/ndf-reports/models/digit.js +1 -1
  613. package/esm2015/lib/components/reports/ndf-reports/models/dynamic-line.js +1 -1
  614. package/esm2015/lib/components/reports/ndf-reports/models/graph-definition.js +1 -1
  615. package/esm2015/lib/components/reports/ndf-reports/models/index.js +1 -1
  616. package/esm2015/lib/components/reports/ndf-reports/models/ndf-reports.config.js +1 -1
  617. package/esm2015/lib/components/reports/ndf-reports/models/report-config.js +1 -1
  618. package/esm2015/lib/components/reports/ndf-reports/models/report-data-source.js +1 -1
  619. package/esm2015/lib/components/reports/ndf-reports/models/report-response.model.js +1 -1
  620. package/esm2015/lib/components/reports/ndf-reports/models/request.js +1 -1
  621. package/esm2015/lib/components/reports/ndf-reports/ndf-reports.module.js +1 -1
  622. package/esm2015/lib/components/reports/ndf-reports/options/doughnut.js +1 -1
  623. package/esm2015/lib/components/reports/ndf-reports/options/horizontal-bar.js +1 -1
  624. package/esm2015/lib/components/reports/ndf-reports/options/index.js +1 -1
  625. package/esm2015/lib/components/reports/ndf-reports/options/line.js +1 -1
  626. package/esm2015/lib/components/reports/ndf-reports/options/pie.js +1 -1
  627. package/esm2015/lib/components/reports/ndf-reports/options/vertical-bar.js +1 -1
  628. package/esm2015/lib/components/reports/ndf-reports/public-api.js +1 -1
  629. package/esm2015/lib/components/reports/ndf-reports/services/base-chart-builder.service.js +1 -1
  630. package/esm2015/lib/components/reports/ndf-reports/services/chart-callbacks-register.services.js +1 -1
  631. package/esm2015/lib/components/reports/ndf-reports/services/chart-data-transformers.service.js +1 -1
  632. package/esm2015/lib/components/reports/ndf-reports/services/chart-manager.service.js +1 -1
  633. package/esm2015/lib/components/reports/ndf-reports/services/chart-plugins-registry.service.js +1 -1
  634. package/esm2015/lib/components/reports/ndf-reports/services/chart-theme.service.js +1 -1
  635. package/esm2015/lib/components/reports/ndf-reports/services/custom-reports-registry.service.js +1 -1
  636. package/esm2015/lib/components/reports/ndf-reports/services/digit-chart.service.js +1 -1
  637. package/esm2015/lib/components/reports/ndf-reports/services/dynamic-timeline-report.service.js +1 -1
  638. package/esm2015/lib/components/reports/ndf-reports/services/index.js +1 -1
  639. package/esm2015/lib/components/reports/ndf-reports/services/ndf-reports.service.js +1 -1
  640. package/esm2015/lib/components/reports/ndf-reports/services/report-config-mapper.service.js +1 -1
  641. package/esm2015/lib/components/reports/ndf-reports/services/report-configuration.service.js +1 -1
  642. package/esm2015/lib/components/reports/ndf-reports/services/report-transform.service.js +1 -1
  643. package/esm2015/lib/components/reports/ndf-reports/services/reports-data-transformers.service.js +1 -1
  644. package/esm2015/lib/components/reports/ndf-reports/services/reports-dialog.service.js +1 -1
  645. package/esm2015/lib/components/reports/ndf-reports/services/reports-state.service.js +1 -1
  646. package/esm2015/lib/components/reports/ndf-reports/utilities/dataset-colors.js +1 -1
  647. package/esm2015/lib/components/reports/ndf-reports/utilities/index.js +1 -1
  648. package/esm2015/lib/components/reports/ndf-reports/utilities/reports-table.mapper.js +1 -1
  649. package/esm2015/lib/components/select/select/select.component.js +1 -1
  650. package/esm2015/lib/components/select/select.module.js +1 -1
  651. package/esm2015/lib/components/select-users-by-department/select-users-by-department.module.js +1 -1
  652. package/esm2015/lib/components/select-users-by-department/select-users-by-departments/department-management.service.js +1 -1
  653. package/esm2015/lib/components/select-users-by-department/select-users-by-departments/select-users-by-departments.component.js +1 -1
  654. package/esm2015/lib/components/skeleton/index.js +1 -1
  655. package/esm2015/lib/components/skeleton/skeleton.component.js +1 -1
  656. package/esm2015/lib/components/skeleton/skeleton.module.js +1 -1
  657. package/esm2015/lib/components/skeleton/table-skeleton.component.js +1 -1
  658. package/esm2015/lib/components/spell-checker-field/spell-checker-field.module.js +1 -1
  659. package/esm2015/lib/components/spell-checker-field/spell-checker-text-field/spell-checker-text-field.component.js +1 -1
  660. package/esm2015/lib/components/tables/dynamic-table/directives/empty-state.directive.js +1 -1
  661. package/esm2015/lib/components/tables/dynamic-table/dynamic-table/dynamic-table.component.js +1 -1
  662. package/esm2015/lib/components/tables/dynamic-table/dynamic-table.module.js +1 -1
  663. package/esm2015/lib/components/tables/dynamic-table/index.js +1 -1
  664. package/esm2015/lib/components/tables/dynamic-table/public-api.js +1 -1
  665. package/esm2015/lib/components/tables/dynamic-table/services/dynamic-table.service.js +1 -1
  666. package/esm2015/lib/components/tables/index.js +1 -1
  667. package/esm2015/lib/components/tables/ndf-table/components/index.js +1 -1
  668. package/esm2015/lib/components/tables/ndf-table/components/mode-toggler/mode-toggler.component.js +1 -1
  669. package/esm2015/lib/components/tables/ndf-table/components/sorting-list/sorting-list.component.js +2 -2
  670. package/esm2015/lib/components/tables/ndf-table/components/table-columns-toggler/table-columns-toggler.component.js +2 -2
  671. package/esm2015/lib/components/tables/ndf-table/components/table-export/table-export.component.js +2 -2
  672. package/esm2015/lib/components/tables/ndf-table/components/text-search/text-search.component.js +1 -1
  673. package/esm2015/lib/components/tables/ndf-table/constants/index.js +1 -1
  674. package/esm2015/lib/components/tables/ndf-table/constants/sizes.js +1 -1
  675. package/esm2015/lib/components/tables/ndf-table/containers/index.js +1 -1
  676. package/esm2015/lib/components/tables/ndf-table/containers/ndf-table/ndf-table.component.js +1 -1
  677. package/esm2015/lib/components/tables/ndf-table/directives/actions.directive.js +1 -1
  678. package/esm2015/lib/components/tables/ndf-table/directives/filter-custom.directive.js +1 -1
  679. package/esm2015/lib/components/tables/ndf-table/directives/index.js +1 -1
  680. package/esm2015/lib/components/tables/ndf-table/directives/search.directive.js +1 -1
  681. package/esm2015/lib/components/tables/ndf-table/index.js +1 -1
  682. package/esm2015/lib/components/tables/ndf-table/models/index.js +1 -1
  683. package/esm2015/lib/components/tables/ndf-table/models/payload-types.js +1 -1
  684. package/esm2015/lib/components/tables/ndf-table/models/search.config.js +1 -1
  685. package/esm2015/lib/components/tables/ndf-table/models/table-column.js +1 -1
  686. package/esm2015/lib/components/tables/ndf-table/models/table-config.js +1 -1
  687. package/esm2015/lib/components/tables/ndf-table/models/table-mode.js +1 -1
  688. package/esm2015/lib/components/tables/ndf-table/models/table-options.js +1 -1
  689. package/esm2015/lib/components/tables/ndf-table/models/types.js +1 -1
  690. package/esm2015/lib/components/tables/ndf-table/ndf-table.module.js +1 -1
  691. package/esm2015/lib/components/tables/ndf-table/public-api.js +1 -1
  692. package/esm2015/lib/components/tables/ndf-table/services/index.js +1 -1
  693. package/esm2015/lib/components/tables/ndf-table/services/ndf-table-configuration.service.js +1 -1
  694. package/esm2015/lib/components/tables/ndf-table/services/ndf-table.service.js +1 -1
  695. package/esm2015/lib/components/tables/public-api.js +1 -1
  696. package/esm2015/lib/components/tables/table/dynamic-column/dynamic-column.component.js +1 -1
  697. package/esm2015/lib/components/tables/table/dynamic-component.js +1 -1
  698. package/esm2015/lib/components/tables/table/index.js +1 -1
  699. package/esm2015/lib/components/tables/table/page-sizes-list/page-sizes-list.component.js +1 -1
  700. package/esm2015/lib/components/tables/table/public-api.js +1 -1
  701. package/esm2015/lib/components/tables/table/table/table.component.js +2 -2
  702. package/esm2015/lib/components/tables/table/table.module.js +1 -1
  703. package/esm2015/lib/components/toasts/components/notification-toast/notification-toast.component.js +1 -1
  704. package/esm2015/lib/components/toasts/index.js +1 -1
  705. package/esm2015/lib/components/toasts/public-api.js +1 -1
  706. package/esm2015/lib/components/toasts/toasts.module.js +1 -1
  707. package/esm2015/lib/components/user/user/user.component.js +1 -1
  708. package/esm2015/lib/components/user/user.module.js +1 -1
  709. package/esm2015/lib/components/users-card/users-card.component.js +2 -2
  710. package/esm2015/lib/components/users-card/users-card.module.js +1 -1
  711. package/esm2015/lib/components/viewer-log/components/viewer-log/viewer-log.component.js +1 -1
  712. package/esm2015/lib/components/viewer-log/viewer-log.module.js +1 -1
  713. package/esm2015/lib/components/vocabulary/interfaces/op-type.interface.js +1 -1
  714. package/esm2015/lib/components/vocabulary/services/vocabulary-api.service.js +1 -1
  715. package/esm2015/lib/components/vocabulary/translated-vocabulary-select/translated-vocabulary-select.component.js +1 -1
  716. package/esm2015/lib/components/vocabulary/vocabulary/vocabulary.component.js +1 -1
  717. package/esm2015/lib/components/vocabulary/vocabulary.module.js +1 -1
  718. package/esm2015/lib/configuration/app-config.service.js +1 -1
  719. package/esm2015/lib/configuration/helpers/app-initializer.js +1 -1
  720. package/esm2015/lib/core/adapters/adapter.service.js +1 -1
  721. package/esm2015/lib/core/core.module.js +1 -1
  722. package/esm2015/lib/core/enums/language.enum.js +1 -1
  723. package/esm2015/lib/core/env/env-manager.js +1 -1
  724. package/esm2015/lib/core/env/index.js +1 -1
  725. package/esm2015/lib/core/models/api-response.model.js +1 -1
  726. package/esm2015/lib/core/models/automation-response.model.js +1 -1
  727. package/esm2015/lib/core/models/base-response.models.js +1 -1
  728. package/esm2015/lib/core/models/component.model.js +1 -1
  729. package/esm2015/lib/core/models/index.js +1 -1
  730. package/esm2015/lib/core/services/callApi/call-api.service.js +1 -1
  731. package/esm2015/lib/core/services/column-renderer/column-renderer-registry.service.js +1 -1
  732. package/esm2015/lib/core/services/column-renderer/index.js +1 -1
  733. package/esm2015/lib/core/services/extension/action.extensions.js +1 -1
  734. package/esm2015/lib/core/services/extension/component-register.service.js +1 -1
  735. package/esm2015/lib/core/services/extension/extenion-utils.js +1 -1
  736. package/esm2015/lib/core/services/extension/extension-element.js +1 -1
  737. package/esm2015/lib/core/services/extension/extension-loader.service.js +1 -1
  738. package/esm2015/lib/core/services/extension/extension.service.js +1 -1
  739. package/esm2015/lib/core/services/index.js +1 -1
  740. package/esm2015/lib/core/services/initialization/initialization.service.js +1 -1
  741. package/esm2015/lib/core/services/localStorag/local-storag.service.js +1 -1
  742. package/esm2015/lib/core/services/ndf-transform.service.js +1 -1
  743. package/esm2015/lib/core/services/nuxeo/new-nuxeo-overide.js +1 -1
  744. package/esm2015/lib/core/services/nuxeo/nuxeo-override.js +1 -1
  745. package/esm2015/lib/core/services/nuxeo/nuxeo.service.js +1 -1
  746. package/esm2015/lib/core/services/roles/roles.service.js +1 -1
  747. package/esm2015/lib/core/services/translation/translate-loader.service.js +1 -1
  748. package/esm2015/lib/core/services/translation/translation.service.js +1 -1
  749. package/esm2015/lib/core/services/user/user-preferences.service.js +1 -1
  750. package/esm2015/lib/core/tokens/index.js +1 -1
  751. package/esm2015/lib/core/tokens/project.token.js +1 -1
  752. package/esm2015/lib/core/utilities/moment-date-adapter.js +1 -1
  753. package/esm2015/lib/core/utilities/utility.service.js +1 -1
  754. package/esm2015/lib/directive/app-has-role/app-has-role.directive.js +1 -1
  755. package/esm2015/lib/directive/clickOutSide/click-outside.directive.js +1 -1
  756. package/esm2015/lib/directive/directive.module.js +1 -1
  757. package/esm2015/lib/directive/drag-and-drop/drag-and-drop.directive.js +1 -1
  758. package/esm2015/lib/directive/permissions/evaluators.service.js +1 -1
  759. package/esm2015/lib/directive/permissions/permissions.directive.js +1 -1
  760. package/esm2015/lib/directive/rtl/set-dir-rtl.directive.js +1 -1
  761. package/esm2015/lib/directive/rtl/set-rtl.directive.js +1 -1
  762. package/esm2015/lib/nuxeo-development-framework.component.js +1 -1
  763. package/esm2015/lib/nuxeo-development-framework.module.js +1 -1
  764. package/esm2015/lib/nuxeo-development-framework.service.js +1 -1
  765. package/esm2015/lib/pipes/file-size.pipe.js +1 -1
  766. package/esm2015/lib/pipes/hijri-date.pipe.js +1 -1
  767. package/esm2015/lib/pipes/localized-date.pipe.js +1 -1
  768. package/esm2015/lib/pipes/multi-value.pipe.js +1 -1
  769. package/esm2015/lib/pipes/pipes.module.js +1 -1
  770. package/esm2015/lib/pipes/secure-html.pipe.js +1 -1
  771. package/esm2015/lib/pipes/secure.pipe.js +1 -1
  772. package/esm2015/lib/pipes/time-ago.pipe.js +1 -1
  773. package/esm2015/lib/shared/components/base/base-column.component.js +1 -1
  774. package/esm2015/lib/shared/components/base/base-dialog.component.js +1 -1
  775. package/esm2015/lib/shared/components/base/base-selector.component.js +1 -1
  776. package/esm2015/lib/shared/components/base/base.component.js +1 -1
  777. package/esm2015/lib/shared/components/base/destroy.subject.js +1 -1
  778. package/esm2015/lib/shared/components/base/index.js +1 -1
  779. package/esm2015/lib/shared/components/button/button.component.js +1 -1
  780. package/esm2015/lib/shared/components/general-notification-popup/general-notification-popup.component.js +1 -1
  781. package/esm2015/lib/shared/components/index.js +1 -1
  782. package/esm2015/lib/shared/components/item-list/item-list.component.js +2 -2
  783. package/esm2015/lib/shared/components/no-data/no-data.component.js +1 -1
  784. package/esm2015/lib/shared/components/nuxeo-dialog/confirmation/ndf-confirmation-dialog.component.js +1 -1
  785. package/esm2015/lib/shared/components/nuxeo-dialog/index.js +1 -1
  786. package/esm2015/lib/shared/components/nuxeo-dialog/models/confirm-options.model.js +1 -1
  787. package/esm2015/lib/shared/components/nuxeo-dialog/models/dialog-option.model.js +1 -1
  788. package/esm2015/lib/shared/components/nuxeo-dialog/nuxeo-dialog.module.js +1 -1
  789. package/esm2015/lib/shared/components/nuxeo-dialog/nuxeo.dialog.js +2 -2
  790. package/esm2015/lib/shared/components/nuxeo-dialog/services/nuxeo-dialog.service.js +1 -1
  791. package/esm2015/lib/shared/components/read-more/read-more.component.js +1 -1
  792. package/esm2015/lib/shared/components/search-autocomplete/search-autocomplete.component.js +1 -1
  793. package/esm2015/lib/shared/components/spinner/spinner.component.js +1 -1
  794. package/esm2015/lib/shared/components/user-card/user-card.component.js +1 -1
  795. package/esm2015/lib/shared/constants/editor-config-type.js +1 -1
  796. package/esm2015/lib/shared/constants/index.js +1 -1
  797. package/esm2015/lib/shared/directives/copy-to-clipboard.directive.js +1 -1
  798. package/esm2015/lib/shared/directives/element-height.directive.js +1 -1
  799. package/esm2015/lib/shared/directives/fluid-height.directive.js +1 -1
  800. package/esm2015/lib/shared/directives/index.js +1 -1
  801. package/esm2015/lib/shared/evaluator/evaluator.js +1 -1
  802. package/esm2015/lib/shared/evaluator/index.js +1 -1
  803. package/esm2015/lib/shared/evaluator/types.js +1 -1
  804. package/esm2015/lib/shared/index.js +1 -1
  805. package/esm2015/lib/shared/libraryShared.module.js +1 -1
  806. package/esm2015/lib/shared/models/index.js +1 -1
  807. package/esm2015/lib/shared/models/mapper/index.js +1 -1
  808. package/esm2015/lib/shared/models/mapper/nuxeo-mapper.js +1 -1
  809. package/esm2015/lib/shared/models/ndf-request.model.js +1 -1
  810. package/esm2015/lib/shared/models/nuxeo-response.model.js +1 -1
  811. package/esm2015/lib/shared/models/task.model.js +1 -1
  812. package/esm2015/lib/shared/models/type-helpers.js +1 -1
  813. package/esm2015/lib/shared/services/base/base-editor-config.service.js +1 -1
  814. package/esm2015/lib/shared/services/base/base.service.js +1 -1
  815. package/esm2015/lib/shared/services/base/cache-base.service.js +1 -1
  816. package/esm2015/lib/shared/services/base/config/default-ttl-config.js +1 -1
  817. package/esm2015/lib/shared/services/base/config/index.js +1 -1
  818. package/esm2015/lib/shared/services/base/constants/default-cache-options.js +1 -1
  819. package/esm2015/lib/shared/services/base/constants/index.js +1 -1
  820. package/esm2015/lib/shared/services/base/http-base.service.js +1 -1
  821. package/esm2015/lib/shared/services/base/index.js +2 -1
  822. package/esm2015/lib/shared/services/base/models/cache-info-model.js +1 -1
  823. package/esm2015/lib/shared/services/base/models/http-options.model.js +1 -1
  824. package/esm2015/lib/shared/services/base/models/index.js +1 -1
  825. package/esm2015/lib/shared/services/base/models/operation-options.model.js +1 -1
  826. package/esm2015/lib/shared/services/base/models/query-options.model.js +1 -1
  827. package/esm2015/lib/shared/services/base/models/request-options.model.js +1 -1
  828. package/esm2015/lib/shared/services/base/override-token.service.js +31 -0
  829. package/esm2015/lib/shared/services/index.js +1 -1
  830. package/esm2015/lib/shared-services/apis-errors-messages.service.js +1 -1
  831. package/esm2015/lib/shared-services/dialog-mangment.service.js +1 -1
  832. package/esm2015/lib/shared-services/dynamic-form.service.js +1 -1
  833. package/esm2015/lib/shared-services/file-manager.adapter.js +1 -1
  834. package/esm2015/lib/shared-services/file-manager.service.js +1 -1
  835. package/esm2015/lib/shared-services/global-admin.service.js +1 -1
  836. package/esm2015/lib/shared-services/global-pdftron.service.js +1 -1
  837. package/esm2015/lib/shared-services/mainfolder.service.js +1 -1
  838. package/esm2015/lib/shared-services/publishing-document.service.js +1 -1
  839. package/esm2015/lib/shared-services/recently-viewed.service.js +1 -1
  840. package/esm2015/lib/shared-services/shared-docs.service.js +1 -1
  841. package/esm2015/lib/shared-services/shared-services.module.js +1 -1
  842. package/esm2015/lib/shared-services/upload-file.service.js +1 -1
  843. package/esm2015/lib/shared-services/upload-managment.service.js +1 -1
  844. package/esm2015/lib/shared-services/user.service.js +1 -1
  845. package/esm2015/nuxeo-development-framework.js +1 -1
  846. package/esm2015/public-api.js +1 -1
  847. package/fesm2015/nuxeo-development-framework.js +257 -175
  848. package/fesm2015/nuxeo-development-framework.js.map +1 -1
  849. package/lib/components/diagrams/components/custom-connection.component.d.ts +1 -1
  850. package/lib/components/documents/components/document-scan/document-scan.component.d.ts +2 -1
  851. package/lib/components/dynamic-form/components/form-wrappers/base-edit-form/base-edit-form.d.ts +1 -1
  852. package/lib/components/ndf-signatures/emdha/services/emdha.service.d.ts +3 -5
  853. package/lib/components/ndf-signatures/services/signatures.service.d.ts +0 -1
  854. package/lib/components/ndf-uploader/components/bottom-sheet/ndf-uploader-bottom-sheet.component.d.ts +3 -2
  855. package/lib/components/ndf-uploader/index.d.ts +2 -0
  856. package/lib/components/ndf-uploader/models/ndf-file.model.d.ts +2 -1
  857. package/lib/components/ndf-uploader/ndf-uploader-bottom-sheet.service.d.ts +8 -7
  858. package/lib/components/ndf-uploader/ndf-uploader.service.d.ts +7 -5
  859. package/lib/components/ndf-uploader/nuxeo-base-url.d.ts +1 -0
  860. package/lib/components/ndf-uploader/providers/nuxeo-provider.service.d.ts +5 -3
  861. package/lib/components/ndf-uploader/providers/s3-provider.service.d.ts +5 -3
  862. package/lib/components/reports/charts/components/base-chart.component.d.ts +1 -1
  863. package/lib/components/reports/ndf-reports/base/base-chart.d.ts +1 -1
  864. package/lib/components/reports/ndf-reports/components/dynamic-timeline-report/dynamic-timeline-report.component.d.ts +17 -1
  865. package/lib/components/reports/ndf-reports/components/graph-report/graph-report.component.d.ts +1 -1
  866. package/lib/components/reports/ndf-reports/services/base-chart-builder.service.d.ts +14 -14
  867. package/lib/components/tables/ndf-table/components/table-export/table-export.component.d.ts +1 -1
  868. package/lib/shared/services/base/index.d.ts +1 -0
  869. package/lib/shared/services/base/override-token.service.d.ts +10 -0
  870. package/package.json +1 -1
  871. package/lib/components/activities-log/activities-log/activities-log.component.d.ts.map +0 -1
  872. package/lib/components/activities-log/activities-log/activities-log.service.d.ts.map +0 -1
  873. package/lib/components/activities-log/activities-log.module.d.ts.map +0 -1
  874. package/lib/components/activity/activity/activity.component.d.ts.map +0 -1
  875. package/lib/components/activity/activity.module.d.ts.map +0 -1
  876. package/lib/components/attachment-item/attachment-item/attachment-item.component.d.ts.map +0 -1
  877. package/lib/components/attachment-item/attachment-item.module.d.ts.map +0 -1
  878. package/lib/components/attachment-modal/attachment-modal.module.d.ts.map +0 -1
  879. package/lib/components/attachment-modal/attachments/attachments.component.d.ts.map +0 -1
  880. package/lib/components/avatar/avatar/avatar.component.d.ts.map +0 -1
  881. package/lib/components/avatar/avatar.module.d.ts.map +0 -1
  882. package/lib/components/card/card.component.d.ts.map +0 -1
  883. package/lib/components/card/card.module.d.ts.map +0 -1
  884. package/lib/components/comments/comments.module.d.ts.map +0 -1
  885. package/lib/components/comments/components/comment-item/comment-item.component.d.ts.map +0 -1
  886. package/lib/components/comments/components/comments-dashlet/comments-dashlet.component.d.ts.map +0 -1
  887. package/lib/components/comments/components/comments-list/comments-list.component.d.ts.map +0 -1
  888. package/lib/components/comments/components/edit-delete-modal/edit-delete-modal.component.d.ts.map +0 -1
  889. package/lib/components/comments/constants/comment.d.ts.map +0 -1
  890. package/lib/components/comments/services/comment-api.service.d.ts.map +0 -1
  891. package/lib/components/confirm-caller/confirm-caller.dialog.d.ts.map +0 -1
  892. package/lib/components/confirm-caller/confirm-caller.module.d.ts.map +0 -1
  893. package/lib/components/confirm-caller/confirm-dialog/confirm-dialog.component.d.ts.map +0 -1
  894. package/lib/components/confirmation-dialog/confirmation-dialog/confirmation-dialog.component.d.ts.map +0 -1
  895. package/lib/components/confirmation-dialog/confirmation-dialog.module.d.ts.map +0 -1
  896. package/lib/components/correspondence-relation/components/correspondence-relation/correspondence-relation.component.d.ts.map +0 -1
  897. package/lib/components/correspondence-relation/components/correspondence-relation-create-form/correspondence-relation-create-form.component.d.ts.map +0 -1
  898. package/lib/components/correspondence-relation/components/correspondence-relation-list/correspondence-relation-list.component.d.ts.map +0 -1
  899. package/lib/components/correspondence-relation/components/correspondence-relation-reply/correspondence-relation-reply.component.d.ts.map +0 -1
  900. package/lib/components/correspondence-relation/components/versions/versions.component.d.ts.map +0 -1
  901. package/lib/components/correspondence-relation/correspondence-relation.module.d.ts.map +0 -1
  902. package/lib/components/correspondence-relation/services/correspondence-realation.service.d.ts.map +0 -1
  903. package/lib/components/correspondence-relation/services/viewer-files.service.d.ts.map +0 -1
  904. package/lib/components/create-entity/create-entity/create-entity.component.d.ts.map +0 -1
  905. package/lib/components/create-entity/create-entity.module.d.ts.map +0 -1
  906. package/lib/components/cts-tags/components/correspondence-tags/correspondence-tags.component.d.ts.map +0 -1
  907. package/lib/components/cts-tags/cts-tags.module.d.ts.map +0 -1
  908. package/lib/components/cts-tags/services/tags-api.service.d.ts.map +0 -1
  909. package/lib/components/custom-toastr/components/custom-toastr/custom-toastr.component.d.ts.map +0 -1
  910. package/lib/components/custom-toastr/custom-toastr.module.d.ts.map +0 -1
  911. package/lib/components/custom-toastr/interfaces/toast-type.interface.d.ts.map +0 -1
  912. package/lib/components/custom-toastr/services/custom-toastr.service.d.ts.map +0 -1
  913. package/lib/components/diagrams/components/base-node.component.d.ts.map +0 -1
  914. package/lib/components/diagrams/components/circle-node/circle-node.component.d.ts.map +0 -1
  915. package/lib/components/diagrams/components/connection-label.component.d.ts.map +0 -1
  916. package/lib/components/diagrams/components/content-node/content-node.component.d.ts.map +0 -1
  917. package/lib/components/diagrams/components/custom-connection.component.d.ts.map +0 -1
  918. package/lib/components/diagrams/components/custom-socket.component.d.ts.map +0 -1
  919. package/lib/components/diagrams/components/gateway-node/gateway-node.component.d.ts.map +0 -1
  920. package/lib/components/diagrams/components/gateway-ports.component.d.ts.map +0 -1
  921. package/lib/components/diagrams/components/index.d.ts.map +0 -1
  922. package/lib/components/diagrams/components/node-icon.component.d.ts.map +0 -1
  923. package/lib/components/diagrams/components/node-inputs.component.d.ts.map +0 -1
  924. package/lib/components/diagrams/components/node-outputs.component.d.ts.map +0 -1
  925. package/lib/components/diagrams/components/node-ports.component.d.ts.map +0 -1
  926. package/lib/components/diagrams/components/remove-button.component.d.ts.map +0 -1
  927. package/lib/components/diagrams/components/status-icon.component.d.ts.map +0 -1
  928. package/lib/components/diagrams/components/template-node/template-node.component.d.ts.map +0 -1
  929. package/lib/components/diagrams/components/zoom-control.component.d.ts.map +0 -1
  930. package/lib/components/diagrams/constants/defaults.d.ts.map +0 -1
  931. package/lib/components/diagrams/constants/direction.d.ts.map +0 -1
  932. package/lib/components/diagrams/constants/index.d.ts.map +0 -1
  933. package/lib/components/diagrams/constants/message-type.d.ts.map +0 -1
  934. package/lib/components/diagrams/constants/node-type.d.ts.map +0 -1
  935. package/lib/components/diagrams/constants/notify-events.d.ts.map +0 -1
  936. package/lib/components/diagrams/constants/sizes.d.ts.map +0 -1
  937. package/lib/components/diagrams/constants/status.d.ts.map +0 -1
  938. package/lib/components/diagrams/diagrams.module.d.ts.map +0 -1
  939. package/lib/components/diagrams/directive/diagram.directive.d.ts.map +0 -1
  940. package/lib/components/diagrams/directive/index.d.ts.map +0 -1
  941. package/lib/components/diagrams/editor/customize.d.ts.map +0 -1
  942. package/lib/components/diagrams/editor/editor.d.ts.map +0 -1
  943. package/lib/components/diagrams/editor/index.d.ts.map +0 -1
  944. package/lib/components/diagrams/editor/overrides/connection-path.transformers.d.ts.map +0 -1
  945. package/lib/components/diagrams/editor/overrides/index.d.ts.map +0 -1
  946. package/lib/components/diagrams/editor/path-plugin.d.ts.map +0 -1
  947. package/lib/components/diagrams/editor/socket-position-watcher.d.ts.map +0 -1
  948. package/lib/components/diagrams/index.d.ts.map +0 -1
  949. package/lib/components/diagrams/models/base-node.model.d.ts.map +0 -1
  950. package/lib/components/diagrams/models/circle-node.model.d.ts.map +0 -1
  951. package/lib/components/diagrams/models/connection.model.d.ts.map +0 -1
  952. package/lib/components/diagrams/models/content-node.model.d.ts.map +0 -1
  953. package/lib/components/diagrams/models/gate-way.model.d.ts.map +0 -1
  954. package/lib/components/diagrams/models/index.d.ts.map +0 -1
  955. package/lib/components/diagrams/models/ports.model.d.ts.map +0 -1
  956. package/lib/components/diagrams/models/socket.model.d.ts.map +0 -1
  957. package/lib/components/diagrams/models/template-node.model.d.ts.map +0 -1
  958. package/lib/components/diagrams/public-api.d.ts.map +0 -1
  959. package/lib/components/diagrams/services/diagram-plugins.service.d.ts.map +0 -1
  960. package/lib/components/diagrams/services/diagram.service.d.ts.map +0 -1
  961. package/lib/components/diagrams/services/index.d.ts.map +0 -1
  962. package/lib/components/diagrams/services/message.service.d.ts.map +0 -1
  963. package/lib/components/diagrams/services/workflow.service.d.ts.map +0 -1
  964. package/lib/components/diagrams/types/common.type.d.ts.map +0 -1
  965. package/lib/components/diagrams/types/connection-config.type.d.ts.map +0 -1
  966. package/lib/components/diagrams/types/connection-label.type.d.ts.map +0 -1
  967. package/lib/components/diagrams/types/customization.type.d.ts.map +0 -1
  968. package/lib/components/diagrams/types/diagram-config.type.d.ts.map +0 -1
  969. package/lib/components/diagrams/types/diagram-editor.type.d.ts.map +0 -1
  970. package/lib/components/diagrams/types/emitter-type.d.ts.map +0 -1
  971. package/lib/components/diagrams/types/index.d.ts.map +0 -1
  972. package/lib/components/diagrams/types/layout.type.d.ts.map +0 -1
  973. package/lib/components/diagrams/types/node-content.d.ts.map +0 -1
  974. package/lib/components/diagrams/types/node-definition.d.ts.map +0 -1
  975. package/lib/components/diagrams/types/node-status.type.d.ts.map +0 -1
  976. package/lib/components/diagrams/types/node.type.d.ts.map +0 -1
  977. package/lib/components/diagrams/types/notify-event.type.d.ts.map +0 -1
  978. package/lib/components/diagrams/types/path.type.d.ts.map +0 -1
  979. package/lib/components/diagrams/types/ports-config.type.d.ts.map +0 -1
  980. package/lib/components/diagrams/types/schemes.type.d.ts.map +0 -1
  981. package/lib/components/diagrams/types/socket.type.d.ts.map +0 -1
  982. package/lib/components/diagrams/utilities/common.d.ts.map +0 -1
  983. package/lib/components/diagrams/utilities/index.d.ts.map +0 -1
  984. package/lib/components/diagrams/utilities/random.d.ts.map +0 -1
  985. package/lib/components/diagrams/utilities/remove.util.d.ts.map +0 -1
  986. package/lib/components/diagrams/utilities/serialize.d.ts.map +0 -1
  987. package/lib/components/display-suitable-icon/display-suitable-icon/display-suitable-icon.component.d.ts.map +0 -1
  988. package/lib/components/display-suitable-icon/display-suitable-icon/icon.service.d.ts.map +0 -1
  989. package/lib/components/display-suitable-icon/display-suitable-icon.module.d.ts.map +0 -1
  990. package/lib/components/documents/components/attachments-list/attachments-list.component.d.ts.map +0 -1
  991. package/lib/components/documents/components/attachments-page-provider/attachments-page-provider.component.d.ts.map +0 -1
  992. package/lib/components/documents/components/document-list/documents-list.component.d.ts.map +0 -1
  993. package/lib/components/documents/components/document-scan/document-scan.component.d.ts.map +0 -1
  994. package/lib/components/documents/components/document-scan/document-scan.service.d.ts.map +0 -1
  995. package/lib/components/documents/components/document-upload/document-upload.component.d.ts.map +0 -1
  996. package/lib/components/documents/components/documents/documents.component.d.ts.map +0 -1
  997. package/lib/components/documents/constants/document-templates.d.ts.map +0 -1
  998. package/lib/components/documents/constants/documents.d.ts.map +0 -1
  999. package/lib/components/documents/documents.module.d.ts.map +0 -1
  1000. package/lib/components/documents/services/document-templates.service.d.ts.map +0 -1
  1001. package/lib/components/documents/services/documents.service.d.ts.map +0 -1
  1002. package/lib/components/dynamic-chart/dynamic-chart/dynamic-chart.component.d.ts.map +0 -1
  1003. package/lib/components/dynamic-chart/dynamic-chart.module.d.ts.map +0 -1
  1004. package/lib/components/dynamic-chart/services/chart-data.service.d.ts.map +0 -1
  1005. package/lib/components/dynamic-fields-renderer/dynamic-fields-renderer/dynamic-fields-renderer.component.d.ts.map +0 -1
  1006. package/lib/components/dynamic-fields-renderer/dynamic-fields-renderer.module.d.ts.map +0 -1
  1007. package/lib/components/dynamic-filter/dynamic-filter/dynamic-filter.component.d.ts.map +0 -1
  1008. package/lib/components/dynamic-filter/dynamic-filter.module.d.ts.map +0 -1
  1009. package/lib/components/dynamic-form/components/department-form/department-form.component.d.ts.map +0 -1
  1010. package/lib/components/dynamic-form/components/dynamic-form/dynamic-form.component.d.ts.map +0 -1
  1011. package/lib/components/dynamic-form/components/dynamic-form/fields.adapter.d.ts.map +0 -1
  1012. package/lib/components/dynamic-form/components/dynamic-form/form-builder.service.d.ts.map +0 -1
  1013. package/lib/components/dynamic-form/components/dynamic-form-boolitem/dynamic-form-boolitem.component.d.ts.map +0 -1
  1014. package/lib/components/dynamic-form/components/dynamic-form-builder/dynamic-form-builder.component.d.ts.map +0 -1
  1015. package/lib/components/dynamic-form/components/dynamic-form-checkbox-item/dynamic-form-checkbox-item.component.d.ts.map +0 -1
  1016. package/lib/components/dynamic-form/components/dynamic-form-dateitem/dynamic-form-dateitem.component.d.ts.map +0 -1
  1017. package/lib/components/dynamic-form/components/dynamic-form-dateitem/owlDateTimeIntl.d.ts.map +0 -1
  1018. package/lib/components/dynamic-form/components/dynamic-form-department/constants/department.d.ts.map +0 -1
  1019. package/lib/components/dynamic-form/components/dynamic-form-department/dynamic-form-department.component.d.ts.map +0 -1
  1020. package/lib/components/dynamic-form/components/dynamic-form-department/services/department-api.service.d.ts.map +0 -1
  1021. package/lib/components/dynamic-form/components/dynamic-form-department/services/department-management.service.d.ts.map +0 -1
  1022. package/lib/components/dynamic-form/components/dynamic-form-field/dynamic-form-field.component.d.ts.map +0 -1
  1023. package/lib/components/dynamic-form/components/dynamic-form-hijri-dateitem/dynamic-form-hijri-dateitem.component.d.ts.map +0 -1
  1024. package/lib/components/dynamic-form/components/dynamic-form-item-dispatcher/dynamic-form-item-dispatcher.component.d.ts.map +0 -1
  1025. package/lib/components/dynamic-form/components/dynamic-form-mapitem/dynamic-form-mapitem.component.d.ts.map +0 -1
  1026. package/lib/components/dynamic-form/components/dynamic-form-options/dynamic-form-options.component.d.ts.map +0 -1
  1027. package/lib/components/dynamic-form/components/dynamic-form-select-tag/dynamic-form-select-tag.component.d.ts.map +0 -1
  1028. package/lib/components/dynamic-form/components/dynamic-form-select-user-filter/dynamic-form-select-user-filter.component.d.ts.map +0 -1
  1029. package/lib/components/dynamic-form/components/dynamic-form-select-users/dynamic-form-select-users.component.d.ts.map +0 -1
  1030. package/lib/components/dynamic-form/components/dynamic-form-select-users/services/user-api.service.d.ts.map +0 -1
  1031. package/lib/components/dynamic-form/components/dynamic-form-selectitem/dynamic-form-selectitem.component.d.ts.map +0 -1
  1032. package/lib/components/dynamic-form/components/dynamic-form-slide-toggleitem/dynamic-form-slide-toggleitem.component.d.ts.map +0 -1
  1033. package/lib/components/dynamic-form/components/dynamic-form-textarea/dynamic-form-textarea.component.d.ts.map +0 -1
  1034. package/lib/components/dynamic-form/components/dynamic-form-textitem/dynamic-form-textitem.component.d.ts.map +0 -1
  1035. package/lib/components/dynamic-form/components/dynamic-form-treeview-select/dropdown-treeview-select-i18n.d.ts.map +0 -1
  1036. package/lib/components/dynamic-form/components/dynamic-form-treeview-select/dropdown-treeview-select.component.d.ts.map +0 -1
  1037. package/lib/components/dynamic-form/components/dynamic-form-viewer/dynamic-form-viewer.component.d.ts.map +0 -1
  1038. package/lib/components/dynamic-form/components/dynamic-form-vocabulary-item/dynamic-form-vocabulary-item.component.d.ts.map +0 -1
  1039. package/lib/components/dynamic-form/components/form-wrappers/base-edit-form/base-edit-form.d.ts.map +0 -1
  1040. package/lib/components/dynamic-form/components/form-wrappers/date-wrapper/date-wrapper.component.d.ts.map +0 -1
  1041. package/lib/components/dynamic-form/components/form-wrappers/date-wrapper/date-wrapper.formio.d.ts.map +0 -1
  1042. package/lib/components/dynamic-form/components/form-wrappers/toggle-wrapper/toggle-wrapper.component.d.ts.map +0 -1
  1043. package/lib/components/dynamic-form/components/form-wrappers/toggle-wrapper/toggle-wrapper.formio.d.ts.map +0 -1
  1044. package/lib/components/dynamic-form/components/form-wrappers/user-selector-wrapper/user-selector-wrapper.component.d.ts.map +0 -1
  1045. package/lib/components/dynamic-form/components/form-wrappers/user-selector-wrapper/user-selector-wrapper.formio.d.ts.map +0 -1
  1046. package/lib/components/dynamic-form/components/form-wrappers/vocabulary-wrapper/vocabulary-wrapper.component.d.ts.map +0 -1
  1047. package/lib/components/dynamic-form/components/form-wrappers/vocabulary-wrapper/vocabulary-wrapper.formio.d.ts.map +0 -1
  1048. package/lib/components/dynamic-form/directives/dynamic-form-content-proxy.directive.d.ts.map +0 -1
  1049. package/lib/components/dynamic-form/dynamic-form.module.d.ts.map +0 -1
  1050. package/lib/components/dynamic-form/interfaces/dynamic-form-boolitem-properties.interface.d.ts.map +0 -1
  1051. package/lib/components/dynamic-form/interfaces/dynamic-form-dateitem-properties.interface.d.ts.map +0 -1
  1052. package/lib/components/dynamic-form/interfaces/dynamic-form-item-properties.interface.d.ts.map +0 -1
  1053. package/lib/components/dynamic-form/interfaces/dynamic-form-item-validator.interface.d.ts.map +0 -1
  1054. package/lib/components/dynamic-form/interfaces/dynamic-form-item.interface.d.ts.map +0 -1
  1055. package/lib/components/dynamic-form/interfaces/dynamic-form-keyvaluepairsitem-properties.interface.d.ts.map +0 -1
  1056. package/lib/components/dynamic-form/interfaces/dynamic-form-selectitem-properties.interface.d.ts.map +0 -1
  1057. package/lib/components/dynamic-form/interfaces/dynamic-form-textitem-pipe-property.interface.d.ts.map +0 -1
  1058. package/lib/components/dynamic-form/interfaces/dynamic-form-textitem-properties.interface.d.ts.map +0 -1
  1059. package/lib/components/dynamic-form/interfaces/dynamic-form.interfaces.d.ts.map +0 -1
  1060. package/lib/components/dynamic-form/models/dynamic-form-baseitem.model.d.ts.map +0 -1
  1061. package/lib/components/dynamic-form/models/dynamic-form-boolitem.model.d.ts.map +0 -1
  1062. package/lib/components/dynamic-form/models/dynamic-form-dateitem.model.d.ts.map +0 -1
  1063. package/lib/components/dynamic-form/models/dynamic-form-datetimeitem.model.d.ts.map +0 -1
  1064. package/lib/components/dynamic-form/models/dynamic-form-mapitem.model.d.ts.map +0 -1
  1065. package/lib/components/dynamic-form/models/dynamic-form-selectitem.model.d.ts.map +0 -1
  1066. package/lib/components/dynamic-form/models/dynamic-form-textitem.model.d.ts.map +0 -1
  1067. package/lib/components/dynamic-form/models/dynamic-form.models.d.ts.map +0 -1
  1068. package/lib/components/dynamic-form/services/card-item-types.service.d.ts.map +0 -1
  1069. package/lib/components/dynamic-form/services/dynamic-component-mapper.service.d.ts.map +0 -1
  1070. package/lib/components/dynamic-form/services/dynamic-form-update.service.d.ts.map +0 -1
  1071. package/lib/components/dynamic-form/services/vocabulary-api.service.d.ts.map +0 -1
  1072. package/lib/components/dynamic-form/validators/length-validator.d.ts.map +0 -1
  1073. package/lib/components/dynamic-form/validators/regex-validator.d.ts.map +0 -1
  1074. package/lib/components/dynamic-form/validators/required-validator.d.ts.map +0 -1
  1075. package/lib/components/dynamic-form/validators/value-validator.d.ts.map +0 -1
  1076. package/lib/components/dynamic-search/dynamic-search/dynamic-search.component.d.ts.map +0 -1
  1077. package/lib/components/dynamic-search/dynamic-search.module.d.ts.map +0 -1
  1078. package/lib/components/dynamic-tabs/dynamic-tabs/dynamic-tabs.component.d.ts.map +0 -1
  1079. package/lib/components/dynamic-tabs/dynamic-tabs.module.d.ts.map +0 -1
  1080. package/lib/components/dynamic-view/boolean-viewer/boolean-viewer.component.d.ts.map +0 -1
  1081. package/lib/components/dynamic-view/custom-document-viewer/custom-document-viewer.component.d.ts.map +0 -1
  1082. package/lib/components/dynamic-view/custom-pp-viewer/custom-pp-viewer.component.d.ts.map +0 -1
  1083. package/lib/components/dynamic-view/cutome-voc-viewer/cutome-voc-viewer.component.d.ts.map +0 -1
  1084. package/lib/components/dynamic-view/data-viewer/data-viewer.component.d.ts.map +0 -1
  1085. package/lib/components/dynamic-view/date-viewer/date-viewer.component.d.ts.map +0 -1
  1086. package/lib/components/dynamic-view/department-viewer/department-viewer.component.d.ts.map +0 -1
  1087. package/lib/components/dynamic-view/dropdown-viewer/dropdown-viewer.component.d.ts.map +0 -1
  1088. package/lib/components/dynamic-view/dynamic-view.module.d.ts.map +0 -1
  1089. package/lib/components/dynamic-view/dynamic-viewe.service.d.ts.map +0 -1
  1090. package/lib/components/dynamic-view/list-viewer/list-viewer.component.d.ts.map +0 -1
  1091. package/lib/components/file-manger/components/add-to-collection/add-to-collection.component.d.ts.map +0 -1
  1092. package/lib/components/file-manger/components/clipboard/clipboard.component.d.ts.map +0 -1
  1093. package/lib/components/file-manger/components/copy/copy.component.d.ts.map +0 -1
  1094. package/lib/components/file-manger/components/create-directory/create-directory.component.d.ts.map +0 -1
  1095. package/lib/components/file-manger/components/create-modal/create-modal.component.d.ts.map +0 -1
  1096. package/lib/components/file-manger/components/creation-type/creation-type.component.d.ts.map +0 -1
  1097. package/lib/components/file-manger/components/delete/delete.component.d.ts.map +0 -1
  1098. package/lib/components/file-manger/components/folder-modal/folder-modal.component.d.ts.map +0 -1
  1099. package/lib/components/file-manger/components/loan-request/loan-request.component.d.ts.map +0 -1
  1100. package/lib/components/file-manger/components/move/move.component.d.ts.map +0 -1
  1101. package/lib/components/file-manger/components/publish-dialog/publish-dialog.component.d.ts.map +0 -1
  1102. package/lib/components/file-manger/components/rename/rename.component.d.ts.map +0 -1
  1103. package/lib/components/file-manger/components/scan-modal/scan-modal.component.d.ts.map +0 -1
  1104. package/lib/components/file-manger/components/share-dialog/share-dialog.component.d.ts.map +0 -1
  1105. package/lib/components/file-manger/components/sidepanel/sidepanel.component.d.ts.map +0 -1
  1106. package/lib/components/file-manger/components/template-modal/template-modal.component.d.ts.map +0 -1
  1107. package/lib/components/file-manger/components/transfer-doc/transfer-doc.component.d.ts.map +0 -1
  1108. package/lib/components/file-manger/components/update-modal/update-modal.component.d.ts.map +0 -1
  1109. package/lib/components/file-manger/directives/file-grid-infinite-scroll.directive.d.ts.map +0 -1
  1110. package/lib/components/file-manger/file-manager.abstract.d.ts.map +0 -1
  1111. package/lib/components/file-manger/file-manger.module.d.ts.map +0 -1
  1112. package/lib/components/file-manger/models/file-manager-config.model.d.ts.map +0 -1
  1113. package/lib/components/file-manger/models/index.d.ts.map +0 -1
  1114. package/lib/components/file-manger/models/pagination-payload.mode.d.ts.map +0 -1
  1115. package/lib/components/file-manger/models/pagination-response.model.d.ts.map +0 -1
  1116. package/lib/components/filter/filter/filter.component.d.ts.map +0 -1
  1117. package/lib/components/filter/filter.module.d.ts.map +0 -1
  1118. package/lib/components/hijri-gregorian-datepicker/hijri-gregorian-datepicker/gregorian-datepicker/gregorian-datepicker.component.d.ts.map +0 -1
  1119. package/lib/components/hijri-gregorian-datepicker/hijri-gregorian-datepicker/hijri-datepicker/hijri-datepicker.component.d.ts.map +0 -1
  1120. package/lib/components/hijri-gregorian-datepicker/hijri-gregorian-datepicker/hijri-gregorian-datepicker.component.d.ts.map +0 -1
  1121. package/lib/components/hijri-gregorian-datepicker/hijri-gregorian-datepicker/provide-parent-form.directive.d.ts.map +0 -1
  1122. package/lib/components/hijri-gregorian-datepicker/ngx-hijri-gregorian-datepicker.module.d.ts.map +0 -1
  1123. package/lib/components/hijri-gregorian-datepicker/services/date-formatter.service.d.ts.map +0 -1
  1124. package/lib/components/hijri-gregorian-datepicker/services/date-helper.service.d.ts.map +0 -1
  1125. package/lib/components/hijri-gregorian-datepicker/utils/CustomNgbDateParserFormatter.d.ts.map +0 -1
  1126. package/lib/components/hijri-gregorian-datepicker/utils/IslamicI18n.d.ts.map +0 -1
  1127. package/lib/components/hijri-gregorian-datepicker/utils/consts.d.ts.map +0 -1
  1128. package/lib/components/latest-activity/components/activity-line/activity-line.component.d.ts.map +0 -1
  1129. package/lib/components/latest-activity/components/latest-activity/latest-activity.component.d.ts.map +0 -1
  1130. package/lib/components/latest-activity/components/single-activity/single-activity.component.d.ts.map +0 -1
  1131. package/lib/components/latest-activity/constants/activitylog.d.ts.map +0 -1
  1132. package/lib/components/latest-activity/latest-activity.module.d.ts.map +0 -1
  1133. package/lib/components/latest-activity/services/activity-log.service.d.ts.map +0 -1
  1134. package/lib/components/mutiple-dynamic-form-viewer/multiple-dynamic-form-viewer/multiple-dynamic-form-viewer.component.d.ts.map +0 -1
  1135. package/lib/components/mutiple-dynamic-form-viewer/mutiple-dynamic-form-viewer.module.d.ts.map +0 -1
  1136. package/lib/components/ndf-config-editor/components/config-editor-actions/config-editor-actions.component.d.ts.map +0 -1
  1137. package/lib/components/ndf-config-editor/components/editor-mode-switch.component.d.ts.map +0 -1
  1138. package/lib/components/ndf-config-editor/components/index.d.ts.map +0 -1
  1139. package/lib/components/ndf-config-editor/components/info-dialog/info-dialog.component.d.ts.map +0 -1
  1140. package/lib/components/ndf-config-editor/config.token.d.ts.map +0 -1
  1141. package/lib/components/ndf-config-editor/constants/index.d.ts.map +0 -1
  1142. package/lib/components/ndf-config-editor/constants/mode.d.ts.map +0 -1
  1143. package/lib/components/ndf-config-editor/constants/query.d.ts.map +0 -1
  1144. package/lib/components/ndf-config-editor/containers/config-preview/config-preview.component.d.ts.map +0 -1
  1145. package/lib/components/ndf-config-editor/containers/editor-settings/editor-settings.component.d.ts.map +0 -1
  1146. package/lib/components/ndf-config-editor/containers/index.d.ts.map +0 -1
  1147. package/lib/components/ndf-config-editor/containers/monaco-editor.component.d.ts.map +0 -1
  1148. package/lib/components/ndf-config-editor/containers/ndf-config-editor/ndf-config-editor.component.d.ts.map +0 -1
  1149. package/lib/components/ndf-config-editor/index.d.ts.map +0 -1
  1150. package/lib/components/ndf-config-editor/metadata-token.d.ts.map +0 -1
  1151. package/lib/components/ndf-config-editor/models/config.d.ts.map +0 -1
  1152. package/lib/components/ndf-config-editor/models/dialog-data.d.ts.map +0 -1
  1153. package/lib/components/ndf-config-editor/models/editor-model.d.ts.map +0 -1
  1154. package/lib/components/ndf-config-editor/models/index.d.ts.map +0 -1
  1155. package/lib/components/ndf-config-editor/models/payload-data.d.ts.map +0 -1
  1156. package/lib/components/ndf-config-editor/models/type-helper.d.ts.map +0 -1
  1157. package/lib/components/ndf-config-editor/ndf-config-editor.module.d.ts.map +0 -1
  1158. package/lib/components/ndf-config-editor/pipes/index.d.ts.map +0 -1
  1159. package/lib/components/ndf-config-editor/pipes/is-valid-json.pipe.d.ts.map +0 -1
  1160. package/lib/components/ndf-config-editor/pipes/validate-object.pipe.d.ts.map +0 -1
  1161. package/lib/components/ndf-config-editor/public/editor-navigate-button.d.ts.map +0 -1
  1162. package/lib/components/ndf-config-editor/public/index.d.ts.map +0 -1
  1163. package/lib/components/ndf-config-editor/public-api.d.ts.map +0 -1
  1164. package/lib/components/ndf-config-editor/services/data-access.service.d.ts.map +0 -1
  1165. package/lib/components/ndf-config-editor/services/data-store.service.d.ts.map +0 -1
  1166. package/lib/components/ndf-config-editor/services/index.d.ts.map +0 -1
  1167. package/lib/components/ndf-config-editor/services/monaco.loader.service.d.ts.map +0 -1
  1168. package/lib/components/ndf-config-editor/utility/index.d.ts.map +0 -1
  1169. package/lib/components/ndf-config-editor/utility/json.d.ts.map +0 -1
  1170. package/lib/components/ndf-datepicker/adapters/hijri-adapter.d.ts.map +0 -1
  1171. package/lib/components/ndf-datepicker/adapters/index.d.ts.map +0 -1
  1172. package/lib/components/ndf-datepicker/adapters/moment-adapter.d.ts.map +0 -1
  1173. package/lib/components/ndf-datepicker/base/base-value-accessor.d.ts.map +0 -1
  1174. package/lib/components/ndf-datepicker/base/index.d.ts.map +0 -1
  1175. package/lib/components/ndf-datepicker/components/base-datepicker.d.ts.map +0 -1
  1176. package/lib/components/ndf-datepicker/components/index.d.ts.map +0 -1
  1177. package/lib/components/ndf-datepicker/components/input-date.component.d.ts.map +0 -1
  1178. package/lib/components/ndf-datepicker/components/input-range-date.component.d.ts.map +0 -1
  1179. package/lib/components/ndf-datepicker/constants/date-locale-keys.d.ts.map +0 -1
  1180. package/lib/components/ndf-datepicker/constants/date-picker.d.ts.map +0 -1
  1181. package/lib/components/ndf-datepicker/constants/date-type.d.ts.map +0 -1
  1182. package/lib/components/ndf-datepicker/constants/formats.d.ts.map +0 -1
  1183. package/lib/components/ndf-datepicker/constants/hijri-dates-names.d.ts.map +0 -1
  1184. package/lib/components/ndf-datepicker/constants/index.d.ts.map +0 -1
  1185. package/lib/components/ndf-datepicker/containers/datepicker-container.d.ts.map +0 -1
  1186. package/lib/components/ndf-datepicker/containers/index.d.ts.map +0 -1
  1187. package/lib/components/ndf-datepicker/containers/ndf-gregorian-datepicker.component.d.ts.map +0 -1
  1188. package/lib/components/ndf-datepicker/containers/ndf-hijri-datepicker.component.d.ts.map +0 -1
  1189. package/lib/components/ndf-datepicker/index.d.ts.map +0 -1
  1190. package/lib/components/ndf-datepicker/models/data-types.d.ts.map +0 -1
  1191. package/lib/components/ndf-datepicker/models/index.d.ts.map +0 -1
  1192. package/lib/components/ndf-datepicker/models/value-object.d.ts.map +0 -1
  1193. package/lib/components/ndf-datepicker/ndf-datepicker.component.d.ts.map +0 -1
  1194. package/lib/components/ndf-datepicker/ndf-datepicker.module.d.ts.map +0 -1
  1195. package/lib/components/ndf-datepicker/services/calendar.service.d.ts.map +0 -1
  1196. package/lib/components/ndf-datepicker/services/index.d.ts.map +0 -1
  1197. package/lib/components/ndf-datepicker/services/localize-state.service.d.ts.map +0 -1
  1198. package/lib/components/ndf-filters/base/base-aggregation-field.component.d.ts.map +0 -1
  1199. package/lib/components/ndf-filters/base/base-checkbox-radio.component.d.ts.map +0 -1
  1200. package/lib/components/ndf-filters/base/base-custom-field.component.d.ts.map +0 -1
  1201. package/lib/components/ndf-filters/base/base-predicate-field.component.d.ts.map +0 -1
  1202. package/lib/components/ndf-filters/base/base-value-accessor.component.d.ts.map +0 -1
  1203. package/lib/components/ndf-filters/base/index.d.ts.map +0 -1
  1204. package/lib/components/ndf-filters/components/__parts/field-header.component.d.ts.map +0 -1
  1205. package/lib/components/ndf-filters/components/__parts/filter-autocomplete-input/filter-autocomplete-input.component.d.ts.map +0 -1
  1206. package/lib/components/ndf-filters/components/__parts/filter-autocomplete-input/filter-autocomplete.service.d.ts.map +0 -1
  1207. package/lib/components/ndf-filters/components/__parts/filter-collapse-control/filter-collapse-control.component.d.ts.map +0 -1
  1208. package/lib/components/ndf-filters/components/__parts/filter-date-range/filter-date-range.component.d.ts.map +0 -1
  1209. package/lib/components/ndf-filters/components/__parts/filter-empty-message.component.d.ts.map +0 -1
  1210. package/lib/components/ndf-filters/components/__parts/filter-option-text/filter-option-text.component.d.ts.map +0 -1
  1211. package/lib/components/ndf-filters/components/__parts/filter-options-sort/filter-options-sort.component.d.ts.map +0 -1
  1212. package/lib/components/ndf-filters/components/__parts/filter-search-input/filter-search-input.component.d.ts.map +0 -1
  1213. package/lib/components/ndf-filters/components/__parts/html-dialog/html-dialog.component.d.ts.map +0 -1
  1214. package/lib/components/ndf-filters/components/__parts/index.d.ts.map +0 -1
  1215. package/lib/components/ndf-filters/components/aggregation-autocomplete/aggregation-autocomplete.component.d.ts.map +0 -1
  1216. package/lib/components/ndf-filters/components/aggregation-checkbox/aggregation-checkbox.component.d.ts.map +0 -1
  1217. package/lib/components/ndf-filters/components/aggregation-custom/aggregation-custom.component.d.ts.map +0 -1
  1218. package/lib/components/ndf-filters/components/aggregation-date-list/aggregation-date-list.component.d.ts.map +0 -1
  1219. package/lib/components/ndf-filters/components/aggregation-radio/aggregation-radio.component.d.ts.map +0 -1
  1220. package/lib/components/ndf-filters/components/aggregation-select/aggregation-select.component.d.ts.map +0 -1
  1221. package/lib/components/ndf-filters/components/aggregation-switch/aggregation-switch.component.d.ts.map +0 -1
  1222. package/lib/components/ndf-filters/components/index.d.ts.map +0 -1
  1223. package/lib/components/ndf-filters/components/predicate-date-input/predicate-date-input.component.d.ts.map +0 -1
  1224. package/lib/components/ndf-filters/components/predicate-text-input/predicate-text-input.component.d.ts.map +0 -1
  1225. package/lib/components/ndf-filters/constants/common.d.ts.map +0 -1
  1226. package/lib/components/ndf-filters/constants/field.d.ts.map +0 -1
  1227. package/lib/components/ndf-filters/constants/index.d.ts.map +0 -1
  1228. package/lib/components/ndf-filters/constants/operators.d.ts.map +0 -1
  1229. package/lib/components/ndf-filters/constants/sort.d.ts.map +0 -1
  1230. package/lib/components/ndf-filters/constants/type.d.ts.map +0 -1
  1231. package/lib/components/ndf-filters/containers/aggregation-field/aggregation-field.component.d.ts.map +0 -1
  1232. package/lib/components/ndf-filters/containers/base-field.d.ts.map +0 -1
  1233. package/lib/components/ndf-filters/containers/custom-field/custom-field.component.d.ts.map +0 -1
  1234. package/lib/components/ndf-filters/containers/filters-panel/base-filters-panel.d.ts.map +0 -1
  1235. package/lib/components/ndf-filters/containers/filters-panel/filters-panel.component.d.ts.map +0 -1
  1236. package/lib/components/ndf-filters/containers/index.d.ts.map +0 -1
  1237. package/lib/components/ndf-filters/containers/predicate-field/predicate-field.component.d.ts.map +0 -1
  1238. package/lib/components/ndf-filters/custom-components/active-user-switch/active-user-switch.component.d.ts.map +0 -1
  1239. package/lib/components/ndf-filters/custom-components/active-user-switch/active-user.service.d.ts.map +0 -1
  1240. package/lib/components/ndf-filters/custom-components/active-user-switch/user-types.d.ts.map +0 -1
  1241. package/lib/components/ndf-filters/custom-components/aggregation-group/aggregation-group.component.d.ts.map +0 -1
  1242. package/lib/components/ndf-filters/custom-components/aggregation-group/map-aggregation-config.d.ts.map +0 -1
  1243. package/lib/components/ndf-filters/custom-components/index.d.ts.map +0 -1
  1244. package/lib/components/ndf-filters/directives/autocomplete-template.directive.d.ts.map +0 -1
  1245. package/lib/components/ndf-filters/directives/checkbox-template.directive.d.ts.map +0 -1
  1246. package/lib/components/ndf-filters/directives/custom-template.directive.d.ts.map +0 -1
  1247. package/lib/components/ndf-filters/directives/date-template.directive.d.ts.map +0 -1
  1248. package/lib/components/ndf-filters/directives/dropdown-label-template.directive.d.ts.map +0 -1
  1249. package/lib/components/ndf-filters/directives/dropdown-template.directive.d.ts.map +0 -1
  1250. package/lib/components/ndf-filters/directives/index.d.ts.map +0 -1
  1251. package/lib/components/ndf-filters/directives/radio-template.directive.d.ts.map +0 -1
  1252. package/lib/components/ndf-filters/directives/switch-template.directive.d.ts.map +0 -1
  1253. package/lib/components/ndf-filters/index.d.ts.map +0 -1
  1254. package/lib/components/ndf-filters/models/aggregation-field-config.d.ts.map +0 -1
  1255. package/lib/components/ndf-filters/models/aggregation-response.model.d.ts.map +0 -1
  1256. package/lib/components/ndf-filters/models/base-field-config.d.ts.map +0 -1
  1257. package/lib/components/ndf-filters/models/common.d.ts.map +0 -1
  1258. package/lib/components/ndf-filters/models/custom-field-config.d.ts.map +0 -1
  1259. package/lib/components/ndf-filters/models/field-config.model.d.ts.map +0 -1
  1260. package/lib/components/ndf-filters/models/field-options/autocomplete-options.d.ts.map +0 -1
  1261. package/lib/components/ndf-filters/models/field-options/checkbox-options.d.ts.map +0 -1
  1262. package/lib/components/ndf-filters/models/field-options/common-utils.d.ts.map +0 -1
  1263. package/lib/components/ndf-filters/models/field-options/custom-fields-options.d.ts.map +0 -1
  1264. package/lib/components/ndf-filters/models/field-options/custom-options.d.ts.map +0 -1
  1265. package/lib/components/ndf-filters/models/field-options/date-list-options.d.ts.map +0 -1
  1266. package/lib/components/ndf-filters/models/field-options/date-options.d.ts.map +0 -1
  1267. package/lib/components/ndf-filters/models/field-options/dropdown-options.d.ts.map +0 -1
  1268. package/lib/components/ndf-filters/models/field-options/index.d.ts.map +0 -1
  1269. package/lib/components/ndf-filters/models/field-options/input-options.d.ts.map +0 -1
  1270. package/lib/components/ndf-filters/models/field-options/radio-options.d.ts.map +0 -1
  1271. package/lib/components/ndf-filters/models/field-options/switch-options.d.ts.map +0 -1
  1272. package/lib/components/ndf-filters/models/filter-option.model.d.ts.map +0 -1
  1273. package/lib/components/ndf-filters/models/form-query-request.d.ts.map +0 -1
  1274. package/lib/components/ndf-filters/models/index.d.ts.map +0 -1
  1275. package/lib/components/ndf-filters/models/operator-value-object.d.ts.map +0 -1
  1276. package/lib/components/ndf-filters/models/predicate-field-config.d.ts.map +0 -1
  1277. package/lib/components/ndf-filters/models/types-helper.d.ts.map +0 -1
  1278. package/lib/components/ndf-filters/models/value-object.model.d.ts.map +0 -1
  1279. package/lib/components/ndf-filters/ndf-filters-panel.module.d.ts.map +0 -1
  1280. package/lib/components/ndf-filters/pipes/autocomplete-filter.pipe.d.ts.map +0 -1
  1281. package/lib/components/ndf-filters/pipes/check-condition.pipe.d.ts.map +0 -1
  1282. package/lib/components/ndf-filters/pipes/filter.pipe.d.ts.map +0 -1
  1283. package/lib/components/ndf-filters/pipes/hash-translate.pipe.d.ts.map +0 -1
  1284. package/lib/components/ndf-filters/pipes/index.d.ts.map +0 -1
  1285. package/lib/components/ndf-filters/pipes/localized-label.pipe.d.ts.map +0 -1
  1286. package/lib/components/ndf-filters/pipes/roles-filters.pipe.d.ts.map +0 -1
  1287. package/lib/components/ndf-filters/pipes/sanitizer.pipe.d.ts.map +0 -1
  1288. package/lib/components/ndf-filters/pipes/sort.pipe.d.ts.map +0 -1
  1289. package/lib/components/ndf-filters/pipes/tooltip.pipe.d.ts.map +0 -1
  1290. package/lib/components/ndf-filters/public-api.d.ts.map +0 -1
  1291. package/lib/components/ndf-filters/services/aggregation-field.service.d.ts.map +0 -1
  1292. package/lib/components/ndf-filters/services/dynamic-component-loader.service.d.ts.map +0 -1
  1293. package/lib/components/ndf-filters/services/filters-mapper.service.d.ts.map +0 -1
  1294. package/lib/components/ndf-filters/services/filters-query.service.d.ts.map +0 -1
  1295. package/lib/components/ndf-filters/services/index.d.ts.map +0 -1
  1296. package/lib/components/ndf-filters/utility/index.d.ts.map +0 -1
  1297. package/lib/components/ndf-filters/utility/nxql-query.d.ts.map +0 -1
  1298. package/lib/components/ndf-filters/utility/nxql.d.ts.map +0 -1
  1299. package/lib/components/ndf-filters/utility/object.d.ts.map +0 -1
  1300. package/lib/components/ndf-panel/component/ndf-panel.component.d.ts.map +0 -1
  1301. package/lib/components/ndf-panel/index.d.ts.map +0 -1
  1302. package/lib/components/ndf-panel/ndf-panel.module.d.ts.map +0 -1
  1303. package/lib/components/ndf-scanner/index.d.ts.map +0 -1
  1304. package/lib/components/ndf-scanner/ndf-scanner.component.d.ts.map +0 -1
  1305. package/lib/components/ndf-scanner/ndf-scanner.module.d.ts.map +0 -1
  1306. package/lib/components/ndf-signatures/emdha/dialogs/auth/emdha-auth.dialog.d.ts.map +0 -1
  1307. package/lib/components/ndf-signatures/emdha/dialogs/index.d.ts.map +0 -1
  1308. package/lib/components/ndf-signatures/emdha/index.d.ts.map +0 -1
  1309. package/lib/components/ndf-signatures/emdha/services/emdha.service.d.ts.map +0 -1
  1310. package/lib/components/ndf-signatures/emdha/services/index.d.ts.map +0 -1
  1311. package/lib/components/ndf-signatures/index.d.ts.map +0 -1
  1312. package/lib/components/ndf-signatures/ndf-signature-panel/ndf-signature-panel.component.d.ts.map +0 -1
  1313. package/lib/components/ndf-signatures/ndf-signatures.module.d.ts.map +0 -1
  1314. package/lib/components/ndf-signatures/services/index.d.ts.map +0 -1
  1315. package/lib/components/ndf-signatures/services/signatures.service.d.ts.map +0 -1
  1316. package/lib/components/ndf-tabs/component/ndf-tabs.component.d.ts.map +0 -1
  1317. package/lib/components/ndf-tabs/index.d.ts.map +0 -1
  1318. package/lib/components/ndf-tabs/ndf-tabs.module.d.ts.map +0 -1
  1319. package/lib/components/ndf-tabs/tab.type.d.ts.map +0 -1
  1320. package/lib/components/ndf-uploader/components/bottom-sheet/ndf-uploader-bottom-sheet.component.d.ts.map +0 -1
  1321. package/lib/components/ndf-uploader/components/index.d.ts.map +0 -1
  1322. package/lib/components/ndf-uploader/config/index.d.ts.map +0 -1
  1323. package/lib/components/ndf-uploader/config/uploader.config.d.ts.map +0 -1
  1324. package/lib/components/ndf-uploader/constant/file-content.d.ts.map +0 -1
  1325. package/lib/components/ndf-uploader/constant/index.d.ts.map +0 -1
  1326. package/lib/components/ndf-uploader/helpers/index.d.ts.map +0 -1
  1327. package/lib/components/ndf-uploader/helpers/uploader.helper.d.ts.map +0 -1
  1328. package/lib/components/ndf-uploader/index.d.ts.map +0 -1
  1329. package/lib/components/ndf-uploader/models/batch.model.d.ts.map +0 -1
  1330. package/lib/components/ndf-uploader/models/index.d.ts.map +0 -1
  1331. package/lib/components/ndf-uploader/models/ndf-file.model.d.ts.map +0 -1
  1332. package/lib/components/ndf-uploader/models/provider.model.d.ts.map +0 -1
  1333. package/lib/components/ndf-uploader/ndf-uploader-bottom-sheet.service.d.ts.map +0 -1
  1334. package/lib/components/ndf-uploader/ndf-uploader.module.d.ts.map +0 -1
  1335. package/lib/components/ndf-uploader/ndf-uploader.service.d.ts.map +0 -1
  1336. package/lib/components/ndf-uploader/providers/index.d.ts.map +0 -1
  1337. package/lib/components/ndf-uploader/providers/nuxeo-provider.service.d.ts.map +0 -1
  1338. package/lib/components/ndf-uploader/providers/s3-provider.service.d.ts.map +0 -1
  1339. package/lib/components/no-data-found/index.d.ts.map +0 -1
  1340. package/lib/components/no-data-found/no-data-found.component.d.ts.map +0 -1
  1341. package/lib/components/no-data-found/no-data.module.d.ts.map +0 -1
  1342. package/lib/components/notifications/components/base-list-notfications.component.d.ts.map +0 -1
  1343. package/lib/components/notifications/components/base-notifications.component.d.ts.map +0 -1
  1344. package/lib/components/notifications/components/index.d.ts.map +0 -1
  1345. package/lib/components/notifications/components/notification-item/get-icon.pipe.d.ts.map +0 -1
  1346. package/lib/components/notifications/components/notification-item/notification-item.component.d.ts.map +0 -1
  1347. package/lib/components/notifications/components/notification-sortby-toggle/notification-sortby-toggle.component.d.ts.map +0 -1
  1348. package/lib/components/notifications/components/notification-source-select/notification-source-select.component.d.ts.map +0 -1
  1349. package/lib/components/notifications/components/notification-status-toggle/notification-status-toggle.component.d.ts.map +0 -1
  1350. package/lib/components/notifications/components/notifications-button/notifications-button.component.d.ts.map +0 -1
  1351. package/lib/components/notifications/components/notifications-date-select/notifications-date-select.component.d.ts.map +0 -1
  1352. package/lib/components/notifications/components/notifications-list/notifications-list.component.d.ts.map +0 -1
  1353. package/lib/components/notifications/components/notifications-list/options.d.ts.map +0 -1
  1354. package/lib/components/notifications/components/notifications-list-actions/notifications-list-actions.component.d.ts.map +0 -1
  1355. package/lib/components/notifications/components/notifications-settings/check-if-subscribed.pipe.d.ts.map +0 -1
  1356. package/lib/components/notifications/components/notifications-settings/notifications-settings.adapter.d.ts.map +0 -1
  1357. package/lib/components/notifications/components/notifications-settings/notifications-settings.component.d.ts.map +0 -1
  1358. package/lib/components/notifications/components/notifications-sidebar/notifications-sidebar-content.d.ts.map +0 -1
  1359. package/lib/components/notifications/components/notifications-sidebar/notifications-sidebar.component.d.ts.map +0 -1
  1360. package/lib/components/notifications/constants/date.d.ts.map +0 -1
  1361. package/lib/components/notifications/constants/index.d.ts.map +0 -1
  1362. package/lib/components/notifications/constants/pagination.d.ts.map +0 -1
  1363. package/lib/components/notifications/constants/panel.d.ts.map +0 -1
  1364. package/lib/components/notifications/constants/status.d.ts.map +0 -1
  1365. package/lib/components/notifications/containers/index.d.ts.map +0 -1
  1366. package/lib/components/notifications/containers/notifications-list-container/notifications-list-container.component.d.ts.map +0 -1
  1367. package/lib/components/notifications/containers/notifications-list-container/options.d.ts.map +0 -1
  1368. package/lib/components/notifications/containers/notifications-settings-container/notifications-settings-container.component.d.ts.map +0 -1
  1369. package/lib/components/notifications/directives/button.directive.d.ts.map +0 -1
  1370. package/lib/components/notifications/directives/index.d.ts.map +0 -1
  1371. package/lib/components/notifications/directives/notification.directive.d.ts.map +0 -1
  1372. package/lib/components/notifications/index.d.ts.map +0 -1
  1373. package/lib/components/notifications/models/common.d.ts.map +0 -1
  1374. package/lib/components/notifications/models/index.d.ts.map +0 -1
  1375. package/lib/components/notifications/models/notification-definition.model.d.ts.map +0 -1
  1376. package/lib/components/notifications/models/notification-message.mode.d.ts.map +0 -1
  1377. package/lib/components/notifications/models/notification-options.d.ts.map +0 -1
  1378. package/lib/components/notifications/models/notification-setting.presenter.d.ts.map +0 -1
  1379. package/lib/components/notifications/models/notification-subscription.model.d.ts.map +0 -1
  1380. package/lib/components/notifications/models/notification.model.d.ts.map +0 -1
  1381. package/lib/components/notifications/models/notifications-list-options.d.ts.map +0 -1
  1382. package/lib/components/notifications/models/paging-response.model.d.ts.map +0 -1
  1383. package/lib/components/notifications/models/params.model.d.ts.map +0 -1
  1384. package/lib/components/notifications/models/vocabularies.d.ts.map +0 -1
  1385. package/lib/components/notifications/notifications.module.d.ts.map +0 -1
  1386. package/lib/components/notifications/public-api.d.ts.map +0 -1
  1387. package/lib/components/notifications/services/index.d.ts.map +0 -1
  1388. package/lib/components/notifications/services/listener.service.d.ts.map +0 -1
  1389. package/lib/components/notifications/services/notifications.service.d.ts.map +0 -1
  1390. package/lib/components/notifications/services/params.service.d.ts.map +0 -1
  1391. package/lib/components/notifications/services/response.service.d.ts.map +0 -1
  1392. package/lib/components/notifications/services/socket.service.d.ts.map +0 -1
  1393. package/lib/components/notifications/utilities/index.d.ts.map +0 -1
  1394. package/lib/components/notifications/utilities/response.adapter.d.ts.map +0 -1
  1395. package/lib/components/pagination/pagination/pagination.component.d.ts.map +0 -1
  1396. package/lib/components/pagination/pagination.module.d.ts.map +0 -1
  1397. package/lib/components/pdf-tron/directives/index.d.ts.map +0 -1
  1398. package/lib/components/pdf-tron/directives/ndf-tron-extract-text.directive.d.ts.map +0 -1
  1399. package/lib/components/pdf-tron/models/index.d.ts.map +0 -1
  1400. package/lib/components/pdf-tron/models/tron.model.d.ts.map +0 -1
  1401. package/lib/components/pdf-tron/pdf-tron.module.d.ts.map +0 -1
  1402. package/lib/components/pdf-tron/pdftron/pdftron.component.d.ts.map +0 -1
  1403. package/lib/components/pdf-tron/pdftron/pdftron.service.d.ts.map +0 -1
  1404. package/lib/components/pdf-tron/pdftron/silent-pdftron.service.d.ts.map +0 -1
  1405. package/lib/components/permissions/add-permissions-dialog/add-permissions-dialog.component.d.ts.map +0 -1
  1406. package/lib/components/permissions/permission.service.d.ts.map +0 -1
  1407. package/lib/components/permissions/permissions/permissions.component.d.ts.map +0 -1
  1408. package/lib/components/permissions/permissions-template/permissions-template.component.d.ts.map +0 -1
  1409. package/lib/components/permissions/permissions.module.d.ts.map +0 -1
  1410. package/lib/components/reports/chart-panel.d.ts.map +0 -1
  1411. package/lib/components/reports/charts/chart.const.d.ts.map +0 -1
  1412. package/lib/components/reports/charts/chart.token.d.ts.map +0 -1
  1413. package/lib/components/reports/charts/charts.module.d.ts.map +0 -1
  1414. package/lib/components/reports/charts/components/base-chart.component.d.ts.map +0 -1
  1415. package/lib/components/reports/charts/components/chart.component.d.ts.map +0 -1
  1416. package/lib/components/reports/charts/components/data-chart.component.d.ts.map +0 -1
  1417. package/lib/components/reports/charts/components/index.d.ts.map +0 -1
  1418. package/lib/components/reports/charts/defaults/bar.d.ts.map +0 -1
  1419. package/lib/components/reports/charts/defaults/doughnut.d.ts.map +0 -1
  1420. package/lib/components/reports/charts/defaults/index.d.ts.map +0 -1
  1421. package/lib/components/reports/charts/defaults/line.d.ts.map +0 -1
  1422. package/lib/components/reports/charts/defaults/pie.d.ts.map +0 -1
  1423. package/lib/components/reports/charts/index.d.ts.map +0 -1
  1424. package/lib/components/reports/charts/models/index.d.ts.map +0 -1
  1425. package/lib/components/reports/charts/models/options.d.ts.map +0 -1
  1426. package/lib/components/reports/charts/models/plugins-options.d.ts.map +0 -1
  1427. package/lib/components/reports/charts/models/response.d.ts.map +0 -1
  1428. package/lib/components/reports/charts/models/statistic-request-config.d.ts.map +0 -1
  1429. package/lib/components/reports/charts/plugins/data-labels.d.ts.map +0 -1
  1430. package/lib/components/reports/charts/plugins/doughnut-center-text.d.ts.map +0 -1
  1431. package/lib/components/reports/charts/plugins/doughnut-empty-state.d.ts.map +0 -1
  1432. package/lib/components/reports/charts/plugins/index.d.ts.map +0 -1
  1433. package/lib/components/reports/charts/plugins/legend-margin.d.ts.map +0 -1
  1434. package/lib/components/reports/charts/plugins/scrollable-legends.d.ts.map +0 -1
  1435. package/lib/components/reports/charts/public-api.d.ts.map +0 -1
  1436. package/lib/components/reports/charts/services/index.d.ts.map +0 -1
  1437. package/lib/components/reports/charts/services/statistic.service.d.ts.map +0 -1
  1438. package/lib/components/reports/charts/utility/colors.d.ts.map +0 -1
  1439. package/lib/components/reports/charts/utility/common.d.ts.map +0 -1
  1440. package/lib/components/reports/charts/utility/css.d.ts.map +0 -1
  1441. package/lib/components/reports/charts/utility/index.d.ts.map +0 -1
  1442. package/lib/components/reports/index.d.ts.map +0 -1
  1443. package/lib/components/reports/ndf-reports/base/base-chart.d.ts.map +0 -1
  1444. package/lib/components/reports/ndf-reports/base/base-custom-report.d.ts.map +0 -1
  1445. package/lib/components/reports/ndf-reports/base/base-graph.report.d.ts.map +0 -1
  1446. package/lib/components/reports/ndf-reports/base/base-report.d.ts.map +0 -1
  1447. package/lib/components/reports/ndf-reports/base/index.d.ts.map +0 -1
  1448. package/lib/components/reports/ndf-reports/charts-components/custom-chart/custom-chart.component.d.ts.map +0 -1
  1449. package/lib/components/reports/ndf-reports/charts-components/digit-chart/digit-chart.component.d.ts.map +0 -1
  1450. package/lib/components/reports/ndf-reports/charts-components/graph-chart/graph-chart.component.d.ts.map +0 -1
  1451. package/lib/components/reports/ndf-reports/charts-components/graph-chart/graph-chart.service.d.ts.map +0 -1
  1452. package/lib/components/reports/ndf-reports/charts-components/index.d.ts.map +0 -1
  1453. package/lib/components/reports/ndf-reports/components/_parts/chart-type-selector/chart-type-selector.component.d.ts.map +0 -1
  1454. package/lib/components/reports/ndf-reports/components/_parts/custom-chart-dialog/custom-chart-dialog.component.d.ts.map +0 -1
  1455. package/lib/components/reports/ndf-reports/components/_parts/graph-dialog/graph-dialog.component.d.ts.map +0 -1
  1456. package/lib/components/reports/ndf-reports/components/_parts/index.d.ts.map +0 -1
  1457. package/lib/components/reports/ndf-reports/components/_parts/report-actions/report-actions.component.d.ts.map +0 -1
  1458. package/lib/components/reports/ndf-reports/components/_parts/time-group-selector/time-group-selector.component.d.ts.map +0 -1
  1459. package/lib/components/reports/ndf-reports/components/_parts/timeline-dialog/timeline-dialog.component.d.ts.map +0 -1
  1460. package/lib/components/reports/ndf-reports/components/custom-report/custom-report.component.d.ts.map +0 -1
  1461. package/lib/components/reports/ndf-reports/components/digit-report/digit-report.component.d.ts.map +0 -1
  1462. package/lib/components/reports/ndf-reports/components/dynamic-timeline-report/dynamic-timeline-report.component.d.ts.map +0 -1
  1463. package/lib/components/reports/ndf-reports/components/graph-report/graph-report.component.d.ts.map +0 -1
  1464. package/lib/components/reports/ndf-reports/components/index.d.ts.map +0 -1
  1465. package/lib/components/reports/ndf-reports/constants/charts-types.d.ts.map +0 -1
  1466. package/lib/components/reports/ndf-reports/constants/index.d.ts.map +0 -1
  1467. package/lib/components/reports/ndf-reports/constants/time-group.d.ts.map +0 -1
  1468. package/lib/components/reports/ndf-reports/containers/index.d.ts.map +0 -1
  1469. package/lib/components/reports/ndf-reports/containers/ndf-report/ndf-report.component.d.ts.map +0 -1
  1470. package/lib/components/reports/ndf-reports/containers/ndf-reports/ndf-reports.component.d.ts.map +0 -1
  1471. package/lib/components/reports/ndf-reports/directives/index.d.ts.map +0 -1
  1472. package/lib/components/reports/ndf-reports/directives/scrollable-div.directive.d.ts.map +0 -1
  1473. package/lib/components/reports/ndf-reports/index.d.ts.map +0 -1
  1474. package/lib/components/reports/ndf-reports/models/base.d.ts.map +0 -1
  1475. package/lib/components/reports/ndf-reports/models/common.d.ts.map +0 -1
  1476. package/lib/components/reports/ndf-reports/models/custom-definition.d.ts.map +0 -1
  1477. package/lib/components/reports/ndf-reports/models/details.d.ts.map +0 -1
  1478. package/lib/components/reports/ndf-reports/models/dialog-data.d.ts.map +0 -1
  1479. package/lib/components/reports/ndf-reports/models/digit.d.ts.map +0 -1
  1480. package/lib/components/reports/ndf-reports/models/dynamic-line.d.ts.map +0 -1
  1481. package/lib/components/reports/ndf-reports/models/graph-definition.d.ts.map +0 -1
  1482. package/lib/components/reports/ndf-reports/models/index.d.ts.map +0 -1
  1483. package/lib/components/reports/ndf-reports/models/ndf-reports.config.d.ts.map +0 -1
  1484. package/lib/components/reports/ndf-reports/models/report-config.d.ts.map +0 -1
  1485. package/lib/components/reports/ndf-reports/models/report-data-source.d.ts.map +0 -1
  1486. package/lib/components/reports/ndf-reports/models/report-response.model.d.ts.map +0 -1
  1487. package/lib/components/reports/ndf-reports/models/request.d.ts.map +0 -1
  1488. package/lib/components/reports/ndf-reports/ndf-reports.module.d.ts.map +0 -1
  1489. package/lib/components/reports/ndf-reports/options/doughnut.d.ts.map +0 -1
  1490. package/lib/components/reports/ndf-reports/options/horizontal-bar.d.ts.map +0 -1
  1491. package/lib/components/reports/ndf-reports/options/index.d.ts.map +0 -1
  1492. package/lib/components/reports/ndf-reports/options/line.d.ts.map +0 -1
  1493. package/lib/components/reports/ndf-reports/options/pie.d.ts.map +0 -1
  1494. package/lib/components/reports/ndf-reports/options/vertical-bar.d.ts.map +0 -1
  1495. package/lib/components/reports/ndf-reports/public-api.d.ts.map +0 -1
  1496. package/lib/components/reports/ndf-reports/services/base-chart-builder.service.d.ts.map +0 -1
  1497. package/lib/components/reports/ndf-reports/services/chart-callbacks-register.services.d.ts.map +0 -1
  1498. package/lib/components/reports/ndf-reports/services/chart-data-transformers.service.d.ts.map +0 -1
  1499. package/lib/components/reports/ndf-reports/services/chart-manager.service.d.ts.map +0 -1
  1500. package/lib/components/reports/ndf-reports/services/chart-plugins-registry.service.d.ts.map +0 -1
  1501. package/lib/components/reports/ndf-reports/services/chart-theme.service.d.ts.map +0 -1
  1502. package/lib/components/reports/ndf-reports/services/custom-reports-registry.service.d.ts.map +0 -1
  1503. package/lib/components/reports/ndf-reports/services/digit-chart.service.d.ts.map +0 -1
  1504. package/lib/components/reports/ndf-reports/services/dynamic-timeline-report.service.d.ts.map +0 -1
  1505. package/lib/components/reports/ndf-reports/services/index.d.ts.map +0 -1
  1506. package/lib/components/reports/ndf-reports/services/ndf-reports.service.d.ts.map +0 -1
  1507. package/lib/components/reports/ndf-reports/services/report-config-mapper.service.d.ts.map +0 -1
  1508. package/lib/components/reports/ndf-reports/services/report-configuration.service.d.ts.map +0 -1
  1509. package/lib/components/reports/ndf-reports/services/report-transform.service.d.ts.map +0 -1
  1510. package/lib/components/reports/ndf-reports/services/reports-data-transformers.service.d.ts.map +0 -1
  1511. package/lib/components/reports/ndf-reports/services/reports-dialog.service.d.ts.map +0 -1
  1512. package/lib/components/reports/ndf-reports/services/reports-state.service.d.ts.map +0 -1
  1513. package/lib/components/reports/ndf-reports/utilities/dataset-colors.d.ts.map +0 -1
  1514. package/lib/components/reports/ndf-reports/utilities/index.d.ts.map +0 -1
  1515. package/lib/components/reports/ndf-reports/utilities/reports-table.mapper.d.ts.map +0 -1
  1516. package/lib/components/select/select/select.component.d.ts.map +0 -1
  1517. package/lib/components/select/select.module.d.ts.map +0 -1
  1518. package/lib/components/select-users-by-department/select-users-by-department.module.d.ts.map +0 -1
  1519. package/lib/components/select-users-by-department/select-users-by-departments/department-management.service.d.ts.map +0 -1
  1520. package/lib/components/select-users-by-department/select-users-by-departments/select-users-by-departments.component.d.ts.map +0 -1
  1521. package/lib/components/skeleton/index.d.ts.map +0 -1
  1522. package/lib/components/skeleton/skeleton.component.d.ts.map +0 -1
  1523. package/lib/components/skeleton/skeleton.module.d.ts.map +0 -1
  1524. package/lib/components/skeleton/table-skeleton.component.d.ts.map +0 -1
  1525. package/lib/components/spell-checker-field/spell-checker-field.module.d.ts.map +0 -1
  1526. package/lib/components/spell-checker-field/spell-checker-text-field/spell-checker-text-field.component.d.ts.map +0 -1
  1527. package/lib/components/tables/dynamic-table/directives/empty-state.directive.d.ts.map +0 -1
  1528. package/lib/components/tables/dynamic-table/dynamic-table/dynamic-table.component.d.ts.map +0 -1
  1529. package/lib/components/tables/dynamic-table/dynamic-table.module.d.ts.map +0 -1
  1530. package/lib/components/tables/dynamic-table/index.d.ts.map +0 -1
  1531. package/lib/components/tables/dynamic-table/public-api.d.ts.map +0 -1
  1532. package/lib/components/tables/dynamic-table/services/dynamic-table.service.d.ts.map +0 -1
  1533. package/lib/components/tables/index.d.ts.map +0 -1
  1534. package/lib/components/tables/ndf-table/components/index.d.ts.map +0 -1
  1535. package/lib/components/tables/ndf-table/components/mode-toggler/mode-toggler.component.d.ts.map +0 -1
  1536. package/lib/components/tables/ndf-table/components/sorting-list/sorting-list.component.d.ts.map +0 -1
  1537. package/lib/components/tables/ndf-table/components/table-columns-toggler/table-columns-toggler.component.d.ts.map +0 -1
  1538. package/lib/components/tables/ndf-table/components/table-export/table-export.component.d.ts.map +0 -1
  1539. package/lib/components/tables/ndf-table/components/text-search/text-search.component.d.ts.map +0 -1
  1540. package/lib/components/tables/ndf-table/constants/index.d.ts.map +0 -1
  1541. package/lib/components/tables/ndf-table/constants/sizes.d.ts.map +0 -1
  1542. package/lib/components/tables/ndf-table/containers/index.d.ts.map +0 -1
  1543. package/lib/components/tables/ndf-table/containers/ndf-table/ndf-table.component.d.ts.map +0 -1
  1544. package/lib/components/tables/ndf-table/directives/actions.directive.d.ts.map +0 -1
  1545. package/lib/components/tables/ndf-table/directives/filter-custom.directive.d.ts.map +0 -1
  1546. package/lib/components/tables/ndf-table/directives/index.d.ts.map +0 -1
  1547. package/lib/components/tables/ndf-table/directives/search.directive.d.ts.map +0 -1
  1548. package/lib/components/tables/ndf-table/index.d.ts.map +0 -1
  1549. package/lib/components/tables/ndf-table/models/index.d.ts.map +0 -1
  1550. package/lib/components/tables/ndf-table/models/payload-types.d.ts.map +0 -1
  1551. package/lib/components/tables/ndf-table/models/search.config.d.ts.map +0 -1
  1552. package/lib/components/tables/ndf-table/models/table-column.d.ts.map +0 -1
  1553. package/lib/components/tables/ndf-table/models/table-config.d.ts.map +0 -1
  1554. package/lib/components/tables/ndf-table/models/table-mode.d.ts.map +0 -1
  1555. package/lib/components/tables/ndf-table/models/table-options.d.ts.map +0 -1
  1556. package/lib/components/tables/ndf-table/models/types.d.ts.map +0 -1
  1557. package/lib/components/tables/ndf-table/ndf-table.module.d.ts.map +0 -1
  1558. package/lib/components/tables/ndf-table/public-api.d.ts.map +0 -1
  1559. package/lib/components/tables/ndf-table/services/index.d.ts.map +0 -1
  1560. package/lib/components/tables/ndf-table/services/ndf-table-configuration.service.d.ts.map +0 -1
  1561. package/lib/components/tables/ndf-table/services/ndf-table.service.d.ts.map +0 -1
  1562. package/lib/components/tables/public-api.d.ts.map +0 -1
  1563. package/lib/components/tables/table/dynamic-column/dynamic-column.component.d.ts.map +0 -1
  1564. package/lib/components/tables/table/dynamic-component.d.ts.map +0 -1
  1565. package/lib/components/tables/table/index.d.ts.map +0 -1
  1566. package/lib/components/tables/table/page-sizes-list/page-sizes-list.component.d.ts.map +0 -1
  1567. package/lib/components/tables/table/public-api.d.ts.map +0 -1
  1568. package/lib/components/tables/table/table/table.component.d.ts.map +0 -1
  1569. package/lib/components/tables/table/table.module.d.ts.map +0 -1
  1570. package/lib/components/toasts/components/notification-toast/notification-toast.component.d.ts.map +0 -1
  1571. package/lib/components/toasts/index.d.ts.map +0 -1
  1572. package/lib/components/toasts/public-api.d.ts.map +0 -1
  1573. package/lib/components/toasts/toasts.module.d.ts.map +0 -1
  1574. package/lib/components/user/user/user.component.d.ts.map +0 -1
  1575. package/lib/components/user/user.module.d.ts.map +0 -1
  1576. package/lib/components/users-card/users-card.component.d.ts.map +0 -1
  1577. package/lib/components/users-card/users-card.module.d.ts.map +0 -1
  1578. package/lib/components/viewer-log/components/viewer-log/viewer-log.component.d.ts.map +0 -1
  1579. package/lib/components/viewer-log/viewer-log.module.d.ts.map +0 -1
  1580. package/lib/components/vocabulary/interfaces/op-type.interface.d.ts.map +0 -1
  1581. package/lib/components/vocabulary/services/vocabulary-api.service.d.ts.map +0 -1
  1582. package/lib/components/vocabulary/translated-vocabulary-select/translated-vocabulary-select.component.d.ts.map +0 -1
  1583. package/lib/components/vocabulary/vocabulary/vocabulary.component.d.ts.map +0 -1
  1584. package/lib/components/vocabulary/vocabulary.module.d.ts.map +0 -1
  1585. package/lib/configuration/app-config.service.d.ts.map +0 -1
  1586. package/lib/configuration/helpers/app-initializer.d.ts.map +0 -1
  1587. package/lib/core/adapters/adapter.service.d.ts.map +0 -1
  1588. package/lib/core/core.module.d.ts.map +0 -1
  1589. package/lib/core/enums/language.enum.d.ts.map +0 -1
  1590. package/lib/core/env/env-manager.d.ts.map +0 -1
  1591. package/lib/core/env/index.d.ts.map +0 -1
  1592. package/lib/core/models/api-response.model.d.ts.map +0 -1
  1593. package/lib/core/models/automation-response.model.d.ts.map +0 -1
  1594. package/lib/core/models/base-response.models.d.ts.map +0 -1
  1595. package/lib/core/models/component.model.d.ts.map +0 -1
  1596. package/lib/core/models/index.d.ts.map +0 -1
  1597. package/lib/core/services/callApi/call-api.service.d.ts.map +0 -1
  1598. package/lib/core/services/column-renderer/column-renderer-registry.service.d.ts.map +0 -1
  1599. package/lib/core/services/column-renderer/index.d.ts.map +0 -1
  1600. package/lib/core/services/extension/action.extensions.d.ts.map +0 -1
  1601. package/lib/core/services/extension/component-register.service.d.ts.map +0 -1
  1602. package/lib/core/services/extension/extenion-utils.d.ts.map +0 -1
  1603. package/lib/core/services/extension/extension-element.d.ts.map +0 -1
  1604. package/lib/core/services/extension/extension-loader.service.d.ts.map +0 -1
  1605. package/lib/core/services/extension/extension.service.d.ts.map +0 -1
  1606. package/lib/core/services/index.d.ts.map +0 -1
  1607. package/lib/core/services/initialization/initialization.service.d.ts.map +0 -1
  1608. package/lib/core/services/localStorag/local-storag.service.d.ts.map +0 -1
  1609. package/lib/core/services/ndf-transform.service.d.ts.map +0 -1
  1610. package/lib/core/services/nuxeo/new-nuxeo-overide.d.ts.map +0 -1
  1611. package/lib/core/services/nuxeo/nuxeo-override.d.ts.map +0 -1
  1612. package/lib/core/services/nuxeo/nuxeo.service.d.ts.map +0 -1
  1613. package/lib/core/services/roles/roles.service.d.ts.map +0 -1
  1614. package/lib/core/services/translation/translate-loader.service.d.ts.map +0 -1
  1615. package/lib/core/services/translation/translation.service.d.ts.map +0 -1
  1616. package/lib/core/services/user/user-preferences.service.d.ts.map +0 -1
  1617. package/lib/core/tokens/index.d.ts.map +0 -1
  1618. package/lib/core/tokens/project.token.d.ts.map +0 -1
  1619. package/lib/core/utilities/moment-date-adapter.d.ts.map +0 -1
  1620. package/lib/core/utilities/utility.service.d.ts.map +0 -1
  1621. package/lib/directive/app-has-role/app-has-role.directive.d.ts.map +0 -1
  1622. package/lib/directive/clickOutSide/click-outside.directive.d.ts.map +0 -1
  1623. package/lib/directive/directive.module.d.ts.map +0 -1
  1624. package/lib/directive/drag-and-drop/drag-and-drop.directive.d.ts.map +0 -1
  1625. package/lib/directive/permissions/evaluators.service.d.ts.map +0 -1
  1626. package/lib/directive/permissions/permissions.directive.d.ts.map +0 -1
  1627. package/lib/directive/rtl/set-dir-rtl.directive.d.ts.map +0 -1
  1628. package/lib/directive/rtl/set-rtl.directive.d.ts.map +0 -1
  1629. package/lib/nuxeo-development-framework.component.d.ts.map +0 -1
  1630. package/lib/nuxeo-development-framework.module.d.ts.map +0 -1
  1631. package/lib/nuxeo-development-framework.service.d.ts.map +0 -1
  1632. package/lib/pipes/file-size.pipe.d.ts.map +0 -1
  1633. package/lib/pipes/hijri-date.pipe.d.ts.map +0 -1
  1634. package/lib/pipes/localized-date.pipe.d.ts.map +0 -1
  1635. package/lib/pipes/multi-value.pipe.d.ts.map +0 -1
  1636. package/lib/pipes/pipes.module.d.ts.map +0 -1
  1637. package/lib/pipes/secure-html.pipe.d.ts.map +0 -1
  1638. package/lib/pipes/secure.pipe.d.ts.map +0 -1
  1639. package/lib/pipes/time-ago.pipe.d.ts.map +0 -1
  1640. package/lib/shared/components/base/base-column.component.d.ts.map +0 -1
  1641. package/lib/shared/components/base/base-dialog.component.d.ts.map +0 -1
  1642. package/lib/shared/components/base/base-selector.component.d.ts.map +0 -1
  1643. package/lib/shared/components/base/base.component.d.ts.map +0 -1
  1644. package/lib/shared/components/base/destroy.subject.d.ts.map +0 -1
  1645. package/lib/shared/components/base/index.d.ts.map +0 -1
  1646. package/lib/shared/components/button/button.component.d.ts.map +0 -1
  1647. package/lib/shared/components/general-notification-popup/general-notification-popup.component.d.ts.map +0 -1
  1648. package/lib/shared/components/index.d.ts.map +0 -1
  1649. package/lib/shared/components/item-list/item-list.component.d.ts.map +0 -1
  1650. package/lib/shared/components/no-data/no-data.component.d.ts.map +0 -1
  1651. package/lib/shared/components/nuxeo-dialog/confirmation/ndf-confirmation-dialog.component.d.ts.map +0 -1
  1652. package/lib/shared/components/nuxeo-dialog/index.d.ts.map +0 -1
  1653. package/lib/shared/components/nuxeo-dialog/models/confirm-options.model.d.ts.map +0 -1
  1654. package/lib/shared/components/nuxeo-dialog/models/dialog-option.model.d.ts.map +0 -1
  1655. package/lib/shared/components/nuxeo-dialog/nuxeo-dialog.module.d.ts.map +0 -1
  1656. package/lib/shared/components/nuxeo-dialog/nuxeo.dialog.d.ts.map +0 -1
  1657. package/lib/shared/components/nuxeo-dialog/services/nuxeo-dialog.service.d.ts.map +0 -1
  1658. package/lib/shared/components/read-more/read-more.component.d.ts.map +0 -1
  1659. package/lib/shared/components/search-autocomplete/search-autocomplete.component.d.ts.map +0 -1
  1660. package/lib/shared/components/spinner/spinner.component.d.ts.map +0 -1
  1661. package/lib/shared/components/user-card/user-card.component.d.ts.map +0 -1
  1662. package/lib/shared/constants/editor-config-type.d.ts.map +0 -1
  1663. package/lib/shared/constants/index.d.ts.map +0 -1
  1664. package/lib/shared/directives/copy-to-clipboard.directive.d.ts.map +0 -1
  1665. package/lib/shared/directives/element-height.directive.d.ts.map +0 -1
  1666. package/lib/shared/directives/fluid-height.directive.d.ts.map +0 -1
  1667. package/lib/shared/directives/index.d.ts.map +0 -1
  1668. package/lib/shared/evaluator/evaluator.d.ts.map +0 -1
  1669. package/lib/shared/evaluator/index.d.ts.map +0 -1
  1670. package/lib/shared/evaluator/types.d.ts.map +0 -1
  1671. package/lib/shared/index.d.ts.map +0 -1
  1672. package/lib/shared/libraryShared.module.d.ts.map +0 -1
  1673. package/lib/shared/models/index.d.ts.map +0 -1
  1674. package/lib/shared/models/mapper/index.d.ts.map +0 -1
  1675. package/lib/shared/models/mapper/nuxeo-mapper.d.ts.map +0 -1
  1676. package/lib/shared/models/ndf-request.model.d.ts.map +0 -1
  1677. package/lib/shared/models/nuxeo-response.model.d.ts.map +0 -1
  1678. package/lib/shared/models/task.model.d.ts.map +0 -1
  1679. package/lib/shared/models/type-helpers.d.ts.map +0 -1
  1680. package/lib/shared/services/base/base-editor-config.service.d.ts.map +0 -1
  1681. package/lib/shared/services/base/base.service.d.ts.map +0 -1
  1682. package/lib/shared/services/base/cache-base.service.d.ts.map +0 -1
  1683. package/lib/shared/services/base/config/default-ttl-config.d.ts.map +0 -1
  1684. package/lib/shared/services/base/config/index.d.ts.map +0 -1
  1685. package/lib/shared/services/base/constants/default-cache-options.d.ts.map +0 -1
  1686. package/lib/shared/services/base/constants/index.d.ts.map +0 -1
  1687. package/lib/shared/services/base/http-base.service.d.ts.map +0 -1
  1688. package/lib/shared/services/base/index.d.ts.map +0 -1
  1689. package/lib/shared/services/base/models/cache-info-model.d.ts.map +0 -1
  1690. package/lib/shared/services/base/models/http-options.model.d.ts.map +0 -1
  1691. package/lib/shared/services/base/models/index.d.ts.map +0 -1
  1692. package/lib/shared/services/base/models/operation-options.model.d.ts.map +0 -1
  1693. package/lib/shared/services/base/models/query-options.model.d.ts.map +0 -1
  1694. package/lib/shared/services/base/models/request-options.model.d.ts.map +0 -1
  1695. package/lib/shared/services/index.d.ts.map +0 -1
  1696. package/lib/shared-services/apis-errors-messages.service.d.ts.map +0 -1
  1697. package/lib/shared-services/dialog-mangment.service.d.ts.map +0 -1
  1698. package/lib/shared-services/dynamic-form.service.d.ts.map +0 -1
  1699. package/lib/shared-services/file-manager.adapter.d.ts.map +0 -1
  1700. package/lib/shared-services/file-manager.service.d.ts.map +0 -1
  1701. package/lib/shared-services/global-admin.service.d.ts.map +0 -1
  1702. package/lib/shared-services/global-pdftron.service.d.ts.map +0 -1
  1703. package/lib/shared-services/mainfolder.service.d.ts.map +0 -1
  1704. package/lib/shared-services/publishing-document.service.d.ts.map +0 -1
  1705. package/lib/shared-services/recently-viewed.service.d.ts.map +0 -1
  1706. package/lib/shared-services/shared-docs.service.d.ts.map +0 -1
  1707. package/lib/shared-services/shared-services.module.d.ts.map +0 -1
  1708. package/lib/shared-services/upload-file.service.d.ts.map +0 -1
  1709. package/lib/shared-services/upload-managment.service.d.ts.map +0 -1
  1710. package/lib/shared-services/user.service.d.ts.map +0 -1
  1711. package/nuxeo-development-framework.d.ts.map +0 -1
  1712. package/public-api.d.ts.map +0 -1
@@ -329,7 +329,7 @@ export class ScanModalComponent extends BaseDialogComponent {
329
329
  }
330
330
  }
331
331
  ScanModalComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ScanModalComponent, deps: [{ token: MAT_DIALOG_DATA }, { token: i1.MatDialogRef }, { token: i2.UploadManagmentService }, { token: i3.DialogMangmentService }, { token: i4.FileManagerService }, { token: i5.CustomToastrService }, { token: i6.FormBuilder }, { token: i7.DynamicFormService }, { token: i8.DateHelperService }, { token: i9.AdapterService }, { token: i10.TranslationService }, { token: i11.NuxeoService }, { token: i12.UserService }, { token: i13.AppConfigService }, { token: 'environment' }, { token: i14.DocumentScanService }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
332
- ScanModalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: ScanModalComponent, selector: "app-scan-modal", usesInheritance: true, ngImport: i0, template: "<ndf-nuxeo-dialog\r\n\tdialogTitle=\"{{ 'CREATE.SCAN' | translate }}\"\r\n\tpanelClass=\"scanner-modal-body\"\r\n>\r\n\t<ng-template #contentTemplate>\r\n\t\t<div\r\n\t\t\tclass=\"scanner-tabs d-flex justify-around items-center border-b-2 border-gray-200 mb-5 text-gray-900 text-lg\"\r\n\t\t>\r\n\t\t\t<div\r\n\t\t\t\tclass=\"scanner-single-tab cursor-pointer w-1/2 text-center py-2 border-gray-900 hover:bg-gray-100\"\r\n\t\t\t\t(click)=\"changTabTo('scan')\"\r\n\t\t\t\t[ngClass]=\"{ 'font-bold border-b-4': activeTab === 'scan' }\"\r\n\t\t\t>\r\n\t\t\t\t{{ 'CREATE.SCAN' | translate }}\r\n\t\t\t</div>\r\n\t\t\t<div\r\n\t\t\t\tclass=\"scanner-single-tab cursor-pointer w-1/2 text-center py-2 border-gray-900 hover:bg-gray-100\"\r\n\t\t\t\t(click)=\"changTabTo('form')\"\r\n\t\t\t\t[ngClass]=\"{ 'font-bold border-b-4': activeTab === 'form' }\"\r\n\t\t\t>\r\n\t\t\t\t{{ 'CREATE.DETAILS' | translate }}\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t\t<div class=\"tabs-body-wrapper\">\r\n\t\t\t<!-- uploader indicator loading -->\r\n\t\t\t<div\r\n\t\t\t\tclass=\"upload-loader mx-2\"\r\n\t\t\t\t*ngIf=\"uploadMangmentService.uploadedFilesStatus.uploadInProgress\"\r\n\t\t\t>\r\n\t\t\t\t<mat-progress-bar mode=\"indeterminate\"></mat-progress-bar>\r\n\t\t\t</div>\r\n\r\n\t\t\t<!-- scanner -->\r\n\t\t\t<div class=\"\" [ngClass]=\"{ 'd-none': activeTab === 'form' }\">\r\n\t\t\t\t<app-document-scan\r\n\t\t\t\t\t[hideUploadButton]=\"true\"\r\n\t\t\t\t\t[useStoredFile]=\"true\"\r\n\t\t\t\t></app-document-scan>\r\n\t\t\t</div>\r\n\r\n\t\t\t<!-- forms and properties -->\r\n\t\t\t<div class=\"forms-section\" [ngClass]=\"{ 'd-none': activeTab === 'scan' }\">\r\n\t\t\t\t<div class=\"w-2/3\">\r\n\t\t\t\t\t<div class=\"mb-5\">\r\n\t\t\t\t\t\t<div class=\"label-style\">\r\n\t\t\t\t\t\t\t{{ 'CREATE.FILE_TYPE' | translate }}\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t<div class=\"text-base text-gray-900\">\r\n\t\t\t\t\t\t\t{{ isArabic ? fileType.arabicText : fileType.englishText }}\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t\t<div class=\"file-fields mt-3\" SetRtl>\r\n\t\t\t\t\t\t<form [formGroup]=\"fileForm\" *ngIf=\"fileForm\">\r\n\t\t\t\t\t\t\t<div class=\"single-field mb-3\">\r\n\t\t\t\t\t\t\t\t<div class=\"label-style\">\r\n\t\t\t\t\t\t\t\t\t{{ 'CREATE.TITLE' | translate\r\n\t\t\t\t\t\t\t\t\t}}<span class=\"text-red-500\">*</span>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t<input\r\n\t\t\t\t\t\t\t\t\tclass=\"field-style\"\r\n\t\t\t\t\t\t\t\t\tformControlName=\"title\"\r\n\t\t\t\t\t\t\t\t\tplaceholder=\" {{ 'CREATE.TITLE' | translate }}\"\r\n\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t<div class=\"single-field mb-3\">\r\n\t\t\t\t\t\t\t\t<div class=\"label-style\">\r\n\t\t\t\t\t\t\t\t\t{{ 'CREATE.DESCRIPTION' | translate }}\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t<input\r\n\t\t\t\t\t\t\t\t\tclass=\"field-style\"\r\n\t\t\t\t\t\t\t\t\tformControlName=\"description\"\r\n\t\t\t\t\t\t\t\t\tplaceholder=\" {{ 'CREATE.DESCRIPTION' | translate }}\"\r\n\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t\t\t<!------------------ new statis form ---------------------------->\r\n\t\t\t\t\t\t\t<div *ngIf=\"usingExtraFields\">\r\n\t\t\t\t\t\t\t\t<app-dynamic-fields-renderer\r\n\t\t\t\t\t\t\t\t\t[form]=\"fileForm\"\r\n\t\t\t\t\t\t\t\t\t[agencyNameFilter]=\"agencyNameFilter\"\r\n\t\t\t\t\t\t\t\t\t[countryNameFilter]=\"countryNameFilter\"\r\n\t\t\t\t\t\t\t\t></app-dynamic-fields-renderer>\r\n\t\t\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t\t\t<!-- ----------------------------------------------------------- -->\r\n\t\t\t\t\t\t</form>\r\n\t\t\t\t\t\t<!-- *ngIf=\"\" -->\r\n\t\t\t\t\t\t<div\r\n\t\t\t\t\t\t\tclass=\"dynamic-part -mx-4\"\r\n\t\t\t\t\t\t\t*ngIf=\"selectedFile.dynamicForm && showRenderer\"\r\n\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t<app-dynamic-form\r\n\t\t\t\t\t\t\t\t[form]=\"selectedFile.dynamicForm\"\r\n\t\t\t\t\t\t\t\t[data]=\"temporaryDyanmicData\"\r\n\t\t\t\t\t\t\t\t(change)=\"ondynamicFormChange($event)\"\r\n\t\t\t\t\t\t\t></app-dynamic-form>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t</ng-template>\r\n\r\n\t<ng-template #actionsTemplate let-dialog=\"dialog\">\r\n\t\t<button\r\n\t\t\t(click)=\"dialog.executeAction(createDocument)\"\r\n\t\t\t[disabled]=\"\r\n\t\t\t\tscannerUploadButton?.disabled ||\r\n\t\t\t\t!selectedFile.dynamicData.valid ||\r\n\t\t\t\tfileForm.invalid\r\n\t\t\t\"\r\n\t\t\t[ngClass]=\"{\r\n\t\t\t\t'opacity-30 cursor-not-allowed':\r\n\t\t\t\t\tscannerUploadButton?.disabled ||\r\n\t\t\t\t\t!selectedFile.dynamicData.valid ||\r\n\t\t\t\t\tfileForm.invalid\r\n\t\t\t}\"\r\n\t\t\tclass=\"submission-button\"\r\n\t\t>\r\n\t\t\t{{\r\n\t\t\t\tuploadMangmentService.scanCreationFailed\r\n\t\t\t\t\t? ('BUTTONS.TRY_AGAIN' | translate)\r\n\t\t\t\t\t: ('BUTTONS.CREATE' | translate)\r\n\t\t\t}}\r\n\t\t</button>\r\n\t\t<button\r\n\t\t\tclass=\"cancelation-button mx-2\"\r\n\t\t\t(click)=\"dialog.executeAction(minimizDialog)\"\r\n\t\t>\r\n\t\t\t{{ 'BUTTONS.MINIMIZED' | translate }}\r\n\t\t</button>\r\n\t</ng-template>\r\n</ndf-nuxeo-dialog>\r\n", styles: [".forms-section{display:flex;justify-content:center}.tabs-body-wrapper{height:calc(100% - 125px);overflow-y:auto;overflow-x:hidden}\n"], components: [{ type: i15.NdfNuxeoDialog, selector: "ndf-nuxeo-dialog", inputs: ["dialogTitle", "subTitle", "panelClass", "bodyClass", "loaderMode"] }, { type: i16.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "mode", "value", "bufferValue"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }, { type: i17.ScanComponent, selector: "app-document-scan", inputs: ["useStoredFile", "hideUploadButton"], outputs: ["file"] }, { type: i18.DynamicFieldsRendererComponent, selector: "app-dynamic-fields-renderer", inputs: ["form", "agencyNameFilter", "countryNameFilter", "orgNameFilter", "ngoNameFilter", "disableInitSecrecyLevel", "mode", "fields"], outputs: ["checkTextSpellCheckerField"] }, { type: i19.DynamicFormComponent, selector: "app-dynamic-form", inputs: ["form", "data", "readOnly"], outputs: ["change"] }], directives: [{ type: i20.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i20.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i21.SetRtlDirective, selector: "[SetRtl]" }, { type: i6.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i6.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i6.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i6.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i6.FormControlName, selector: "[formControlName]", inputs: ["disabled", "formControlName", "ngModel"], outputs: ["ngModelChange"] }], pipes: { "translate": i22.TranslatePipe } });
332
+ ScanModalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: ScanModalComponent, selector: "app-scan-modal", usesInheritance: true, ngImport: i0, template: "<ndf-nuxeo-dialog\r\n\tdialogTitle=\"{{ 'CREATE.SCAN' | translate }}\"\r\n\tpanelClass=\"scanner-modal-body\"\r\n>\r\n\t<ng-template #contentTemplate>\r\n\t\t<div\r\n\t\t\tclass=\"scanner-tabs d-flex justify-around items-center border-b-2 border-gray-200 mb-5 text-gray-900 text-lg\"\r\n\t\t>\r\n\t\t\t<div\r\n\t\t\t\tclass=\"scanner-single-tab cursor-pointer w-1/2 text-center py-2 border-gray-900 hover:bg-gray-100\"\r\n\t\t\t\t(click)=\"changTabTo('scan')\"\r\n\t\t\t\t[ngClass]=\"{ 'font-bold border-b-4': activeTab === 'scan' }\"\r\n\t\t\t>\r\n\t\t\t\t{{ 'CREATE.SCAN' | translate }}\r\n\t\t\t</div>\r\n\t\t\t<div\r\n\t\t\t\tclass=\"scanner-single-tab cursor-pointer w-1/2 text-center py-2 border-gray-900 hover:bg-gray-100\"\r\n\t\t\t\t(click)=\"changTabTo('form')\"\r\n\t\t\t\t[ngClass]=\"{ 'font-bold border-b-4': activeTab === 'form' }\"\r\n\t\t\t>\r\n\t\t\t\t{{ 'CREATE.DETAILS' | translate }}\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t\t<div class=\"tabs-body-wrapper\">\r\n\t\t\t<!-- uploader indicator loading -->\r\n\t\t\t<div\r\n\t\t\t\tclass=\"upload-loader mx-2\"\r\n\t\t\t\t*ngIf=\"uploadMangmentService.uploadedFilesStatus.uploadInProgress\"\r\n\t\t\t>\r\n\t\t\t\t<mat-progress-bar mode=\"indeterminate\"></mat-progress-bar>\r\n\t\t\t</div>\r\n\r\n\t\t\t<!-- scanner -->\r\n\t\t\t<div class=\"\" [ngClass]=\"{ 'd-none': activeTab === 'form' }\">\r\n\t\t\t\t<app-document-scan\r\n\t\t\t\t\t[hideUploadButton]=\"true\"\r\n\t\t\t\t\t[useStoredFile]=\"true\"\r\n\t\t\t\t></app-document-scan>\r\n\t\t\t</div>\r\n\r\n\t\t\t<!-- forms and properties -->\r\n\t\t\t<div class=\"forms-section\" [ngClass]=\"{ 'd-none': activeTab === 'scan' }\">\r\n\t\t\t\t<div class=\"w-2/3\">\r\n\t\t\t\t\t<div class=\"mb-5\">\r\n\t\t\t\t\t\t<div class=\"label-style\">\r\n\t\t\t\t\t\t\t{{ 'CREATE.FILE_TYPE' | translate }}\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t<div class=\"text-base text-gray-900\">\r\n\t\t\t\t\t\t\t{{ isArabic ? fileType.arabicText : fileType.englishText }}\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t\t<div class=\"file-fields mt-3\" SetRtl>\r\n\t\t\t\t\t\t<form [formGroup]=\"fileForm\" *ngIf=\"fileForm\">\r\n\t\t\t\t\t\t\t<div class=\"single-field mb-3\">\r\n\t\t\t\t\t\t\t\t<div class=\"label-style\">\r\n\t\t\t\t\t\t\t\t\t{{ 'CREATE.TITLE' | translate\r\n\t\t\t\t\t\t\t\t\t}}<span class=\"text-red-500\">*</span>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t<input\r\n\t\t\t\t\t\t\t\t\tclass=\"field-style\"\r\n\t\t\t\t\t\t\t\t\tformControlName=\"title\"\r\n\t\t\t\t\t\t\t\t\tplaceholder=\" {{ 'CREATE.TITLE' | translate }}\"\r\n\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t<div class=\"single-field mb-3\">\r\n\t\t\t\t\t\t\t\t<div class=\"label-style\">\r\n\t\t\t\t\t\t\t\t\t{{ 'CREATE.DESCRIPTION' | translate }}\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t<input\r\n\t\t\t\t\t\t\t\t\tclass=\"field-style\"\r\n\t\t\t\t\t\t\t\t\tformControlName=\"description\"\r\n\t\t\t\t\t\t\t\t\tplaceholder=\" {{ 'CREATE.DESCRIPTION' | translate }}\"\r\n\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t\t\t<!------------------ new statis form ---------------------------->\r\n\t\t\t\t\t\t\t<div *ngIf=\"usingExtraFields\">\r\n\t\t\t\t\t\t\t\t<app-dynamic-fields-renderer\r\n\t\t\t\t\t\t\t\t\t[form]=\"fileForm\"\r\n\t\t\t\t\t\t\t\t\t[agencyNameFilter]=\"agencyNameFilter\"\r\n\t\t\t\t\t\t\t\t\t[countryNameFilter]=\"countryNameFilter\"\r\n\t\t\t\t\t\t\t\t></app-dynamic-fields-renderer>\r\n\t\t\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t\t\t<!-- ----------------------------------------------------------- -->\r\n\t\t\t\t\t\t</form>\r\n\t\t\t\t\t\t<!-- *ngIf=\"\" -->\r\n\t\t\t\t\t\t<div\r\n\t\t\t\t\t\t\tclass=\"dynamic-part -mx-4\"\r\n\t\t\t\t\t\t\t*ngIf=\"selectedFile.dynamicForm && showRenderer\"\r\n\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t<app-dynamic-form\r\n\t\t\t\t\t\t\t\t[form]=\"selectedFile.dynamicForm\"\r\n\t\t\t\t\t\t\t\t[data]=\"temporaryDyanmicData\"\r\n\t\t\t\t\t\t\t\t(change)=\"ondynamicFormChange($event)\"\r\n\t\t\t\t\t\t\t></app-dynamic-form>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t</ng-template>\r\n\r\n\t<ng-template #actionsTemplate let-dialog=\"dialog\">\r\n\t\t<button\r\n\t\t\t(click)=\"dialog.executeAction(createDocument)\"\r\n\t\t\t[disabled]=\"\r\n\t\t\t\tscannerUploadButton?.disabled ||\r\n\t\t\t\t!selectedFile.dynamicData.valid ||\r\n\t\t\t\tfileForm.invalid\r\n\t\t\t\"\r\n\t\t\t[ngClass]=\"{\r\n\t\t\t\t'opacity-30 cursor-not-allowed':\r\n\t\t\t\t\tscannerUploadButton?.disabled ||\r\n\t\t\t\t\t!selectedFile.dynamicData.valid ||\r\n\t\t\t\t\tfileForm.invalid\r\n\t\t\t}\"\r\n\t\t\tclass=\"submission-button\"\r\n\t\t>\r\n\t\t\t{{\r\n\t\t\t\tuploadMangmentService.scanCreationFailed\r\n\t\t\t\t\t? ('BUTTONS.TRY_AGAIN' | translate)\r\n\t\t\t\t\t: ('BUTTONS.CREATE' | translate)\r\n\t\t\t}}\r\n\t\t</button>\r\n\t\t<button\r\n\t\t\tclass=\"cancelation-button mx-2\"\r\n\t\t\t(click)=\"dialog.executeAction(minimizDialog)\"\r\n\t\t>\r\n\t\t\t{{ 'BUTTONS.MINIMIZED' | translate }}\r\n\t\t</button>\r\n\t</ng-template>\r\n</ndf-nuxeo-dialog>\r\n", styles: [".forms-section{display:flex;justify-content:center}.tabs-body-wrapper{height:calc(100% - 125px);overflow-y:auto;overflow-x:hidden}\n"], components: [{ type: i15.NdfNuxeoDialog, selector: "ndf-nuxeo-dialog", inputs: ["dialogTitle", "subTitle", "panelClass", "bodyClass", "loaderMode"] }, { type: i16.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "mode", "value", "bufferValue"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }, { type: i17.ScanComponent, selector: "app-document-scan", inputs: ["height", "useStoredFile", "hideUploadButton"], outputs: ["file"] }, { type: i18.DynamicFieldsRendererComponent, selector: "app-dynamic-fields-renderer", inputs: ["form", "agencyNameFilter", "countryNameFilter", "orgNameFilter", "ngoNameFilter", "disableInitSecrecyLevel", "mode", "fields"], outputs: ["checkTextSpellCheckerField"] }, { type: i19.DynamicFormComponent, selector: "app-dynamic-form", inputs: ["form", "data", "readOnly"], outputs: ["change"] }], directives: [{ type: i20.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i20.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i21.SetRtlDirective, selector: "[SetRtl]" }, { type: i6.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i6.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i6.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i6.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i6.FormControlName, selector: "[formControlName]", inputs: ["disabled", "formControlName", "ngModel"], outputs: ["ngModelChange"] }], pipes: { "translate": i22.TranslatePipe } });
333
333
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ScanModalComponent, decorators: [{
334
334
  type: Component,
335
335
  args: [{
@@ -344,4 +344,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
344
344
  type: Inject,
345
345
  args: ['environment']
346
346
  }] }, { type: i14.DocumentScanService }, { type: i0.Injector }]; } });
347
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Nhbi1tb2RhbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9udXhlby1kZXZlbG9wbWVudC1mcmFtZXdvcmsvc3JjL2xpYi9jb21wb25lbnRzL2ZpbGUtbWFuZ2VyL2NvbXBvbmVudHMvc2Nhbi1tb2RhbC9zY2FuLW1vZGFsLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL251eGVvLWRldmVsb3BtZW50LWZyYW1ld29yay9zcmMvbGliL2NvbXBvbmVudHMvZmlsZS1tYW5nZXIvY29tcG9uZW50cy9zY2FuLW1vZGFsL3NjYW4tbW9kYWwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQStCLE1BQU0sZUFBZSxDQUFDO0FBQy9FLE9BQU8sRUFBMEIsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDcEUsT0FBTyxFQUFnQixlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQU16RSxPQUFPLEVBQUUsRUFBRSxFQUFnQixNQUFNLE1BQU0sQ0FBQztBQUN4QyxPQUFPLEtBQUssTUFBTSxNQUFNLFFBQVEsQ0FBQztBQVFqQyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwwREFBMEQsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBUy9GLE1BQU0sT0FBTyxrQkFDWixTQUFRLG1CQUFpRDtJQW9DekQsWUFDaUMsSUFBSSxFQUM3QixTQUEyQyxFQUMzQyxxQkFBNkMsRUFDN0MscUJBQTRDLEVBQzNDLGlCQUFxQyxFQUNyQyxhQUFrQyxFQUNuQyxXQUF3QixFQUN2QixrQkFBc0MsRUFDdEMsaUJBQW9DLEVBQ3JDLE9BQXVCLEVBQ3RCLGtCQUFzQyxFQUN0QyxZQUEwQixFQUMxQixXQUF3QixFQUN4QixjQUFnQyxFQUNULFdBQVcsRUFDbEMsbUJBQXdD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LFNBQVMsR0FBRyxPQUFPLENBQUM7SUFDMUIsQ0FBQztJQUNELGVBQWU7UUFDZCxPQUFPLEtBQUssQ0FBQztJQUNkLENBQUM7SUFFRCxXQUFXO1FBQ1YsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUNqRSxJQUFJLENBQUMsMkJBQTJCO1lBQy9CLENBQUMsQ0FBQyxJQUFJLENBQUMsMkJBQTJCLENBQUMsV0FBVyxFQUFFO1lBQ2hELENBQUMsQ0FBQyxJQUFJLENBQUM7UUFDUixJQUFJLENBQUMsNEJBQTRCO1lBQ2hDLENBQUMsQ0FBQyxJQUFJLENBQUMsNEJBQTRCLENBQUMsV0FBVyxFQUFFO1lBQ2pELENBQUMsQ0FBQyxJQUFJLENBQUM7UUFDUixJQUFJLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0lBQzVFLENBQUM7O2dIQXJYVyxrQkFBa0Isa0JBc0NyQixlQUFlLGtiQWNmLGFBQWE7b0dBcERWLGtCQUFrQiw2RUMxQi9CLHM4SkFxSUE7NEZEM0dhLGtCQUFrQjtrQkFMOUIsU0FBUzttQkFBQztvQkFDVixRQUFRLEVBQUUsZ0JBQWdCO29CQUMxQixXQUFXLEVBQUUsNkJBQTZCO29CQUMxQyxTQUFTLEVBQUUsQ0FBQyw2QkFBNkIsQ0FBQztpQkFDMUM7OzBCQXVDRSxNQUFNOzJCQUFDLGVBQWU7OzBCQWN0QixNQUFNOzJCQUFDLGFBQWEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEluamVjdCwgSW5qZWN0b3IsIE9uSW5pdCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZvcm1CdWlsZGVyLCBGb3JtR3JvdXAsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IE1hdERpYWxvZ1JlZiwgTUFUX0RJQUxPR19EQVRBIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcclxuaW1wb3J0IHsgVXBsb2FkTWFuYWdtZW50U2VydmljZSB9IGZyb20gJy4uLy4uLy4uLy4uL3NoYXJlZC1zZXJ2aWNlcy91cGxvYWQtbWFuYWdtZW50LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBEaWFsb2dNYW5nbWVudFNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi8uLi9zaGFyZWQtc2VydmljZXMvZGlhbG9nLW1hbmdtZW50LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBEeW5hbWljRm9ybVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi8uLi9zaGFyZWQtc2VydmljZXMvZHluYW1pYy1mb3JtLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBGaWxlTWFuYWdlclNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi8uLi9zaGFyZWQtc2VydmljZXMvZmlsZS1tYW5hZ2VyLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBVc2VyU2VydmljZSB9IGZyb20gJy4uLy4uLy4uLy4uL3NoYXJlZC1zZXJ2aWNlcy91c2VyLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBvZiwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCAqIGFzIG1vbWVudCBmcm9tICdtb21lbnQnO1xyXG5pbXBvcnQgeyBDdXN0b21Ub2FzdHJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vY3VzdG9tLXRvYXN0ci9zZXJ2aWNlcy9jdXN0b20tdG9hc3RyLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBEb2N1bWVudFNjYW5TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vZG9jdW1lbnRzL2NvbXBvbmVudHMvZG9jdW1lbnQtc2Nhbi9kb2N1bWVudC1zY2FuLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBEYXRlSGVscGVyU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL2hpanJpLWdyZWdvcmlhbi1kYXRlcGlja2VyL3NlcnZpY2VzL2RhdGUtaGVscGVyLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBBZGFwdGVyU2VydmljZSB9IGZyb20gJy4uLy4uLy4uLy4uL2NvcmUvYWRhcHRlcnMvYWRhcHRlci5zZXJ2aWNlJztcclxuaW1wb3J0IHsgVHJhbnNsYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vY29yZS9zZXJ2aWNlcy90cmFuc2xhdGlvbi90cmFuc2xhdGlvbi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgTnV4ZW9TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vY29yZS9zZXJ2aWNlcy9udXhlby9udXhlby5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQXBwQ29uZmlnU2VydmljZSB9IGZyb20gJy4uLy4uLy4uLy4uL2NvbmZpZ3VyYXRpb24vYXBwLWNvbmZpZy5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQmFzZURpYWxvZ0NvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uLy4uL3NoYXJlZC9jb21wb25lbnRzL2Jhc2UvYmFzZS1kaWFsb2cuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRGlhbG9nQWN0aW9uVHlwZSB9IGZyb20gJy4uLy4uLy4uLy4uL3NoYXJlZC9jb21wb25lbnRzL251eGVvLWRpYWxvZy9tb2RlbHMvZGlhbG9nLW9wdGlvbi5tb2RlbCc7XHJcbmltcG9ydCB7IHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG5cdHNlbGVjdG9yOiAnYXBwLXNjYW4tbW9kYWwnLFxyXG5cdHRlbXBsYXRlVXJsOiAnLi9zY2FuLW1vZGFsLmNvbXBvbmVudC5odG1sJyxcclxuXHRzdHlsZVVybHM6IFsnLi9zY2FuLW1vZGFsLmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIFNjYW5Nb2RhbENvbXBvbmVudFxyXG5cdGV4dGVuZHMgQmFzZURpYWxvZ0NvbXBvbmVudDxTY2FuTW9kYWxDb21wb25lbnQsIGFueSwgYW55PlxyXG5cdGltcGxlbWVudHMgT25Jbml0XHJcbntcclxuXHRzY2FubmVyVXBsb2FkQnV0dG9uO1xyXG5cdGZpbGVUeXBlO1xyXG5cdHNvdXJjZTtcclxuXHRhY3RpdmVUYWIgPSAnc2Nhbic7XHJcblx0Y3JlYXRlV2hlbkZpbmlzaE1vZGUgPSBmYWxzZTtcclxuXHRteUVudmlyb25tZW50O1xyXG5cdHNlbGVjdGVkRmlsZSA9IHtcclxuXHRcdHN0YXRpY0RhdGE6IHt9LFxyXG5cdFx0ZmlsZVR5cGU6ICcnLFxyXG5cdFx0ZHluYW1pY0Zvcm06ICcnLFxyXG5cdFx0ZHluYW1pY0RhdGE6IHtcclxuXHRcdFx0dmFsaWQ6IGZhbHNlLFxyXG5cdFx0XHRkYXRhOiB7fVxyXG5cdFx0fSxcclxuXHRcdGZpbGU6ICcnXHJcblx0fTtcclxuXHR0ZW1wb3JhcnlEeWFubWljRGF0YSA9IHt9O1xyXG5cdHNob3dSZW5kZXJlciA9IGZhbHNlO1xyXG5cclxuXHR1cGxvYWRTdGFydFN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xyXG5cdGZpbGVDaGFuZ2VTdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcclxuXHRmaWxlRm9ybVN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xyXG5cdGFnZW5jeUNhdGVnQ29kZVN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xyXG5cdGNvdW50cnlDYXRlZ0NvZGVTdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcclxuXHRsYW5nU3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XHJcblxyXG5cdHNob3dTdGF0aWNGb3JtID0gZmFsc2U7XHJcblx0dXNpbmdFeHRyYUZpZWxkcyA9IGZhbHNlOyAvLyBmbGFnZSB0byBzd2l0Y2ggYmV0d2VlbiBzdGF0aWMgZm9ybSB0eXBlc1xyXG5cdGZpbGVGb3JtOiBGb3JtR3JvdXA7XHJcblx0c3RhdGljRm9ybUZpZWxkcztcclxuXHRhZ2VuY3lOYW1lRmlsdGVyO1xyXG5cdGNvdW50cnlOYW1lRmlsdGVyO1xyXG5cclxuXHRjb25zdHJ1Y3RvcihcclxuXHRcdEBJbmplY3QoTUFUX0RJQUxPR19EQVRBKSBwdWJsaWMgZGF0YSxcclxuXHRcdHB1YmxpYyBkaWFsb2dSZWY6IE1hdERpYWxvZ1JlZjxTY2FuTW9kYWxDb21wb25lbnQ+LFxyXG5cdFx0cHVibGljIHVwbG9hZE1hbmdtZW50U2VydmljZTogVXBsb2FkTWFuYWdtZW50U2VydmljZSxcclxuXHRcdHB1YmxpYyBkaWFsb2dNYW5nbWVudFNlcnZpY2U6IERpYWxvZ01hbmdtZW50U2VydmljZSxcclxuXHRcdHByaXZhdGUgZmlsZU1hbmdlclNlcnZpY2U6IEZpbGVNYW5hZ2VyU2VydmljZSxcclxuXHRcdHByaXZhdGUgdG9zdGVyU2VydmljZTogQ3VzdG9tVG9hc3RyU2VydmljZSxcclxuXHRcdHB1YmxpYyBmb3JtQnVpbGRlcjogRm9ybUJ1aWxkZXIsXHJcblx0XHRwcml2YXRlIGR5bmFtaWNGb3JtU2VydmljZTogRHluYW1pY0Zvcm1TZXJ2aWNlLFxyXG5cdFx0cHJpdmF0ZSBkYXRlSGVscGVyU2VydmljZTogRGF0ZUhlbHBlclNlcnZpY2UsXHJcblx0XHRwdWJsaWMgYWRhcHRlcjogQWRhcHRlclNlcnZpY2UsXHJcblx0XHRwcml2YXRlIHRyYW5zbGF0aW9uU2VydmljZTogVHJhbnNsYXRpb25TZXJ2aWNlLFxyXG5cdFx0cHJpdmF0ZSBudXhlb1NlcnZpY2U6IE51eGVvU2VydmljZSxcclxuXHRcdHByaXZhdGUgdXNlclNlcnZpY2U6IFVzZXJTZXJ2aWNlLFxyXG5cdFx0cHJpdmF0ZSBhcHBDb25mU2VydmljZTogQXBwQ29uZmlnU2VydmljZSxcclxuXHRcdEBJbmplY3QoJ2Vudmlyb25tZW50JykgcHJpdmF0ZSBlbnZpcm5vbWVudCxcclxuXHRcdHByaXZhdGUgZG9jdW1lbnRTY2FuU2VydmljZTogRG9jdW1lbnRTY2FuU2VydmljZSxcclxuXHRcdGluamVjdG9yOiBJbmplY3RvclxyXG5cdCkge1xyXG5cdFx0c3VwZXIoaW5qZWN0b3IpO1xyXG5cdFx0dGhpcy5teUVudmlyb25tZW50ID0gdGhpcy5lbnZpcm5vbWVudDtcclxuXHR9XHJcblxyXG5cdG5nT25Jbml0KCk6IHZvaWQge1xyXG5cdFx0dGhpcy5jcmVhdGVXaGVuRmluaXNoTW9kZSA9IGZhbHNlO1xyXG5cdFx0dGhpcy5maWxlVHlwZSA9IHRoaXMuZGlhbG9nTWFuZ21lbnRTZXJ2aWNlLmZpbGVUeXBlO1xyXG5cdFx0dGhpcy5zb3VyY2UgPSB0aGlzLmRpYWxvZ01hbmdtZW50U2VydmljZS5hZGRpbmdGcm9tO1xyXG5cclxuXHRcdHRoaXMuZmlsZU1hbmdlclNlcnZpY2VcclxuXHRcdFx0LmdldEZpbGVTY2hlbWFzKHRoaXMuZmlsZVR5cGUudHlwZSlcclxuXHRcdFx0LnN1YnNjcmliZSgoc2NoZW1hcykgPT4ge1xyXG5cdFx0XHRcdHNjaGVtYXMubWFwKChpdGVtKSA9PiB7XHJcblx0XHRcdFx0XHRpZiAoaXRlbS5uYW1lID09PSAnZ2VuZXJhbGRvY3VtZW50Jykge1xyXG5cdFx0XHRcdFx0XHR0aGlzLnVzaW5nRXh0cmFGaWVsZHMgPSB0cnVlO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH0pO1xyXG5cdFx0XHRcdHRoaXMuaW5pdGlhdGZpbGVGb3JtKCk7XHJcblx0XHRcdFx0Ly9pZiBzdGFydGluZyBmcm9tIGZpbGVtbmFnZXIgdGhlbiBpIGhhdmUgZml4ZWQgZmlsZSB0eXBlIGZvciBhbGwgYXR0YWNobWV0biBhbmQgc2luZ2xlIGR5bmFpbWMgZm9ybSAgdHlwZVxyXG5cdFx0XHRcdGlmICh0aGlzLnNvdXJjZSA9PT0gJ2ZpbGVNYW5nZXInKSB7XHJcblx0XHRcdFx0XHRpZiAoXHJcblx0XHRcdFx0XHRcdHRoaXMudXBsb2FkTWFuZ21lbnRTZXJ2aWNlLnVwbG9hZGVkRmlsZXNTdGF0dXMudXBsb2FkZWRGaWxlc1xyXG5cdFx0XHRcdFx0XHRcdC5sZW5ndGggPiAwXHJcblx0XHRcdFx0XHQpIHtcclxuXHRcdFx0XHRcdFx0c2V0VGltZW91dCgoKSA9PiB7XHJcblx0XHRcdFx0XHRcdFx0dGhpcy5zZWxlY3RlZEZpbGUgPSB7XHJcblx0XHRcdFx0XHRcdFx0XHQuLi50aGlzLnVwbG9hZE1hbmdtZW50U2VydmljZS51cGxvYWRlZEZpbGVzU3RhdHVzLnVwbG9hZGVkRmlsZXMuc2hpZnQoKVxyXG5cdFx0XHRcdFx0XHRcdH07XHJcblx0XHRcdFx0XHRcdFx0dGhpcy50ZW1wb3JhcnlEeWFubWljRGF0YSA9IHRoaXMuc2VsZWN0ZWRGaWxlLmR5bmFtaWNEYXRhLmRhdGE7XHJcblx0XHRcdFx0XHRcdFx0dGhpcy5maWxlRm9ybS5wYXRjaFZhbHVlKHRoaXMuc2VsZWN0ZWRGaWxlLnN0YXRpY0RhdGEpO1xyXG5cdFx0XHRcdFx0XHRcdGlmICh0aGlzLnNlbGVjdGVkRmlsZVsnc3RhdGljRGF0YSddWydhZ2VuY3lDYXRlZ29yeUNvZGUnXSkge1xyXG5cdFx0XHRcdFx0XHRcdFx0dGhpcy5hZ2VuY3lOYW1lRmlsdGVyID0ge1xyXG5cdFx0XHRcdFx0XHRcdFx0XHRjYXRlZ29yeTpcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHR0aGlzLnNlbGVjdGVkRmlsZVsnc3RhdGljRGF0YSddWydhZ2VuY3lDYXRlZ29yeUNvZGUnXVxyXG5cdFx0XHRcdFx0XHRcdFx0fTtcclxuXHRcdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdFx0aWYgKHRoaXMuc2VsZWN0ZWRGaWxlWydzdGF0aWNEYXRhJ11bJ2NvdW50cnlDYXRlZ29yeUNvZGUnXSkge1xyXG5cdFx0XHRcdFx0XHRcdFx0dGhpcy5jb3VudHJ5TmFtZUZpbHRlciA9IHtcclxuXHRcdFx0XHRcdFx0XHRcdFx0Y2F0ZWdvcnk6XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0dGhpcy5zZWxlY3RlZEZpbGVbJ3N0YXRpY0RhdGEnXVsnY291bnRyeUNhdGVnb3J5Q29kZSddXHJcblx0XHRcdFx0XHRcdFx0XHR9O1xyXG5cdFx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdFx0XHR0aGlzLm9wZW5TdWJzY3JpcHRpb25zKCk7XHJcblx0XHRcdFx0XHRcdH0sIDIwMDApO1xyXG5cdFx0XHRcdFx0XHRzZXRUaW1lb3V0KCgpID0+IHtcclxuXHRcdFx0XHRcdFx0XHR0aGlzLnNob3dSZW5kZXJlciA9IHRydWU7XHJcblx0XHRcdFx0XHRcdH0sIDMwMDApO1xyXG5cdFx0XHRcdFx0fSBlbHNlIHtcclxuXHRcdFx0XHRcdFx0dGhpcy5zZWxlY3RlZEZpbGUuZHluYW1pY0Zvcm0gPVxyXG5cdFx0XHRcdFx0XHRcdHRoaXMuZGlhbG9nTWFuZ21lbnRTZXJ2aWNlLnN0b3JlZER5bmFtaWNGb3JtO1xyXG5cdFx0XHRcdFx0XHR0aGlzLnNob3dSZW5kZXJlciA9IHRydWU7XHJcblx0XHRcdFx0XHRcdHRoaXMub3BlblN1YnNjcmlwdGlvbnMoKTtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH0pO1xyXG5cclxuXHRcdHRoaXMudXBsb2FkU3RhcnRTdWJzY3JpcHRpb24gPVxyXG5cdFx0XHR0aGlzLmRvY3VtZW50U2NhblNlcnZpY2UudXBsb2FkU3RhcnQuc3Vic2NyaWJlKChyZXMpID0+IHtcclxuXHRcdFx0XHR0aGlzLnVwbG9hZE1hbmdtZW50U2VydmljZS51cGxvYWRlZEZpbGVzU3RhdHVzLnVwbG9hZEluUHJvZ3Jlc3MgPSByZXM7XHJcblx0XHRcdH0pO1xyXG5cdFx0dGhpcy5maWxlQ2hhbmdlU3Vic2NyaXB0aW9uID0gdGhpcy5kb2N1bWVudFNjYW5TZXJ2aWNlLmZpbGVDaGFuZ2Uuc3Vic2NyaWJlKFxyXG5cdFx0XHQoZXZlbnQpID0+IHtcclxuXHRcdFx0XHQvL2NvbnNvbGUubG9nKGV2ZW50KTtcclxuXHRcdFx0XHR0aGlzLnNlbGVjdGVkRmlsZS5maWxlID0gZXZlbnQ7XHJcblx0XHRcdFx0bGV0IHBheUxvYWQgPSB0aGlzLmNvbnN0cnVjdFBheUxvYWQodGhpcy5zZWxlY3RlZEZpbGUpO1xyXG5cdFx0XHRcdHRoaXMuZmlsZU1hbmdlclNlcnZpY2VcclxuXHRcdFx0XHRcdC5jcmVhdGVGaWxlKHBheUxvYWQsIHRoaXMuZmlsZU1hbmdlclNlcnZpY2Uuc2VsZWN0ZWRGb2xkZXJJZClcclxuXHRcdFx0XHRcdC5zdWJzY3JpYmUoKHJlcykgPT4ge1xyXG5cdFx0XHRcdFx0XHRpZiAocmVzWydzdGF0dXMnXSAmJiByZXNbJ3N0YXR1cyddID09PSAnZmFpbGVkJykge1xyXG5cdFx0XHRcdFx0XHRcdHRoaXMudXBsb2FkTWFuZ21lbnRTZXJ2aWNlLnNjYW5DcmVhdGlvbkZhaWxlZCA9IHRydWU7XHJcblx0XHRcdFx0XHRcdFx0dGhpcy50b3N0ZXJTZXJ2aWNlLnNob3coXHJcblx0XHRcdFx0XHRcdFx0XHQnZXJyb3InLFxyXG5cdFx0XHRcdFx0XHRcdFx0J1RPQVNURVIuRVJST1InLFxyXG5cdFx0XHRcdFx0XHRcdFx0J1RPQVNURVIuVVBMT0FEX0VSUk9SJ1xyXG5cdFx0XHRcdFx0XHRcdCk7XHJcblx0XHRcdFx0XHRcdFx0dGhpcy5yZW1vdmVTdWJzY3JpcHRpb24oKTtcclxuXHRcdFx0XHRcdFx0fSBlbHNlIHtcclxuXHRcdFx0XHRcdFx0XHR0aGlzLmZpbGVNYW5nZXJTZXJ2aWNlLm9uUmVmcmVzaGluZ0ZpbGVNYW5nZXIubmV4dCgpO1xyXG5cdFx0XHRcdFx0XHRcdHRoaXMudG9zdGVyU2VydmljZS5zaG93KFxyXG5cdFx0XHRcdFx0XHRcdFx0J3N1Y2Nlc3MnLFxyXG5cdFx0XHRcdFx0XHRcdFx0J1RPQVNURVIuU1VDQ0VTUycsXHJcblx0XHRcdFx0XHRcdFx0XHQnVE9BU1RFUi5GSUxFX0NSRUFURURfU1VDQ0UnXHJcblx0XHRcdFx0XHRcdFx0KTtcclxuXHRcdFx0XHRcdFx0XHR0aGlzLmRvY3VtZW50U2NhblNlcnZpY2Uuc3RvcmVkRmlsZSA9IHt9O1xyXG5cdFx0XHRcdFx0XHRcdHRoaXMudXBsb2FkTWFuZ21lbnRTZXJ2aWNlLnJlc2V0U3RhdHVzKCk7XHJcblx0XHRcdFx0XHRcdFx0dGhpcy5yZW1vdmVTdWJzY3JpcHRpb24oKTtcclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0fSk7XHJcblx0XHRcdH1cclxuXHRcdCk7XHJcblxyXG5cdFx0dGhpcy5zY2FubmVyVXBsb2FkQnV0dG9uID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3NjYW5uZXJVcGxvYWRCdXR0b24nKTtcclxuXHR9XHJcblxyXG5cdGluaXRpYXRmaWxlRm9ybSgpIHtcclxuXHRcdGlmICh0aGlzLnVzaW5nRXh0cmFGaWVsZHMpIHtcclxuXHRcdFx0dGhpcy5maWxlRm9ybSA9IHRoaXMuZm9ybUJ1aWxkZXIuZ3JvdXAoe1xyXG5cdFx0XHRcdHRpdGxlOiBbJycsIFtWYWxpZGF0b3JzLnJlcXVpcmVkXV0sXHJcblx0XHRcdFx0ZGVzY3JpcHRpb246IFsnJ10sXHJcblx0XHRcdFx0c3ViamVjdDogWycnLCBbVmFsaWRhdG9ycy5yZXF1aXJlZF1dLFxyXG5cdFx0XHRcdGRvY3VtZW50TnVtYmVyOiBbJyddLFxyXG5cdFx0XHRcdGdkb2N1bWVudERhdGU6IFtudWxsLCBbVmFsaWRhdG9ycy5yZXF1aXJlZF1dLFxyXG5cdFx0XHRcdHNlY3JlY3lMZXZlbDogW251bGxdLFxyXG5cdFx0XHRcdGltcG9ydGFuY2VMZXZlbDogW251bGxdLFxyXG5cdFx0XHRcdGRlcGFydG1lbnRDb2RlOiBbJyddLFxyXG5cdFx0XHRcdGFnZW5jeUNhdGVnb3J5Q29kZTogW251bGxdLFxyXG5cdFx0XHRcdGFnZW5jeU5hbWU6IFtudWxsXSxcclxuXHRcdFx0XHRjb3VudHJ5Q2F0ZWdvcnlDb2RlOiBbbnVsbF0sXHJcblx0XHRcdFx0Y291bnRyeU5hbWU6IFtudWxsXSxcclxuXHRcdFx0XHRyZW1hcmtzOiBbJyddXHJcblx0XHRcdH0pO1xyXG5cdFx0fSBlbHNlIHtcclxuXHRcdFx0dGhpcy5maWxlRm9ybSA9IHRoaXMuZm9ybUJ1aWxkZXIuZ3JvdXAoe1xyXG5cdFx0XHRcdHRpdGxlOiBbJycsIFtWYWxpZGF0b3JzLnJlcXVpcmVkXV0sXHJcblx0XHRcdFx0ZGVzY3JpcHRpb246IFsnJ11cclxuXHRcdFx0fSk7XHJcblx0XHR9XHJcblx0XHR0aGlzLnN0YXRpY0Zvcm1GaWVsZHMgPVxyXG5cdFx0XHR0aGlzLmFwcENvbmZTZXJ2aWNlLm15Q29uZmlndXJhdGlvbi5zdGF0aWNGb3JtRmllbGRzO1xyXG5cdFx0aWYgKHRoaXMuZmlsZUZvcm1TdWJzY3JpcHRpb24pIHtcclxuXHRcdFx0dGhpcy5maWxlRm9ybVN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xyXG5cdFx0fVxyXG5cdFx0aWYgKHRoaXMuZmlsZUZvcm0uZ2V0KCdkZXBhcnRtZW50Q29kZScpKSB7XHJcblx0XHRcdHRoaXMuZmlsZUZvcm1cclxuXHRcdFx0XHQuZ2V0KCdkZXBhcnRtZW50Q29kZScpXHJcblx0XHRcdFx0LnNldFZhbHVlKHRoaXMudXNlclNlcnZpY2UuZ2V0VXNlckRlcGFydG1lbnRGcm9tUGF0aCh0aGlzLmRhdGEucGF0aCkpO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0b3BlblN1YnNjcmlwdGlvbnMoKSB7XHJcblx0XHR0aGlzLmZpbGVGb3JtU3Vic2NyaXB0aW9uID0gdGhpcy5maWxlRm9ybS52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKChkYXRhKSA9PiB7XHJcblx0XHRcdHRoaXMuc2VsZWN0ZWRGaWxlLnN0YXRpY0RhdGEgPSBkYXRhO1xyXG5cdFx0fSk7XHJcblxyXG5cdFx0aWYgKHRoaXMuZmlsZUZvcm0uZ2V0KCdhZ2VuY3lDYXRlZ29yeUNvZGUnKSkge1xyXG5cdFx0XHR0aGlzLmFnZW5jeUNhdGVnQ29kZVN1YnNjcmlwdGlvbiA9IHRoaXMuZmlsZUZvcm1cclxuXHRcdFx0XHQuZ2V0KCdhZ2VuY3lDYXRlZ29yeUNvZGUnKVxyXG5cdFx0XHRcdC52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKChyZXMpID0+IHtcclxuXHRcdFx0XHRcdHRoaXMuZmlsZUZvcm0uZ2V0KCdhZ2VuY3lOYW1lJykuc2V0VmFsdWUobnVsbCk7XHJcblx0XHRcdFx0XHR0aGlzLmFnZW5jeU5hbWVGaWx0ZXIgPSB7XHJcblx0XHRcdFx0XHRcdGNhdGVnb3J5OiByZXNcclxuXHRcdFx0XHRcdH07XHJcblx0XHRcdFx0fSk7XHJcblx0XHR9XHJcblxyXG5cdFx0aWYgKHRoaXMuZmlsZUZvcm0uZ2V0KCdjb3VudHJ5Q2F0ZWdvcnlDb2RlJykpIHtcclxuXHRcdFx0dGhpcy5jb3VudHJ5Q2F0ZWdDb2RlU3Vic2NyaXB0aW9uID0gdGhpcy5maWxlRm9ybVxyXG5cdFx0XHRcdC5nZXQoJ2NvdW50cnlDYXRlZ29yeUNvZGUnKVxyXG5cdFx0XHRcdC52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKChyZXMpID0+IHtcclxuXHRcdFx0XHRcdHRoaXMuZmlsZUZvcm0uZ2V0KCdjb3VudHJ5TmFtZScpLnNldFZhbHVlKG51bGwpO1xyXG5cdFx0XHRcdFx0dGhpcy5jb3VudHJ5TmFtZUZpbHRlciA9IHtcclxuXHRcdFx0XHRcdFx0Y2F0ZWdvcnk6IHJlc1xyXG5cdFx0XHRcdFx0fTtcclxuXHRcdFx0XHR9KTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdG9uVXBsb2FkaW5nKGV2ZW50KSB7XHJcblx0XHR0aGlzLnVwbG9hZE1hbmdtZW50U2VydmljZS51cGxvYWRlZEZpbGVzU3RhdHVzLnVwbG9hZEluUHJvZ3Jlc3MgPSBldmVudDtcclxuXHR9XHJcblxyXG5cdC8vIG9uU2Nhbm5lclN1Y2Nlc3MoZXZlbnQpIHtcclxuXHQvLyAgIC8vY29uc29sZS5sb2coZXZlbnQpO1xyXG5cdC8vICAgdGhpcy5zZWxlY3RlZEZpbGUuZmlsZSA9IGV2ZW50O1xyXG5cdC8vICAgbGV0IHBheUxvYWQgPSB0aGlzLmNvbnN0cnVjdFBheUxvYWQodGhpcy5zZWxlY3RlZEZpbGUpO1xyXG5cdC8vICAgdGhpcy5maWxlTWFuZ2VyU2VydmljZS5jcmVhdGVGaWxlKHBheUxvYWQsIHRoaXMuZmlsZU1hbmdlclNlcnZpY2Uuc2VsZWN0ZWRGb2xkZXJJZCkuc3Vic2NyaWJlKHJlcyA9PiB7XHJcblx0Ly8gICAgIHRoaXMuZmlsZU1hbmdlclNlcnZpY2Uub25SZWZyZXNoaW5nRmlsZU1hbmdlci5uZXh0KCk7XHJcblx0Ly8gICAgIHRoaXMudG9zdGVyU2VydmljZS5zaG93KCdzdWNjZXNzJywgJ1RPQVNURVIuU1VDQ0VTUycsIFwiVE9BU1RFUi5GSUxFX0NSRUFURURfU1VDQ0VcIilcclxuXHQvLyAgICAgdGhpcy5kb2N1bWVudFNjYW5TZXJ2aWNlLnN0b3JlZEZpbGUgPSB7fTtcclxuXHQvLyAgICAgdGhpcy51cGxvYWRNYW5nbWVudFNlcnZpY2UucmVzZXRTdGF0dXMoKTtcclxuXHQvLyAgIH0pXHJcblx0Ly8gfVxyXG5cclxuXHRvbmR5bmFtaWNGb3JtQ2hhbmdlKGR5bmFtaWNEYXRhKSB7XHJcblx0XHRpZiAoZHluYW1pY0RhdGEuZGF0YSkge1xyXG5cdFx0XHRjb25zb2xlLmxvZyhkeW5hbWljRGF0YS5kYXRhKTtcclxuXHRcdFx0dGhpcy5zZWxlY3RlZEZpbGUuZHluYW1pY0RhdGEgPSB7IC4uLmR5bmFtaWNEYXRhIH07XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHRjbG9zZURpYWxvZygpIHtcclxuXHRcdHRoaXMuZG9jdW1lbnRTY2FuU2VydmljZS5zdG9yZWRGaWxlID0ge307XHJcblx0XHR0aGlzLnJlbW92ZVN1YnNjcmlwdGlvbigpO1xyXG5cdFx0dGhpcy5kaWFsb2dSZWYuY2xvc2UoZmFsc2UpO1xyXG5cdH1cclxuXHJcblx0bWluaW1pekRpYWxvZzogRGlhbG9nQWN0aW9uVHlwZSA9ICgpID0+IHtcclxuXHRcdHRoaXMuZG9jdW1lbnRTY2FuU2VydmljZS5vbk1pbmltaXppbmcuZW1pdCh0cnVlKTtcclxuXHRcdHRoaXMudXBsb2FkTWFuZ21lbnRTZXJ2aWNlLnVwbG9hZGVkRmlsZXNTdGF0dXMudXBsb2FkZWRGaWxlcy5wdXNoKHtcclxuXHRcdFx0Li4udGhpcy5zZWxlY3RlZEZpbGVcclxuXHRcdH0pO1xyXG5cdFx0dGhpcy5yZW1vdmVTdWJzY3JpcHRpb24oKTtcclxuXHRcdHRoaXMuZGlhbG9nUmVmLmNsb3NlKHRydWUpO1xyXG5cdFx0cmV0dXJuIG9mKG51bGwpO1xyXG5cdH07XHJcblxyXG5cdHJlbW92ZVN1YnNjcmlwdGlvbigpIHtcclxuXHRcdHNldFRpbWVvdXQoKCkgPT4ge1xyXG5cdFx0XHR0aGlzLnVwbG9hZFN0YXJ0U3Vic2NyaXB0aW9uXHJcblx0XHRcdFx0PyB0aGlzLnVwbG9hZFN0YXJ0U3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKClcclxuXHRcdFx0XHQ6ICcnO1xyXG5cdFx0XHR0aGlzLmZpbGVDaGFuZ2VTdWJzY3JpcHRpb25cclxuXHRcdFx0XHQ/IHRoaXMuZmlsZUNoYW5nZVN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpXHJcblx0XHRcdFx0OiAnJztcclxuXHRcdH0sIDIwMDApO1xyXG5cdH1cclxuXHJcblx0c3RhcnRBZGRpbmdQcm9wZXJ0aWVzKCkge1xyXG5cdFx0dGhpcy51cGxvYWRNYW5nbWVudFNlcnZpY2UuYWRkaW5nUHJvcGVydGllc01vZGUgPSB0cnVlO1xyXG5cdH1cclxuXHJcblx0Y3JlYXRlRG9jdW1lbnQ6IERpYWxvZ0FjdGlvblR5cGUgPSAoKSA9PiB7XHJcblx0XHR0aGlzLmRvY3VtZW50U2NhblNlcnZpY2Uub25NaW5pbWl6aW5nLmVtaXQodHJ1ZSk7XHJcblx0XHR0aGlzLnVwbG9hZE1hbmdtZW50U2VydmljZS51cGxvYWRlZEZpbGVzU3RhdHVzLnVwbG9hZGVkRmlsZXMucHVzaCh7XHJcblx0XHRcdC4uLnRoaXMuc2VsZWN0ZWRGaWxlXHJcblx0XHR9KTtcclxuXHRcdHRoaXMuc2Nhbm5lclVwbG9hZEJ1dHRvbi5jbGljaygpO1xyXG5cdFx0dGhpcy5kaWFsb2dSZWYuY2xvc2UodHJ1ZSk7XHJcblx0XHRyZXR1cm4gb2YobnVsbCk7XHJcblx0fTtcclxuXHJcblx0Y29uc3RydWN0UGF5TG9hZChmaWxlKSB7XHJcblx0XHRsZXQgcHJvcHMgPSB0aGlzLmR5bmFtaWNGb3JtU2VydmljZS5jb25zdHJ1Y3REeW5hbWljRm9ybVBheWxvYWQoXHJcblx0XHRcdGZpbGUuZHluYW1pY0RhdGEuZGF0YSxcclxuXHRcdFx0ZmlsZS5keW5hbWljRm9ybVxyXG5cdFx0KTtcclxuXHRcdGxldCBzdGF0aWNGb3JtRGF0YSA9IHRoaXMubWFwcGluZ1N0YXRpY0RhdGEoZmlsZS5zdGF0aWNEYXRhKTtcclxuXHJcblx0XHRsZXQgcGFyYW0gPSB7XHJcblx0XHRcdGRvY3VtZW50OiB7XHJcblx0XHRcdFx0dHlwZTogdGhpcy5maWxlVHlwZS50eXBlLFxyXG5cdFx0XHRcdG5hbWU6IGZpbGUuc3RhdGljRGF0YS50aXRsZSxcclxuXHRcdFx0XHRwcm9wZXJ0aWVzOiB7XHJcblx0XHRcdFx0XHQuLi5wcm9wcyxcclxuXHRcdFx0XHRcdC4uLnN0YXRpY0Zvcm1EYXRhLFxyXG5cdFx0XHRcdFx0J2ZpbGU6Y29udGVudCc6IHtcclxuXHRcdFx0XHRcdFx0J3VwbG9hZC1iYXRjaCc6IGZpbGUuZmlsZS5ibG9iWyd1cGxvYWQtYmF0Y2gnXSxcclxuXHRcdFx0XHRcdFx0J3VwbG9hZC1maWxlSWQnOiBmaWxlLmZpbGUuYmxvYlsndXBsb2FkLWZpbGVJZCddXHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9O1xyXG5cdFx0aWYgKGZpbGUuZmlsZVR5cGUuZG9jdW1lbnRDb2RlKSB7XHJcblx0XHRcdHBhcmFtWydkb2N1bWVudFR5cGVDb2RlJ10gPSBmaWxlLmZpbGVUeXBlLmRvY3VtZW50Q29kZTtcclxuXHRcdH1cclxuXHRcdHJldHVybiB7IHBhcmFtczogcGFyYW0sIG9yaWdpbkZpbGU6IGZpbGUgfTtcclxuXHR9XHJcblxyXG5cdG1hcHBpbmdTdGF0aWNEYXRhKGRhdGEpIHtcclxuXHRcdGlmIChkYXRhLmdkb2N1bWVudERhdGUgJiYgZGF0YS5nZG9jdW1lbnREYXRlICE9PSBudWxsKSB7XHJcblx0XHRcdG1vbWVudC5sb2NhbGUoJ2VuJyk7XHJcblx0XHRcdGRhdGFbJ2hkb2N1bWVudERhdGUnXSA9IHRoaXMuZGF0ZUhlbHBlclNlcnZpY2UuZ3JlZ29yaWFuVG9IaWpyaShcclxuXHRcdFx0XHRkYXRhLmdkb2N1bWVudERhdGUsXHJcblx0XHRcdFx0J2lZWVlZLWlNTS1pREQnXHJcblx0XHRcdCk7XHJcblx0XHRcdGRhdGEuZ2RvY3VtZW50RGF0ZSA9XHJcblx0XHRcdFx0bW9tZW50KGRhdGEuZ2RvY3VtZW50RGF0ZSkuZm9ybWF0KCdZWVlZLU1NLUREVDAwOjAwOjAwLjAwMCcpICsgJ1onO1xyXG5cdFx0fVxyXG5cdFx0cmV0dXJuIHRoaXMuYWRhcHRlci5hZGFwdE91dChkYXRhLCB0aGlzLnN0YXRpY0Zvcm1GaWVsZHMpO1xyXG5cdH1cclxuXHJcblx0Y29uc3RydWN0RHluYW1pY0Zvcm1QYXlsb2FkKGZpbGUpIHtcclxuXHRcdGxldCB1cGRhdGVkRHluYW1pY1ZhbHVlcyA9IHt9O1xyXG5cdFx0T2JqZWN0LmtleXMoZmlsZT8uZHluYW1pY0RhdGE/LmRhdGEpLm1hcCgoa2V5KSA9PiB7XHJcblx0XHRcdGxldCB1cGRhdGVkS2V5ID0ga2V5LnJlcGxhY2UoJzonLCAnJyk7XHJcblx0XHRcdGxldCBwcmVmaXggPSBmaWxlLmR5bmFtaWNGb3JtLnByZWZpeFt1cGRhdGVkS2V5XTtcclxuXHRcdFx0aWYgKHByZWZpeCkge1xyXG5cdFx0XHRcdC8vIGNoZWNrIGlmIGNvbXBvbmVudCBpcyB1c2VyIHNlbGVjdG9yIHRvIG1hcCBpdHMgZGF0YSBmcm9tIG9iamVjdCB0byB1c2VybmFtZSBvciBpZCBvbmx5XHJcblx0XHRcdFx0aWYgKFxyXG5cdFx0XHRcdFx0ZmlsZS5keW5hbWljRGF0YS5kYXRhW2tleV0gJiZcclxuXHRcdFx0XHRcdGZpbGUuZHluYW1pY0RhdGEuZGF0YVtrZXldWyd1c2VyU2VsZWN0b3InXSAmJlxyXG5cdFx0XHRcdFx0ZmlsZS5keW5hbWljRGF0YS5kYXRhW2tleV1bJ3VzZXJTZWxlY3RvciddID09PSB0cnVlXHJcblx0XHRcdFx0KSB7XHJcblx0XHRcdFx0XHR1cGRhdGVkRHluYW1pY1ZhbHVlc1twcmVmaXggKyAnOicgKyB1cGRhdGVkS2V5XSA9IGZpbGUuZHluYW1pY0RhdGFcclxuXHRcdFx0XHRcdFx0LmRhdGFba2V5XVsndmFsdWUnXVsnaWQnXVxyXG5cdFx0XHRcdFx0XHQ/IGZpbGUuZHluYW1pY0RhdGEuZGF0YVtrZXldWyd2YWx1ZSddWydpZCddXHJcblx0XHRcdFx0XHRcdDogZmlsZS5keW5hbWljRGF0YS5kYXRhW2tleV1bJ3ZhbHVlJ11bJ3Byb3BlcnRpZXMnXVsndXNlcm5hbWUnXTtcclxuXHRcdFx0XHR9IGVsc2Uge1xyXG5cdFx0XHRcdFx0dXBkYXRlZER5bmFtaWNWYWx1ZXNbcHJlZml4ICsgJzonICsgdXBkYXRlZEtleV0gPVxyXG5cdFx0XHRcdFx0XHRmaWxlLmR5bmFtaWNEYXRhLmRhdGFba2V5XTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH0gZWxzZSB7XHJcblx0XHRcdFx0aWYgKFxyXG5cdFx0XHRcdFx0ZmlsZS5keW5hbWljRGF0YS5kYXRhW2tleV1bJ3VzZXJTZWxlY3RvciddICYmXHJcblx0XHRcdFx0XHRmaWxlLmR5bmFtaWNEYXRhLmRhdGFba2V5XVsndXNlclNlbGVjdG9yJ10gPT09IHRydWVcclxuXHRcdFx0XHQpIHtcclxuXHRcdFx0XHRcdHVwZGF0ZWREeW5hbWljVmFsdWVzW3VwZGF0ZWRLZXldID0gZmlsZS5keW5hbWljRGF0YS5kYXRhW2tleV1bXHJcblx0XHRcdFx0XHRcdCd2YWx1ZSdcclxuXHRcdFx0XHRcdF1bJ2lkJ11cclxuXHRcdFx0XHRcdFx0PyBmaWxlLmR5bmFtaWNEYXRhLmRhdGFba2V5XVsndmFsdWUnXVsnaWQnXVxyXG5cdFx0XHRcdFx0XHQ6IGZpbGUuZHluYW1pY0RhdGEuZGF0YVtrZXldWyd2YWx1ZSddWydwcm9wZXJ0aWVzJ11bJ3VzZXJuYW1lJ107XHJcblx0XHRcdFx0fSBlbHNlIHtcclxuXHRcdFx0XHRcdHVwZGF0ZWREeW5hbWljVmFsdWVzW3VwZGF0ZWRLZXldID0gZmlsZS5keW5hbWljRGF0YS5kYXRhW2tleV07XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9KTtcclxuXHRcdHJldHVybiB1cGRhdGVkRHluYW1pY1ZhbHVlcztcclxuXHR9XHJcblxyXG5cdGNyZWF0ZVdoZW5GaW5pc2goKSB7fVxyXG5cclxuXHRjaGFuZ1RhYlRvKHRhYk5hbWUpIHtcclxuXHRcdHRoaXMuYWN0aXZlVGFiID0gdGFiTmFtZTtcclxuXHR9XHJcblx0Y2hlY2tWYWxpZGF0aW9uKCkge1xyXG5cdFx0cmV0dXJuIGZhbHNlO1xyXG5cdH1cclxuXHJcblx0bmdPbkRlc3Ryb3koKSB7XHJcblx0XHR0aGlzLmxhbmdTdWJzY3JpcHRpb24gPyB0aGlzLmxhbmdTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKSA6ICcnO1xyXG5cdFx0dGhpcy5hZ2VuY3lDYXRlZ0NvZGVTdWJzY3JpcHRpb25cclxuXHRcdFx0PyB0aGlzLmFnZW5jeUNhdGVnQ29kZVN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpXHJcblx0XHRcdDogbnVsbDtcclxuXHRcdHRoaXMuY291bnRyeUNhdGVnQ29kZVN1YnNjcmlwdGlvblxyXG5cdFx0XHQ/IHRoaXMuY291bnRyeUNhdGVnQ29kZVN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpXHJcblx0XHRcdDogbnVsbDtcclxuXHRcdHRoaXMuZmlsZUZvcm1TdWJzY3JpcHRpb24gPyB0aGlzLmZpbGVGb3JtU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCkgOiBudWxsO1xyXG5cdH1cclxufVxyXG4iLCI8bmRmLW51eGVvLWRpYWxvZ1xyXG5cdGRpYWxvZ1RpdGxlPVwie3sgJ0NSRUFURS5TQ0FOJyB8IHRyYW5zbGF0ZSB9fVwiXHJcblx0cGFuZWxDbGFzcz1cInNjYW5uZXItbW9kYWwtYm9keVwiXHJcbj5cclxuXHQ8bmctdGVtcGxhdGUgI2NvbnRlbnRUZW1wbGF0ZT5cclxuXHRcdDxkaXZcclxuXHRcdFx0Y2xhc3M9XCJzY2FubmVyLXRhYnMgZC1mbGV4IGp1c3RpZnktYXJvdW5kIGl0ZW1zLWNlbnRlciBib3JkZXItYi0yIGJvcmRlci1ncmF5LTIwMCBtYi01IHRleHQtZ3JheS05MDAgdGV4dC1sZ1wiXHJcblx0XHQ+XHJcblx0XHRcdDxkaXZcclxuXHRcdFx0XHRjbGFzcz1cInNjYW5uZXItc2luZ2xlLXRhYiBjdXJzb3ItcG9pbnRlciB3LTEvMiB0ZXh0LWNlbnRlciBweS0yIGJvcmRlci1ncmF5LTkwMCBob3ZlcjpiZy1ncmF5LTEwMFwiXHJcblx0XHRcdFx0KGNsaWNrKT1cImNoYW5nVGFiVG8oJ3NjYW4nKVwiXHJcblx0XHRcdFx0W25nQ2xhc3NdPVwieyAnZm9udC1ib2xkIGJvcmRlci1iLTQnOiBhY3RpdmVUYWIgPT09ICdzY2FuJyB9XCJcclxuXHRcdFx0PlxyXG5cdFx0XHRcdHt7ICdDUkVBVEUuU0NBTicgfCB0cmFuc2xhdGUgfX1cclxuXHRcdFx0PC9kaXY+XHJcblx0XHRcdDxkaXZcclxuXHRcdFx0XHRjbGFzcz1cInNjYW5uZXItc2luZ2xlLXRhYiBjdXJzb3ItcG9pbnRlciB3LTEvMiB0ZXh0LWNlbnRlciBweS0yIGJvcmRlci1ncmF5LTkwMCBob3ZlcjpiZy1ncmF5LTEwMFwiXHJcblx0XHRcdFx0KGNsaWNrKT1cImNoYW5nVGFiVG8oJ2Zvcm0nKVwiXHJcblx0XHRcdFx0W25nQ2xhc3NdPVwieyAnZm9udC1ib2xkIGJvcmRlci1iLTQnOiBhY3RpdmVUYWIgPT09ICdmb3JtJyB9XCJcclxuXHRcdFx0PlxyXG5cdFx0XHRcdHt7ICdDUkVBVEUuREVUQUlMUycgfCB0cmFuc2xhdGUgfX1cclxuXHRcdFx0PC9kaXY+XHJcblx0XHQ8L2Rpdj5cclxuXHRcdDxkaXYgY2xhc3M9XCJ0YWJzLWJvZHktd3JhcHBlclwiPlxyXG5cdFx0XHQ8IS0tIHVwbG9hZGVyIGluZGljYXRvciBsb2FkaW5nIC0tPlxyXG5cdFx0XHQ8ZGl2XHJcblx0XHRcdFx0Y2xhc3M9XCJ1cGxvYWQtbG9hZGVyIG14LTJcIlxyXG5cdFx0XHRcdCpuZ0lmPVwidXBsb2FkTWFuZ21lbnRTZXJ2aWNlLnVwbG9hZGVkRmlsZXNTdGF0dXMudXBsb2FkSW5Qcm9ncmVzc1wiXHJcblx0XHRcdD5cclxuXHRcdFx0XHQ8bWF0LXByb2dyZXNzLWJhciBtb2RlPVwiaW5kZXRlcm1pbmF0ZVwiPjwvbWF0LXByb2dyZXNzLWJhcj5cclxuXHRcdFx0PC9kaXY+XHJcblxyXG5cdFx0XHQ8IS0tIHNjYW5uZXIgLS0+XHJcblx0XHRcdDxkaXYgY2xhc3M9XCJcIiBbbmdDbGFzc109XCJ7ICdkLW5vbmUnOiBhY3RpdmVUYWIgPT09ICdmb3JtJyB9XCI+XHJcblx0XHRcdFx0PGFwcC1kb2N1bWVudC1zY2FuXHJcblx0XHRcdFx0XHRbaGlkZVVwbG9hZEJ1dHRvbl09XCJ0cnVlXCJcclxuXHRcdFx0XHRcdFt1c2VTdG9yZWRGaWxlXT1cInRydWVcIlxyXG5cdFx0XHRcdD48L2FwcC1kb2N1bWVudC1zY2FuPlxyXG5cdFx0XHQ8L2Rpdj5cclxuXHJcblx0XHRcdDwhLS0gZm9ybXMgYW5kIHByb3BlcnRpZXMgIC0tPlxyXG5cdFx0XHQ8ZGl2IGNsYXNzPVwiZm9ybXMtc2VjdGlvblwiIFtuZ0NsYXNzXT1cInsgJ2Qtbm9uZSc6IGFjdGl2ZVRhYiA9PT0gJ3NjYW4nIH1cIj5cclxuXHRcdFx0XHQ8ZGl2IGNsYXNzPVwidy0yLzNcIj5cclxuXHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJtYi01XCI+XHJcblx0XHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJsYWJlbC1zdHlsZVwiPlxyXG5cdFx0XHRcdFx0XHRcdHt7ICdDUkVBVEUuRklMRV9UWVBFJyB8IHRyYW5zbGF0ZSB9fVxyXG5cdFx0XHRcdFx0XHQ8L2Rpdj5cclxuXHRcdFx0XHRcdFx0PGRpdiBjbGFzcz1cInRleHQtYmFzZSB0ZXh0LWdyYXktOTAwXCI+XHJcblx0XHRcdFx0XHRcdFx0e3sgaXNBcmFiaWMgPyBmaWxlVHlwZS5hcmFiaWNUZXh0IDogZmlsZVR5cGUuZW5nbGlzaFRleHQgfX1cclxuXHRcdFx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdFx0XHQ8L2Rpdj5cclxuXHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJmaWxlLWZpZWxkcyBtdC0zXCIgU2V0UnRsPlxyXG5cdFx0XHRcdFx0XHQ8Zm9ybSBbZm9ybUdyb3VwXT1cImZpbGVGb3JtXCIgKm5nSWY9XCJmaWxlRm9ybVwiPlxyXG5cdFx0XHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJzaW5nbGUtZmllbGQgbWItM1wiPlxyXG5cdFx0XHRcdFx0XHRcdFx0PGRpdiBjbGFzcz1cImxhYmVsLXN0eWxlXCI+XHJcblx0XHRcdFx0XHRcdFx0XHRcdHt7ICdDUkVBVEUuVElUTEUnIHwgdHJhbnNsYXRlXHJcblx0XHRcdFx0XHRcdFx0XHRcdH19PHNwYW4gY2xhc3M9XCJ0ZXh0LXJlZC01MDBcIj4qPC9zcGFuPlxyXG5cdFx0XHRcdFx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdFx0XHRcdFx0XHQ8aW5wdXRcclxuXHRcdFx0XHRcdFx0XHRcdFx0Y2xhc3M9XCJmaWVsZC1zdHlsZVwiXHJcblx0XHRcdFx0XHRcdFx0XHRcdGZvcm1Db250cm9sTmFtZT1cInRpdGxlXCJcclxuXHRcdFx0XHRcdFx0XHRcdFx0cGxhY2Vob2xkZXI9XCIge3sgJ0NSRUFURS5USVRMRScgfCB0cmFuc2xhdGUgfX1cIlxyXG5cdFx0XHRcdFx0XHRcdFx0Lz5cclxuXHRcdFx0XHRcdFx0XHQ8L2Rpdj5cclxuXHRcdFx0XHRcdFx0XHQ8ZGl2IGNsYXNzPVwic2luZ2xlLWZpZWxkIG1iLTNcIj5cclxuXHRcdFx0XHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJsYWJlbC1zdHlsZVwiPlxyXG5cdFx0XHRcdFx0XHRcdFx0XHR7eyAnQ1JFQVRFLkRFU0NSSVBUSU9OJyB8IHRyYW5zbGF0ZSB9fVxyXG5cdFx0XHRcdFx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdFx0XHRcdFx0XHQ8aW5wdXRcclxuXHRcdFx0XHRcdFx0XHRcdFx0Y2xhc3M9XCJmaWVsZC1zdHlsZVwiXHJcblx0XHRcdFx0XHRcdFx0XHRcdGZvcm1Db250cm9sTmFtZT1cImRlc2NyaXB0aW9uXCJcclxuXHRcdFx0XHRcdFx0XHRcdFx0cGxhY2Vob2xkZXI9XCIge3sgJ0NSRUFURS5ERVNDUklQVElPTicgfCB0cmFuc2xhdGUgfX1cIlxyXG5cdFx0XHRcdFx0XHRcdFx0Lz5cclxuXHRcdFx0XHRcdFx0XHQ8L2Rpdj5cclxuXHJcblx0XHRcdFx0XHRcdFx0PCEtLS0tLS0tLS0tLS0tLS0tLS0gbmV3IHN0YXRpcyBmb3JtICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tPlxyXG5cdFx0XHRcdFx0XHRcdDxkaXYgKm5nSWY9XCJ1c2luZ0V4dHJhRmllbGRzXCI+XHJcblx0XHRcdFx0XHRcdFx0XHQ8YXBwLWR5bmFtaWMtZmllbGRzLXJlbmRlcmVyXHJcblx0XHRcdFx0XHRcdFx0XHRcdFtmb3JtXT1cImZpbGVGb3JtXCJcclxuXHRcdFx0XHRcdFx0XHRcdFx0W2FnZW5jeU5hbWVGaWx0ZXJdPVwiYWdlbmN5TmFtZUZpbHRlclwiXHJcblx0XHRcdFx0XHRcdFx0XHRcdFtjb3VudHJ5TmFtZUZpbHRlcl09XCJjb3VudHJ5TmFtZUZpbHRlclwiXHJcblx0XHRcdFx0XHRcdFx0XHQ+PC9hcHAtZHluYW1pYy1maWVsZHMtcmVuZGVyZXI+XHJcblx0XHRcdFx0XHRcdFx0PC9kaXY+XHJcblxyXG5cdFx0XHRcdFx0XHRcdDwhLS0gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gLS0+XHJcblx0XHRcdFx0XHRcdDwvZm9ybT5cclxuXHRcdFx0XHRcdFx0PCEtLSAqbmdJZj1cIlwiIC0tPlxyXG5cdFx0XHRcdFx0XHQ8ZGl2XHJcblx0XHRcdFx0XHRcdFx0Y2xhc3M9XCJkeW5hbWljLXBhcnQgLW14LTRcIlxyXG5cdFx0XHRcdFx0XHRcdCpuZ0lmPVwic2VsZWN0ZWRGaWxlLmR5bmFtaWNGb3JtICYmIHNob3dSZW5kZXJlclwiXHJcblx0XHRcdFx0XHRcdD5cclxuXHRcdFx0XHRcdFx0XHQ8YXBwLWR5bmFtaWMtZm9ybVxyXG5cdFx0XHRcdFx0XHRcdFx0W2Zvcm1dPVwic2VsZWN0ZWRGaWxlLmR5bmFtaWNGb3JtXCJcclxuXHRcdFx0XHRcdFx0XHRcdFtkYXRhXT1cInRlbXBvcmFyeUR5YW5taWNEYXRhXCJcclxuXHRcdFx0XHRcdFx0XHRcdChjaGFuZ2UpPVwib25keW5hbWljRm9ybUNoYW5nZSgkZXZlbnQpXCJcclxuXHRcdFx0XHRcdFx0XHQ+PC9hcHAtZHluYW1pYy1mb3JtPlxyXG5cdFx0XHRcdFx0XHQ8L2Rpdj5cclxuXHRcdFx0XHRcdDwvZGl2PlxyXG5cdFx0XHRcdDwvZGl2PlxyXG5cdFx0XHQ8L2Rpdj5cclxuXHRcdDwvZGl2PlxyXG5cdDwvbmctdGVtcGxhdGU+XHJcblxyXG5cdDxuZy10ZW1wbGF0ZSAjYWN0aW9uc1RlbXBsYXRlIGxldC1kaWFsb2c9XCJkaWFsb2dcIj5cclxuXHRcdDxidXR0b25cclxuXHRcdFx0KGNsaWNrKT1cImRpYWxvZy5leGVjdXRlQWN0aW9uKGNyZWF0ZURvY3VtZW50KVwiXHJcblx0XHRcdFtkaXNhYmxlZF09XCJcclxuXHRcdFx0XHRzY2FubmVyVXBsb2FkQnV0dG9uPy5kaXNhYmxlZCB8fFxyXG5cdFx0XHRcdCFzZWxlY3RlZEZpbGUuZHluYW1pY0RhdGEudmFsaWQgfHxcclxuXHRcdFx0XHRmaWxlRm9ybS5pbnZhbGlkXHJcblx0XHRcdFwiXHJcblx0XHRcdFtuZ0NsYXNzXT1cIntcclxuXHRcdFx0XHQnb3BhY2l0eS0zMCBjdXJzb3Itbm90LWFsbG93ZWQnOlxyXG5cdFx0XHRcdFx0c2Nhbm5lclVwbG9hZEJ1dHRvbj8uZGlzYWJsZWQgfHxcclxuXHRcdFx0XHRcdCFzZWxlY3RlZEZpbGUuZHluYW1pY0RhdGEudmFsaWQgfHxcclxuXHRcdFx0XHRcdGZpbGVGb3JtLmludmFsaWRcclxuXHRcdFx0fVwiXHJcblx0XHRcdGNsYXNzPVwic3VibWlzc2lvbi1idXR0b25cIlxyXG5cdFx0PlxyXG5cdFx0XHR7e1xyXG5cdFx0XHRcdHVwbG9hZE1hbmdtZW50U2VydmljZS5zY2FuQ3JlYXRpb25GYWlsZWRcclxuXHRcdFx0XHRcdD8gKCdCVVRUT05TLlRSWV9BR0FJTicgfCB0cmFuc2xhdGUpXHJcblx0XHRcdFx0XHQ6ICgnQlVUVE9OUy5DUkVBVEUnIHwgdHJhbnNsYXRlKVxyXG5cdFx0XHR9fVxyXG5cdFx0PC9idXR0b24+XHJcblx0XHQ8YnV0dG9uXHJcblx0XHRcdGNsYXNzPVwiY2FuY2VsYXRpb24tYnV0dG9uIG14LTJcIlxyXG5cdFx0XHQoY2xpY2spPVwiZGlhbG9nLmV4ZWN1dGVBY3Rpb24obWluaW1pekRpYWxvZylcIlxyXG5cdFx0PlxyXG5cdFx0XHR7eyAnQlVUVE9OUy5NSU5JTUlaRUQnIHwgdHJhbnNsYXRlIH19XHJcblx0XHQ8L2J1dHRvbj5cclxuXHQ8L25nLXRlbXBsYXRlPlxyXG48L25kZi1udXhlby1kaWFsb2c+XHJcbiJdfQ==
347
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Nhbi1tb2RhbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9maWxlLW1hbmdlci9jb21wb25lbnRzL3NjYW4tbW9kYWwvc2Nhbi1tb2RhbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9maWxlLW1hbmdlci9jb21wb25lbnRzL3NjYW4tbW9kYWwvc2Nhbi1tb2RhbC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBK0IsTUFBTSxlQUFlLENBQUM7QUFDL0UsT0FBTyxFQUEwQixVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNwRSxPQUFPLEVBQWdCLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBTXpFLE9BQU8sRUFBRSxFQUFFLEVBQWdCLE1BQU0sTUFBTSxDQUFDO0FBQ3hDLE9BQU8sS0FBSyxNQUFNLE1BQU0sUUFBUSxDQUFDO0FBUWpDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBEQUEwRCxDQUFDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFTL0YsTUFBTSxPQUFPLGtCQUNaLFNBQVEsbUJBQWlEO0lBb0N6RCxZQUNpQyxJQUFJLEVBQzdCLFNBQTJDLEVBQzNDLHFCQUE2QyxFQUM3QyxxQkFBNEMsRUFDM0MsaUJBQXFDLEVBQ3JDLGFBQWtDLEVBQ25DLFdBQXdCLEVBQ3ZCLGtCQUFzQyxFQUN0QyxpQkFBb0MsRUFDckMsT0FBdUIsRUFDdEIsa0JBQXNDLEVBQ3RDLFlBQTBCLEVBQzFCLFdBQXdCLEVBQ3hCLGNBQWdDLEVBQ1QsV0FBVyxFQUNsQyxtQkFBd0MsRUFDaEQsUUFB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LE9BQU8sQ0FBQztJQUMxQixDQUFDO0lBQ0QsZUFBZTtRQUNkLE9BQU8sS0FBSyxDQUFDO0lBQ2QsQ0FBQztJQUVELFdBQVc7UUFDVixJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQ2pFLElBQUksQ0FBQywyQkFBMkI7WUFDL0IsQ0FBQyxDQUFDLElBQUksQ0FBQywyQkFBMkIsQ0FBQyxXQUFXLEVBQUU7WUFDaEQsQ0FBQyxDQUFDLElBQUksQ0FBQztRQUNSLElBQUksQ0FBQyw0QkFBNEI7WUFDaEMsQ0FBQyxDQUFDLElBQUksQ0FBQyw0QkFBNEIsQ0FBQyxXQUFXLEVBQUU7WUFDakQsQ0FBQyxDQUFDLElBQUksQ0FBQztRQUNSLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLG9CQUFvQixDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDNUUsQ0FBQzs7Z0hBclhXLGtCQUFrQixrQkFzQ3JCLGVBQWUsa2JBY2YsYUFBYTtvR0FwRFYsa0JBQWtCLDZFQzFCL0IsczhKQXFJQTs0RkQzR2Esa0JBQWtCO2tCQUw5QixTQUFTO21CQUFDO29CQUNWLFFBQVEsRUFBRSxnQkFBZ0I7b0JBQzFCLFdBQVcsRUFBRSw2QkFBNkI7b0JBQzFDLFNBQVMsRUFBRSxDQUFDLDZCQUE2QixDQUFDO2lCQUMxQzs7MEJBdUNFLE1BQU07MkJBQUMsZUFBZTs7MEJBY3RCLE1BQU07MkJBQUMsYUFBYSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5qZWN0LCBJbmplY3RvciwgT25Jbml0LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRm9ybUJ1aWxkZXIsIEZvcm1Hcm91cCwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgTWF0RGlhbG9nUmVmLCBNQVRfRElBTE9HX0RBVEEgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xyXG5pbXBvcnQgeyBVcGxvYWRNYW5hZ21lbnRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vc2hhcmVkLXNlcnZpY2VzL3VwbG9hZC1tYW5hZ21lbnQuc2VydmljZSc7XHJcbmltcG9ydCB7IERpYWxvZ01hbmdtZW50U2VydmljZSB9IGZyb20gJy4uLy4uLy4uLy4uL3NoYXJlZC1zZXJ2aWNlcy9kaWFsb2ctbWFuZ21lbnQuc2VydmljZSc7XHJcbmltcG9ydCB7IER5bmFtaWNGb3JtU2VydmljZSB9IGZyb20gJy4uLy4uLy4uLy4uL3NoYXJlZC1zZXJ2aWNlcy9keW5hbWljLWZvcm0uc2VydmljZSc7XHJcbmltcG9ydCB7IEZpbGVNYW5hZ2VyU2VydmljZSB9IGZyb20gJy4uLy4uLy4uLy4uL3NoYXJlZC1zZXJ2aWNlcy9maWxlLW1hbmFnZXIuc2VydmljZSc7XHJcbmltcG9ydCB7IFVzZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vc2hhcmVkLXNlcnZpY2VzL3VzZXIuc2VydmljZSc7XHJcbmltcG9ydCB7IG9mLCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcclxuaW1wb3J0ICogYXMgbW9tZW50IGZyb20gJ21vbWVudCc7XHJcbmltcG9ydCB7IEN1c3RvbVRvYXN0clNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9jdXN0b20tdG9hc3RyL3NlcnZpY2VzL2N1c3RvbS10b2FzdHIuc2VydmljZSc7XHJcbmltcG9ydCB7IERvY3VtZW50U2NhblNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9kb2N1bWVudHMvY29tcG9uZW50cy9kb2N1bWVudC1zY2FuL2RvY3VtZW50LXNjYW4uc2VydmljZSc7XHJcbmltcG9ydCB7IERhdGVIZWxwZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vaGlqcmktZ3JlZ29yaWFuLWRhdGVwaWNrZXIvc2VydmljZXMvZGF0ZS1oZWxwZXIuc2VydmljZSc7XHJcbmltcG9ydCB7IEFkYXB0ZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vY29yZS9hZGFwdGVycy9hZGFwdGVyLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBUcmFuc2xhdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi8uLi9jb3JlL3NlcnZpY2VzL3RyYW5zbGF0aW9uL3RyYW5zbGF0aW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBOdXhlb1NlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi8uLi9jb3JlL3NlcnZpY2VzL251eGVvL251eGVvLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBBcHBDb25maWdTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vY29uZmlndXJhdGlvbi9hcHAtY29uZmlnLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBCYXNlRGlhbG9nQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vLi4vc2hhcmVkL2NvbXBvbmVudHMvYmFzZS9iYXNlLWRpYWxvZy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBEaWFsb2dBY3Rpb25UeXBlIH0gZnJvbSAnLi4vLi4vLi4vLi4vc2hhcmVkL2NvbXBvbmVudHMvbnV4ZW8tZGlhbG9nL21vZGVscy9kaWFsb2ctb3B0aW9uLm1vZGVsJztcclxuaW1wb3J0IHsgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcblx0c2VsZWN0b3I6ICdhcHAtc2Nhbi1tb2RhbCcsXHJcblx0dGVtcGxhdGVVcmw6ICcuL3NjYW4tbW9kYWwuY29tcG9uZW50Lmh0bWwnLFxyXG5cdHN0eWxlVXJsczogWycuL3NjYW4tbW9kYWwuY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgU2Nhbk1vZGFsQ29tcG9uZW50XHJcblx0ZXh0ZW5kcyBCYXNlRGlhbG9nQ29tcG9uZW50PFNjYW5Nb2RhbENvbXBvbmVudCwgYW55LCBhbnk+XHJcblx0aW1wbGVtZW50cyBPbkluaXRcclxue1xyXG5cdHNjYW5uZXJVcGxvYWRCdXR0b247XHJcblx0ZmlsZVR5cGU7XHJcblx0c291cmNlO1xyXG5cdGFjdGl2ZVRhYiA9ICdzY2FuJztcclxuXHRjcmVhdGVXaGVuRmluaXNoTW9kZSA9IGZhbHNlO1xyXG5cdG15RW52aXJvbm1lbnQ7XHJcblx0c2VsZWN0ZWRGaWxlID0ge1xyXG5cdFx0c3RhdGljRGF0YToge30sXHJcblx0XHRmaWxlVHlwZTogJycsXHJcblx0XHRkeW5hbWljRm9ybTogJycsXHJcblx0XHRkeW5hbWljRGF0YToge1xyXG5cdFx0XHR2YWxpZDogZmFsc2UsXHJcblx0XHRcdGRhdGE6IHt9XHJcblx0XHR9LFxyXG5cdFx0ZmlsZTogJydcclxuXHR9O1xyXG5cdHRlbXBvcmFyeUR5YW5taWNEYXRhID0ge307XHJcblx0c2hvd1JlbmRlcmVyID0gZmFsc2U7XHJcblxyXG5cdHVwbG9hZFN0YXJ0U3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XHJcblx0ZmlsZUNoYW5nZVN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xyXG5cdGZpbGVGb3JtU3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XHJcblx0YWdlbmN5Q2F0ZWdDb2RlU3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XHJcblx0Y291bnRyeUNhdGVnQ29kZVN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xyXG5cdGxhbmdTdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcclxuXHJcblx0c2hvd1N0YXRpY0Zvcm0gPSBmYWxzZTtcclxuXHR1c2luZ0V4dHJhRmllbGRzID0gZmFsc2U7IC8vIGZsYWdlIHRvIHN3aXRjaCBiZXR3ZWVuIHN0YXRpYyBmb3JtIHR5cGVzXHJcblx0ZmlsZUZvcm06IEZvcm1Hcm91cDtcclxuXHRzdGF0aWNGb3JtRmllbGRzO1xyXG5cdGFnZW5jeU5hbWVGaWx0ZXI7XHJcblx0Y291bnRyeU5hbWVGaWx0ZXI7XHJcblxyXG5cdGNvbnN0cnVjdG9yKFxyXG5cdFx0QEluamVjdChNQVRfRElBTE9HX0RBVEEpIHB1YmxpYyBkYXRhLFxyXG5cdFx0cHVibGljIGRpYWxvZ1JlZjogTWF0RGlhbG9nUmVmPFNjYW5Nb2RhbENvbXBvbmVudD4sXHJcblx0XHRwdWJsaWMgdXBsb2FkTWFuZ21lbnRTZXJ2aWNlOiBVcGxvYWRNYW5hZ21lbnRTZXJ2aWNlLFxyXG5cdFx0cHVibGljIGRpYWxvZ01hbmdtZW50U2VydmljZTogRGlhbG9nTWFuZ21lbnRTZXJ2aWNlLFxyXG5cdFx0cHJpdmF0ZSBmaWxlTWFuZ2VyU2VydmljZTogRmlsZU1hbmFnZXJTZXJ2aWNlLFxyXG5cdFx0cHJpdmF0ZSB0b3N0ZXJTZXJ2aWNlOiBDdXN0b21Ub2FzdHJTZXJ2aWNlLFxyXG5cdFx0cHVibGljIGZvcm1CdWlsZGVyOiBGb3JtQnVpbGRlcixcclxuXHRcdHByaXZhdGUgZHluYW1pY0Zvcm1TZXJ2aWNlOiBEeW5hbWljRm9ybVNlcnZpY2UsXHJcblx0XHRwcml2YXRlIGRhdGVIZWxwZXJTZXJ2aWNlOiBEYXRlSGVscGVyU2VydmljZSxcclxuXHRcdHB1YmxpYyBhZGFwdGVyOiBBZGFwdGVyU2VydmljZSxcclxuXHRcdHByaXZhdGUgdHJhbnNsYXRpb25TZXJ2aWNlOiBUcmFuc2xhdGlvblNlcnZpY2UsXHJcblx0XHRwcml2YXRlIG51eGVvU2VydmljZTogTnV4ZW9TZXJ2aWNlLFxyXG5cdFx0cHJpdmF0ZSB1c2VyU2VydmljZTogVXNlclNlcnZpY2UsXHJcblx0XHRwcml2YXRlIGFwcENvbmZTZXJ2aWNlOiBBcHBDb25maWdTZXJ2aWNlLFxyXG5cdFx0QEluamVjdCgnZW52aXJvbm1lbnQnKSBwcml2YXRlIGVudmlybm9tZW50LFxyXG5cdFx0cHJpdmF0ZSBkb2N1bWVudFNjYW5TZXJ2aWNlOiBEb2N1bWVudFNjYW5TZXJ2aWNlLFxyXG5cdFx0aW5qZWN0b3I6IEluamVjdG9yXHJcblx0KSB7XHJcblx0XHRzdXBlcihpbmplY3Rvcik7XHJcblx0XHR0aGlzLm15RW52aXJvbm1lbnQgPSB0aGlzLmVudmlybm9tZW50O1xyXG5cdH1cclxuXHJcblx0bmdPbkluaXQoKTogdm9pZCB7XHJcblx0XHR0aGlzLmNyZWF0ZVdoZW5GaW5pc2hNb2RlID0gZmFsc2U7XHJcblx0XHR0aGlzLmZpbGVUeXBlID0gdGhpcy5kaWFsb2dNYW5nbWVudFNlcnZpY2UuZmlsZVR5cGU7XHJcblx0XHR0aGlzLnNvdXJjZSA9IHRoaXMuZGlhbG9nTWFuZ21lbnRTZXJ2aWNlLmFkZGluZ0Zyb207XHJcblxyXG5cdFx0dGhpcy5maWxlTWFuZ2VyU2VydmljZVxyXG5cdFx0XHQuZ2V0RmlsZVNjaGVtYXModGhpcy5maWxlVHlwZS50eXBlKVxyXG5cdFx0XHQuc3Vic2NyaWJlKChzY2hlbWFzKSA9PiB7XHJcblx0XHRcdFx0c2NoZW1hcy5tYXAoKGl0ZW0pID0+IHtcclxuXHRcdFx0XHRcdGlmIChpdGVtLm5hbWUgPT09ICdnZW5lcmFsZG9jdW1lbnQnKSB7XHJcblx0XHRcdFx0XHRcdHRoaXMudXNpbmdFeHRyYUZpZWxkcyA9IHRydWU7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fSk7XHJcblx0XHRcdFx0dGhpcy5pbml0aWF0ZmlsZUZvcm0oKTtcclxuXHRcdFx0XHQvL2lmIHN0YXJ0aW5nIGZyb20gZmlsZW1uYWdlciB0aGVuIGkgaGF2ZSBmaXhlZCBmaWxlIHR5cGUgZm9yIGFsbCBhdHRhY2htZXRuIGFuZCBzaW5nbGUgZHluYWltYyBmb3JtICB0eXBlXHJcblx0XHRcdFx0aWYgKHRoaXMuc291cmNlID09PSAnZmlsZU1hbmdlcicpIHtcclxuXHRcdFx0XHRcdGlmIChcclxuXHRcdFx0XHRcdFx0dGhpcy51cGxvYWRNYW5nbWVudFNlcnZpY2UudXBsb2FkZWRGaWxlc1N0YXR1cy51cGxvYWRlZEZpbGVzXHJcblx0XHRcdFx0XHRcdFx0Lmxlbmd0aCA+IDBcclxuXHRcdFx0XHRcdCkge1xyXG5cdFx0XHRcdFx0XHRzZXRUaW1lb3V0KCgpID0+IHtcclxuXHRcdFx0XHRcdFx0XHR0aGlzLnNlbGVjdGVkRmlsZSA9IHtcclxuXHRcdFx0XHRcdFx0XHRcdC4uLnRoaXMudXBsb2FkTWFuZ21lbnRTZXJ2aWNlLnVwbG9hZGVkRmlsZXNTdGF0dXMudXBsb2FkZWRGaWxlcy5zaGlmdCgpXHJcblx0XHRcdFx0XHRcdFx0fTtcclxuXHRcdFx0XHRcdFx0XHR0aGlzLnRlbXBvcmFyeUR5YW5taWNEYXRhID0gdGhpcy5zZWxlY3RlZEZpbGUuZHluYW1pY0RhdGEuZGF0YTtcclxuXHRcdFx0XHRcdFx0XHR0aGlzLmZpbGVGb3JtLnBhdGNoVmFsdWUodGhpcy5zZWxlY3RlZEZpbGUuc3RhdGljRGF0YSk7XHJcblx0XHRcdFx0XHRcdFx0aWYgKHRoaXMuc2VsZWN0ZWRGaWxlWydzdGF0aWNEYXRhJ11bJ2FnZW5jeUNhdGVnb3J5Q29kZSddKSB7XHJcblx0XHRcdFx0XHRcdFx0XHR0aGlzLmFnZW5jeU5hbWVGaWx0ZXIgPSB7XHJcblx0XHRcdFx0XHRcdFx0XHRcdGNhdGVnb3J5OlxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdHRoaXMuc2VsZWN0ZWRGaWxlWydzdGF0aWNEYXRhJ11bJ2FnZW5jeUNhdGVnb3J5Q29kZSddXHJcblx0XHRcdFx0XHRcdFx0XHR9O1xyXG5cdFx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdFx0XHRpZiAodGhpcy5zZWxlY3RlZEZpbGVbJ3N0YXRpY0RhdGEnXVsnY291bnRyeUNhdGVnb3J5Q29kZSddKSB7XHJcblx0XHRcdFx0XHRcdFx0XHR0aGlzLmNvdW50cnlOYW1lRmlsdGVyID0ge1xyXG5cdFx0XHRcdFx0XHRcdFx0XHRjYXRlZ29yeTpcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHR0aGlzLnNlbGVjdGVkRmlsZVsnc3RhdGljRGF0YSddWydjb3VudHJ5Q2F0ZWdvcnlDb2RlJ11cclxuXHRcdFx0XHRcdFx0XHRcdH07XHJcblx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHRcdHRoaXMub3BlblN1YnNjcmlwdGlvbnMoKTtcclxuXHRcdFx0XHRcdFx0fSwgMjAwMCk7XHJcblx0XHRcdFx0XHRcdHNldFRpbWVvdXQoKCkgPT4ge1xyXG5cdFx0XHRcdFx0XHRcdHRoaXMuc2hvd1JlbmRlcmVyID0gdHJ1ZTtcclxuXHRcdFx0XHRcdFx0fSwgMzAwMCk7XHJcblx0XHRcdFx0XHR9IGVsc2Uge1xyXG5cdFx0XHRcdFx0XHR0aGlzLnNlbGVjdGVkRmlsZS5keW5hbWljRm9ybSA9XHJcblx0XHRcdFx0XHRcdFx0dGhpcy5kaWFsb2dNYW5nbWVudFNlcnZpY2Uuc3RvcmVkRHluYW1pY0Zvcm07XHJcblx0XHRcdFx0XHRcdHRoaXMuc2hvd1JlbmRlcmVyID0gdHJ1ZTtcclxuXHRcdFx0XHRcdFx0dGhpcy5vcGVuU3Vic2NyaXB0aW9ucygpO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fSk7XHJcblxyXG5cdFx0dGhpcy51cGxvYWRTdGFydFN1YnNjcmlwdGlvbiA9XHJcblx0XHRcdHRoaXMuZG9jdW1lbnRTY2FuU2VydmljZS51cGxvYWRTdGFydC5zdWJzY3JpYmUoKHJlcykgPT4ge1xyXG5cdFx0XHRcdHRoaXMudXBsb2FkTWFuZ21lbnRTZXJ2aWNlLnVwbG9hZGVkRmlsZXNTdGF0dXMudXBsb2FkSW5Qcm9ncmVzcyA9IHJlcztcclxuXHRcdFx0fSk7XHJcblx0XHR0aGlzLmZpbGVDaGFuZ2VTdWJzY3JpcHRpb24gPSB0aGlzLmRvY3VtZW50U2NhblNlcnZpY2UuZmlsZUNoYW5nZS5zdWJzY3JpYmUoXHJcblx0XHRcdChldmVudCkgPT4ge1xyXG5cdFx0XHRcdC8vY29uc29sZS5sb2coZXZlbnQpO1xyXG5cdFx0XHRcdHRoaXMuc2VsZWN0ZWRGaWxlLmZpbGUgPSBldmVudDtcclxuXHRcdFx0XHRsZXQgcGF5TG9hZCA9IHRoaXMuY29uc3RydWN0UGF5TG9hZCh0aGlzLnNlbGVjdGVkRmlsZSk7XHJcblx0XHRcdFx0dGhpcy5maWxlTWFuZ2VyU2VydmljZVxyXG5cdFx0XHRcdFx0LmNyZWF0ZUZpbGUocGF5TG9hZCwgdGhpcy5maWxlTWFuZ2VyU2VydmljZS5zZWxlY3RlZEZvbGRlcklkKVxyXG5cdFx0XHRcdFx0LnN1YnNjcmliZSgocmVzKSA9PiB7XHJcblx0XHRcdFx0XHRcdGlmIChyZXNbJ3N0YXR1cyddICYmIHJlc1snc3RhdHVzJ10gPT09ICdmYWlsZWQnKSB7XHJcblx0XHRcdFx0XHRcdFx0dGhpcy51cGxvYWRNYW5nbWVudFNlcnZpY2Uuc2NhbkNyZWF0aW9uRmFpbGVkID0gdHJ1ZTtcclxuXHRcdFx0XHRcdFx0XHR0aGlzLnRvc3RlclNlcnZpY2Uuc2hvdyhcclxuXHRcdFx0XHRcdFx0XHRcdCdlcnJvcicsXHJcblx0XHRcdFx0XHRcdFx0XHQnVE9BU1RFUi5FUlJPUicsXHJcblx0XHRcdFx0XHRcdFx0XHQnVE9BU1RFUi5VUExPQURfRVJST1InXHJcblx0XHRcdFx0XHRcdFx0KTtcclxuXHRcdFx0XHRcdFx0XHR0aGlzLnJlbW92ZVN1YnNjcmlwdGlvbigpO1xyXG5cdFx0XHRcdFx0XHR9IGVsc2Uge1xyXG5cdFx0XHRcdFx0XHRcdHRoaXMuZmlsZU1hbmdlclNlcnZpY2Uub25SZWZyZXNoaW5nRmlsZU1hbmdlci5uZXh0KCk7XHJcblx0XHRcdFx0XHRcdFx0dGhpcy50b3N0ZXJTZXJ2aWNlLnNob3coXHJcblx0XHRcdFx0XHRcdFx0XHQnc3VjY2VzcycsXHJcblx0XHRcdFx0XHRcdFx0XHQnVE9BU1RFUi5TVUNDRVNTJyxcclxuXHRcdFx0XHRcdFx0XHRcdCdUT0FTVEVSLkZJTEVfQ1JFQVRFRF9TVUNDRSdcclxuXHRcdFx0XHRcdFx0XHQpO1xyXG5cdFx0XHRcdFx0XHRcdHRoaXMuZG9jdW1lbnRTY2FuU2VydmljZS5zdG9yZWRGaWxlID0ge307XHJcblx0XHRcdFx0XHRcdFx0dGhpcy51cGxvYWRNYW5nbWVudFNlcnZpY2UucmVzZXRTdGF0dXMoKTtcclxuXHRcdFx0XHRcdFx0XHR0aGlzLnJlbW92ZVN1YnNjcmlwdGlvbigpO1xyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHR9KTtcclxuXHRcdFx0fVxyXG5cdFx0KTtcclxuXHJcblx0XHR0aGlzLnNjYW5uZXJVcGxvYWRCdXR0b24gPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnc2Nhbm5lclVwbG9hZEJ1dHRvbicpO1xyXG5cdH1cclxuXHJcblx0aW5pdGlhdGZpbGVGb3JtKCkge1xyXG5cdFx0aWYgKHRoaXMudXNpbmdFeHRyYUZpZWxkcykge1xyXG5cdFx0XHR0aGlzLmZpbGVGb3JtID0gdGhpcy5mb3JtQnVpbGRlci5ncm91cCh7XHJcblx0XHRcdFx0dGl0bGU6IFsnJywgW1ZhbGlkYXRvcnMucmVxdWlyZWRdXSxcclxuXHRcdFx0XHRkZXNjcmlwdGlvbjogWycnXSxcclxuXHRcdFx0XHRzdWJqZWN0OiBbJycsIFtWYWxpZGF0b3JzLnJlcXVpcmVkXV0sXHJcblx0XHRcdFx0ZG9jdW1lbnROdW1iZXI6IFsnJ10sXHJcblx0XHRcdFx0Z2RvY3VtZW50RGF0ZTogW251bGwsIFtWYWxpZGF0b3JzLnJlcXVpcmVkXV0sXHJcblx0XHRcdFx0c2VjcmVjeUxldmVsOiBbbnVsbF0sXHJcblx0XHRcdFx0aW1wb3J0YW5jZUxldmVsOiBbbnVsbF0sXHJcblx0XHRcdFx0ZGVwYXJ0bWVudENvZGU6IFsnJ10sXHJcblx0XHRcdFx0YWdlbmN5Q2F0ZWdvcnlDb2RlOiBbbnVsbF0sXHJcblx0XHRcdFx0YWdlbmN5TmFtZTogW251bGxdLFxyXG5cdFx0XHRcdGNvdW50cnlDYXRlZ29yeUNvZGU6IFtudWxsXSxcclxuXHRcdFx0XHRjb3VudHJ5TmFtZTogW251bGxdLFxyXG5cdFx0XHRcdHJlbWFya3M6IFsnJ11cclxuXHRcdFx0fSk7XHJcblx0XHR9IGVsc2Uge1xyXG5cdFx0XHR0aGlzLmZpbGVGb3JtID0gdGhpcy5mb3JtQnVpbGRlci5ncm91cCh7XHJcblx0XHRcdFx0dGl0bGU6IFsnJywgW1ZhbGlkYXRvcnMucmVxdWlyZWRdXSxcclxuXHRcdFx0XHRkZXNjcmlwdGlvbjogWycnXVxyXG5cdFx0XHR9KTtcclxuXHRcdH1cclxuXHRcdHRoaXMuc3RhdGljRm9ybUZpZWxkcyA9XHJcblx0XHRcdHRoaXMuYXBwQ29uZlNlcnZpY2UubXlDb25maWd1cmF0aW9uLnN0YXRpY0Zvcm1GaWVsZHM7XHJcblx0XHRpZiAodGhpcy5maWxlRm9ybVN1YnNjcmlwdGlvbikge1xyXG5cdFx0XHR0aGlzLmZpbGVGb3JtU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XHJcblx0XHR9XHJcblx0XHRpZiAodGhpcy5maWxlRm9ybS5nZXQoJ2RlcGFydG1lbnRDb2RlJykpIHtcclxuXHRcdFx0dGhpcy5maWxlRm9ybVxyXG5cdFx0XHRcdC5nZXQoJ2RlcGFydG1lbnRDb2RlJylcclxuXHRcdFx0XHQuc2V0VmFsdWUodGhpcy51c2VyU2VydmljZS5nZXRVc2VyRGVwYXJ0bWVudEZyb21QYXRoKHRoaXMuZGF0YS5wYXRoKSk7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHRvcGVuU3Vic2NyaXB0aW9ucygpIHtcclxuXHRcdHRoaXMuZmlsZUZvcm1TdWJzY3JpcHRpb24gPSB0aGlzLmZpbGVGb3JtLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUoKGRhdGEpID0+IHtcclxuXHRcdFx0dGhpcy5zZWxlY3RlZEZpbGUuc3RhdGljRGF0YSA9IGRhdGE7XHJcblx0XHR9KTtcclxuXHJcblx0XHRpZiAodGhpcy5maWxlRm9ybS5nZXQoJ2FnZW5jeUNhdGVnb3J5Q29kZScpKSB7XHJcblx0XHRcdHRoaXMuYWdlbmN5Q2F0ZWdDb2RlU3Vic2NyaXB0aW9uID0gdGhpcy5maWxlRm9ybVxyXG5cdFx0XHRcdC5nZXQoJ2FnZW5jeUNhdGVnb3J5Q29kZScpXHJcblx0XHRcdFx0LnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUoKHJlcykgPT4ge1xyXG5cdFx0XHRcdFx0dGhpcy5maWxlRm9ybS5nZXQoJ2FnZW5jeU5hbWUnKS5zZXRWYWx1ZShudWxsKTtcclxuXHRcdFx0XHRcdHRoaXMuYWdlbmN5TmFtZUZpbHRlciA9IHtcclxuXHRcdFx0XHRcdFx0Y2F0ZWdvcnk6IHJlc1xyXG5cdFx0XHRcdFx0fTtcclxuXHRcdFx0XHR9KTtcclxuXHRcdH1cclxuXHJcblx0XHRpZiAodGhpcy5maWxlRm9ybS5nZXQoJ2NvdW50cnlDYXRlZ29yeUNvZGUnKSkge1xyXG5cdFx0XHR0aGlzLmNvdW50cnlDYXRlZ0NvZGVTdWJzY3JpcHRpb24gPSB0aGlzLmZpbGVGb3JtXHJcblx0XHRcdFx0LmdldCgnY291bnRyeUNhdGVnb3J5Q29kZScpXHJcblx0XHRcdFx0LnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUoKHJlcykgPT4ge1xyXG5cdFx0XHRcdFx0dGhpcy5maWxlRm9ybS5nZXQoJ2NvdW50cnlOYW1lJykuc2V0VmFsdWUobnVsbCk7XHJcblx0XHRcdFx0XHR0aGlzLmNvdW50cnlOYW1lRmlsdGVyID0ge1xyXG5cdFx0XHRcdFx0XHRjYXRlZ29yeTogcmVzXHJcblx0XHRcdFx0XHR9O1xyXG5cdFx0XHRcdH0pO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0b25VcGxvYWRpbmcoZXZlbnQpIHtcclxuXHRcdHRoaXMudXBsb2FkTWFuZ21lbnRTZXJ2aWNlLnVwbG9hZGVkRmlsZXNTdGF0dXMudXBsb2FkSW5Qcm9ncmVzcyA9IGV2ZW50O1xyXG5cdH1cclxuXHJcblx0Ly8gb25TY2FubmVyU3VjY2VzcyhldmVudCkge1xyXG5cdC8vICAgLy9jb25zb2xlLmxvZyhldmVudCk7XHJcblx0Ly8gICB0aGlzLnNlbGVjdGVkRmlsZS5maWxlID0gZXZlbnQ7XHJcblx0Ly8gICBsZXQgcGF5TG9hZCA9IHRoaXMuY29uc3RydWN0UGF5TG9hZCh0aGlzLnNlbGVjdGVkRmlsZSk7XHJcblx0Ly8gICB0aGlzLmZpbGVNYW5nZXJTZXJ2aWNlLmNyZWF0ZUZpbGUocGF5TG9hZCwgdGhpcy5maWxlTWFuZ2VyU2VydmljZS5zZWxlY3RlZEZvbGRlcklkKS5zdWJzY3JpYmUocmVzID0+IHtcclxuXHQvLyAgICAgdGhpcy5maWxlTWFuZ2VyU2VydmljZS5vblJlZnJlc2hpbmdGaWxlTWFuZ2VyLm5leHQoKTtcclxuXHQvLyAgICAgdGhpcy50b3N0ZXJTZXJ2aWNlLnNob3coJ3N1Y2Nlc3MnLCAnVE9BU1RFUi5TVUNDRVNTJywgXCJUT0FTVEVSLkZJTEVfQ1JFQVRFRF9TVUNDRVwiKVxyXG5cdC8vICAgICB0aGlzLmRvY3VtZW50U2NhblNlcnZpY2Uuc3RvcmVkRmlsZSA9IHt9O1xyXG5cdC8vICAgICB0aGlzLnVwbG9hZE1hbmdtZW50U2VydmljZS5yZXNldFN0YXR1cygpO1xyXG5cdC8vICAgfSlcclxuXHQvLyB9XHJcblxyXG5cdG9uZHluYW1pY0Zvcm1DaGFuZ2UoZHluYW1pY0RhdGEpIHtcclxuXHRcdGlmIChkeW5hbWljRGF0YS5kYXRhKSB7XHJcblx0XHRcdGNvbnNvbGUubG9nKGR5bmFtaWNEYXRhLmRhdGEpO1xyXG5cdFx0XHR0aGlzLnNlbGVjdGVkRmlsZS5keW5hbWljRGF0YSA9IHsgLi4uZHluYW1pY0RhdGEgfTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdGNsb3NlRGlhbG9nKCkge1xyXG5cdFx0dGhpcy5kb2N1bWVudFNjYW5TZXJ2aWNlLnN0b3JlZEZpbGUgPSB7fTtcclxuXHRcdHRoaXMucmVtb3ZlU3Vic2NyaXB0aW9uKCk7XHJcblx0XHR0aGlzLmRpYWxvZ1JlZi5jbG9zZShmYWxzZSk7XHJcblx0fVxyXG5cclxuXHRtaW5pbWl6RGlhbG9nOiBEaWFsb2dBY3Rpb25UeXBlID0gKCkgPT4ge1xyXG5cdFx0dGhpcy5kb2N1bWVudFNjYW5TZXJ2aWNlLm9uTWluaW1pemluZy5lbWl0KHRydWUpO1xyXG5cdFx0dGhpcy51cGxvYWRNYW5nbWVudFNlcnZpY2UudXBsb2FkZWRGaWxlc1N0YXR1cy51cGxvYWRlZEZpbGVzLnB1c2goe1xyXG5cdFx0XHQuLi50aGlzLnNlbGVjdGVkRmlsZVxyXG5cdFx0fSk7XHJcblx0XHR0aGlzLnJlbW92ZVN1YnNjcmlwdGlvbigpO1xyXG5cdFx0dGhpcy5kaWFsb2dSZWYuY2xvc2UodHJ1ZSk7XHJcblx0XHRyZXR1cm4gb2YobnVsbCk7XHJcblx0fTtcclxuXHJcblx0cmVtb3ZlU3Vic2NyaXB0aW9uKCkge1xyXG5cdFx0c2V0VGltZW91dCgoKSA9PiB7XHJcblx0XHRcdHRoaXMudXBsb2FkU3RhcnRTdWJzY3JpcHRpb25cclxuXHRcdFx0XHQ/IHRoaXMudXBsb2FkU3RhcnRTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKVxyXG5cdFx0XHRcdDogJyc7XHJcblx0XHRcdHRoaXMuZmlsZUNoYW5nZVN1YnNjcmlwdGlvblxyXG5cdFx0XHRcdD8gdGhpcy5maWxlQ2hhbmdlU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKClcclxuXHRcdFx0XHQ6ICcnO1xyXG5cdFx0fSwgMjAwMCk7XHJcblx0fVxyXG5cclxuXHRzdGFydEFkZGluZ1Byb3BlcnRpZXMoKSB7XHJcblx0XHR0aGlzLnVwbG9hZE1hbmdtZW50U2VydmljZS5hZGRpbmdQcm9wZXJ0aWVzTW9kZSA9IHRydWU7XHJcblx0fVxyXG5cclxuXHRjcmVhdGVEb2N1bWVudDogRGlhbG9nQWN0aW9uVHlwZSA9ICgpID0+IHtcclxuXHRcdHRoaXMuZG9jdW1lbnRTY2FuU2VydmljZS5vbk1pbmltaXppbmcuZW1pdCh0cnVlKTtcclxuXHRcdHRoaXMudXBsb2FkTWFuZ21lbnRTZXJ2aWNlLnVwbG9hZGVkRmlsZXNTdGF0dXMudXBsb2FkZWRGaWxlcy5wdXNoKHtcclxuXHRcdFx0Li4udGhpcy5zZWxlY3RlZEZpbGVcclxuXHRcdH0pO1xyXG5cdFx0dGhpcy5zY2FubmVyVXBsb2FkQnV0dG9uLmNsaWNrKCk7XHJcblx0XHR0aGlzLmRpYWxvZ1JlZi5jbG9zZSh0cnVlKTtcclxuXHRcdHJldHVybiBvZihudWxsKTtcclxuXHR9O1xyXG5cclxuXHRjb25zdHJ1Y3RQYXlMb2FkKGZpbGUpIHtcclxuXHRcdGxldCBwcm9wcyA9IHRoaXMuZHluYW1pY0Zvcm1TZXJ2aWNlLmNvbnN0cnVjdER5bmFtaWNGb3JtUGF5bG9hZChcclxuXHRcdFx0ZmlsZS5keW5hbWljRGF0YS5kYXRhLFxyXG5cdFx0XHRmaWxlLmR5bmFtaWNGb3JtXHJcblx0XHQpO1xyXG5cdFx0bGV0IHN0YXRpY0Zvcm1EYXRhID0gdGhpcy5tYXBwaW5nU3RhdGljRGF0YShmaWxlLnN0YXRpY0RhdGEpO1xyXG5cclxuXHRcdGxldCBwYXJhbSA9IHtcclxuXHRcdFx0ZG9jdW1lbnQ6IHtcclxuXHRcdFx0XHR0eXBlOiB0aGlzLmZpbGVUeXBlLnR5cGUsXHJcblx0XHRcdFx0bmFtZTogZmlsZS5zdGF0aWNEYXRhLnRpdGxlLFxyXG5cdFx0XHRcdHByb3BlcnRpZXM6IHtcclxuXHRcdFx0XHRcdC4uLnByb3BzLFxyXG5cdFx0XHRcdFx0Li4uc3RhdGljRm9ybURhdGEsXHJcblx0XHRcdFx0XHQnZmlsZTpjb250ZW50Jzoge1xyXG5cdFx0XHRcdFx0XHQndXBsb2FkLWJhdGNoJzogZmlsZS5maWxlLmJsb2JbJ3VwbG9hZC1iYXRjaCddLFxyXG5cdFx0XHRcdFx0XHQndXBsb2FkLWZpbGVJZCc6IGZpbGUuZmlsZS5ibG9iWyd1cGxvYWQtZmlsZUlkJ11cclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH07XHJcblx0XHRpZiAoZmlsZS5maWxlVHlwZS5kb2N1bWVudENvZGUpIHtcclxuXHRcdFx0cGFyYW1bJ2RvY3VtZW50VHlwZUNvZGUnXSA9IGZpbGUuZmlsZVR5cGUuZG9jdW1lbnRDb2RlO1xyXG5cdFx0fVxyXG5cdFx0cmV0dXJuIHsgcGFyYW1zOiBwYXJhbSwgb3JpZ2luRmlsZTogZmlsZSB9O1xyXG5cdH1cclxuXHJcblx0bWFwcGluZ1N0YXRpY0RhdGEoZGF0YSkge1xyXG5cdFx0aWYgKGRhdGEuZ2RvY3VtZW50RGF0ZSAmJiBkYXRhLmdkb2N1bWVudERhdGUgIT09IG51bGwpIHtcclxuXHRcdFx0bW9tZW50LmxvY2FsZSgnZW4nKTtcclxuXHRcdFx0ZGF0YVsnaGRvY3VtZW50RGF0ZSddID0gdGhpcy5kYXRlSGVscGVyU2VydmljZS5ncmVnb3JpYW5Ub0hpanJpKFxyXG5cdFx0XHRcdGRhdGEuZ2RvY3VtZW50RGF0ZSxcclxuXHRcdFx0XHQnaVlZWVktaU1NLWlERCdcclxuXHRcdFx0KTtcclxuXHRcdFx0ZGF0YS5nZG9jdW1lbnREYXRlID1cclxuXHRcdFx0XHRtb21lbnQoZGF0YS5nZG9jdW1lbnREYXRlKS5mb3JtYXQoJ1lZWVktTU0tRERUMDA6MDA6MDAuMDAwJykgKyAnWic7XHJcblx0XHR9XHJcblx0XHRyZXR1cm4gdGhpcy5hZGFwdGVyLmFkYXB0T3V0KGRhdGEsIHRoaXMuc3RhdGljRm9ybUZpZWxkcyk7XHJcblx0fVxyXG5cclxuXHRjb25zdHJ1Y3REeW5hbWljRm9ybVBheWxvYWQoZmlsZSkge1xyXG5cdFx0bGV0IHVwZGF0ZWREeW5hbWljVmFsdWVzID0ge307XHJcblx0XHRPYmplY3Qua2V5cyhmaWxlPy5keW5hbWljRGF0YT8uZGF0YSkubWFwKChrZXkpID0+IHtcclxuXHRcdFx0bGV0IHVwZGF0ZWRLZXkgPSBrZXkucmVwbGFjZSgnOicsICcnKTtcclxuXHRcdFx0bGV0IHByZWZpeCA9IGZpbGUuZHluYW1pY0Zvcm0ucHJlZml4W3VwZGF0ZWRLZXldO1xyXG5cdFx0XHRpZiAocHJlZml4KSB7XHJcblx0XHRcdFx0Ly8gY2hlY2sgaWYgY29tcG9uZW50IGlzIHVzZXIgc2VsZWN0b3IgdG8gbWFwIGl0cyBkYXRhIGZyb20gb2JqZWN0IHRvIHVzZXJuYW1lIG9yIGlkIG9ubHlcclxuXHRcdFx0XHRpZiAoXHJcblx0XHRcdFx0XHRmaWxlLmR5bmFtaWNEYXRhLmRhdGFba2V5XSAmJlxyXG5cdFx0XHRcdFx0ZmlsZS5keW5hbWljRGF0YS5kYXRhW2tleV1bJ3VzZXJTZWxlY3RvciddICYmXHJcblx0XHRcdFx0XHRmaWxlLmR5bmFtaWNEYXRhLmRhdGFba2V5XVsndXNlclNlbGVjdG9yJ10gPT09IHRydWVcclxuXHRcdFx0XHQpIHtcclxuXHRcdFx0XHRcdHVwZGF0ZWREeW5hbWljVmFsdWVzW3ByZWZpeCArICc6JyArIHVwZGF0ZWRLZXldID0gZmlsZS5keW5hbWljRGF0YVxyXG5cdFx0XHRcdFx0XHQuZGF0YVtrZXldWyd2YWx1ZSddWydpZCddXHJcblx0XHRcdFx0XHRcdD8gZmlsZS5keW5hbWljRGF0YS5kYXRhW2tleV1bJ3ZhbHVlJ11bJ2lkJ11cclxuXHRcdFx0XHRcdFx0OiBmaWxlLmR5bmFtaWNEYXRhLmRhdGFba2V5XVsndmFsdWUnXVsncHJvcGVydGllcyddWyd1c2VybmFtZSddO1xyXG5cdFx0XHRcdH0gZWxzZSB7XHJcblx0XHRcdFx0XHR1cGRhdGVkRHluYW1pY1ZhbHVlc1twcmVmaXggKyAnOicgKyB1cGRhdGVkS2V5XSA9XHJcblx0XHRcdFx0XHRcdGZpbGUuZHluYW1pY0RhdGEuZGF0YVtrZXldO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fSBlbHNlIHtcclxuXHRcdFx0XHRpZiAoXHJcblx0XHRcdFx0XHRmaWxlLmR5bmFtaWNEYXRhLmRhdGFba2V5XVsndXNlclNlbGVjdG9yJ10gJiZcclxuXHRcdFx0XHRcdGZpbGUuZHluYW1pY0RhdGEuZGF0YVtrZXldWyd1c2VyU2VsZWN0b3InXSA9PT0gdHJ1ZVxyXG5cdFx0XHRcdCkge1xyXG5cdFx0XHRcdFx0dXBkYXRlZER5bmFtaWNWYWx1ZXNbdXBkYXRlZEtleV0gPSBmaWxlLmR5bmFtaWNEYXRhLmRhdGFba2V5XVtcclxuXHRcdFx0XHRcdFx0J3ZhbHVlJ1xyXG5cdFx0XHRcdFx0XVsnaWQnXVxyXG5cdFx0XHRcdFx0XHQ/IGZpbGUuZHluYW1pY0RhdGEuZGF0YVtrZXldWyd2YWx1ZSddWydpZCddXHJcblx0XHRcdFx0XHRcdDogZmlsZS5keW5hbWljRGF0YS5kYXRhW2tleV1bJ3ZhbHVlJ11bJ3Byb3BlcnRpZXMnXVsndXNlcm5hbWUnXTtcclxuXHRcdFx0XHR9IGVsc2Uge1xyXG5cdFx0XHRcdFx0dXBkYXRlZER5bmFtaWNWYWx1ZXNbdXBkYXRlZEtleV0gPSBmaWxlLmR5bmFtaWNEYXRhLmRhdGFba2V5XTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH0pO1xyXG5cdFx0cmV0dXJuIHVwZGF0ZWREeW5hbWljVmFsdWVzO1xyXG5cdH1cclxuXHJcblx0Y3JlYXRlV2hlbkZpbmlzaCgpIHt9XHJcblxyXG5cdGNoYW5nVGFiVG8odGFiTmFtZSkge1xyXG5cdFx0dGhpcy5hY3RpdmVUYWIgPSB0YWJOYW1lO1xyXG5cdH1cclxuXHRjaGVja1ZhbGlkYXRpb24oKSB7XHJcblx0XHRyZXR1cm4gZmFsc2U7XHJcblx0fVxyXG5cclxuXHRuZ09uRGVzdHJveSgpIHtcclxuXHRcdHRoaXMubGFuZ1N1YnNjcmlwdGlvbiA/IHRoaXMubGFuZ1N1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpIDogJyc7XHJcblx0XHR0aGlzLmFnZW5jeUNhdGVnQ29kZVN1YnNjcmlwdGlvblxyXG5cdFx0XHQ/IHRoaXMuYWdlbmN5Q2F0ZWdDb2RlU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKClcclxuXHRcdFx0OiBudWxsO1xyXG5cdFx0dGhpcy5jb3VudHJ5Q2F0ZWdDb2RlU3Vic2NyaXB0aW9uXHJcblx0XHRcdD8gdGhpcy5jb3VudHJ5Q2F0ZWdDb2RlU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKClcclxuXHRcdFx0OiBudWxsO1xyXG5cdFx0dGhpcy5maWxlRm9ybVN1YnNjcmlwdGlvbiA/IHRoaXMuZmlsZUZvcm1TdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKSA6IG51bGw7XHJcblx0fVxyXG59XHJcbiIsIjxuZGYtbnV4ZW8tZGlhbG9nXHJcblx0ZGlhbG9nVGl0bGU9XCJ7eyAnQ1JFQVRFLlNDQU4nIHwgdHJhbnNsYXRlIH19XCJcclxuXHRwYW5lbENsYXNzPVwic2Nhbm5lci1tb2RhbC1ib2R5XCJcclxuPlxyXG5cdDxuZy10ZW1wbGF0ZSAjY29udGVudFRlbXBsYXRlPlxyXG5cdFx0PGRpdlxyXG5cdFx0XHRjbGFzcz1cInNjYW5uZXItdGFicyBkLWZsZXgganVzdGlmeS1hcm91bmQgaXRlbXMtY2VudGVyIGJvcmRlci1iLTIgYm9yZGVyLWdyYXktMjAwIG1iLTUgdGV4dC1ncmF5LTkwMCB0ZXh0LWxnXCJcclxuXHRcdD5cclxuXHRcdFx0PGRpdlxyXG5cdFx0XHRcdGNsYXNzPVwic2Nhbm5lci1zaW5nbGUtdGFiIGN1cnNvci1wb2ludGVyIHctMS8yIHRleHQtY2VudGVyIHB5LTIgYm9yZGVyLWdyYXktOTAwIGhvdmVyOmJnLWdyYXktMTAwXCJcclxuXHRcdFx0XHQoY2xpY2spPVwiY2hhbmdUYWJUbygnc2NhbicpXCJcclxuXHRcdFx0XHRbbmdDbGFzc109XCJ7ICdmb250LWJvbGQgYm9yZGVyLWItNCc6IGFjdGl2ZVRhYiA9PT0gJ3NjYW4nIH1cIlxyXG5cdFx0XHQ+XHJcblx0XHRcdFx0e3sgJ0NSRUFURS5TQ0FOJyB8IHRyYW5zbGF0ZSB9fVxyXG5cdFx0XHQ8L2Rpdj5cclxuXHRcdFx0PGRpdlxyXG5cdFx0XHRcdGNsYXNzPVwic2Nhbm5lci1zaW5nbGUtdGFiIGN1cnNvci1wb2ludGVyIHctMS8yIHRleHQtY2VudGVyIHB5LTIgYm9yZGVyLWdyYXktOTAwIGhvdmVyOmJnLWdyYXktMTAwXCJcclxuXHRcdFx0XHQoY2xpY2spPVwiY2hhbmdUYWJUbygnZm9ybScpXCJcclxuXHRcdFx0XHRbbmdDbGFzc109XCJ7ICdmb250LWJvbGQgYm9yZGVyLWItNCc6IGFjdGl2ZVRhYiA9PT0gJ2Zvcm0nIH1cIlxyXG5cdFx0XHQ+XHJcblx0XHRcdFx0e3sgJ0NSRUFURS5ERVRBSUxTJyB8IHRyYW5zbGF0ZSB9fVxyXG5cdFx0XHQ8L2Rpdj5cclxuXHRcdDwvZGl2PlxyXG5cdFx0PGRpdiBjbGFzcz1cInRhYnMtYm9keS13cmFwcGVyXCI+XHJcblx0XHRcdDwhLS0gdXBsb2FkZXIgaW5kaWNhdG9yIGxvYWRpbmcgLS0+XHJcblx0XHRcdDxkaXZcclxuXHRcdFx0XHRjbGFzcz1cInVwbG9hZC1sb2FkZXIgbXgtMlwiXHJcblx0XHRcdFx0Km5nSWY9XCJ1cGxvYWRNYW5nbWVudFNlcnZpY2UudXBsb2FkZWRGaWxlc1N0YXR1cy51cGxvYWRJblByb2dyZXNzXCJcclxuXHRcdFx0PlxyXG5cdFx0XHRcdDxtYXQtcHJvZ3Jlc3MtYmFyIG1vZGU9XCJpbmRldGVybWluYXRlXCI+PC9tYXQtcHJvZ3Jlc3MtYmFyPlxyXG5cdFx0XHQ8L2Rpdj5cclxuXHJcblx0XHRcdDwhLS0gc2Nhbm5lciAtLT5cclxuXHRcdFx0PGRpdiBjbGFzcz1cIlwiIFtuZ0NsYXNzXT1cInsgJ2Qtbm9uZSc6IGFjdGl2ZVRhYiA9PT0gJ2Zvcm0nIH1cIj5cclxuXHRcdFx0XHQ8YXBwLWRvY3VtZW50LXNjYW5cclxuXHRcdFx0XHRcdFtoaWRlVXBsb2FkQnV0dG9uXT1cInRydWVcIlxyXG5cdFx0XHRcdFx0W3VzZVN0b3JlZEZpbGVdPVwidHJ1ZVwiXHJcblx0XHRcdFx0PjwvYXBwLWRvY3VtZW50LXNjYW4+XHJcblx0XHRcdDwvZGl2PlxyXG5cclxuXHRcdFx0PCEtLSBmb3JtcyBhbmQgcHJvcGVydGllcyAgLS0+XHJcblx0XHRcdDxkaXYgY2xhc3M9XCJmb3Jtcy1zZWN0aW9uXCIgW25nQ2xhc3NdPVwieyAnZC1ub25lJzogYWN0aXZlVGFiID09PSAnc2NhbicgfVwiPlxyXG5cdFx0XHRcdDxkaXYgY2xhc3M9XCJ3LTIvM1wiPlxyXG5cdFx0XHRcdFx0PGRpdiBjbGFzcz1cIm1iLTVcIj5cclxuXHRcdFx0XHRcdFx0PGRpdiBjbGFzcz1cImxhYmVsLXN0eWxlXCI+XHJcblx0XHRcdFx0XHRcdFx0e3sgJ0NSRUFURS5GSUxFX1RZUEUnIHwgdHJhbnNsYXRlIH19XHJcblx0XHRcdFx0XHRcdDwvZGl2PlxyXG5cdFx0XHRcdFx0XHQ8ZGl2IGNsYXNzPVwidGV4dC1iYXNlIHRleHQtZ3JheS05MDBcIj5cclxuXHRcdFx0XHRcdFx0XHR7eyBpc0FyYWJpYyA/IGZpbGVUeXBlLmFyYWJpY1RleHQgOiBmaWxlVHlwZS5lbmdsaXNoVGV4dCB9fVxyXG5cdFx0XHRcdFx0XHQ8L2Rpdj5cclxuXHRcdFx0XHRcdDwvZGl2PlxyXG5cdFx0XHRcdFx0PGRpdiBjbGFzcz1cImZpbGUtZmllbGRzIG10LTNcIiBTZXRSdGw+XHJcblx0XHRcdFx0XHRcdDxmb3JtIFtmb3JtR3JvdXBdPVwiZmlsZUZvcm1cIiAqbmdJZj1cImZpbGVGb3JtXCI+XHJcblx0XHRcdFx0XHRcdFx0PGRpdiBjbGFzcz1cInNpbmdsZS1maWVsZCBtYi0zXCI+XHJcblx0XHRcdFx0XHRcdFx0XHQ8ZGl2IGNsYXNzPVwibGFiZWwtc3R5bGVcIj5cclxuXHRcdFx0XHRcdFx0XHRcdFx0e3sgJ0NSRUFURS5USVRMRScgfCB0cmFuc2xhdGVcclxuXHRcdFx0XHRcdFx0XHRcdFx0fX08c3BhbiBjbGFzcz1cInRleHQtcmVkLTUwMFwiPio8L3NwYW4+XHJcblx0XHRcdFx0XHRcdFx0XHQ8L2Rpdj5cclxuXHRcdFx0XHRcdFx0XHRcdDxpbnB1dFxyXG5cdFx0XHRcdFx0XHRcdFx0XHRjbGFzcz1cImZpZWxkLXN0eWxlXCJcclxuXHRcdFx0XHRcdFx0XHRcdFx0Zm9ybUNvbnRyb2xOYW1lPVwidGl0bGVcIlxyXG5cdFx0XHRcdFx0XHRcdFx0XHRwbGFjZWhvbGRlcj1cIiB7eyAnQ1JFQVRFLlRJVExFJyB8IHRyYW5zbGF0ZSB9fVwiXHJcblx0XHRcdFx0XHRcdFx0XHQvPlxyXG5cdFx0XHRcdFx0XHRcdDwvZGl2PlxyXG5cdFx0XHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJzaW5nbGUtZmllbGQgbWItM1wiPlxyXG5cdFx0XHRcdFx0XHRcdFx0PGRpdiBjbGFzcz1cImxhYmVsLXN0eWxlXCI+XHJcblx0XHRcdFx0XHRcdFx0XHRcdHt7ICdDUkVBVEUuREVTQ1JJUFRJT04nIHwgdHJhbnNsYXRlIH19XHJcblx0XHRcdFx0XHRcdFx0XHQ8L2Rpdj5cclxuXHRcdFx0XHRcdFx0XHRcdDxpbnB1dFxyXG5cdFx0XHRcdFx0XHRcdFx0XHRjbGFzcz1cImZpZWxkLXN0eWxlXCJcclxuXHRcdFx0XHRcdFx0XHRcdFx0Zm9ybUNvbnRyb2xOYW1lPVwiZGVzY3JpcHRpb25cIlxyXG5cdFx0XHRcdFx0XHRcdFx0XHRwbGFjZWhvbGRlcj1cIiB7eyAnQ1JFQVRFLkRFU0NSSVBUSU9OJyB8IHRyYW5zbGF0ZSB9fVwiXHJcblx0XHRcdFx0XHRcdFx0XHQvPlxyXG5cdFx0XHRcdFx0XHRcdDwvZGl2PlxyXG5cclxuXHRcdFx0XHRcdFx0XHQ8IS0tLS0tLS0tLS0tLS0tLS0tLSBuZXcgc3RhdGlzIGZvcm0gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0+XHJcblx0XHRcdFx0XHRcdFx0PGRpdiAqbmdJZj1cInVzaW5nRXh0cmFGaWVsZHNcIj5cclxuXHRcdFx0XHRcdFx0XHRcdDxhcHAtZHluYW1pYy1maWVsZHMtcmVuZGVyZXJcclxuXHRcdFx0XHRcdFx0XHRcdFx0W2Zvcm1dPVwiZmlsZUZvcm1cIlxyXG5cdFx0XHRcdFx0XHRcdFx0XHRbYWdlbmN5TmFtZUZpbHRlcl09XCJhZ2VuY3lOYW1lRmlsdGVyXCJcclxuXHRcdFx0XHRcdFx0XHRcdFx0W2NvdW50cnlOYW1lRmlsdGVyXT1cImNvdW50cnlOYW1lRmlsdGVyXCJcclxuXHRcdFx0XHRcdFx0XHRcdD48L2FwcC1keW5hbWljLWZpZWxkcy1yZW5kZXJlcj5cclxuXHRcdFx0XHRcdFx0XHQ8L2Rpdj5cclxuXHJcblx0XHRcdFx0XHRcdFx0PCEtLSAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAtLT5cclxuXHRcdFx0XHRcdFx0PC9mb3JtPlxyXG5cdFx0XHRcdFx0XHQ8IS0tICpuZ0lmPVwiXCIgLS0+XHJcblx0XHRcdFx0XHRcdDxkaXZcclxuXHRcdFx0XHRcdFx0XHRjbGFzcz1cImR5bmFtaWMtcGFydCAtbXgtNFwiXHJcblx0XHRcdFx0XHRcdFx0Km5nSWY9XCJzZWxlY3RlZEZpbGUuZHluYW1pY0Zvcm0gJiYgc2hvd1JlbmRlcmVyXCJcclxuXHRcdFx0XHRcdFx0PlxyXG5cdFx0XHRcdFx0XHRcdDxhcHAtZHluYW1pYy1mb3JtXHJcblx0XHRcdFx0XHRcdFx0XHRbZm9ybV09XCJzZWxlY3RlZEZpbGUuZHluYW1pY0Zvcm1cIlxyXG5cdFx0XHRcdFx0XHRcdFx0W2RhdGFdPVwidGVtcG9yYXJ5RHlhbm1pY0RhdGFcIlxyXG5cdFx0XHRcdFx0XHRcdFx0KGNoYW5nZSk9XCJvbmR5bmFtaWNGb3JtQ2hhbmdlKCRldmVudClcIlxyXG5cdFx0XHRcdFx0XHRcdD48L2FwcC1keW5hbWljLWZvcm0+XHJcblx0XHRcdFx0XHRcdDwvZGl2PlxyXG5cdFx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdDwvZGl2PlxyXG5cdFx0PC9kaXY+XHJcblx0PC9uZy10ZW1wbGF0ZT5cclxuXHJcblx0PG5nLXRlbXBsYXRlICNhY3Rpb25zVGVtcGxhdGUgbGV0LWRpYWxvZz1cImRpYWxvZ1wiPlxyXG5cdFx0PGJ1dHRvblxyXG5cdFx0XHQoY2xpY2spPVwiZGlhbG9nLmV4ZWN1dGVBY3Rpb24oY3JlYXRlRG9jdW1lbnQpXCJcclxuXHRcdFx0W2Rpc2FibGVkXT1cIlxyXG5cdFx0XHRcdHNjYW5uZXJVcGxvYWRCdXR0b24/LmRpc2FibGVkIHx8XHJcblx0XHRcdFx0IXNlbGVjdGVkRmlsZS5keW5hbWljRGF0YS52YWxpZCB8fFxyXG5cdFx0XHRcdGZpbGVGb3JtLmludmFsaWRcclxuXHRcdFx0XCJcclxuXHRcdFx0W25nQ2xhc3NdPVwie1xyXG5cdFx0XHRcdCdvcGFjaXR5LTMwIGN1cnNvci1ub3QtYWxsb3dlZCc6XHJcblx0XHRcdFx0XHRzY2FubmVyVXBsb2FkQnV0dG9uPy5kaXNhYmxlZCB8fFxyXG5cdFx0XHRcdFx0IXNlbGVjdGVkRmlsZS5keW5hbWljRGF0YS52YWxpZCB8fFxyXG5cdFx0XHRcdFx0ZmlsZUZvcm0uaW52YWxpZFxyXG5cdFx0XHR9XCJcclxuXHRcdFx0Y2xhc3M9XCJzdWJtaXNzaW9uLWJ1dHRvblwiXHJcblx0XHQ+XHJcblx0XHRcdHt7XHJcblx0XHRcdFx0dXBsb2FkTWFuZ21lbnRTZXJ2aWNlLnNjYW5DcmVhdGlvbkZhaWxlZFxyXG5cdFx0XHRcdFx0PyAoJ0JVVFRPTlMuVFJZX0FHQUlOJyB8IHRyYW5zbGF0ZSlcclxuXHRcdFx0XHRcdDogKCdCVVRUT05TLkNSRUFURScgfCB0cmFuc2xhdGUpXHJcblx0XHRcdH19XHJcblx0XHQ8L2J1dHRvbj5cclxuXHRcdDxidXR0b25cclxuXHRcdFx0Y2xhc3M9XCJjYW5jZWxhdGlvbi1idXR0b24gbXgtMlwiXHJcblx0XHRcdChjbGljayk9XCJkaWFsb2cuZXhlY3V0ZUFjdGlvbihtaW5pbWl6RGlhbG9nKVwiXHJcblx0XHQ+XHJcblx0XHRcdHt7ICdCVVRUT05TLk1JTklNSVpFRCcgfCB0cmFuc2xhdGUgfX1cclxuXHRcdDwvYnV0dG9uPlxyXG5cdDwvbmctdGVtcGxhdGU+XHJcbjwvbmRmLW51eGVvLWRpYWxvZz5cclxuIl19
@@ -298,7 +298,7 @@ export class ShareDialogComponent extends BaseDialogComponent {
298
298
  }
299
299
  }
300
300
  ShareDialogComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ShareDialogComponent, deps: [{ token: MAT_DIALOG_DATA }, { token: i1.MatDialogRef }, { token: i1.MatDialog }, { token: i2.FormBuilder }, { token: i3.SharedDocsService }, { token: i4.CustomToastrService }, { token: i5.NuxeoService }, { token: i6.UserPreferencesService }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
301
- ShareDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: ShareDialogComponent, selector: "app-share-dialog", usesInheritance: true, ngImport: i0, template: "<ndf-nuxeo-dialog dialogTitle=\"{{ 'CREATE.SHARE' | translate }}\">\r\n\t<ng-template #contentTemplate>\r\n\t\t<form [formGroup]=\"shareForm\" class=\"h-full p-5 overflow-auto\" SetRtl>\r\n\t\t\t<div class=\"flex flex-col justify-between h-full\">\r\n\t\t\t\t<!--Form Section-->\r\n\t\t\t\t<div class=\"add-permsion-wrapper\">\r\n\t\t\t\t\t<span class=\"text-gray-900 text-lg\">\r\n\t\t\t\t\t\t{{ 'share.shareDialogTitle' | translate }}\r\n\t\t\t\t\t</span>\r\n\t\t\t\t\t<div class=\"mt-5 selectorsWrapper\">\r\n\t\t\t\t\t\t<app-select-users-by-departments\r\n\t\t\t\t\t\t\tformControlName=\"depAnditsUsers\"\r\n\t\t\t\t\t\t\t[allowMultipleUsers]=\"true\"\r\n\t\t\t\t\t\t\t[userLabel]=\"'share.users' | translate\"\r\n\t\t\t\t\t\t\t[depLabel]=\"'share.Dep' | translate\"\r\n\t\t\t\t\t\t\t[display]=\"'column'\"\r\n\t\t\t\t\t\t>\r\n\t\t\t\t\t\t</app-select-users-by-departments>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t\t<div *ngIf=\"forbiddenUsers.length\" class=\"flex\">\r\n\t\t\t\t\t\t<ng-container *ngFor=\"let p of forbiddenUsers; let i; as: index\">\r\n\t\t\t\t\t\t\t<span class=\"text-red-500 text-base\"> {{ p }}&nbsp; </span>\r\n\t\t\t\t\t\t</ng-container>\r\n\t\t\t\t\t\t<span class=\"text-red-500 text-base\">\r\n\t\t\t\t\t\t\t<p *ngIf=\"forbiddenUsers.length == 1\">\r\n\t\t\t\t\t\t\t\t{{ 'share.single_forbidden' | translate }}\r\n\t\t\t\t\t\t\t</p>\r\n\t\t\t\t\t\t\t<p *ngIf=\"forbiddenUsers.length > 1\">\r\n\t\t\t\t\t\t\t\t{{ 'share.multi_forbidden' | translate }}\r\n\t\t\t\t\t\t\t</p>\r\n\t\t\t\t\t\t</span>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t\t<div *ngIf=\"sameCurrentUser\">\r\n\t\t\t\t\t\t<span class=\"text-red-500 text-base\">\r\n\t\t\t\t\t\t\t{{ 'share.shareWithLoggedInUser' | translate }}\r\n\t\t\t\t\t\t</span>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t\t<div *ngIf=\"isSharedBefore.length\" class=\"flex\">\r\n\t\t\t\t\t\t<span class=\"text-red-500 text-base\">\r\n\t\t\t\t\t\t\t{{ 'share.share_exists' | translate }}\r\n\t\t\t\t\t\t\t<ng-container *ngFor=\"let p of isSharedBefore\">\r\n\t\t\t\t\t\t\t\t{{ p }}\r\n\t\t\t\t\t\t\t</ng-container>\r\n\t\t\t\t\t\t\t{{ 'share.before' | translate }}\r\n\t\t\t\t\t\t</span>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t\t<div class=\"mt-4 rightsSelector\">\r\n\t\t\t\t\t\t<label class=\"text-base font-bold mb-0\">\r\n\t\t\t\t\t\t\t{{ 'share.Rights' | translate }}\r\n\t\t\t\t\t\t\t<span class=\"text-danger\">*</span>\r\n\t\t\t\t\t\t</label>\r\n\t\t\t\t\t\t<ng-select\r\n\t\t\t\t\t\t\t[items]=\"rights\"\r\n\t\t\t\t\t\t\tbindLabel=\"label\"\r\n\t\t\t\t\t\t\tbindValue=\"value\"\r\n\t\t\t\t\t\t\t[placeholder]=\"'permission.rightsPlaceholder' | translate\"\r\n\t\t\t\t\t\t\tformControlName=\"rights\"\r\n\t\t\t\t\t\t\t(change)=\"setRight($event)\"\r\n\t\t\t\t\t\t>\r\n\t\t\t\t\t\t</ng-select>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t\t<div *ngIf=\"sharedList.length\" class=\"mt-4\">\r\n\t\t\t\t\t\t<div>\r\n\t\t\t\t\t\t\t<label class=\"text-base font-bold mb-0\">\r\n\t\t\t\t\t\t\t\t{{ 'share.fileUrl' | translate }}\r\n\t\t\t\t\t\t\t</label>\r\n\t\t\t\t\t\t\t<div class=\"flex relative\">\r\n\t\t\t\t\t\t\t\t<input\r\n\t\t\t\t\t\t\t\t\t#fileUrl\r\n\t\t\t\t\t\t\t\t\t[value]=\"shareableUrl\"\r\n\t\t\t\t\t\t\t\t\tdisabled\r\n\t\t\t\t\t\t\t\t\tclass=\"appearance-none block w-full bg-accent-100 text-gray-700 border border-gray-200 rounded py-2.5 px-4 leading-tight focus:outline-none focus:bg-white focus:border-gray-500\"\r\n\t\t\t\t\t\t\t\t\ttype=\"text\"\r\n\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t<button\r\n\t\t\t\t\t\t\t\t\tclass=\"absolute pt-2.5 bg-accent-100\"\r\n\t\t\t\t\t\t\t\t\t[matTooltip]=\"'BUTTONS.COPY' | translate\"\r\n\t\t\t\t\t\t\t\t\t[ngClass]=\"locale === 'en' ? 'right-2' : 'left-2'\"\r\n\t\t\t\t\t\t\t\t\t[cdkCopyToClipboard]=\"fileUrl.value\"\r\n\t\t\t\t\t\t\t\t\t(click)=\"copy()\"\r\n\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t<mat-icon\r\n\t\t\t\t\t\t\t\t\t\tsvgIcon=\"mat_solid:content_copy\"\r\n\t\t\t\t\t\t\t\t\t\tclass=\"icon-size-6\"\r\n\t\t\t\t\t\t\t\t\t></mat-icon>\r\n\t\t\t\t\t\t\t\t</button>\r\n\t\t\t\t\t\t\t\t<div\r\n\t\t\t\t\t\t\t\t\t*ngIf=\"copied\"\r\n\t\t\t\t\t\t\t\t\tclass=\"flex absolute justify-around w-24 -mt-10 border border-red-700 h-7 rounded bg-gray-200\"\r\n\t\t\t\t\t\t\t\t\t[ngClass]=\"locale === 'en' ? 'right-0' : 'left-0'\"\r\n\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t<div\r\n\t\t\t\t\t\t\t\t\t\tclass=\"w-3 h-3 justify-center bg-gray-200 transform rotate-45 border mt-5 borders-color\"\r\n\t\t\t\t\t\t\t\t\t></div>\r\n\t\t\t\t\t\t\t\t\t<span class=\"absolute font-extralight\">{{\r\n\t\t\t\t\t\t\t\t\t\t'share.copied' | translate\r\n\t\t\t\t\t\t\t\t\t}}</span>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</div>\r\n\t\t\t\t<!--Shares Section-->\r\n\t\t\t\t<div *ngIf=\"sharedList.length\">\r\n\t\t\t\t\t<div\r\n\t\t\t\t\t\tclass=\"flex flex-row justify-between h-7 border-b-2 border-accent-100 mt-2\"\r\n\t\t\t\t\t>\r\n\t\t\t\t\t\t<span class=\"text-base font-bold\">\r\n\t\t\t\t\t\t\t{{ 'share.shares' | translate }}\r\n\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t<button\r\n\t\t\t\t\t\t\tmat-icon-button\r\n\t\t\t\t\t\t\t*permission=\"{\r\n\t\t\t\t\t\t\t\tname: 'canRemoveShare',\r\n\t\t\t\t\t\t\t\tentity: selectedItem.entity\r\n\t\t\t\t\t\t\t}\"\r\n\t\t\t\t\t\t\tmatTooltip=\"{{ 'share.Rm_All_shares' | translate }}\"\r\n\t\t\t\t\t\t\t(click)=\"openDialog('Rem_ALL_shares')\"\r\n\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t<mat-icon\r\n\t\t\t\t\t\t\t\t[svgIcon]=\"'heroicons_outline:trash'\"\r\n\t\t\t\t\t\t\t\t[ngClass]=\"locale === 'en' ? 'mr-2' : 'ml-2'\"\r\n\t\t\t\t\t\t\t></mat-icon>\r\n\t\t\t\t\t\t</button>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t\t<div class=\"h-52 overflow-y-auto\">\r\n\t\t\t\t\t\t<div class=\"flex flex-row justify-between mt-2.5\">\r\n\t\t\t\t\t\t\t<span class=\"w-1/2 text-base font-bold\">{{\r\n\t\t\t\t\t\t\t\t'share.shareWith' | translate\r\n\t\t\t\t\t\t\t}}</span>\r\n\t\t\t\t\t\t\t<span class=\"w-1/4 text-base font-bold\">{{\r\n\t\t\t\t\t\t\t\t'share.share_date' | translate\r\n\t\t\t\t\t\t\t}}</span>\r\n\t\t\t\t\t\t\t<span class=\"w-1/4 text-base font-bold\">{{\r\n\t\t\t\t\t\t\t\t'share.permission' | translate\r\n\t\t\t\t\t\t\t}}</span>\r\n\t\t\t\t\t\t\t<span>&nbsp;</span>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t<ng-container *ngFor=\"let d of sharedList\">\r\n\t\t\t\t\t\t\t<div class=\"flex flex-row justify-between mt-2.5\">\r\n\t\t\t\t\t\t\t\t<div class=\"flex flex-row w-1/2\">\r\n\t\t\t\t\t\t\t\t\t<div class=\"flex-0 w-8 h-8 rounded-full overflow-hidden\">\r\n\t\t\t\t\t\t\t\t\t\t<cts-avatar\r\n\t\t\t\t\t\t\t\t\t\t\t[user]=\"{\r\n\t\t\t\t\t\t\t\t\t\t\t\tproperties: {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tfirstName: d.user.properties?.firstName,\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tlastName: d.user.properties?.lastName\r\n\t\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t\t}\"\r\n\t\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t</cts-avatar>\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t<div class=\"flex flex-col -mt-2 px-2 break-all\">\r\n\t\t\t\t\t\t\t\t\t\t<span>{{ d.user.fullName }}</span>\r\n\t\t\t\t\t\t\t\t\t\t<span>{{ d.user.properties.email }}</span>\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t<div class=\"w-1/4 mt-1.5 break-all px-2.5\">\r\n\t\t\t\t\t\t\t\t\t<span>{{\r\n\t\t\t\t\t\t\t\t\t\td.sharedDate\r\n\t\t\t\t\t\t\t\t\t\t\t| localizedDate\r\n\t\t\t\t\t\t\t\t\t\t\t\t: 'dd MMMM yyyy'\r\n\t\t\t\t\t\t\t\t\t\t\t\t: (isArabic ? 'ar-AR' : 'en-US')\r\n\t\t\t\t\t\t\t\t\t}}</span>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t<div class=\"w-1/4 mt-1.5 break-all px-4\">\r\n\t\t\t\t\t\t\t\t\t<span>{{ 'rights.' + d.sharedMode | translate }}</span>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t<div class=\"mt-1.5\">\r\n\t\t\t\t\t\t\t\t\t<button\r\n\t\t\t\t\t\t\t\t\t\tmat-icon-button\r\n\t\t\t\t\t\t\t\t\t\t*permission=\"{\r\n\t\t\t\t\t\t\t\t\t\t\tname: 'canRemoveShare',\r\n\t\t\t\t\t\t\t\t\t\t\tentity: selectedItem.entity\r\n\t\t\t\t\t\t\t\t\t\t}\"\r\n\t\t\t\t\t\t\t\t\t\tmatTooltip=\"{{ 'share.Rm_custom_share' | translate }}\"\r\n\t\t\t\t\t\t\t\t\t\t(click)=\"\r\n\t\t\t\t\t\t\t\t\t\t\topenDialog(\r\n\t\t\t\t\t\t\t\t\t\t\t\t'Rem_custom_share',\r\n\t\t\t\t\t\t\t\t\t\t\t\td.user.properties.username,\r\n\t\t\t\t\t\t\t\t\t\t\t\td.sharedMode\r\n\t\t\t\t\t\t\t\t\t\t\t)\r\n\t\t\t\t\t\t\t\t\t\t\"\r\n\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t<i\r\n\t\t\t\t\t\t\t\t\t\t\tclass=\"ms-Icon ms-Icon--ChromeClose\"\r\n\t\t\t\t\t\t\t\t\t\t\taria-hidden=\"true\"\r\n\t\t\t\t\t\t\t\t\t\t\t[ngClass]=\"locale === 'en' ? 'mr-2.5' : 'ml-2.5'\"\r\n\t\t\t\t\t\t\t\t\t\t></i>\r\n\t\t\t\t\t\t\t\t\t</button>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t</ng-container>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t</form>\r\n\t</ng-template>\r\n\r\n\t<ng-template #actionsTemplate let-dialog=\"dialog\">\r\n\t\t<button\r\n\t\t\tclass=\"submission-button\"\r\n\t\t\t[disabled]=\"disabled\"\r\n\t\t\t(click)=\"dialog.executeAction(share)\"\r\n\t\t>\r\n\t\t\t{{ 'share.shareButton' | translate }}\r\n\t\t</button>\r\n\t</ng-template>\r\n</ndf-nuxeo-dialog>\r\n", styles: [".share-dialog-wrapper .mat-dialog-container{overflow:hidden;padding:0!important}.share-dialog-wrapper .borders-color{--tw-border-opacity: 1;border-bottom-color:rgba(185,28,28,var(--tw-border-opacity))!important;border-right-color:rgba(185,28,28,var(--tw-border-opacity))!important}.share-dialog-wrapper .rightsSelector .ng-select-container .ng-value-container .ng-placeholder{font-size:12px;margin-top:3px}.share-dialog-wrapper .selectorsWrapper .dep-label,.share-dialog-wrapper .selectorsWrapper .users-label{@apply text-base font-bold mb-0;}\n"], components: [{ type: i7.NdfNuxeoDialog, selector: "ndf-nuxeo-dialog", inputs: ["dialogTitle", "subTitle", "panelClass", "bodyClass", "loaderMode"] }, { type: i8.SelectUsersByDepartmentsComponent, selector: "app-select-users-by-departments", inputs: ["display", "depLabel", "userLabel", "allowMultipleUsers", "fetchDepUsersByCustomApi", "fetchedUsers"], outputs: ["formChanged", "onDataLoad"] }, { type: i9.NgSelectComponent, selector: "ng-select", inputs: ["markFirst", "dropdownPosition", "loading", "closeOnSelect", "hideSelected", "selectOnTab", "bufferAmount", "selectableGroup", "selectableGroupAsModel", "searchFn", "trackByFn", "clearOnBackspace", "labelForId", "inputAttrs", "readonly", "searchWhileComposing", "minTermLength", "editableSearchTerm", "keyDownFn", "multiple", "addTag", "searchable", "clearable", "isOpen", "items", "compareWith", "clearSearchOnAdd", "bindLabel", "placeholder", "notFoundText", "typeToSearchText", "addTagText", "loadingText", "clearAllText", "virtualScroll", "openOnEnter", "appendTo", "bindValue", "appearance", "maxSelectedItems", "groupBy", "groupValue", "tabIndex", "typeahead"], outputs: ["blur", "focus", "change", "open", "close", "search", "clear", "add", "remove", "scroll", "scrollToEnd"] }, { type: i10.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i11.AvatarComponent, selector: "cts-avatar", inputs: ["user"] }], directives: [{ type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i12.SetRtlDirective, selector: "[SetRtl]" }, { type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i2.FormControlName, selector: "[formControlName]", inputs: ["disabled", "formControlName", "ngModel"], outputs: ["ngModelChange"] }, { type: i13.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i13.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i14.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltipPosition", "matTooltipDisabled", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { type: i13.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i15.PermissionsDirective, selector: "[permission]", inputs: ["permission"] }], pipes: { "translate": i16.TranslatePipe, "localizedDate": i17.LocalizedDatePipe }, encapsulation: i0.ViewEncapsulation.None });
301
+ ShareDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: ShareDialogComponent, selector: "app-share-dialog", usesInheritance: true, ngImport: i0, template: "<ndf-nuxeo-dialog dialogTitle=\"{{ 'CREATE.SHARE' | translate }}\">\r\n\t<ng-template #contentTemplate>\r\n\t\t<form [formGroup]=\"shareForm\" class=\"h-full p-5 overflow-auto\" SetRtl>\r\n\t\t\t<div class=\"flex flex-col justify-between h-full\">\r\n\t\t\t\t<!--Form Section-->\r\n\t\t\t\t<div class=\"add-permsion-wrapper\">\r\n\t\t\t\t\t<span class=\"text-gray-900 text-lg\">\r\n\t\t\t\t\t\t{{ 'share.shareDialogTitle' | translate }}\r\n\t\t\t\t\t</span>\r\n\t\t\t\t\t<div class=\"mt-5 selectorsWrapper\">\r\n\t\t\t\t\t\t<app-select-users-by-departments\r\n\t\t\t\t\t\t\tformControlName=\"depAnditsUsers\"\r\n\t\t\t\t\t\t\t[allowMultipleUsers]=\"true\"\r\n\t\t\t\t\t\t\t[userLabel]=\"'share.users' | translate\"\r\n\t\t\t\t\t\t\t[depLabel]=\"'share.Dep' | translate\"\r\n\t\t\t\t\t\t\t[display]=\"'column'\"\r\n\t\t\t\t\t\t>\r\n\t\t\t\t\t\t</app-select-users-by-departments>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t\t<div *ngIf=\"forbiddenUsers.length\" class=\"flex\">\r\n\t\t\t\t\t\t<ng-container *ngFor=\"let p of forbiddenUsers; let i; as: index\">\r\n\t\t\t\t\t\t\t<span class=\"text-red-500 text-base\"> {{ p }}&nbsp; </span>\r\n\t\t\t\t\t\t</ng-container>\r\n\t\t\t\t\t\t<span class=\"text-red-500 text-base\">\r\n\t\t\t\t\t\t\t<p *ngIf=\"forbiddenUsers.length == 1\">\r\n\t\t\t\t\t\t\t\t{{ 'share.single_forbidden' | translate }}\r\n\t\t\t\t\t\t\t</p>\r\n\t\t\t\t\t\t\t<p *ngIf=\"forbiddenUsers.length > 1\">\r\n\t\t\t\t\t\t\t\t{{ 'share.multi_forbidden' | translate }}\r\n\t\t\t\t\t\t\t</p>\r\n\t\t\t\t\t\t</span>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t\t<div *ngIf=\"sameCurrentUser\">\r\n\t\t\t\t\t\t<span class=\"text-red-500 text-base\">\r\n\t\t\t\t\t\t\t{{ 'share.shareWithLoggedInUser' | translate }}\r\n\t\t\t\t\t\t</span>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t\t<div *ngIf=\"isSharedBefore.length\" class=\"flex\">\r\n\t\t\t\t\t\t<span class=\"text-red-500 text-base\">\r\n\t\t\t\t\t\t\t{{ 'share.share_exists' | translate }}\r\n\t\t\t\t\t\t\t<ng-container *ngFor=\"let p of isSharedBefore\">\r\n\t\t\t\t\t\t\t\t{{ p }}\r\n\t\t\t\t\t\t\t</ng-container>\r\n\t\t\t\t\t\t\t{{ 'share.before' | translate }}\r\n\t\t\t\t\t\t</span>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t\t<div class=\"mt-4 rightsSelector\">\r\n\t\t\t\t\t\t<label class=\"text-base font-bold mb-0\">\r\n\t\t\t\t\t\t\t{{ 'share.Rights' | translate }}\r\n\t\t\t\t\t\t\t<span class=\"text-danger\">*</span>\r\n\t\t\t\t\t\t</label>\r\n\t\t\t\t\t\t<ng-select\r\n\t\t\t\t\t\t\t[items]=\"rights\"\r\n\t\t\t\t\t\t\tbindLabel=\"label\"\r\n\t\t\t\t\t\t\tbindValue=\"value\"\r\n\t\t\t\t\t\t\t[placeholder]=\"'permission.rightsPlaceholder' | translate\"\r\n\t\t\t\t\t\t\tformControlName=\"rights\"\r\n\t\t\t\t\t\t\t(change)=\"setRight($event)\"\r\n\t\t\t\t\t\t>\r\n\t\t\t\t\t\t</ng-select>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t\t<div *ngIf=\"sharedList.length\" class=\"mt-4\">\r\n\t\t\t\t\t\t<div>\r\n\t\t\t\t\t\t\t<label class=\"text-base font-bold mb-0\">\r\n\t\t\t\t\t\t\t\t{{ 'share.fileUrl' | translate }}\r\n\t\t\t\t\t\t\t</label>\r\n\t\t\t\t\t\t\t<div class=\"flex relative\">\r\n\t\t\t\t\t\t\t\t<input\r\n\t\t\t\t\t\t\t\t\t#fileUrl\r\n\t\t\t\t\t\t\t\t\t[value]=\"shareableUrl\"\r\n\t\t\t\t\t\t\t\t\tdisabled\r\n\t\t\t\t\t\t\t\t\tclass=\"appearance-none block w-full bg-accent-100 text-gray-700 border border-gray-200 rounded py-2.5 px-4 leading-tight focus:outline-none focus:bg-white focus:border-gray-500\"\r\n\t\t\t\t\t\t\t\t\ttype=\"text\"\r\n\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t<button\r\n\t\t\t\t\t\t\t\t\tclass=\"absolute pt-2.5 bg-accent-100\"\r\n\t\t\t\t\t\t\t\t\t[matTooltip]=\"'BUTTONS.COPY' | translate\"\r\n\t\t\t\t\t\t\t\t\t[ngClass]=\"locale === 'en' ? 'right-2' : 'left-2'\"\r\n\t\t\t\t\t\t\t\t\t[cdkCopyToClipboard]=\"fileUrl.value\"\r\n\t\t\t\t\t\t\t\t\t(click)=\"copy()\"\r\n\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t<mat-icon\r\n\t\t\t\t\t\t\t\t\t\tsvgIcon=\"mat_solid:content_copy\"\r\n\t\t\t\t\t\t\t\t\t\tclass=\"icon-size-6\"\r\n\t\t\t\t\t\t\t\t\t></mat-icon>\r\n\t\t\t\t\t\t\t\t</button>\r\n\t\t\t\t\t\t\t\t<div\r\n\t\t\t\t\t\t\t\t\t*ngIf=\"copied\"\r\n\t\t\t\t\t\t\t\t\tclass=\"flex absolute justify-around w-24 -mt-10 border border-red-700 h-7 rounded bg-gray-200\"\r\n\t\t\t\t\t\t\t\t\t[ngClass]=\"locale === 'en' ? 'right-0' : 'left-0'\"\r\n\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t<div\r\n\t\t\t\t\t\t\t\t\t\tclass=\"w-3 h-3 justify-center bg-gray-200 transform rotate-45 border mt-5 borders-color\"\r\n\t\t\t\t\t\t\t\t\t></div>\r\n\t\t\t\t\t\t\t\t\t<span class=\"absolute font-extralight\">{{\r\n\t\t\t\t\t\t\t\t\t\t'share.copied' | translate\r\n\t\t\t\t\t\t\t\t\t}}</span>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</div>\r\n\t\t\t\t<!--Shares Section-->\r\n\t\t\t\t<div *ngIf=\"sharedList.length\">\r\n\t\t\t\t\t<div\r\n\t\t\t\t\t\tclass=\"flex flex-row justify-between h-7 border-b-2 border-accent-100 mt-2\"\r\n\t\t\t\t\t>\r\n\t\t\t\t\t\t<span class=\"text-base font-bold\">\r\n\t\t\t\t\t\t\t{{ 'share.shares' | translate }}\r\n\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t<button\r\n\t\t\t\t\t\t\tmat-icon-button\r\n\t\t\t\t\t\t\t*permission=\"{\r\n\t\t\t\t\t\t\t\tname: 'canRemoveShare',\r\n\t\t\t\t\t\t\t\tentity: selectedItem.entity\r\n\t\t\t\t\t\t\t}\"\r\n\t\t\t\t\t\t\tmatTooltip=\"{{ 'share.Rm_All_shares' | translate }}\"\r\n\t\t\t\t\t\t\t(click)=\"openDialog('Rem_ALL_shares')\"\r\n\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t<mat-icon\r\n\t\t\t\t\t\t\t\t[svgIcon]=\"'heroicons_outline:trash'\"\r\n\t\t\t\t\t\t\t\t[ngClass]=\"locale === 'en' ? 'mr-2' : 'ml-2'\"\r\n\t\t\t\t\t\t\t></mat-icon>\r\n\t\t\t\t\t\t</button>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t\t<div class=\"h-52 overflow-y-auto\">\r\n\t\t\t\t\t\t<div class=\"flex flex-row justify-between mt-2.5\">\r\n\t\t\t\t\t\t\t<span class=\"w-1/2 text-base font-bold\">{{\r\n\t\t\t\t\t\t\t\t'share.shareWith' | translate\r\n\t\t\t\t\t\t\t}}</span>\r\n\t\t\t\t\t\t\t<span class=\"w-1/4 text-base font-bold\">{{\r\n\t\t\t\t\t\t\t\t'share.share_date' | translate\r\n\t\t\t\t\t\t\t}}</span>\r\n\t\t\t\t\t\t\t<span class=\"w-1/4 text-base font-bold\">{{\r\n\t\t\t\t\t\t\t\t'share.permission' | translate\r\n\t\t\t\t\t\t\t}}</span>\r\n\t\t\t\t\t\t\t<span>&nbsp;</span>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t<ng-container *ngFor=\"let d of sharedList\">\r\n\t\t\t\t\t\t\t<div class=\"flex flex-row justify-between mt-2.5\">\r\n\t\t\t\t\t\t\t\t<div class=\"flex flex-row w-1/2\">\r\n\t\t\t\t\t\t\t\t\t<div class=\"flex-0 w-8 h-8 rounded-full overflow-hidden\">\r\n\t\t\t\t\t\t\t\t\t\t<cts-avatar\r\n\t\t\t\t\t\t\t\t\t\t\t[user]=\"{\r\n\t\t\t\t\t\t\t\t\t\t\t\tproperties: {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tfirstName: d.user.properties?.firstName,\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tlastName: d.user.properties?.lastName\r\n\t\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t\t}\"\r\n\t\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t</cts-avatar>\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t<div class=\"flex flex-col -mt-2 px-2 break-all\">\r\n\t\t\t\t\t\t\t\t\t\t<span>{{ d.user.fullName }}</span>\r\n\t\t\t\t\t\t\t\t\t\t<span>{{ d.user.properties.email }}</span>\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t<div class=\"w-1/4 mt-1.5 break-all px-2.5\">\r\n\t\t\t\t\t\t\t\t\t<span>{{\r\n\t\t\t\t\t\t\t\t\t\td.sharedDate\r\n\t\t\t\t\t\t\t\t\t\t\t| localizedDate\r\n\t\t\t\t\t\t\t\t\t\t\t\t: 'dd MMMM yyyy'\r\n\t\t\t\t\t\t\t\t\t\t\t\t: (isArabic ? 'ar-AR' : 'en-US')\r\n\t\t\t\t\t\t\t\t\t}}</span>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t<div class=\"w-1/4 mt-1.5 break-all px-4\">\r\n\t\t\t\t\t\t\t\t\t<span>{{ 'rights.' + d.sharedMode | translate }}</span>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t<div class=\"mt-1.5\">\r\n\t\t\t\t\t\t\t\t\t<button\r\n\t\t\t\t\t\t\t\t\t\tmat-icon-button\r\n\t\t\t\t\t\t\t\t\t\t*permission=\"{\r\n\t\t\t\t\t\t\t\t\t\t\tname: 'canRemoveShare',\r\n\t\t\t\t\t\t\t\t\t\t\tentity: selectedItem.entity\r\n\t\t\t\t\t\t\t\t\t\t}\"\r\n\t\t\t\t\t\t\t\t\t\tmatTooltip=\"{{ 'share.Rm_custom_share' | translate }}\"\r\n\t\t\t\t\t\t\t\t\t\t(click)=\"\r\n\t\t\t\t\t\t\t\t\t\t\topenDialog(\r\n\t\t\t\t\t\t\t\t\t\t\t\t'Rem_custom_share',\r\n\t\t\t\t\t\t\t\t\t\t\t\td.user.properties.username,\r\n\t\t\t\t\t\t\t\t\t\t\t\td.sharedMode\r\n\t\t\t\t\t\t\t\t\t\t\t)\r\n\t\t\t\t\t\t\t\t\t\t\"\r\n\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t<i\r\n\t\t\t\t\t\t\t\t\t\t\tclass=\"ms-Icon ms-Icon--ChromeClose\"\r\n\t\t\t\t\t\t\t\t\t\t\taria-hidden=\"true\"\r\n\t\t\t\t\t\t\t\t\t\t\t[ngClass]=\"locale === 'en' ? 'mr-2.5' : 'ml-2.5'\"\r\n\t\t\t\t\t\t\t\t\t\t></i>\r\n\t\t\t\t\t\t\t\t\t</button>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t</ng-container>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t</form>\r\n\t</ng-template>\r\n\r\n\t<ng-template #actionsTemplate let-dialog=\"dialog\">\r\n\t\t<button\r\n\t\t\tclass=\"submission-button\"\r\n\t\t\t[disabled]=\"disabled\"\r\n\t\t\t(click)=\"dialog.executeAction(share)\"\r\n\t\t>\r\n\t\t\t{{ 'share.shareButton' | translate }}\r\n\t\t</button>\r\n\t</ng-template>\r\n</ndf-nuxeo-dialog>\r\n", styles: [".share-dialog-wrapper .mat-dialog-container{overflow:hidden;padding:0!important}.share-dialog-wrapper .borders-color{--tw-border-opacity: 1;border-bottom-color:rgba(185,28,28,var(--tw-border-opacity))!important;border-right-color:rgba(185,28,28,var(--tw-border-opacity))!important}.share-dialog-wrapper .rightsSelector .ng-select-container .ng-value-container .ng-placeholder{font-size:12px;margin-top:3px}.share-dialog-wrapper .selectorsWrapper .dep-label,.share-dialog-wrapper .selectorsWrapper .users-label{@apply text-base font-bold mb-0;}\n"], components: [{ type: i7.NdfNuxeoDialog, selector: "ndf-nuxeo-dialog", inputs: ["dialogTitle", "subTitle", "panelClass", "bodyClass", "loaderMode"] }, { type: i8.SelectUsersByDepartmentsComponent, selector: "app-select-users-by-departments", inputs: ["display", "depLabel", "userLabel", "allowMultipleUsers", "fetchDepUsersByCustomApi", "fetchedUsers"], outputs: ["formChanged", "onDataLoad"] }, { type: i9.NgSelectComponent, selector: "ng-select", inputs: ["markFirst", "dropdownPosition", "loading", "closeOnSelect", "hideSelected", "selectOnTab", "bufferAmount", "selectableGroup", "selectableGroupAsModel", "searchFn", "trackByFn", "clearOnBackspace", "labelForId", "inputAttrs", "readonly", "searchWhileComposing", "minTermLength", "editableSearchTerm", "keyDownFn", "multiple", "addTag", "searchable", "clearable", "isOpen", "items", "compareWith", "clearSearchOnAdd", "bindLabel", "placeholder", "notFoundText", "typeToSearchText", "addTagText", "loadingText", "clearAllText", "virtualScroll", "openOnEnter", "appendTo", "bindValue", "appearance", "maxSelectedItems", "groupBy", "groupValue", "tabIndex", "typeahead"], outputs: ["blur", "focus", "change", "open", "close", "search", "clear", "add", "remove", "scroll", "scrollToEnd"] }, { type: i10.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i11.AvatarComponent, selector: "cts-avatar", inputs: ["user"] }], directives: [{ type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i12.SetRtlDirective, selector: "[SetRtl]" }, { type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i2.FormControlName, selector: "[formControlName]", inputs: ["disabled", "formControlName", "ngModel"], outputs: ["ngModelChange"] }, { type: i13.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i13.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i14.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { type: i13.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i15.PermissionsDirective, selector: "[permission]", inputs: ["permission"] }], pipes: { "translate": i16.TranslatePipe, "localizedDate": i17.LocalizedDatePipe }, encapsulation: i0.ViewEncapsulation.None });
302
302
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ShareDialogComponent, decorators: [{
303
303
  type: Component,
304
304
  args: [{
@@ -311,4 +311,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
311
311
  type: Inject,
312
312
  args: [MAT_DIALOG_DATA]
313
313
  }] }, { type: i1.MatDialogRef }, { type: i1.MatDialog }, { type: i2.FormBuilder }, { type: i3.SharedDocsService }, { type: i4.CustomToastrService }, { type: i5.NuxeoService }, { type: i6.UserPreferencesService }, { type: i0.Injector }]; } });
314
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hhcmUtZGlhbG9nLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL251eGVvLWRldmVsb3BtZW50LWZyYW1ld29yay9zcmMvbGliL2NvbXBvbmVudHMvZmlsZS1tYW5nZXIvY29tcG9uZW50cy9zaGFyZS1kaWFsb2cvc2hhcmUtZGlhbG9nLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL251eGVvLWRldmVsb3BtZW50LWZyYW1ld29yay9zcmMvbGliL2NvbXBvbmVudHMvZmlsZS1tYW5nZXIvY29tcG9uZW50cy9zaGFyZS1kaWFsb2cvc2hhcmUtZGlhbG9nLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTixTQUFTLEVBQ1QsTUFBTSxFQUlOLGlCQUFpQixFQUNqQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBRU4sV0FBVyxFQUVYLFVBQVUsRUFDVixNQUFNLGdCQUFnQixDQUFDO0FBQ3hCLE9BQU8sRUFDTixlQUFlLEVBR2YsTUFBTSwwQkFBMEIsQ0FBQztBQUVsQyxPQUFPLEVBQUUsYUFBYSxFQUFFLEVBQUUsRUFBRSxPQUFPLEVBQWdCLE1BQU0sTUFBTSxDQUFDO0FBQ2hFLE9BQU8sRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBSzNELE9BQU8sRUFFTixvQkFBb0IsRUFDcEIsTUFBTSx5REFBeUQsQ0FBQztBQUNqRSxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxnRkFBZ0YsQ0FBQztBQUU3SCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwwREFBMEQsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQVMvRixNQUFNLE9BQU8sb0JBQ1osU0FBUSxtQkFBbUQ7SUF3QjNELFlBQ2lDLElBQUksRUFDNUIsU0FBNkMsRUFDN0MsTUFB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LEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO0lBQ3pELENBQUM7O2tIQXhVVyxvQkFBb0Isa0JBMEJ2QixlQUFlO3NHQTFCWixvQkFBb0IsK0VDekNqQyx3d1JBaU5BOzRGRHhLYSxvQkFBb0I7a0JBTmhDLFNBQVM7bUJBQUM7b0JBQ1YsUUFBUSxFQUFFLGtCQUFrQjtvQkFDNUIsV0FBVyxFQUFFLCtCQUErQjtvQkFDNUMsU0FBUyxFQUFFLENBQUMsK0JBQStCLENBQUM7b0JBQzVDLGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO2lCQUNyQzs7MEJBMkJFLE1BQU07MkJBQUMsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcblx0Q29tcG9uZW50LFxyXG5cdEluamVjdCxcclxuXHRJbmplY3RvcixcclxuXHRPbkRlc3Ryb3ksXHJcblx0T25Jbml0LFxyXG5cdFZpZXdFbmNhcHN1bGF0aW9uXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7XHJcblx0Rm9ybUJ1aWxkZXIsXHJcblx0Rm9ybUNvbnRyb2wsXHJcblx0Rm9ybUdyb3VwLFxyXG5cdFZhbGlkYXRvcnNcclxufSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7XHJcblx0TUFUX0RJQUxPR19EQVRBLFxyXG5cdE1hdERpYWxvZyxcclxuXHRNYXREaWFsb2dSZWZcclxufSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xyXG5cclxuaW1wb3J0IHsgY29tYmluZUxhdGVzdCwgb2YsIFN1YmplY3QsIFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBzd2l0Y2hNYXAsIHRha2VVbnRpbCwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5cclxuaW1wb3J0IHsgQ3VzdG9tVG9hc3RyU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL2N1c3RvbS10b2FzdHIvc2VydmljZXMvY3VzdG9tLXRvYXN0ci5zZXJ2aWNlJztcclxuaW1wb3J0IHsgVHJhbnNsYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vY29yZS9zZXJ2aWNlcy90cmFuc2xhdGlvbi90cmFuc2xhdGlvbi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgTnV4ZW9TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vY29yZS9zZXJ2aWNlcy9udXhlby9udXhlby5zZXJ2aWNlJztcclxuaW1wb3J0IHtcclxuXHRVc2VyUHJlZmVyZW5jZXNTZXJ2aWNlLFxyXG5cdFVzZXJQcmVmZXJlbmNlVmFsdWVzXHJcbn0gZnJvbSAnLi4vLi4vLi4vLi4vY29yZS9zZXJ2aWNlcy91c2VyL3VzZXItcHJlZmVyZW5jZXMuc2VydmljZSc7XHJcbmltcG9ydCB7IENvbmZpcm1hdGlvbkRpYWxvZ0NvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL2NvbmZpcm1hdGlvbi1kaWFsb2cvY29uZmlybWF0aW9uLWRpYWxvZy9jb25maXJtYXRpb24tZGlhbG9nLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFNoYXJlZERvY3NTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vc2hhcmVkLXNlcnZpY2VzL3NoYXJlZC1kb2NzLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBCYXNlRGlhbG9nQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vLi4vc2hhcmVkL2NvbXBvbmVudHMvYmFzZS9iYXNlLWRpYWxvZy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBEaWFsb2dBY3Rpb25UeXBlIH0gZnJvbSAnLi4vLi4vLi4vLi4vc2hhcmVkL2NvbXBvbmVudHMvbnV4ZW8tZGlhbG9nL21vZGVscy9kaWFsb2ctb3B0aW9uLm1vZGVsJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG5cdHNlbGVjdG9yOiAnYXBwLXNoYXJlLWRpYWxvZycsXHJcblx0dGVtcGxhdGVVcmw6ICcuL3NoYXJlLWRpYWxvZy5jb21wb25lbnQuaHRtbCcsXHJcblx0c3R5bGVVcmxzOiBbJy4vc2hhcmUtZGlhbG9nLmNvbXBvbmVudC5zY3NzJ10sXHJcblx0ZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxyXG59KVxyXG5leHBvcnQgY2xhc3MgU2hhcmVEaWFsb2dDb21wb25lbnRcclxuXHRleHRlbmRzIEJhc2VEaWFsb2dDb21wb25lbnQ8U2hhcmVEaWFsb2dDb21wb25lbnQsIGFueSwgYW55PlxyXG5cdGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3lcclxue1xyXG5cdHNlbGVjdGVkSXRlbTogYW55O1xyXG5cdHNlbGVjdGVkSXRlbVR5cGU6IGFueTtcclxuXHRzaGFyZUZvcm06IEZvcm1Hcm91cDtcclxuXHRzZWxlY3RlZFVzZXJzID0gW107XHJcblx0c3Vic2NyaXB0aW9ucyQ6IFN1YnNjcmlwdGlvbltdID0gW107XHJcblx0bXlTaGFyZWRhdGE6IGFueSA9IFtdO1xyXG5cdHNoYXJlZExpc3QgPSBbXTtcclxuXHRzaGFyZWRMaXN0VXNlciA9IFtdO1xyXG5cdGRlcFVzZXJzID0gW107XHJcblx0YWxsb3dVc2Vyc1RvU2hhcmUgPSBbXTtcclxuXHRmb3JiaWRkZW5Vc2VycyA9IFtdO1xyXG5cdGlzU2hhcmVkQmVmb3JlID0gW107XHJcblx0Y3VycmVudFVzZXI6IGFueTtcclxuXHRzYW1lQ3VycmVudFVzZXIgPSBmYWxzZTtcclxuXHRkaXNhYmxlZCA9IHRydWU7XHJcblx0cmlnaHRzID0gW107XHJcblx0Y29waWVkID0gZmFsc2U7XHJcblx0c2hhcmVhYmxlVXJsID0gJyc7XHJcblx0dHlwZVRvVXJsOiBhbnk7XHJcblx0cHJpdmF0ZSBvbkRlc3Ryb3kkID0gbmV3IFN1YmplY3Q8Ym9vbGVhbj4oKTtcclxuXHRsb2NhbGU7XHJcblx0Y29uc3RydWN0b3IoXHJcblx0XHRASW5qZWN0KE1BVF9ESUFMT0dfREFUQSkgcHVibGljIGRhdGEsXHJcblx0XHRwcml2YXRlIGRpYWxvZ1JlZjogTWF0RGlhbG9nUmVmPFNoYXJlRGlhbG9nQ29tcG9uZW50PixcclxuXHRcdHByaXZhdGUgZGlhbG9nOiBNYXREaWFsb2csXHJcblx0XHRwcml2YXRlIGZiOiBGb3JtQnVpbGRlcixcclxuXHRcdHByaXZhdGUgc2hhcmVkOiBTaGFyZWREb2NzU2VydmljZSxcclxuXHRcdHByaXZhdGUgdG9zdGVyU2VydmljZTogQ3VzdG9tVG9hc3RyU2VydmljZSxcclxuXHRcdHByaXZhdGUgbnV4ZW9TZXJ2aWNlOiBOdXhlb1NlcnZpY2UsXHJcblx0XHRwcml2YXRlIHVzZXJQcmVmZXJlbmNlU2VydmljZTogVXNlclByZWZlcmVuY2VzU2VydmljZSxcclxuXHRcdGluamVjdG9yOiBJbmplY3RvclxyXG5cdCkge1xyXG5cdFx0c3VwZXIoaW5qZWN0b3IpO1xyXG5cdFx0aWYgKHRoaXMudXNlclByZWZlcmVuY2VTZXJ2aWNlKSB7XHJcblx0XHRcdHRoaXMudXNlclByZWZlcmVuY2VTZXJ2aWNlXHJcblx0XHRcdFx0LnNlbGVjdChVc2VyUHJlZmVyZW5jZVZhbHVlcy5Mb2NhbGUpXHJcblx0XHRcdFx0LnBpcGUodGFrZVVudGlsKHRoaXMub25EZXN0cm95JCkpXHJcblx0XHRcdFx0LnN1YnNjcmliZSgobG9jYWxlKSA9PiB7XHJcblx0XHRcdFx0XHR0aGlzLmxvY2FsZSA9IGxvY2FsZTtcclxuXHRcdFx0XHR9KTtcclxuXHRcdH1cclxuXHRcdHRoaXMucmlnaHRzID0gW1xyXG5cdFx0XHR7XHJcblx0XHRcdFx0bGFiZWw6IHRoaXMubG9jYWxlID09PSAnZW4nID8gJ1JlYWQnIDogJ9mC2LHYp9ih2KknLFxyXG5cdFx0XHRcdHZhbHVlOiAnUmVhZCdcclxuXHRcdFx0fSxcclxuXHRcdFx0e1xyXG5cdFx0XHRcdGxhYmVsOiB0aGlzLmxvY2FsZSA9PT0gJ2VuJyA/ICdSZWFkV3JpdGUnIDogJ9mC2LHYp9ih2Kkg2Ygg2KrYudiv2YrZhCcsXHJcblx0XHRcdFx0dmFsdWU6ICdSZWFkV3JpdGUnXHJcblx0XHRcdH1cclxuXHRcdF07XHJcblx0XHR0aGlzLmN1cnJlbnRVc2VyID1cclxuXHRcdFx0dGhpcy5udXhlb1NlcnZpY2U/Lm51eGVvQ2xpZW50Py51c2VyPy5wcm9wZXJ0aWVzLnVzZXJuYW1lO1xyXG5cdFx0dGhpcy5zZWxlY3RlZEl0ZW0gPSBkYXRhLnNlbGVjdGVkSXRlbTtcclxuXHRcdGlmIChcclxuXHRcdFx0dGhpcy5zZWxlY3RlZEl0ZW0/LmVudGl0eS50eXBlID09PSAnRm9sZGVyJyB8fFxyXG5cdFx0XHR0aGlzLnNlbGVjdGVkSXRlbT8uZW50aXR5LnR5cGUgPT09ICdEbXNGb2xkZXInXHJcblx0XHQpIHtcclxuXHRcdFx0dGhpcy5zaGFyZWFibGVVcmwgPSBgJHt3aW5kb3cubG9jYXRpb24ucHJvdG9jb2x9Ly8ke3dpbmRvdy5sb2NhdGlvbi5ob3N0fS9kbXMvZmlsZXM/aWQ9JHt0aGlzLnNlbGVjdGVkSXRlbS5lbnRpdHkudWlkfWA7XHJcblx0XHR9IGVsc2Uge1xyXG5cdFx0XHR0aGlzLnNlbGVjdGVkSXRlbVR5cGUgPVxyXG5cdFx0XHRcdHRoaXMuc2VsZWN0ZWRJdGVtPy5lbnRpdHkucHJvcGVydGllc1snZmlsZTpjb250ZW50J11bJ21pbWUtdHlwZSddO1xyXG5cdFx0XHRpZiAodGhpcy5zZWxlY3RlZEl0ZW1UeXBlPy5pbmNsdWRlcygnaW1hZ2UnKSkge1xyXG5cdFx0XHRcdHRoaXMudHlwZVRvVXJsID0gJ2ltYWdlJztcclxuXHRcdFx0fSBlbHNlIGlmICh0aGlzLnNlbGVjdGVkSXRlbVR5cGU/LmluY2x1ZGVzKCd2aWRlbycpKSB7XHJcblx0XHRcdFx0dGhpcy50eXBlVG9VcmwgPSAndmlkZW8nO1xyXG5cdFx0XHR9IGVsc2Uge1xyXG5cdFx0XHRcdHRoaXMudHlwZVRvVXJsID0gJ2ZpbGUnO1xyXG5cdFx0XHR9XHJcblx0XHRcdHRoaXMuc2hhcmVhYmxlVXJsID0gYCR7d2luZG93LmxvY2F0aW9uLnByb3RvY29sfS8vJHt3aW5kb3cubG9jYXRpb24uaG9zdH0vZG1zL3NoYXJlKHZpZXdlcjp2aWV3LyR7dGhpcy50eXBlVG9Vcmx9LyR7dGhpcy5zZWxlY3RlZEl0ZW0/LmVudGl0eS51aWR9KT9sb2NhdGlvbj0vc2hhcmUmZm9ybVR5cGU9JHt0aGlzLnNlbGVjdGVkSXRlbT8uZW50aXR5LnR5cGV9YDtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdG5nT25Jbml0KCk6IHZvaWQge1xyXG5cdFx0dGhpcy5zaGFyZUZvcm0gPSB0aGlzLmZiLmdyb3VwKHtcclxuXHRcdFx0ZGVwQW5kaXRzVXNlcnM6IG5ldyBGb3JtQ29udHJvbCgnJywgVmFsaWRhdG9ycy5yZXF1aXJlZCksXHJcblx0XHRcdHJpZ2h0czogbmV3IEZvcm1Db250cm9sKCcnLCBWYWxpZGF0b3JzLnJlcXVpcmVkKVxyXG5cdFx0fSk7XHJcblx0XHR0aGlzLnNoYXJlRm9ybS5nZXQoJ2RlcEFuZGl0c1VzZXJzJykudmFsdWVDaGFuZ2VzLnN1YnNjcmliZSgocmVzKSA9PiB7XHJcblx0XHRcdGlmIChyZXM/LnVzZXJzKSB7XHJcblx0XHRcdFx0SlNPTi5zdHJpbmdpZnkodGhpcy5zZWxlY3RlZFVzZXJzKSAhPSBKU09OLnN0cmluZ2lmeShyZXMudXNlcnMpXHJcblx0XHRcdFx0XHQ/IHRoaXMuc2V0VXNlcihyZXMudXNlcnMpXHJcblx0XHRcdFx0XHQ6IG51bGw7XHJcblx0XHRcdH1cclxuXHRcdH0pO1xyXG5cdFx0dGhpcy5zaGFyZUZvcm0ucmVzZXQoKTtcclxuXHRcdHRoaXMuZ2V0TXlTaGFyZSgpO1xyXG5cdH1cclxuXHRyZW1vdmVGcm9tRm9yYmlkZGVuQXJyKGV2ZW50KSB7XHJcblx0XHR0aGlzLmZvcmJpZGRlblVzZXJzLmluY2x1ZGVzKGV2ZW50LmxhYmVsKVxyXG5cdFx0XHQ/IHRoaXMuZm9yYmlkZGVuVXNlcnMuc3BsaWNlKHRoaXMuZm9yYmlkZGVuVXNlcnMuaW5kZXhPZihldmVudC5sYWJlbCksIDEpXHJcblx0XHRcdDogJyc7XHJcblx0fVxyXG5cdGNvcHkoKSB7XHJcblx0XHR0aGlzLmNvcGllZCA9IHRydWU7XHJcblx0XHRzZXRUaW1lb3V0KCgpID0+IHtcclxuXHRcdFx0dGhpcy5jb3BpZWQgPSBmYWxzZTtcclxuXHRcdH0sIDIwMDApO1xyXG5cdH1cclxuXHRzZXRVc2VyKHVzZXJzKSB7XHJcblx0XHR0aGlzLmlzU2hhcmVkQmVmb3JlID0gW107XHJcblx0XHR0aGlzLnNhbWVDdXJyZW50VXNlciA9IGZhbHNlO1xyXG5cdFx0dGhpcy5zZWxlY3RlZFVzZXJzID0gdXNlcnM7XHJcblx0XHR0aGlzLnNlbGVjdGVkVXNlcnMuZm9yRWFjaCgoZWxlbWVudCkgPT4ge1xyXG5cdFx0XHRpZiAoZWxlbWVudC5wcm9wZXJ0aWVzLnVzZXJuYW1lID09PSB0aGlzLmN1cnJlbnRVc2VyKSB7XHJcblx0XHRcdFx0dGhpcy5zYW1lQ3VycmVudFVzZXIgPSB0cnVlO1xyXG5cdFx0XHR9XHJcblx0XHRcdGlmICh0aGlzLnNoYXJlZExpc3RVc2VyLmluY2x1ZGVzKGVsZW1lbnQucHJvcGVydGllcy51c2VybmFtZSkpIHtcclxuXHRcdFx0XHR0aGlzLmlzU2hhcmVkQmVmb3JlLnB1c2goZWxlbWVudC5wcm9wZXJ0aWVzLmZ1bGxOYW1lKTtcclxuXHRcdFx0fVxyXG5cdFx0fSk7XHJcblx0fVxyXG5cdHNldFJpZ2h0KGV2ZW50KSB7XHJcblx0XHQhdGhpcy5zYW1lQ3VycmVudFVzZXIgJiZcclxuXHRcdCF0aGlzLmlzU2hhcmVkQmVmb3JlLmxlbmd0aCAmJlxyXG5cdFx0dGhpcy5zaGFyZUZvcm0uZ2V0KCdyaWdodHMnKS52YWx1ZVxyXG5cdFx0XHQ/ICh0aGlzLmRpc2FibGVkID0gZmFsc2UpXHJcblx0XHRcdDogKHRoaXMuZGlzYWJsZWQgPSB0cnVlKTtcclxuXHR9XHJcblxyXG5cdGNsb3NlKCkge1xyXG5cdFx0dGhpcy5kaWFsb2dSZWYuY2xvc2UoKTtcclxuXHR9XHJcblxyXG5cdGNoZWNrSWZDYW5WaWV3U2VjcmV0KCkge1xyXG5cdFx0dGhpcy5mb3JiaWRkZW5Vc2VycyA9IFtdO1xyXG5cdFx0bGV0IGFyciA9IFtdO1xyXG5cdFx0dGhpcy5zZWxlY3RlZFVzZXJzLm1hcCgoZWxlbWVudCkgPT4ge1xyXG5cdFx0XHRsZXQgY29udGV4dCA9IHtcclxuXHRcdFx0XHR1c2VybmFtZTogZWxlbWVudC5wcm9wZXJ0aWVzLnVzZXJuYW1lLFxyXG5cdFx0XHRcdHNlY3JlY3lMZXZlbDogdGhpcy5zZWxlY3RlZEl0ZW0uZW50aXR5LnByb3BlcnRpZXMuc2VjcmVjeUxldmVsXHJcblx0XHRcdH07XHJcblx0XHRcdGFyci5wdXNoKFxyXG5cdFx0XHRcdHRoaXMuc2hhcmVkLmNhblNlZVNlY3JldGRvY3MoY29udGV4dCkucGlwZShcclxuXHRcdFx0XHRcdHN3aXRjaE1hcCgocmVzOiBhbnkpID0+IHtcclxuXHRcdFx0XHRcdFx0cmV0dXJuIG9mKHsgZWxlbWVudCwgLi4ucmVzIH0pO1xyXG5cdFx0XHRcdFx0fSlcclxuXHRcdFx0XHQpXHJcblx0XHRcdCk7XHJcblx0XHR9KTtcclxuXHRcdHJldHVybiBjb21iaW5lTGF0ZXN0KGFycikucGlwZShcclxuXHRcdFx0c3dpdGNoTWFwKChyZXM6IGFueSkgPT4ge1xyXG5cdFx0XHRcdHJlcy5mb3JFYWNoKChlKSA9PiB7XHJcblx0XHRcdFx0XHRpZiAoIWUuY2FuVmlld1NlY3JldEZpbGVzKSB7XHJcblx0XHRcdFx0XHRcdHRoaXMuZm9yYmlkZGVuVXNlcnMucHVzaChlLmVsZW1lbnQucHJvcGVydGllcy5mdWxsTmFtZSk7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fSk7XHJcblx0XHRcdFx0cmV0dXJuIG9mKHRoaXMuZm9yYmlkZGVuVXNlcnMpO1xyXG5cdFx0XHR9KVxyXG5cdFx0KTtcclxuXHR9XHJcblx0ZG9TaGFyZSh1c2Vycykge1xyXG5cdFx0bGV0IGNvbnRleHQgPSB7XHJcblx0XHRcdHVzZXJzOiB1c2VycyxcclxuXHRcdFx0bW9kZTogdGhpcy5zaGFyZUZvcm0uZ2V0KCdyaWdodHMnKS52YWx1ZVxyXG5cdFx0fTtcclxuXHRcdHRoaXMuc3Vic2NyaXB0aW9ucyQuY29uY2F0KFtcclxuXHRcdFx0dGhpcy5zaGFyZWRcclxuXHRcdFx0XHQuc2hhcmVEb2N1bWVudFdpdGhVc2VyKGNvbnRleHQsIHRoaXMuc2VsZWN0ZWRJdGVtLmVudGl0eS51aWQpXHJcblx0XHRcdFx0LnN1YnNjcmliZShcclxuXHRcdFx0XHRcdChyZXM6IGFueSkgPT4ge1xyXG5cdFx0XHRcdFx0XHRpZiAocmVzKVxyXG5cdFx0XHRcdFx0XHRcdHRoaXMudG9zdGVyU2VydmljZS5zaG93KFxyXG5cdFx0XHRcdFx0XHRcdFx0J3N1Y2Nlc3MnLFxyXG5cdFx0XHRcdFx0XHRcdFx0J1RPQVNURVIuU1VDQ0VTUycsXHJcblx0XHRcdFx0XHRcdFx0XHQnVE9BU1RFUi5zaGFyZV9Eb2Nfc3VjY2VzcydcclxuXHRcdFx0XHRcdFx0XHQpO1xyXG5cdFx0XHRcdFx0XHR0aGlzLmRlcFVzZXJzID0gW107XHJcblx0XHRcdFx0XHRcdHRoaXMuc2hhcmVGb3JtLnJlc2V0KCk7XHJcblx0XHRcdFx0XHRcdHRoaXMuZGlzYWJsZWQgPSB0cnVlO1xyXG5cdFx0XHRcdFx0XHR0aGlzLmdldE15U2hhcmUoKTtcclxuXHRcdFx0XHRcdH0sXHJcblx0XHRcdFx0XHQoZXJyKSA9PiB7XHJcblx0XHRcdFx0XHRcdHRoaXMudG9zdGVyU2VydmljZS5zaG93KFxyXG5cdFx0XHRcdFx0XHRcdCdlcnJvcicsXHJcblx0XHRcdFx0XHRcdFx0J1RPQVNURVIuRVJST1InLFxyXG5cdFx0XHRcdFx0XHRcdCdUT0FTVEVSLnNoYXJlX0RvY19mYWlsJ1xyXG5cdFx0XHRcdFx0XHQpO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdClcclxuXHRcdF0pO1xyXG5cdH1cclxuXHJcblx0c2hhcmU6IERpYWxvZ0FjdGlvblR5cGUgPSAoKSA9PiB7XHJcblx0XHRpZiAodGhpcy5zaGFyZUZvcm0uaW52YWxpZCkge1xyXG5cdFx0XHRhbGVydCh0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgnc2hhcmUuc2VsZWN0X3VzZXJfdG9fc2hhcmUnKSk7XHJcblx0XHR9IGVsc2Uge1xyXG5cdFx0XHR0aGlzLmFsbG93VXNlcnNUb1NoYXJlID0gW107XHJcblx0XHRcdGlmIChcclxuXHRcdFx0XHR0aGlzLnNlbGVjdGVkSXRlbS5lbnRpdHkucHJvcGVydGllcy5zZWNyZWN5TGV2ZWwgJiZcclxuXHRcdFx0XHR0aGlzLnNlbGVjdGVkSXRlbS5lbnRpdHkucHJvcGVydGllcy5zZWNyZWN5TGV2ZWwgIT0gJ05vcm1hbCdcclxuXHRcdFx0KSB7XHJcblx0XHRcdFx0cmV0dXJuIHRoaXMuY2hlY2tJZkNhblZpZXdTZWNyZXQoKS5waXBlKFxyXG5cdFx0XHRcdFx0dGFwKChyZXMpID0+IHtcclxuXHRcdFx0XHRcdFx0aWYgKCFyZXMubGVuZ3RoKSB7XHJcblx0XHRcdFx0XHRcdFx0dGhpcy5zZWxlY3RlZFVzZXJzLmZvckVhY2goKGVsZW1lbnQpID0+IHtcclxuXHRcdFx0XHRcdFx0XHRcdHRoaXMuYWxsb3dVc2Vyc1RvU2hhcmUucHVzaChlbGVtZW50LnByb3BlcnRpZXMudXNlcm5hbWUpO1xyXG5cdFx0XHRcdFx0XHRcdH0pO1xyXG5cdFx0XHRcdFx0XHRcdHRoaXMuZG9TaGFyZSh0aGlzLmFsbG93VXNlcnNUb1NoYXJlKTtcclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0fSlcclxuXHRcdFx0XHQpO1xyXG5cdFx0XHR9IGVsc2Uge1xyXG5cdFx0XHRcdHRoaXMuc2VsZWN0ZWRVc2Vycy5mb3JFYWNoKChlbGVtZW50KSA9PiB7XHJcblx0XHRcdFx0XHR0aGlzLmFsbG93VXNlcnNUb1NoYXJlLnB1c2goZWxlbWVudC5wcm9wZXJ0aWVzLnVzZXJuYW1lKTtcclxuXHRcdFx0XHR9KTtcclxuXHRcdFx0XHRyZXR1cm4gb2YodGhpcy5hbGxvd1VzZXJzVG9TaGFyZSkucGlwZShcclxuXHRcdFx0XHRcdHRhcCgoYWxsb3dVc2Vyc1RvU2hhcmUpID0+IHRoaXMuZG9TaGFyZShhbGxvd1VzZXJzVG9TaGFyZSkpXHJcblx0XHRcdFx0KTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0cmV0dXJuIG9mKG51bGwpO1xyXG5cdH07XHJcblxyXG5cdG9wZW5EaWFsb2coZnVuY3Rpb25Ub0RvLCB1c2VybmFtZT8sIHNoYXJlZE1vZGU/KSB7XHJcblx0XHRsZXQgbWVzc2FnZTogYW55O1xyXG5cdFx0ZnVuY3Rpb25Ub0RvID09PSAnUmVtX0FMTF9zaGFyZXMnXHJcblx0XHRcdD8gKG1lc3NhZ2UgPSAnY29uZmlybURpYWxvZy5SZW1fQWxsX3NoYXJlcycpXHJcblx0XHRcdDogKG1lc3NhZ2UgPSAnY29uZmlybURpYWxvZy5SZW1fY3VzdG9tX3NoYXJlJyk7XHJcblx0XHRjb25zdCBkaWFsb2dSZWYgPSB0aGlzLmRpYWxvZy5vcGVuKENvbmZpcm1hdGlvbkRpYWxvZ0NvbXBvbmVudCwge1xyXG5cdFx0XHR3aWR0aDogJzUxMHB4JyxcclxuXHRcdFx0ZGF0YToge1xyXG5cdFx0XHRcdHRpdGxlOiB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgnY29uZmlybURpYWxvZy5jb25maXJtJyksXHJcblx0XHRcdFx0bWVzc2FnZTogdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQobWVzc2FnZSksXHJcblx0XHRcdFx0Y29uZmlybUJ1dHRvbjogYEJVVFRPTlMuUmVtb3ZlYCxcclxuXHRcdFx0XHRjYW5jZWxCdXR0b246ICdCVVRUT05TLkNhbmNlbCdcclxuXHRcdFx0fSxcclxuXHRcdFx0ZGlzYWJsZUNsb3NlOiB0cnVlXHJcblx0XHR9KTtcclxuXHRcdC8vIGNvbnN0IGRpYWxvZ1JlZiA9IHRoaXMuZnVzZUNvbmZpcm1hdGlvblNlcnZpY2Uub3BlbihcclxuXHRcdC8vICAge1xyXG5cdFx0Ly8gICAgIGRpc21pc3NpYmxlOiB0cnVlLFxyXG5cdFx0Ly8gICAgIHRpdGxlOiB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudChcImNvbmZpcm1EaWFsb2cuY29uZmlybVwiKSxcclxuXHRcdC8vICAgICBtZXNzYWdlOiB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudChtZXNzYWdlKSxcclxuXHRcdC8vICAgICBhY3Rpb25zOiB7XHJcblx0XHQvLyAgICAgICBjb25maXJtOiB7XHJcblx0XHQvLyAgICAgICAgIHNob3c6IHRydWUsXHJcblx0XHQvLyAgICAgICAgIGxhYmVsOiB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudChcIkJVVFRPTlMuUmVtb3ZlXCIpLFxyXG5cdFx0Ly8gICAgICAgICBjb2xvcjogXCJ3YXJuXCJcclxuXHRcdC8vICAgICAgIH0sXHJcblx0XHQvLyAgICAgICBjYW5jZWw6IHtcclxuXHRcdC8vICAgICAgICAgc2hvdzogdHJ1ZSxcclxuXHRcdC8vICAgICAgICAgbGFiZWw6IHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KFwiQlVUVE9OUy5DYW5jZWxcIiksXHJcblx0XHQvLyAgICAgICB9XHJcblx0XHQvLyAgICAgfVxyXG5cdFx0Ly8gICB9XHJcblx0XHQvLyApO1xyXG5cdFx0ZGlhbG9nUmVmLmFmdGVyQ2xvc2VkKCkuc3Vic2NyaWJlKChyZXN1bHQpID0+IHtcclxuXHRcdFx0aWYgKHJlc3VsdCkge1xyXG5cdFx0XHRcdGlmIChmdW5jdGlvblRvRG8gPT09ICdSZW1fQUxMX3NoYXJlcycpIHtcclxuXHRcdFx0XHRcdHRoaXMuc3Vic2NyaXB0aW9ucyQuY29uY2F0KFtcclxuXHRcdFx0XHRcdFx0dGhpcy5zaGFyZWRcclxuXHRcdFx0XHRcdFx0XHQucmVtb3ZlQWxsU2hhcmVzZm9yRG9jcyh0aGlzLnNlbGVjdGVkSXRlbS5lbnRpdHkudWlkKVxyXG5cdFx0XHRcdFx0XHRcdC5zdWJzY3JpYmUoXHJcblx0XHRcdFx0XHRcdFx0XHQocmVzOiBhbnkpID0+IHtcclxuXHRcdFx0XHRcdFx0XHRcdFx0aWYgKHJlcykge1xyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdHRoaXMudG9zdGVyU2VydmljZS5zaG93KFxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0J3N1Y2Nlc3MnLFxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0J1RPQVNURVIuU1VDQ0VTUycsXHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHQnVE9BU1RFUi5SbV9BbGxfU2hhcmVzX3N1Y2Nlc3MnXHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0KTtcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHR0aGlzLmdldE15U2hhcmUoKTtcclxuXHRcdFx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHRcdFx0fSxcclxuXHRcdFx0XHRcdFx0XHRcdChlcnIpID0+IHtcclxuXHRcdFx0XHRcdFx0XHRcdFx0dGhpcy50b3N0ZXJTZXJ2aWNlLnNob3coXHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0J2Vycm9yJyxcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHQnVE9BU1RFUi5FUlJPUicsXHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0J1RPQVNURVIuUm1fQWxsX1NoYXJlc19mYWlsJ1xyXG5cdFx0XHRcdFx0XHRcdFx0XHQpO1xyXG5cdFx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHRcdClcclxuXHRcdFx0XHRcdF0pO1xyXG5cdFx0XHRcdH0gZWxzZSB7XHJcblx0XHRcdFx0XHRsZXQgY29udGV4dCA9IHtcclxuXHRcdFx0XHRcdFx0dXNlcjogdXNlcm5hbWUsXHJcblx0XHRcdFx0XHRcdG1vZGU6IHNoYXJlZE1vZGVcclxuXHRcdFx0XHRcdH07XHJcblx0XHRcdFx0XHR0aGlzLnN1YnNjcmlwdGlvbnMkLmNvbmNhdChbXHJcblx0XHRcdFx0XHRcdHRoaXMuc2hhcmVkXHJcblx0XHRcdFx0XHRcdFx0LnJlbW92ZUN1c3RvbVNoYXJlKGNvbnRleHQsIHRoaXMuc2VsZWN0ZWRJdGVtLmVudGl0eS51aWQpXHJcblx0XHRcdFx0XHRcdFx0LnN1YnNjcmliZShcclxuXHRcdFx0XHRcdFx0XHRcdChyZXM6IGFueSkgPT4ge1xyXG5cdFx0XHRcdFx0XHRcdFx0XHRpZiAocmVzKSB7XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0dGhpcy50b3N0ZXJTZXJ2aWNlLnNob3coXHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHQnc3VjY2VzcycsXHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHQnVE9BU1RFUi5TVUNDRVNTJyxcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdCdUT0FTVEVSLlJlbV9jdXN0b21fc2hhcmVfc3VjY2VzcydcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHQpO1xyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdHRoaXMuZ2V0TXlTaGFyZSgpO1xyXG5cdFx0XHRcdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdFx0XHR9LFxyXG5cdFx0XHRcdFx0XHRcdFx0KGVycikgPT4ge1xyXG5cdFx0XHRcdFx0XHRcdFx0XHR0aGlzLnRvc3RlclNlcnZpY2Uuc2hvdyhcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHQnZXJyb3InLFxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdCdUT0FTVEVSLkVSUk9SJyxcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHQnVE9BU1RFUi5SZW1fY3VzdG9tX3NoYXJlX2ZhaWwnXHJcblx0XHRcdFx0XHRcdFx0XHRcdCk7XHJcblx0XHRcdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdFx0KVxyXG5cdFx0XHRcdFx0XSk7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9KTtcclxuXHR9XHJcblxyXG5cdGdldE15U2hhcmUoKSB7XHJcblx0XHR0aGlzLnNoYXJlZExpc3RVc2VyID0gdGhpcy5zaGFyZWRMaXN0ID0gW107XHJcblx0XHR0aGlzLnN1YnNjcmlwdGlvbnMkLmNvbmNhdChbXHJcblx0XHRcdHRoaXMuc2hhcmVkXHJcblx0XHRcdFx0LmdldFNoYXJlc0J5TWUodGhpcy5zZWxlY3RlZEl0ZW0/LmVudGl0eS51aWQsIHRydWUpXHJcblx0XHRcdFx0LnN1YnNjcmliZSgocmVzKSA9PiB7XHJcblx0XHRcdFx0XHR0aGlzLnNoYXJlZExpc3QgPSByZXM7XHJcblx0XHRcdFx0XHRpZiAodGhpcy5zaGFyZWRMaXN0Lmxlbmd0aCkge1xyXG5cdFx0XHRcdFx0XHR0aGlzLnNoYXJlZExpc3QuZm9yRWFjaCgoZWxlbWVudCkgPT4ge1xyXG5cdFx0XHRcdFx0XHRcdHRoaXMuc2hhcmVkTGlzdFVzZXIucHVzaChlbGVtZW50LnVzZXIucHJvcGVydGllcy51c2VybmFtZSk7XHJcblx0XHRcdFx0XHRcdH0pO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH0pXHJcblx0XHRdKTtcclxuXHR9XHJcblxyXG5cdG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG5cdFx0dGhpcy5zdWJzY3JpcHRpb25zJC5mb3JFYWNoKChzdWIpID0+IHN1Yi51bnN1YnNjcmliZSgpKTtcclxuXHR9XHJcbn1cclxuIiwiPG5kZi1udXhlby1kaWFsb2cgZGlhbG9nVGl0bGU9XCJ7eyAnQ1JFQVRFLlNIQVJFJyB8IHRyYW5zbGF0ZSB9fVwiPlxyXG5cdDxuZy10ZW1wbGF0ZSAjY29udGVudFRlbXBsYXRlPlxyXG5cdFx0PGZvcm0gW2Zvcm1Hcm91cF09XCJzaGFyZUZvcm1cIiBjbGFzcz1cImgtZnVsbCBwLTUgb3ZlcmZsb3ctYXV0b1wiIFNldFJ0bD5cclxuXHRcdFx0PGRpdiBjbGFzcz1cImZsZXggZmxleC1jb2wganVzdGlmeS1iZXR3ZWVuIGgtZnVsbFwiPlxyXG5cdFx0XHRcdDwhLS1Gb3JtIFNlY3Rpb24tLT5cclxuXHRcdFx0XHQ8ZGl2IGNsYXNzPVwiYWRkLXBlcm1zaW9uLXdyYXBwZXJcIj5cclxuXHRcdFx0XHRcdDxzcGFuIGNsYXNzPVwidGV4dC1ncmF5LTkwMCB0ZXh0LWxnXCI+XHJcblx0XHRcdFx0XHRcdHt7ICdzaGFyZS5zaGFyZURpYWxvZ1RpdGxlJyB8IHRyYW5zbGF0ZSB9fVxyXG5cdFx0XHRcdFx0PC9zcGFuPlxyXG5cdFx0XHRcdFx0PGRpdiBjbGFzcz1cIm10LTUgc2VsZWN0b3JzV3JhcHBlclwiPlxyXG5cdFx0XHRcdFx0XHQ8YXBwLXNlbGVjdC11c2Vycy1ieS1kZXBhcnRtZW50c1xyXG5cdFx0XHRcdFx0XHRcdGZvcm1Db250cm9sTmFtZT1cImRlcEFuZGl0c1VzZXJzXCJcclxuXHRcdFx0XHRcdFx0XHRbYWxsb3dNdWx0aXBsZVVzZXJzXT1cInRydWVcIlxyXG5cdFx0XHRcdFx0XHRcdFt1c2VyTGFiZWxdPVwiJ3NoYXJlLnVzZXJzJyB8IHRyYW5zbGF0ZVwiXHJcblx0XHRcdFx0XHRcdFx0W2RlcExhYmVsXT1cIidzaGFyZS5EZXAnIHwgdHJhbnNsYXRlXCJcclxuXHRcdFx0XHRcdFx0XHRbZGlzcGxheV09XCInY29sdW1uJ1wiXHJcblx0XHRcdFx0XHRcdD5cclxuXHRcdFx0XHRcdFx0PC9hcHAtc2VsZWN0LXVzZXJzLWJ5LWRlcGFydG1lbnRzPlxyXG5cdFx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdFx0XHQ8ZGl2ICpuZ0lmPVwiZm9yYmlkZGVuVXNlcnMubGVuZ3RoXCIgY2xhc3M9XCJmbGV4XCI+XHJcblx0XHRcdFx0XHRcdDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IHAgb2YgZm9yYmlkZGVuVXNlcnM7IGxldCBpOyBhczogaW5kZXhcIj5cclxuXHRcdFx0XHRcdFx0XHQ8c3BhbiBjbGFzcz1cInRleHQtcmVkLTUwMCB0ZXh0LWJhc2VcIj4ge3sgcCB9fSZuYnNwOyA8L3NwYW4+XHJcblx0XHRcdFx0XHRcdDwvbmctY29udGFpbmVyPlxyXG5cdFx0XHRcdFx0XHQ8c3BhbiBjbGFzcz1cInRleHQtcmVkLTUwMCB0ZXh0LWJhc2VcIj5cclxuXHRcdFx0XHRcdFx0XHQ8cCAqbmdJZj1cImZvcmJpZGRlblVzZXJzLmxlbmd0aCA9PSAxXCI+XHJcblx0XHRcdFx0XHRcdFx0XHR7eyAnc2hhcmUuc2luZ2xlX2ZvcmJpZGRlbicgfCB0cmFuc2xhdGUgfX1cclxuXHRcdFx0XHRcdFx0XHQ8L3A+XHJcblx0XHRcdFx0XHRcdFx0PHAgKm5nSWY9XCJmb3JiaWRkZW5Vc2Vycy5sZW5ndGggPiAxXCI+XHJcblx0XHRcdFx0XHRcdFx0XHR7eyAnc2hhcmUubXVsdGlfZm9yYmlkZGVuJyB8IHRyYW5zbGF0ZSB9fVxyXG5cdFx0XHRcdFx0XHRcdDwvcD5cclxuXHRcdFx0XHRcdFx0PC9zcGFuPlxyXG5cdFx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdFx0XHQ8ZGl2ICpuZ0lmPVwic2FtZUN1cnJlbnRVc2VyXCI+XHJcblx0XHRcdFx0XHRcdDxzcGFuIGNsYXNzPVwidGV4dC1yZWQtNTAwIHRleHQtYmFzZVwiPlxyXG5cdFx0XHRcdFx0XHRcdHt7ICdzaGFyZS5zaGFyZVdpdGhMb2dnZWRJblVzZXInIHwgdHJhbnNsYXRlIH19XHJcblx0XHRcdFx0XHRcdDwvc3Bhbj5cclxuXHRcdFx0XHRcdDwvZGl2PlxyXG5cdFx0XHRcdFx0PGRpdiAqbmdJZj1cImlzU2hhcmVkQmVmb3JlLmxlbmd0aFwiIGNsYXNzPVwiZmxleFwiPlxyXG5cdFx0XHRcdFx0XHQ8c3BhbiBjbGFzcz1cInRleHQtcmVkLTUwMCB0ZXh0LWJhc2VcIj5cclxuXHRcdFx0XHRcdFx0XHR7eyAnc2hhcmUuc2hhcmVfZXhpc3RzJyB8IHRyYW5zbGF0ZSB9fVxyXG5cdFx0XHRcdFx0XHRcdDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IHAgb2YgaXNTaGFyZWRCZWZvcmVcIj5cclxuXHRcdFx0XHRcdFx0XHRcdHt7IHAgfX1cclxuXHRcdFx0XHRcdFx0XHQ8L25nLWNvbnRhaW5lcj5cclxuXHRcdFx0XHRcdFx0XHR7eyAnc2hhcmUuYmVmb3JlJyB8IHRyYW5zbGF0ZSB9fVxyXG5cdFx0XHRcdFx0XHQ8L3NwYW4+XHJcblx0XHRcdFx0XHQ8L2Rpdj5cclxuXHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJtdC00IHJpZ2h0c1NlbGVjdG9yXCI+XHJcblx0XHRcdFx0XHRcdDxsYWJlbCBjbGFzcz1cInRleHQtYmFzZSBmb250LWJvbGQgbWItMFwiPlxyXG5cdFx0XHRcdFx0XHRcdHt7ICdzaGFyZS5SaWdodHMnIHwgdHJhbnNsYXRlIH19XHJcblx0XHRcdFx0XHRcdFx0PHNwYW4gY2xhc3M9XCJ0ZXh0LWRhbmdlclwiPio8L3NwYW4+XHJcblx0XHRcdFx0XHRcdDwvbGFiZWw+XHJcblx0XHRcdFx0XHRcdDxuZy1zZWxlY3RcclxuXHRcdFx0XHRcdFx0XHRbaXRlbXNdPVwicmlnaHRzXCJcclxuXHRcdFx0XHRcdFx0XHRiaW5kTGFiZWw9XCJsYWJlbFwiXHJcblx0XHRcdFx0XHRcdFx0YmluZFZhbHVlPVwidmFsdWVcIlxyXG5cdFx0XHRcdFx0XHRcdFtwbGFjZWhvbGRlcl09XCIncGVybWlzc2lvbi5yaWdodHNQbGFjZWhvbGRlcicgfCB0cmFuc2xhdGVcIlxyXG5cdFx0XHRcdFx0XHRcdGZvcm1Db250cm9sTmFtZT1cInJpZ2h0c1wiXHJcblx0XHRcdFx0XHRcdFx0KGNoYW5nZSk9XCJzZXRSaWdodCgkZXZlbnQpXCJcclxuXHRcdFx0XHRcdFx0PlxyXG5cdFx0XHRcdFx0XHQ8L25nLXNlbGVjdD5cclxuXHRcdFx0XHRcdDwvZGl2PlxyXG5cdFx0XHRcdFx0PGRpdiAqbmdJZj1cInNoYXJlZExpc3QubGVuZ3RoXCIgY2xhc3M9XCJtdC00XCI+XHJcblx0XHRcdFx0XHRcdDxkaXY+XHJcblx0XHRcdFx0XHRcdFx0PGxhYmVsIGNsYXNzPVwidGV4dC1iYXNlIGZvbnQtYm9sZCBtYi0wXCI+XHJcblx0XHRcdFx0XHRcdFx0XHR7eyAnc2hhcmUuZmlsZVVybCcgfCB0cmFuc2xhdGUgfX1cclxuXHRcdFx0XHRcdFx0XHQ8L2xhYmVsPlxyXG5cdFx0XHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJmbGV4IHJlbGF0aXZlXCI+XHJcblx0XHRcdFx0XHRcdFx0XHQ8aW5wdXRcclxuXHRcdFx0XHRcdFx0XHRcdFx0I2ZpbGVVcmxcclxuXHRcdFx0XHRcdFx0XHRcdFx0W3ZhbHVlXT1cInNoYXJlYWJsZVVybFwiXHJcblx0XHRcdFx0XHRcdFx0XHRcdGRpc2FibGVkXHJcblx0XHRcdFx0XHRcdFx0XHRcdGNsYXNzPVwiYXBwZWFyYW5jZS1ub25lIGJsb2NrIHctZnVsbCBiZy1hY2NlbnQtMTAwIHRleHQtZ3JheS03MDAgYm9yZGVyIGJvcmRlci1ncmF5LTIwMCByb3VuZGVkIHB5LTIuNSBweC00IGxlYWRpbmctdGlnaHQgZm9jdXM6b3V0bGluZS1ub25lIGZvY3VzOmJnLXdoaXRlIGZvY3VzOmJvcmRlci1ncmF5LTUwMFwiXHJcblx0XHRcdFx0XHRcdFx0XHRcdHR5cGU9XCJ0ZXh0XCJcclxuXHRcdFx0XHRcdFx0XHRcdC8+XHJcblx0XHRcdFx0XHRcdFx0XHQ8YnV0dG9uXHJcblx0XHRcdFx0XHRcdFx0XHRcdGNsYXNzPVwiYWJzb2x1dGUgcHQtMi41IGJnLWFjY2VudC0xMDBcIlxyXG5cdFx0XHRcdFx0XHRcdFx0XHRbbWF0VG9vbHRpcF09XCInQlVUVE9OUy5DT1BZJyB8IHRyYW5zbGF0ZVwiXHJcblx0XHRcdFx0XHRcdFx0XHRcdFtuZ0NsYXNzXT1cImxvY2FsZSA9PT0gJ2VuJyA/ICdyaWdodC0yJyA6ICdsZWZ0LTInXCJcclxuXHRcdFx0XHRcdFx0XHRcdFx0W2Nka0NvcHlUb0NsaXBib2FyZF09XCJmaWxlVXJsLnZhbHVlXCJcclxuXHRcdFx0XHRcdFx0XHRcdFx0KGNsaWNrKT1cImNvcHkoKVwiXHJcblx0XHRcdFx0XHRcdFx0XHQ+XHJcblx0XHRcdFx0XHRcdFx0XHRcdDxtYXQtaWNvblxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdHN2Z0ljb249XCJtYXRfc29saWQ6Y29udGVudF9jb3B5XCJcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRjbGFzcz1cImljb24tc2l6ZS02XCJcclxuXHRcdFx0XHRcdFx0XHRcdFx0PjwvbWF0LWljb24+XHJcblx0XHRcdFx0XHRcdFx0XHQ8L2J1dHRvbj5cclxuXHRcdFx0XHRcdFx0XHRcdDxkaXZcclxuXHRcdFx0XHRcdFx0XHRcdFx0Km5nSWY9XCJjb3BpZWRcIlxyXG5cdFx0XHRcdFx0XHRcdFx0XHRjbGFzcz1cImZsZXggYWJzb2x1dGUganVzdGlmeS1hcm91bmQgdy0yNCAtbXQtMTAgYm9yZGVyIGJvcmRlci1yZWQtNzAwIGgtNyByb3VuZGVkIGJnLWdyYXktMjAwXCJcclxuXHRcdFx0XHRcdFx0XHRcdFx0W25nQ2xhc3NdPVwibG9jYWxlID09PSAnZW4nID8gJ3JpZ2h0LTAnIDogJ2xlZnQtMCdcIlxyXG5cdFx0XHRcdFx0XHRcdFx0PlxyXG5cdFx0XHRcdFx0XHRcdFx0XHQ8ZGl2XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0Y2xhc3M9XCJ3LTMgaC0zIGp1c3RpZnktY2VudGVyIGJnLWdyYXktMjAwIHRyYW5zZm9ybSByb3RhdGUtNDUgYm9yZGVyIG10LTUgYm9yZGVycy1jb2xvclwiXHJcblx0XHRcdFx0XHRcdFx0XHRcdD48L2Rpdj5cclxuXHRcdFx0XHRcdFx0XHRcdFx0PHNwYW4gY2xhc3M9XCJhYnNvbHV0ZSBmb250LWV4dHJhbGlnaHRcIj57e1xyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdCdzaGFyZS5jb3BpZWQnIHwgdHJhbnNsYXRlXHJcblx0XHRcdFx0XHRcdFx0XHRcdH19PC9zcGFuPlxyXG5cdFx0XHRcdFx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdFx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdFx0XHRcdDwvZGl2PlxyXG5cdFx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdFx0PCEtLVNoYXJlcyBTZWN0aW9uLS0+XHJcblx0XHRcdFx0PGRpdiAqbmdJZj1cInNoYXJlZExpc3QubGVuZ3RoXCI+XHJcblx0XHRcdFx0XHQ8ZGl2XHJcblx0XHRcdFx0XHRcdGNsYXNzPVwiZmxleCBmbGV4LXJvdyBqdXN0aWZ5LWJldHdlZW4gaC03IGJvcmRlci1iLTIgYm9yZGVyLWFjY2VudC0xMDAgbXQtMlwiXHJcblx0XHRcdFx0XHQ+XHJcblx0XHRcdFx0XHRcdDxzcGFuIGNsYXNzPVwidGV4dC1iYXNlIGZvbnQtYm9sZFwiPlxyXG5cdFx0XHRcdFx0XHRcdHt7ICdzaGFyZS5zaGFyZXMnIHwgdHJhbnNsYXRlIH19XHJcblx0XHRcdFx0XHRcdDwvc3Bhbj5cclxuXHRcdFx0XHRcdFx0PGJ1dHRvblxyXG5cdFx0XHRcdFx0XHRcdG1hdC1pY29uLWJ1dHRvblxyXG5cdFx0XHRcdFx0XHRcdCpwZXJtaXNzaW9uPVwie1xyXG5cdFx0XHRcdFx0XHRcdFx0bmFtZTogJ2NhblJlbW92ZVNoYXJlJyxcclxuXHRcdFx0XHRcdFx0XHRcdGVudGl0eTogc2VsZWN0ZWRJdGVtLmVudGl0eVxyXG5cdFx0XHRcdFx0XHRcdH1cIlxyXG5cdFx0XHRcdFx0XHRcdG1hdFRvb2x0aXA9XCJ7eyAnc2hhcmUuUm1fQWxsX3NoYXJlcycgfCB0cmFuc2xhdGUgfX1cIlxyXG5cdFx0XHRcdFx0XHRcdChjbGljayk9XCJvcGVuRGlhbG9nKCdSZW1fQUxMX3NoYXJlcycpXCJcclxuXHRcdFx0XHRcdFx0PlxyXG5cdFx0XHRcdFx0XHRcdDxtYXQtaWNvblxyXG5cdFx0XHRcdFx0XHRcdFx0W3N2Z0ljb25dPVwiJ2hlcm9pY29uc19vdXRsaW5lOnRyYXNoJ1wiXHJcblx0XHRcdFx0XHRcdFx0XHRbbmdDbGFzc109XCJsb2NhbGUgPT09ICdlbicgPyAnbXItMicgOiAnbWwtMidcIlxyXG5cdFx0XHRcdFx0XHRcdD48L21hdC1pY29uPlxyXG5cdFx0XHRcdFx0XHQ8L2J1dHRvbj5cclxuXHRcdFx0XHRcdDwvZGl2PlxyXG5cdFx0XHRcdFx0PGRpdiBjbGFzcz1cImgtNTIgb3ZlcmZsb3cteS1hdXRvXCI+XHJcblx0XHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtcm93IGp1c3RpZnktYmV0d2VlbiBtdC0yLjVcIj5cclxuXHRcdFx0XHRcdFx0XHQ8c3BhbiBjbGFzcz1cInctMS8yIHRleHQtYmFzZSBmb250LWJvbGRcIj57e1xyXG5cdFx0XHRcdFx0XHRcdFx0J3NoYXJlLnNoYXJlV2l0aCcgfCB0cmFuc2xhdGVcclxuXHRcdFx0XHRcdFx0XHR9fTwvc3Bhbj5cclxuXHRcdFx0XHRcdFx0XHQ8c3BhbiBjbGFzcz1cInctMS80IHRleHQtYmFzZSBmb250LWJvbGRcIj57e1xyXG5cdFx0XHRcdFx0XHRcdFx0J3NoYXJlLnNoYXJlX2RhdGUnIHwgdHJhbnNsYXRlXHJcblx0XHRcdFx0XHRcdFx0fX08L3NwYW4+XHJcblx0XHRcdFx0XHRcdFx0PHNwYW4gY2xhc3M9XCJ3LTEvNCB0ZXh0LWJhc2UgZm9udC1ib2xkXCI+e3tcclxuXHRcdFx0XHRcdFx0XHRcdCdzaGFyZS5wZXJtaXNzaW9uJyB8IHRyYW5zbGF0ZVxyXG5cdFx0XHRcdFx0XHRcdH19PC9zcGFuPlxyXG5cdFx0XHRcdFx0XHRcdDxzcGFuPiZuYnNwOzwvc3Bhbj5cclxuXHRcdFx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdFx0XHRcdDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGQgb2Ygc2hhcmVkTGlzdFwiPlxyXG5cdFx0XHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtcm93IGp1c3RpZnktYmV0d2VlbiBtdC0yLjVcIj5cclxuXHRcdFx0XHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtcm93IHctMS8yXCI+XHJcblx0XHRcdFx0XHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJmbGV4LTAgdy04IGgtOCByb3VuZGVkLWZ1bGwgb3ZlcmZsb3ctaGlkZGVuXCI+XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0PGN0cy1hdmF0YXJcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFt1c2VyXT1cIntcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0cHJvcGVydGllczoge1xyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdGZpcnN0TmFtZTogZC51c2VyLnByb3BlcnRpZXM/LmZpcnN0TmFtZSxcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRsYXN0TmFtZTogZC51c2VyLnByb3BlcnRpZXM/Lmxhc3ROYW1lXHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdH1cIlxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdD5cclxuXHRcdFx0XHRcdFx0XHRcdFx0XHQ8L2N0cy1hdmF0YXI+XHJcblx0XHRcdFx0XHRcdFx0XHRcdDwvZGl2PlxyXG5cdFx0XHRcdFx0XHRcdFx0XHQ8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LWNvbCAtbXQtMiBweC0yIGJyZWFrLWFsbFwiPlxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdDxzcGFuPnt7IGQudXNlci5mdWxsTmFtZSB9fTwvc3Bhbj5cclxuXHRcdFx0XHRcdFx0XHRcdFx0XHQ8c3Bhbj57eyBkLnVzZXIucHJvcGVydGllcy5lbWFpbCB9fTwvc3Bhbj5cclxuXHRcdFx0XHRcdFx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdFx0XHRcdFx0XHQ8L2Rpdj5cclxuXHRcdFx0XHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJ3LTEvNCBtdC0xLjUgYnJlYWstYWxsIHB4LTIuNVwiPlxyXG5cdFx0XHRcdFx0XHRcdFx0XHQ8c3Bhbj57e1xyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdGQuc2hhcmVkRGF0ZVxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0fCBsb2NhbGl6ZWREYXRlXHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdDogJ2RkIE1NTU0geXl5eSdcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0OiAoaXNBcmFiaWMgPyAnYXItQVInIDogJ2VuLVVTJylcclxuXHRcdFx0XHRcdFx0XHRcdFx0fX08L3NwYW4+XHJcblx0XHRcdFx0XHRcdFx0XHQ8L2Rpdj5cclxuXHRcdFx0XHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJ3LTEvNCBtdC0xLjUgYnJlYWstYWxsIHB4LTRcIj5cclxuXHRcdFx0XHRcdFx0XHRcdFx0PHNwYW4+e3sgJ3JpZ2h0cy4nICsgZC5zaGFyZWRNb2RlIHwgdHJhbnNsYXRlIH19PC9zcGFuPlxyXG5cdFx0XHRcdFx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdFx0XHRcdFx0XHQ8ZGl2IGNsYXNzPVwibXQtMS41XCI+XHJcblx0XHRcdFx0XHRcdFx0XHRcdDxidXR0b25cclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRtYXQtaWNvbi1idXR0b25cclxuXHRcdFx0XHRcdFx0XHRcdFx0XHQqcGVybWlzc2lvbj1cIntcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdG5hbWU6ICdjYW5SZW1vdmVTaGFyZScsXHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHRlbnRpdHk6IHNlbGVjdGVkSXRlbS5lbnRpdHlcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHR9XCJcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRtYXRUb29sdGlwPVwie3sgJ3NoYXJlLlJtX2N1c3RvbV9zaGFyZScgfCB0cmFuc2xhdGUgfX1cIlxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdChjbGljayk9XCJcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdG9wZW5EaWFsb2coXHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdCdSZW1fY3VzdG9tX3NoYXJlJyxcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0ZC51c2VyLnByb3BlcnRpZXMudXNlcm5hbWUsXHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdGQuc2hhcmVkTW9kZVxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0KVxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFwiXHJcblx0XHRcdFx0XHRcdFx0XHRcdD5cclxuXHRcdFx0XHRcdFx0XHRcdFx0XHQ8aVxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0Y2xhc3M9XCJtcy1JY29uIG1zLUljb24tLUNocm9tZUNsb3NlXCJcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdGFyaWEtaGlkZGVuPVwidHJ1ZVwiXHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHRbbmdDbGFzc109XCJsb2NhbGUgPT09ICdlbicgPyAnbXItMi41JyA6ICdtbC0yLjUnXCJcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHQ+PC9pPlxyXG5cdFx0XHRcdFx0XHRcdFx0XHQ8L2J1dHRvbj5cclxuXHRcdFx0XHRcdFx0XHRcdDwvZGl2PlxyXG5cdFx0XHRcdFx0XHRcdDwvZGl2PlxyXG5cdFx0XHRcdFx0XHQ8L25nLWNvbnRhaW5lcj5cclxuXHRcdFx0XHRcdDwvZGl2PlxyXG5cdFx0XHRcdDwvZGl2PlxyXG5cdFx0XHQ8L2Rpdj5cclxuXHRcdDwvZm9ybT5cclxuXHQ8L25nLXRlbXBsYXRlPlxyXG5cclxuXHQ8bmctdGVtcGxhdGUgI2FjdGlvbnNUZW1wbGF0ZSBsZXQtZGlhbG9nPVwiZGlhbG9nXCI+XHJcblx0XHQ8YnV0dG9uXHJcblx0XHRcdGNsYXNzPVwic3VibWlzc2lvbi1idXR0b25cIlxyXG5cdFx0XHRbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxyXG5cdFx0XHQoY2xpY2spPVwiZGlhbG9nLmV4ZWN1dGVBY3Rpb24oc2hhcmUpXCJcclxuXHRcdD5cclxuXHRcdFx0e3sgJ3NoYXJlLnNoYXJlQnV0dG9uJyB8IHRyYW5zbGF0ZSB9fVxyXG5cdFx0PC9idXR0b24+XHJcblx0PC9uZy10ZW1wbGF0ZT5cclxuPC9uZGYtbnV4ZW8tZGlhbG9nPlxyXG4iXX0=
314
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hhcmUtZGlhbG9nLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9udXhlby1kZXZlbG9wbWVudC1mcmFtZXdvcmsvc3JjL2xpYi9jb21wb25lbnRzL2ZpbGUtbWFuZ2VyL2NvbXBvbmVudHMvc2hhcmUtZGlhbG9nL3NoYXJlLWRpYWxvZy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9maWxlLW1hbmdlci9jb21wb25lbnRzL3NoYXJlLWRpYWxvZy9zaGFyZS1kaWFsb2cuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNOLFNBQVMsRUFDVCxNQUFNLEVBSU4saUJBQWlCLEVBQ2pCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFFTixXQUFXLEVBRVgsVUFBVSxFQUNWLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxFQUNOLGVBQWUsRUFHZixNQUFNLDBCQUEwQixDQUFDO0FBRWxDLE9BQU8sRUFBRSxhQUFhLEVBQUUsRUFBRSxFQUFFLE9BQU8sRUFBZ0IsTUFBTSxNQUFNLENBQUM7QUFDaEUsT0FBTyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFLM0QsT0FBTyxFQUVOLG9CQUFvQixFQUNwQixNQUFNLHlEQUF5RCxDQUFDO0FBQ2pFLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLGdGQUFnRixDQUFDO0FBRTdILE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBEQUEwRCxDQUFDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBUy9GLE1BQU0sT0FBTyxvQkFDWixTQUFRLG1CQUFtRDtJQXdCM0QsWUFDaUMsSUFBSSxFQUM1QixTQUE2QyxFQUM3QyxNQUFpQixFQUNqQixF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LENBQUMsR0FBRyxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7SUFDekQsQ0FBQzs7a0hBeFVXLG9CQUFvQixrQkEwQnZCLGVBQWU7c0dBMUJaLG9CQUFvQiwrRUN6Q2pDLHd3UkFpTkE7NEZEeEthLG9CQUFvQjtrQkFOaEMsU0FBUzttQkFBQztvQkFDVixRQUFRLEVBQUUsa0JBQWtCO29CQUM1QixXQUFXLEVBQUUsK0JBQStCO29CQUM1QyxTQUFTLEVBQUUsQ0FBQywrQkFBK0IsQ0FBQztvQkFDNUMsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7aUJBQ3JDOzswQkEyQkUsTUFBTTsyQkFBQyxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuXHRDb21wb25lbnQsXHJcblx0SW5qZWN0LFxyXG5cdEluamVjdG9yLFxyXG5cdE9uRGVzdHJveSxcclxuXHRPbkluaXQsXHJcblx0Vmlld0VuY2Fwc3VsYXRpb25cclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtcclxuXHRGb3JtQnVpbGRlcixcclxuXHRGb3JtQ29udHJvbCxcclxuXHRGb3JtR3JvdXAsXHJcblx0VmFsaWRhdG9yc1xyXG59IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHtcclxuXHRNQVRfRElBTE9HX0RBVEEsXHJcblx0TWF0RGlhbG9nLFxyXG5cdE1hdERpYWxvZ1JlZlxyXG59IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XHJcblxyXG5pbXBvcnQgeyBjb21iaW5lTGF0ZXN0LCBvZiwgU3ViamVjdCwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IHN3aXRjaE1hcCwgdGFrZVVudGlsLCB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcblxyXG5pbXBvcnQgeyBDdXN0b21Ub2FzdHJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vY3VzdG9tLXRvYXN0ci9zZXJ2aWNlcy9jdXN0b20tdG9hc3RyLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBUcmFuc2xhdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi8uLi9jb3JlL3NlcnZpY2VzL3RyYW5zbGF0aW9uL3RyYW5zbGF0aW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBOdXhlb1NlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi8uLi9jb3JlL3NlcnZpY2VzL251eGVvL251eGVvLnNlcnZpY2UnO1xyXG5pbXBvcnQge1xyXG5cdFVzZXJQcmVmZXJlbmNlc1NlcnZpY2UsXHJcblx0VXNlclByZWZlcmVuY2VWYWx1ZXNcclxufSBmcm9tICcuLi8uLi8uLi8uLi9jb3JlL3NlcnZpY2VzL3VzZXIvdXNlci1wcmVmZXJlbmNlcy5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQ29uZmlybWF0aW9uRGlhbG9nQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vY29uZmlybWF0aW9uLWRpYWxvZy9jb25maXJtYXRpb24tZGlhbG9nL2NvbmZpcm1hdGlvbi1kaWFsb2cuY29tcG9uZW50JztcclxuaW1wb3J0IHsgU2hhcmVkRG9jc1NlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi8uLi9zaGFyZWQtc2VydmljZXMvc2hhcmVkLWRvY3Muc2VydmljZSc7XHJcbmltcG9ydCB7IEJhc2VEaWFsb2dDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi8uLi9zaGFyZWQvY29tcG9uZW50cy9iYXNlL2Jhc2UtZGlhbG9nLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IERpYWxvZ0FjdGlvblR5cGUgfSBmcm9tICcuLi8uLi8uLi8uLi9zaGFyZWQvY29tcG9uZW50cy9udXhlby1kaWFsb2cvbW9kZWxzL2RpYWxvZy1vcHRpb24ubW9kZWwnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcblx0c2VsZWN0b3I6ICdhcHAtc2hhcmUtZGlhbG9nJyxcclxuXHR0ZW1wbGF0ZVVybDogJy4vc2hhcmUtZGlhbG9nLmNvbXBvbmVudC5odG1sJyxcclxuXHRzdHlsZVVybHM6IFsnLi9zaGFyZS1kaWFsb2cuY29tcG9uZW50LnNjc3MnXSxcclxuXHRlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTaGFyZURpYWxvZ0NvbXBvbmVudFxyXG5cdGV4dGVuZHMgQmFzZURpYWxvZ0NvbXBvbmVudDxTaGFyZURpYWxvZ0NvbXBvbmVudCwgYW55LCBhbnk+XHJcblx0aW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveVxyXG57XHJcblx0c2VsZWN0ZWRJdGVtOiBhbnk7XHJcblx0c2VsZWN0ZWRJdGVtVHlwZTogYW55O1xyXG5cdHNoYXJlRm9ybTogRm9ybUdyb3VwO1xyXG5cdHNlbGVjdGVkVXNlcnMgPSBbXTtcclxuXHRzdWJzY3JpcHRpb25zJDogU3Vic2NyaXB0aW9uW10gPSBbXTtcclxuXHRteVNoYXJlZGF0YTogYW55ID0gW107XHJcblx0c2hhcmVkTGlzdCA9IFtdO1xyXG5cdHNoYXJlZExpc3RVc2VyID0gW107XHJcblx0ZGVwVXNlcnMgPSBbXTtcclxuXHRhbGxvd1VzZXJzVG9TaGFyZSA9IFtdO1xyXG5cdGZvcmJpZGRlblVzZXJzID0gW107XHJcblx0aXNTaGFyZWRCZWZvcmUgPSBbXTtcclxuXHRjdXJyZW50VXNlcjogYW55O1xyXG5cdHNhbWVDdXJyZW50VXNlciA9IGZhbHNlO1xyXG5cdGRpc2FibGVkID0gdHJ1ZTtcclxuXHRyaWdodHMgPSBbXTtcclxuXHRjb3BpZWQgPSBmYWxzZTtcclxuXHRzaGFyZWFibGVVcmwgPSAnJztcclxuXHR0eXBlVG9Vcmw6IGFueTtcclxuXHRwcml2YXRlIG9uRGVzdHJveSQgPSBuZXcgU3ViamVjdDxib29sZWFuPigpO1xyXG5cdGxvY2FsZTtcclxuXHRjb25zdHJ1Y3RvcihcclxuXHRcdEBJbmplY3QoTUFUX0RJQUxPR19EQVRBKSBwdWJsaWMgZGF0YSxcclxuXHRcdHByaXZhdGUgZGlhbG9nUmVmOiBNYXREaWFsb2dSZWY8U2hhcmVEaWFsb2dDb21wb25lbnQ+LFxyXG5cdFx0cHJpdmF0ZSBkaWFsb2c6IE1hdERpYWxvZyxcclxuXHRcdHByaXZhdGUgZmI6IEZvcm1CdWlsZGVyLFxyXG5cdFx0cHJpdmF0ZSBzaGFyZWQ6IFNoYXJlZERvY3NTZXJ2aWNlLFxyXG5cdFx0cHJpdmF0ZSB0b3N0ZXJTZXJ2aWNlOiBDdXN0b21Ub2FzdHJTZXJ2aWNlLFxyXG5cdFx0cHJpdmF0ZSBudXhlb1NlcnZpY2U6IE51eGVvU2VydmljZSxcclxuXHRcdHByaXZhdGUgdXNlclByZWZlcmVuY2VTZXJ2aWNlOiBVc2VyUHJlZmVyZW5jZXNTZXJ2aWNlLFxyXG5cdFx0aW5qZWN0b3I6IEluamVjdG9yXHJcblx0KSB7XHJcblx0XHRzdXBlcihpbmplY3Rvcik7XHJcblx0XHRpZiAodGhpcy51c2VyUHJlZmVyZW5jZVNlcnZpY2UpIHtcclxuXHRcdFx0dGhpcy51c2VyUHJlZmVyZW5jZVNlcnZpY2VcclxuXHRcdFx0XHQuc2VsZWN0KFVzZXJQcmVmZXJlbmNlVmFsdWVzLkxvY2FsZSlcclxuXHRcdFx0XHQucGlwZSh0YWtlVW50aWwodGhpcy5vbkRlc3Ryb3kkKSlcclxuXHRcdFx0XHQuc3Vic2NyaWJlKChsb2NhbGUpID0+IHtcclxuXHRcdFx0XHRcdHRoaXMubG9jYWxlID0gbG9jYWxlO1xyXG5cdFx0XHRcdH0pO1xyXG5cdFx0fVxyXG5cdFx0dGhpcy5yaWdodHMgPSBbXHJcblx0XHRcdHtcclxuXHRcdFx0XHRsYWJlbDogdGhpcy5sb2NhbGUgPT09ICdlbicgPyAnUmVhZCcgOiAn2YLYsdin2KHYqScsXHJcblx0XHRcdFx0dmFsdWU6ICdSZWFkJ1xyXG5cdFx0XHR9LFxyXG5cdFx0XHR7XHJcblx0XHRcdFx0bGFiZWw6IHRoaXMubG9jYWxlID09PSAnZW4nID8gJ1JlYWRXcml0ZScgOiAn2YLYsdin2KHYqSDZiCDYqti52K/ZitmEJyxcclxuXHRcdFx0XHR2YWx1ZTogJ1JlYWRXcml0ZSdcclxuXHRcdFx0fVxyXG5cdFx0XTtcclxuXHRcdHRoaXMuY3VycmVudFVzZXIgPVxyXG5cdFx0XHR0aGlzLm51eGVvU2VydmljZT8ubnV4ZW9DbGllbnQ/LnVzZXI/LnByb3BlcnRpZXMudXNlcm5hbWU7XHJcblx0XHR0aGlzLnNlbGVjdGVkSXRlbSA9IGRhdGEuc2VsZWN0ZWRJdGVtO1xyXG5cdFx0aWYgKFxyXG5cdFx0XHR0aGlzLnNlbGVjdGVkSXRlbT8uZW50aXR5LnR5cGUgPT09ICdGb2xkZXInIHx8XHJcblx0XHRcdHRoaXMuc2VsZWN0ZWRJdGVtPy5lbnRpdHkudHlwZSA9PT0gJ0Rtc0ZvbGRlcidcclxuXHRcdCkge1xyXG5cdFx0XHR0aGlzLnNoYXJlYWJsZVVybCA9IGAke3dpbmRvdy5sb2NhdGlvbi5wcm90b2NvbH0vLyR7d2luZG93LmxvY2F0aW9uLmhvc3R9L2Rtcy9maWxlcz9pZD0ke3RoaXMuc2VsZWN0ZWRJdGVtLmVudGl0eS51aWR9YDtcclxuXHRcdH0gZWxzZSB7XHJcblx0XHRcdHRoaXMuc2VsZWN0ZWRJdGVtVHlwZSA9XHJcblx0XHRcdFx0dGhpcy5zZWxlY3RlZEl0ZW0/LmVudGl0eS5wcm9wZXJ0aWVzWydmaWxlOmNvbnRlbnQnXVsnbWltZS10eXBlJ107XHJcblx0XHRcdGlmICh0aGlzLnNlbGVjdGVkSXRlbVR5cGU/LmluY2x1ZGVzKCdpbWFnZScpKSB7XHJcblx0XHRcdFx0dGhpcy50eXBlVG9VcmwgPSAnaW1hZ2UnO1xyXG5cdFx0XHR9IGVsc2UgaWYgKHRoaXMuc2VsZWN0ZWRJdGVtVHlwZT8uaW5jbHVkZXMoJ3ZpZGVvJykpIHtcclxuXHRcdFx0XHR0aGlzLnR5cGVUb1VybCA9ICd2aWRlbyc7XHJcblx0XHRcdH0gZWxzZSB7XHJcblx0XHRcdFx0dGhpcy50eXBlVG9VcmwgPSAnZmlsZSc7XHJcblx0XHRcdH1cclxuXHRcdFx0dGhpcy5zaGFyZWFibGVVcmwgPSBgJHt3aW5kb3cubG9jYXRpb24ucHJvdG9jb2x9Ly8ke3dpbmRvdy5sb2NhdGlvbi5ob3N0fS9kbXMvc2hhcmUodmlld2VyOnZpZXcvJHt0aGlzLnR5cGVUb1VybH0vJHt0aGlzLnNlbGVjdGVkSXRlbT8uZW50aXR5LnVpZH0pP2xvY2F0aW9uPS9zaGFyZSZmb3JtVHlwZT0ke3RoaXMuc2VsZWN0ZWRJdGVtPy5lbnRpdHkudHlwZX1gO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0bmdPbkluaXQoKTogdm9pZCB7XHJcblx0XHR0aGlzLnNoYXJlRm9ybSA9IHRoaXMuZmIuZ3JvdXAoe1xyXG5cdFx0XHRkZXBBbmRpdHNVc2VyczogbmV3IEZvcm1Db250cm9sKCcnLCBWYWxpZGF0b3JzLnJlcXVpcmVkKSxcclxuXHRcdFx0cmlnaHRzOiBuZXcgRm9ybUNvbnRyb2woJycsIFZhbGlkYXRvcnMucmVxdWlyZWQpXHJcblx0XHR9KTtcclxuXHRcdHRoaXMuc2hhcmVGb3JtLmdldCgnZGVwQW5kaXRzVXNlcnMnKS52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKChyZXMpID0+IHtcclxuXHRcdFx0aWYgKHJlcz8udXNlcnMpIHtcclxuXHRcdFx0XHRKU09OLnN0cmluZ2lmeSh0aGlzLnNlbGVjdGVkVXNlcnMpICE9IEpTT04uc3RyaW5naWZ5KHJlcy51c2VycylcclxuXHRcdFx0XHRcdD8gdGhpcy5zZXRVc2VyKHJlcy51c2VycylcclxuXHRcdFx0XHRcdDogbnVsbDtcclxuXHRcdFx0fVxyXG5cdFx0fSk7XHJcblx0XHR0aGlzLnNoYXJlRm9ybS5yZXNldCgpO1xyXG5cdFx0dGhpcy5nZXRNeVNoYXJlKCk7XHJcblx0fVxyXG5cdHJlbW92ZUZyb21Gb3JiaWRkZW5BcnIoZXZlbnQpIHtcclxuXHRcdHRoaXMuZm9yYmlkZGVuVXNlcnMuaW5jbHVkZXMoZXZlbnQubGFiZWwpXHJcblx0XHRcdD8gdGhpcy5mb3JiaWRkZW5Vc2Vycy5zcGxpY2UodGhpcy5mb3JiaWRkZW5Vc2Vycy5pbmRleE9mKGV2ZW50LmxhYmVsKSwgMSlcclxuXHRcdFx0OiAnJztcclxuXHR9XHJcblx0Y29weSgpIHtcclxuXHRcdHRoaXMuY29waWVkID0gdHJ1ZTtcclxuXHRcdHNldFRpbWVvdXQoKCkgPT4ge1xyXG5cdFx0XHR0aGlzLmNvcGllZCA9IGZhbHNlO1xyXG5cdFx0fSwgMjAwMCk7XHJcblx0fVxyXG5cdHNldFVzZXIodXNlcnMpIHtcclxuXHRcdHRoaXMuaXNTaGFyZWRCZWZvcmUgPSBbXTtcclxuXHRcdHRoaXMuc2FtZUN1cnJlbnRVc2VyID0gZmFsc2U7XHJcblx0XHR0aGlzLnNlbGVjdGVkVXNlcnMgPSB1c2VycztcclxuXHRcdHRoaXMuc2VsZWN0ZWRVc2Vycy5mb3JFYWNoKChlbGVtZW50KSA9PiB7XHJcblx0XHRcdGlmIChlbGVtZW50LnByb3BlcnRpZXMudXNlcm5hbWUgPT09IHRoaXMuY3VycmVudFVzZXIpIHtcclxuXHRcdFx0XHR0aGlzLnNhbWVDdXJyZW50VXNlciA9IHRydWU7XHJcblx0XHRcdH1cclxuXHRcdFx0aWYgKHRoaXMuc2hhcmVkTGlzdFVzZXIuaW5jbHVkZXMoZWxlbWVudC5wcm9wZXJ0aWVzLnVzZXJuYW1lKSkge1xyXG5cdFx0XHRcdHRoaXMuaXNTaGFyZWRCZWZvcmUucHVzaChlbGVtZW50LnByb3BlcnRpZXMuZnVsbE5hbWUpO1xyXG5cdFx0XHR9XHJcblx0XHR9KTtcclxuXHR9XHJcblx0c2V0UmlnaHQoZXZlbnQpIHtcclxuXHRcdCF0aGlzLnNhbWVDdXJyZW50VXNlciAmJlxyXG5cdFx0IXRoaXMuaXNTaGFyZWRCZWZvcmUubGVuZ3RoICYmXHJcblx0XHR0aGlzLnNoYXJlRm9ybS5nZXQoJ3JpZ2h0cycpLnZhbHVlXHJcblx0XHRcdD8gKHRoaXMuZGlzYWJsZWQgPSBmYWxzZSlcclxuXHRcdFx0OiAodGhpcy5kaXNhYmxlZCA9IHRydWUpO1xyXG5cdH1cclxuXHJcblx0Y2xvc2UoKSB7XHJcblx0XHR0aGlzLmRpYWxvZ1JlZi5jbG9zZSgpO1xyXG5cdH1cclxuXHJcblx0Y2hlY2tJZkNhblZpZXdTZWNyZXQoKSB7XHJcblx0XHR0aGlzLmZvcmJpZGRlblVzZXJzID0gW107XHJcblx0XHRsZXQgYXJyID0gW107XHJcblx0XHR0aGlzLnNlbGVjdGVkVXNlcnMubWFwKChlbGVtZW50KSA9PiB7XHJcblx0XHRcdGxldCBjb250ZXh0ID0ge1xyXG5cdFx0XHRcdHVzZXJuYW1lOiBlbGVtZW50LnByb3BlcnRpZXMudXNlcm5hbWUsXHJcblx0XHRcdFx0c2VjcmVjeUxldmVsOiB0aGlzLnNlbGVjdGVkSXRlbS5lbnRpdHkucHJvcGVydGllcy5zZWNyZWN5TGV2ZWxcclxuXHRcdFx0fTtcclxuXHRcdFx0YXJyLnB1c2goXHJcblx0XHRcdFx0dGhpcy5zaGFyZWQuY2FuU2VlU2VjcmV0ZG9jcyhjb250ZXh0KS5waXBlKFxyXG5cdFx0XHRcdFx0c3dpdGNoTWFwKChyZXM6IGFueSkgPT4ge1xyXG5cdFx0XHRcdFx0XHRyZXR1cm4gb2YoeyBlbGVtZW50LCAuLi5yZXMgfSk7XHJcblx0XHRcdFx0XHR9KVxyXG5cdFx0XHRcdClcclxuXHRcdFx0KTtcclxuXHRcdH0pO1xyXG5cdFx0cmV0dXJuIGNvbWJpbmVMYXRlc3QoYXJyKS5waXBlKFxyXG5cdFx0XHRzd2l0Y2hNYXAoKHJlczogYW55KSA9PiB7XHJcblx0XHRcdFx0cmVzLmZvckVhY2goKGUpID0+IHtcclxuXHRcdFx0XHRcdGlmICghZS5jYW5WaWV3U2VjcmV0RmlsZXMpIHtcclxuXHRcdFx0XHRcdFx0dGhpcy5mb3JiaWRkZW5Vc2Vycy5wdXNoKGUuZWxlbWVudC5wcm9wZXJ0aWVzLmZ1bGxOYW1lKTtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9KTtcclxuXHRcdFx0XHRyZXR1cm4gb2YodGhpcy5mb3JiaWRkZW5Vc2Vycyk7XHJcblx0XHRcdH0pXHJcblx0XHQpO1xyXG5cdH1cclxuXHRkb1NoYXJlKHVzZXJzKSB7XHJcblx0XHRsZXQgY29udGV4dCA9IHtcclxuXHRcdFx0dXNlcnM6IHVzZXJzLFxyXG5cdFx0XHRtb2RlOiB0aGlzLnNoYXJlRm9ybS5nZXQoJ3JpZ2h0cycpLnZhbHVlXHJcblx0XHR9O1xyXG5cdFx0dGhpcy5zdWJzY3JpcHRpb25zJC5jb25jYXQoW1xyXG5cdFx0XHR0aGlzLnNoYXJlZFxyXG5cdFx0XHRcdC5zaGFyZURvY3VtZW50V2l0aFVzZXIoY29udGV4dCwgdGhpcy5zZWxlY3RlZEl0ZW0uZW50aXR5LnVpZClcclxuXHRcdFx0XHQuc3Vic2NyaWJlKFxyXG5cdFx0XHRcdFx0KHJlczogYW55KSA9PiB7XHJcblx0XHRcdFx0XHRcdGlmIChyZXMpXHJcblx0XHRcdFx0XHRcdFx0dGhpcy50b3N0ZXJTZXJ2aWNlLnNob3coXHJcblx0XHRcdFx0XHRcdFx0XHQnc3VjY2VzcycsXHJcblx0XHRcdFx0XHRcdFx0XHQnVE9BU1RFUi5TVUNDRVNTJyxcclxuXHRcdFx0XHRcdFx0XHRcdCdUT0FTVEVSLnNoYXJlX0RvY19zdWNjZXNzJ1xyXG5cdFx0XHRcdFx0XHRcdCk7XHJcblx0XHRcdFx0XHRcdHRoaXMuZGVwVXNlcnMgPSBbXTtcclxuXHRcdFx0XHRcdFx0dGhpcy5zaGFyZUZvcm0ucmVzZXQoKTtcclxuXHRcdFx0XHRcdFx0dGhpcy5kaXNhYmxlZCA9IHRydWU7XHJcblx0XHRcdFx0XHRcdHRoaXMuZ2V0TXlTaGFyZSgpO1xyXG5cdFx0XHRcdFx0fSxcclxuXHRcdFx0XHRcdChlcnIpID0+IHtcclxuXHRcdFx0XHRcdFx0dGhpcy50b3N0ZXJTZXJ2aWNlLnNob3coXHJcblx0XHRcdFx0XHRcdFx0J2Vycm9yJyxcclxuXHRcdFx0XHRcdFx0XHQnVE9BU1RFUi5FUlJPUicsXHJcblx0XHRcdFx0XHRcdFx0J1RPQVNURVIuc2hhcmVfRG9jX2ZhaWwnXHJcblx0XHRcdFx0XHRcdCk7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0KVxyXG5cdFx0XSk7XHJcblx0fVxyXG5cclxuXHRzaGFyZTogRGlhbG9nQWN0aW9uVHlwZSA9ICgpID0+IHtcclxuXHRcdGlmICh0aGlzLnNoYXJlRm9ybS5pbnZhbGlkKSB7XHJcblx0XHRcdGFsZXJ0KHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KCdzaGFyZS5zZWxlY3RfdXNlcl90b19zaGFyZScpKTtcclxuXHRcdH0gZWxzZSB7XHJcblx0XHRcdHRoaXMuYWxsb3dVc2Vyc1RvU2hhcmUgPSBbXTtcclxuXHRcdFx0aWYgKFxyXG5cdFx0XHRcdHRoaXMuc2VsZWN0ZWRJdGVtLmVudGl0eS5wcm9wZXJ0aWVzLnNlY3JlY3lMZXZlbCAmJlxyXG5cdFx0XHRcdHRoaXMuc2VsZWN0ZWRJdGVtLmVudGl0eS5wcm9wZXJ0aWVzLnNlY3JlY3lMZXZlbCAhPSAnTm9ybWFsJ1xyXG5cdFx0XHQpIHtcclxuXHRcdFx0XHRyZXR1cm4gdGhpcy5jaGVja0lmQ2FuVmlld1NlY3JldCgpLnBpcGUoXHJcblx0XHRcdFx0XHR0YXAoKHJlcykgPT4ge1xyXG5cdFx0XHRcdFx0XHRpZiAoIXJlcy5sZW5ndGgpIHtcclxuXHRcdFx0XHRcdFx0XHR0aGlzLnNlbGVjdGVkVXNlcnMuZm9yRWFjaCgoZWxlbWVudCkgPT4ge1xyXG5cdFx0XHRcdFx0XHRcdFx0dGhpcy5hbGxvd1VzZXJzVG9TaGFyZS5wdXNoKGVsZW1lbnQucHJvcGVydGllcy51c2VybmFtZSk7XHJcblx0XHRcdFx0XHRcdFx0fSk7XHJcblx0XHRcdFx0XHRcdFx0dGhpcy5kb1NoYXJlKHRoaXMuYWxsb3dVc2Vyc1RvU2hhcmUpO1xyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHR9KVxyXG5cdFx0XHRcdCk7XHJcblx0XHRcdH0gZWxzZSB7XHJcblx0XHRcdFx0dGhpcy5zZWxlY3RlZFVzZXJzLmZvckVhY2goKGVsZW1lbnQpID0+IHtcclxuXHRcdFx0XHRcdHRoaXMuYWxsb3dVc2Vyc1RvU2hhcmUucHVzaChlbGVtZW50LnByb3BlcnRpZXMudXNlcm5hbWUpO1xyXG5cdFx0XHRcdH0pO1xyXG5cdFx0XHRcdHJldHVybiBvZih0aGlzLmFsbG93VXNlcnNUb1NoYXJlKS5waXBlKFxyXG5cdFx0XHRcdFx0dGFwKChhbGxvd1VzZXJzVG9TaGFyZSkgPT4gdGhpcy5kb1NoYXJlKGFsbG93VXNlcnNUb1NoYXJlKSlcclxuXHRcdFx0XHQpO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHRyZXR1cm4gb2YobnVsbCk7XHJcblx0fTtcclxuXHJcblx0b3BlbkRpYWxvZyhmdW5jdGlvblRvRG8sIHVzZXJuYW1lPywgc2hhcmVkTW9kZT8pIHtcclxuXHRcdGxldCBtZXNzYWdlOiBhbnk7XHJcblx0XHRmdW5jdGlvblRvRG8gPT09ICdSZW1fQUxMX3NoYXJlcydcclxuXHRcdFx0PyAobWVzc2FnZSA9ICdjb25maXJtRGlhbG9nLlJlbV9BbGxfc2hhcmVzJylcclxuXHRcdFx0OiAobWVzc2FnZSA9ICdjb25maXJtRGlhbG9nLlJlbV9jdXN0b21fc2hhcmUnKTtcclxuXHRcdGNvbnN0IGRpYWxvZ1JlZiA9IHRoaXMuZGlhbG9nLm9wZW4oQ29uZmlybWF0aW9uRGlhbG9nQ29tcG9uZW50LCB7XHJcblx0XHRcdHdpZHRoOiAnNTEwcHgnLFxyXG5cdFx0XHRkYXRhOiB7XHJcblx0XHRcdFx0dGl0bGU6IHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KCdjb25maXJtRGlhbG9nLmNvbmZpcm0nKSxcclxuXHRcdFx0XHRtZXNzYWdlOiB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudChtZXNzYWdlKSxcclxuXHRcdFx0XHRjb25maXJtQnV0dG9uOiBgQlVUVE9OUy5SZW1vdmVgLFxyXG5cdFx0XHRcdGNhbmNlbEJ1dHRvbjogJ0JVVFRPTlMuQ2FuY2VsJ1xyXG5cdFx0XHR9LFxyXG5cdFx0XHRkaXNhYmxlQ2xvc2U6IHRydWVcclxuXHRcdH0pO1xyXG5cdFx0Ly8gY29uc3QgZGlhbG9nUmVmID0gdGhpcy5mdXNlQ29uZmlybWF0aW9uU2VydmljZS5vcGVuKFxyXG5cdFx0Ly8gICB7XHJcblx0XHQvLyAgICAgZGlzbWlzc2libGU6IHRydWUsXHJcblx0XHQvLyAgICAgdGl0bGU6IHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KFwiY29uZmlybURpYWxvZy5jb25maXJtXCIpLFxyXG5cdFx0Ly8gICAgIG1lc3NhZ2U6IHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KG1lc3NhZ2UpLFxyXG5cdFx0Ly8gICAgIGFjdGlvbnM6IHtcclxuXHRcdC8vICAgICAgIGNvbmZpcm06IHtcclxuXHRcdC8vICAgICAgICAgc2hvdzogdHJ1ZSxcclxuXHRcdC8vICAgICAgICAgbGFiZWw6IHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KFwiQlVUVE9OUy5SZW1vdmVcIiksXHJcblx0XHQvLyAgICAgICAgIGNvbG9yOiBcIndhcm5cIlxyXG5cdFx0Ly8gICAgICAgfSxcclxuXHRcdC8vICAgICAgIGNhbmNlbDoge1xyXG5cdFx0Ly8gICAgICAgICBzaG93OiB0cnVlLFxyXG5cdFx0Ly8gICAgICAgICBsYWJlbDogdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoXCJCVVRUT05TLkNhbmNlbFwiKSxcclxuXHRcdC8vICAgICAgIH1cclxuXHRcdC8vICAgICB9XHJcblx0XHQvLyAgIH1cclxuXHRcdC8vICk7XHJcblx0XHRkaWFsb2dSZWYuYWZ0ZXJDbG9zZWQoKS5zdWJzY3JpYmUoKHJlc3VsdCkgPT4ge1xyXG5cdFx0XHRpZiAocmVzdWx0KSB7XHJcblx0XHRcdFx0aWYgKGZ1bmN0aW9uVG9EbyA9PT0gJ1JlbV9BTExfc2hhcmVzJykge1xyXG5cdFx0XHRcdFx0dGhpcy5zdWJzY3JpcHRpb25zJC5jb25jYXQoW1xyXG5cdFx0XHRcdFx0XHR0aGlzLnNoYXJlZFxyXG5cdFx0XHRcdFx0XHRcdC5yZW1vdmVBbGxTaGFyZXNmb3JEb2NzKHRoaXMuc2VsZWN0ZWRJdGVtLmVudGl0eS51aWQpXHJcblx0XHRcdFx0XHRcdFx0LnN1YnNjcmliZShcclxuXHRcdFx0XHRcdFx0XHRcdChyZXM6IGFueSkgPT4ge1xyXG5cdFx0XHRcdFx0XHRcdFx0XHRpZiAocmVzKSB7XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0dGhpcy50b3N0ZXJTZXJ2aWNlLnNob3coXHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHQnc3VjY2VzcycsXHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHQnVE9BU1RFUi5TVUNDRVNTJyxcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdCdUT0FTVEVSLlJtX0FsbF9TaGFyZXNfc3VjY2VzcydcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHQpO1xyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdHRoaXMuZ2V0TXlTaGFyZSgpO1xyXG5cdFx0XHRcdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdFx0XHR9LFxyXG5cdFx0XHRcdFx0XHRcdFx0KGVycikgPT4ge1xyXG5cdFx0XHRcdFx0XHRcdFx0XHR0aGlzLnRvc3RlclNlcnZpY2Uuc2hvdyhcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHQnZXJyb3InLFxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdCdUT0FTVEVSLkVSUk9SJyxcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHQnVE9BU1RFUi5SbV9BbGxfU2hhcmVzX2ZhaWwnXHJcblx0XHRcdFx0XHRcdFx0XHRcdCk7XHJcblx0XHRcdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdFx0KVxyXG5cdFx0XHRcdFx0XSk7XHJcblx0XHRcdFx0fSBlbHNlIHtcclxuXHRcdFx0XHRcdGxldCBjb250ZXh0ID0ge1xyXG5cdFx0XHRcdFx0XHR1c2VyOiB1c2VybmFtZSxcclxuXHRcdFx0XHRcdFx0bW9kZTogc2hhcmVkTW9kZVxyXG5cdFx0XHRcdFx0fTtcclxuXHRcdFx0XHRcdHRoaXMuc3Vic2NyaXB0aW9ucyQuY29uY2F0KFtcclxuXHRcdFx0XHRcdFx0dGhpcy5zaGFyZWRcclxuXHRcdFx0XHRcdFx0XHQucmVtb3ZlQ3VzdG9tU2hhcmUoY29udGV4dCwgdGhpcy5zZWxlY3RlZEl0ZW0uZW50aXR5LnVpZClcclxuXHRcdFx0XHRcdFx0XHQuc3Vic2NyaWJlKFxyXG5cdFx0XHRcdFx0XHRcdFx0KHJlczogYW55KSA9PiB7XHJcblx0XHRcdFx0XHRcdFx0XHRcdGlmIChyZXMpIHtcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHR0aGlzLnRvc3RlclNlcnZpY2Uuc2hvdyhcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdCdzdWNjZXNzJyxcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdCdUT0FTVEVSLlNVQ0NFU1MnLFxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0J1RPQVNURVIuUmVtX2N1c3RvbV9zaGFyZV9zdWNjZXNzJ1xyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdCk7XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0dGhpcy5nZXRNeVNoYXJlKCk7XHJcblx0XHRcdFx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdFx0XHRcdH0sXHJcblx0XHRcdFx0XHRcdFx0XHQoZXJyKSA9PiB7XHJcblx0XHRcdFx0XHRcdFx0XHRcdHRoaXMudG9zdGVyU2VydmljZS5zaG93KFxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdCdlcnJvcicsXHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0J1RPQVNURVIuRVJST1InLFxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdCdUT0FTVEVSLlJlbV9jdXN0b21fc2hhcmVfZmFpbCdcclxuXHRcdFx0XHRcdFx0XHRcdFx0KTtcclxuXHRcdFx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdFx0XHQpXHJcblx0XHRcdFx0XHRdKTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH0pO1xyXG5cdH1cclxuXHJcblx0Z2V0TXlTaGFyZSgpIHtcclxuXHRcdHRoaXMuc2hhcmVkTGlzdFVzZXIgPSB0aGlzLnNoYXJlZExpc3QgPSBbXTtcclxuXHRcdHRoaXMuc3Vic2NyaXB0aW9ucyQuY29uY2F0KFtcclxuXHRcdFx0dGhpcy5zaGFyZWRcclxuXHRcdFx0XHQuZ2V0U2hhcmVzQnlNZSh0aGlzLnNlbGVjdGVkSXRlbT8uZW50aXR5LnVpZCwgdHJ1ZSlcclxuXHRcdFx0XHQuc3Vic2NyaWJlKChyZXMpID0+IHtcclxuXHRcdFx0XHRcdHRoaXMuc2hhcmVkTGlzdCA9IHJlcztcclxuXHRcdFx0XHRcdGlmICh0aGlzLnNoYXJlZExpc3QubGVuZ3RoKSB7XHJcblx0XHRcdFx0XHRcdHRoaXMuc2hhcmVkTGlzdC5mb3JFYWNoKChlbGVtZW50KSA9PiB7XHJcblx0XHRcdFx0XHRcdFx0dGhpcy5zaGFyZWRMaXN0VXNlci5wdXNoKGVsZW1lbnQudXNlci5wcm9wZXJ0aWVzLnVzZXJuYW1lKTtcclxuXHRcdFx0XHRcdFx0fSk7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fSlcclxuXHRcdF0pO1xyXG5cdH1cclxuXHJcblx0bmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcblx0XHR0aGlzLnN1YnNjcmlwdGlvbnMkLmZvckVhY2goKHN1YikgPT4gc3ViLnVuc3Vic2NyaWJlKCkpO1xyXG5cdH1cclxufVxyXG4iLCI8bmRmLW51eGVvLWRpYWxvZyBkaWFsb2dUaXRsZT1cInt7ICdDUkVBVEUuU0hBUkUnIHwgdHJhbnNsYXRlIH19XCI+XHJcblx0PG5nLXRlbXBsYXRlICNjb250ZW50VGVtcGxhdGU+XHJcblx0XHQ8Zm9ybSBbZm9ybUdyb3VwXT1cInNoYXJlRm9ybVwiIGNsYXNzPVwiaC1mdWxsIHAtNSBvdmVyZmxvdy1hdXRvXCIgU2V0UnRsPlxyXG5cdFx0XHQ8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LWNvbCBqdXN0aWZ5LWJldHdlZW4gaC1mdWxsXCI+XHJcblx0XHRcdFx0PCEtLUZvcm0gU2VjdGlvbi0tPlxyXG5cdFx0XHRcdDxkaXYgY2xhc3M9XCJhZGQtcGVybXNpb24td3JhcHBlclwiPlxyXG5cdFx0XHRcdFx0PHNwYW4gY2xhc3M9XCJ0ZXh0LWdyYXktOTAwIHRleHQtbGdcIj5cclxuXHRcdFx0XHRcdFx0e3sgJ3NoYXJlLnNoYXJlRGlhbG9nVGl0bGUnIHwgdHJhbnNsYXRlIH19XHJcblx0XHRcdFx0XHQ8L3NwYW4+XHJcblx0XHRcdFx0XHQ8ZGl2IGNsYXNzPVwibXQtNSBzZWxlY3RvcnNXcmFwcGVyXCI+XHJcblx0XHRcdFx0XHRcdDxhcHAtc2VsZWN0LXVzZXJzLWJ5LWRlcGFydG1lbnRzXHJcblx0XHRcdFx0XHRcdFx0Zm9ybUNvbnRyb2xOYW1lPVwiZGVwQW5kaXRzVXNlcnNcIlxyXG5cdFx0XHRcdFx0XHRcdFthbGxvd011bHRpcGxlVXNlcnNdPVwidHJ1ZVwiXHJcblx0XHRcdFx0XHRcdFx0W3VzZXJMYWJlbF09XCInc2hhcmUudXNlcnMnIHwgdHJhbnNsYXRlXCJcclxuXHRcdFx0XHRcdFx0XHRbZGVwTGFiZWxdPVwiJ3NoYXJlLkRlcCcgfCB0cmFuc2xhdGVcIlxyXG5cdFx0XHRcdFx0XHRcdFtkaXNwbGF5XT1cIidjb2x1bW4nXCJcclxuXHRcdFx0XHRcdFx0PlxyXG5cdFx0XHRcdFx0XHQ8L2FwcC1zZWxlY3QtdXNlcnMtYnktZGVwYXJ0bWVudHM+XHJcblx0XHRcdFx0XHQ8L2Rpdj5cclxuXHRcdFx0XHRcdDxkaXYgKm5nSWY9XCJmb3JiaWRkZW5Vc2Vycy5sZW5ndGhcIiBjbGFzcz1cImZsZXhcIj5cclxuXHRcdFx0XHRcdFx0PG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgcCBvZiBmb3JiaWRkZW5Vc2VyczsgbGV0IGk7IGFzOiBpbmRleFwiPlxyXG5cdFx0XHRcdFx0XHRcdDxzcGFuIGNsYXNzPVwidGV4dC1yZWQtNTAwIHRleHQtYmFzZVwiPiB7eyBwIH19Jm5ic3A7IDwvc3Bhbj5cclxuXHRcdFx0XHRcdFx0PC9uZy1jb250YWluZXI+XHJcblx0XHRcdFx0XHRcdDxzcGFuIGNsYXNzPVwidGV4dC1yZWQtNTAwIHRleHQtYmFzZVwiPlxyXG5cdFx0XHRcdFx0XHRcdDxwICpuZ0lmPVwiZm9yYmlkZGVuVXNlcnMubGVuZ3RoID09IDFcIj5cclxuXHRcdFx0XHRcdFx0XHRcdHt7ICdzaGFyZS5zaW5nbGVfZm9yYmlkZGVuJyB8IHRyYW5zbGF0ZSB9fVxyXG5cdFx0XHRcdFx0XHRcdDwvcD5cclxuXHRcdFx0XHRcdFx0XHQ8cCAqbmdJZj1cImZvcmJpZGRlblVzZXJzLmxlbmd0aCA+IDFcIj5cclxuXHRcdFx0XHRcdFx0XHRcdHt7ICdzaGFyZS5tdWx0aV9mb3JiaWRkZW4nIHwgdHJhbnNsYXRlIH19XHJcblx0XHRcdFx0XHRcdFx0PC9wPlxyXG5cdFx0XHRcdFx0XHQ8L3NwYW4+XHJcblx0XHRcdFx0XHQ8L2Rpdj5cclxuXHRcdFx0XHRcdDxkaXYgKm5nSWY9XCJzYW1lQ3VycmVudFVzZXJcIj5cclxuXHRcdFx0XHRcdFx0PHNwYW4gY2xhc3M9XCJ0ZXh0LXJlZC01MDAgdGV4dC1iYXNlXCI+XHJcblx0XHRcdFx0XHRcdFx0e3sgJ3NoYXJlLnNoYXJlV2l0aExvZ2dlZEluVXNlcicgfCB0cmFuc2xhdGUgfX1cclxuXHRcdFx0XHRcdFx0PC9zcGFuPlxyXG5cdFx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdFx0XHQ8ZGl2ICpuZ0lmPVwiaXNTaGFyZWRCZWZvcmUubGVuZ3RoXCIgY2xhc3M9XCJmbGV4XCI+XHJcblx0XHRcdFx0XHRcdDxzcGFuIGNsYXNzPVwidGV4dC1yZWQtNTAwIHRleHQtYmFzZVwiPlxyXG5cdFx0XHRcdFx0XHRcdHt7ICdzaGFyZS5zaGFyZV9leGlzdHMnIHwgdHJhbnNsYXRlIH19XHJcblx0XHRcdFx0XHRcdFx0PG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgcCBvZiBpc1NoYXJlZEJlZm9yZVwiPlxyXG5cdFx0XHRcdFx0XHRcdFx0e3sgcCB9fVxyXG5cdFx0XHRcdFx0XHRcdDwvbmctY29udGFpbmVyPlxyXG5cdFx0XHRcdFx0XHRcdHt7ICdzaGFyZS5iZWZvcmUnIHwgdHJhbnNsYXRlIH19XHJcblx0XHRcdFx0XHRcdDwvc3Bhbj5cclxuXHRcdFx0XHRcdDwvZGl2PlxyXG5cdFx0XHRcdFx0PGRpdiBjbGFzcz1cIm10LTQgcmlnaHRzU2VsZWN0b3JcIj5cclxuXHRcdFx0XHRcdFx0PGxhYmVsIGNsYXNzPVwidGV4dC1iYXNlIGZvbnQtYm9sZCBtYi0wXCI+XHJcblx0XHRcdFx0XHRcdFx0e3sgJ3NoYXJlLlJpZ2h0cycgfCB0cmFuc2xhdGUgfX1cclxuXHRcdFx0XHRcdFx0XHQ8c3BhbiBjbGFzcz1cInRleHQtZGFuZ2VyXCI+Kjwvc3Bhbj5cclxuXHRcdFx0XHRcdFx0PC9sYWJlbD5cclxuXHRcdFx0XHRcdFx0PG5nLXNlbGVjdFxyXG5cdFx0XHRcdFx0XHRcdFtpdGVtc109XCJyaWdodHNcIlxyXG5cdFx0XHRcdFx0XHRcdGJpbmRMYWJlbD1cImxhYmVsXCJcclxuXHRcdFx0XHRcdFx0XHRiaW5kVmFsdWU9XCJ2YWx1ZVwiXHJcblx0XHRcdFx0XHRcdFx0W3BsYWNlaG9sZGVyXT1cIidwZXJtaXNzaW9uLnJpZ2h0c1BsYWNlaG9sZGVyJyB8IHRyYW5zbGF0ZVwiXHJcblx0XHRcdFx0XHRcdFx0Zm9ybUNvbnRyb2xOYW1lPVwicmlnaHRzXCJcclxuXHRcdFx0XHRcdFx0XHQoY2hhbmdlKT1cInNldFJpZ2h0KCRldmVudClcIlxyXG5cdFx0XHRcdFx0XHQ+XHJcblx0XHRcdFx0XHRcdDwvbmctc2VsZWN0PlxyXG5cdFx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdFx0XHQ8ZGl2ICpuZ0lmPVwic2hhcmVkTGlzdC5sZW5ndGhcIiBjbGFzcz1cIm10LTRcIj5cclxuXHRcdFx0XHRcdFx0PGRpdj5cclxuXHRcdFx0XHRcdFx0XHQ8bGFiZWwgY2xhc3M9XCJ0ZXh0LWJhc2UgZm9udC1ib2xkIG1iLTBcIj5cclxuXHRcdFx0XHRcdFx0XHRcdHt7ICdzaGFyZS5maWxlVXJsJyB8IHRyYW5zbGF0ZSB9fVxyXG5cdFx0XHRcdFx0XHRcdDwvbGFiZWw+XHJcblx0XHRcdFx0XHRcdFx0PGRpdiBjbGFzcz1cImZsZXggcmVsYXRpdmVcIj5cclxuXHRcdFx0XHRcdFx0XHRcdDxpbnB1dFxyXG5cdFx0XHRcdFx0XHRcdFx0XHQjZmlsZVVybFxyXG5cdFx0XHRcdFx0XHRcdFx0XHRbdmFsdWVdPVwic2hhcmVhYmxlVXJsXCJcclxuXHRcdFx0XHRcdFx0XHRcdFx0ZGlzYWJsZWRcclxuXHRcdFx0XHRcdFx0XHRcdFx0Y2xhc3M9XCJhcHBlYXJhbmNlLW5vbmUgYmxvY2sgdy1mdWxsIGJnLWFjY2VudC0xMDAgdGV4dC1ncmF5LTcwMCBib3JkZXIgYm9yZGVyLWdyYXktMjAwIHJvdW5kZWQgcHktMi41IHB4LTQgbGVhZGluZy10aWdodCBmb2N1czpvdXRsaW5lLW5vbmUgZm9jdXM6Ymctd2hpdGUgZm9jdXM6Ym9yZGVyLWdyYXktNTAwXCJcclxuXHRcdFx0XHRcdFx0XHRcdFx0dHlwZT1cInRleHRcIlxyXG5cdFx0XHRcdFx0XHRcdFx0Lz5cclxuXHRcdFx0XHRcdFx0XHRcdDxidXR0b25cclxuXHRcdFx0XHRcdFx0XHRcdFx0Y2xhc3M9XCJhYnNvbHV0ZSBwdC0yLjUgYmctYWNjZW50LTEwMFwiXHJcblx0XHRcdFx0XHRcdFx0XHRcdFttYXRUb29sdGlwXT1cIidCVVRUT05TLkNPUFknIHwgdHJhbnNsYXRlXCJcclxuXHRcdFx0XHRcdFx0XHRcdFx0W25nQ2xhc3NdPVwibG9jYWxlID09PSAnZW4nID8gJ3JpZ2h0LTInIDogJ2xlZnQtMidcIlxyXG5cdFx0XHRcdFx0XHRcdFx0XHRbY2RrQ29weVRvQ2xpcGJvYXJkXT1cImZpbGVVcmwudmFsdWVcIlxyXG5cdFx0XHRcdFx0XHRcdFx0XHQoY2xpY2spPVwiY29weSgpXCJcclxuXHRcdFx0XHRcdFx0XHRcdD5cclxuXHRcdFx0XHRcdFx0XHRcdFx0PG1hdC1pY29uXHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0c3ZnSWNvbj1cIm1hdF9zb2xpZDpjb250ZW50X2NvcHlcIlxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdGNsYXNzPVwiaWNvbi1zaXplLTZcIlxyXG5cdFx0XHRcdFx0XHRcdFx0XHQ+PC9tYXQtaWNvbj5cclxuXHRcdFx0XHRcdFx0XHRcdDwvYnV0dG9uPlxyXG5cdFx0XHRcdFx0XHRcdFx0PGRpdlxyXG5cdFx0XHRcdFx0XHRcdFx0XHQqbmdJZj1cImNvcGllZFwiXHJcblx0XHRcdFx0XHRcdFx0XHRcdGNsYXNzPVwiZmxleCBhYnNvbHV0ZSBqdXN0aWZ5LWFyb3VuZCB3LTI0IC1tdC0xMCBib3JkZXIgYm9yZGVyLXJlZC03MDAgaC03IHJvdW5kZWQgYmctZ3JheS0yMDBcIlxyXG5cdFx0XHRcdFx0XHRcdFx0XHRbbmdDbGFzc109XCJsb2NhbGUgPT09ICdlbicgPyAncmlnaHQtMCcgOiAnbGVmdC0wJ1wiXHJcblx0XHRcdFx0XHRcdFx0XHQ+XHJcblx0XHRcdFx0XHRcdFx0XHRcdDxkaXZcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRjbGFzcz1cInctMyBoLTMganVzdGlmeS1jZW50ZXIgYmctZ3JheS0yMDAgdHJhbnNmb3JtIHJvdGF0ZS00NSBib3JkZXIgbXQtNSBib3JkZXJzLWNvbG9yXCJcclxuXHRcdFx0XHRcdFx0XHRcdFx0PjwvZGl2PlxyXG5cdFx0XHRcdFx0XHRcdFx0XHQ8c3BhbiBjbGFzcz1cImFic29sdXRlIGZvbnQtZXh0cmFsaWdodFwiPnt7XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0J3NoYXJlLmNvcGllZCcgfCB0cmFuc2xhdGVcclxuXHRcdFx0XHRcdFx0XHRcdFx0fX08L3NwYW4+XHJcblx0XHRcdFx0XHRcdFx0XHQ8L2Rpdj5cclxuXHRcdFx0XHRcdFx0XHQ8L2Rpdj5cclxuXHRcdFx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdFx0XHQ8L2Rpdj5cclxuXHRcdFx0XHQ8L2Rpdj5cclxuXHRcdFx0XHQ8IS0tU2hhcmVzIFNlY3Rpb24tLT5cclxuXHRcdFx0XHQ8ZGl2ICpuZ0lmPVwic2hhcmVkTGlzdC5sZW5ndGhcIj5cclxuXHRcdFx0XHRcdDxkaXZcclxuXHRcdFx0XHRcdFx0Y2xhc3M9XCJmbGV4IGZsZXgtcm93IGp1c3RpZnktYmV0d2VlbiBoLTcgYm9yZGVyLWItMiBib3JkZXItYWNjZW50LTEwMCBtdC0yXCJcclxuXHRcdFx0XHRcdD5cclxuXHRcdFx0XHRcdFx0PHNwYW4gY2xhc3M9XCJ0ZXh0LWJhc2UgZm9udC1ib2xkXCI+XHJcblx0XHRcdFx0XHRcdFx0e3sgJ3NoYXJlLnNoYXJlcycgfCB0cmFuc2xhdGUgfX1cclxuXHRcdFx0XHRcdFx0PC9zcGFuPlxyXG5cdFx0XHRcdFx0XHQ8YnV0dG9uXHJcblx0XHRcdFx0XHRcdFx0bWF0LWljb24tYnV0dG9uXHJcblx0XHRcdFx0XHRcdFx0KnBlcm1pc3Npb249XCJ7XHJcblx0XHRcdFx0XHRcdFx0XHRuYW1lOiAnY2FuUmVtb3ZlU2hhcmUnLFxyXG5cdFx0XHRcdFx0XHRcdFx0ZW50aXR5OiBzZWxlY3RlZEl0ZW0uZW50aXR5XHJcblx0XHRcdFx0XHRcdFx0fVwiXHJcblx0XHRcdFx0XHRcdFx0bWF0VG9vbHRpcD1cInt7ICdzaGFyZS5SbV9BbGxfc2hhcmVzJyB8IHRyYW5zbGF0ZSB9fVwiXHJcblx0XHRcdFx0XHRcdFx0KGNsaWNrKT1cIm9wZW5EaWFsb2coJ1JlbV9BTExfc2hhcmVzJylcIlxyXG5cdFx0XHRcdFx0XHQ+XHJcblx0XHRcdFx0XHRcdFx0PG1hdC1pY29uXHJcblx0XHRcdFx0XHRcdFx0XHRbc3ZnSWNvbl09XCInaGVyb2ljb25zX291dGxpbmU6dHJhc2gnXCJcclxuXHRcdFx0XHRcdFx0XHRcdFtuZ0NsYXNzXT1cImxvY2FsZSA9PT0gJ2VuJyA/ICdtci0yJyA6ICdtbC0yJ1wiXHJcblx0XHRcdFx0XHRcdFx0PjwvbWF0LWljb24+XHJcblx0XHRcdFx0XHRcdDwvYnV0dG9uPlxyXG5cdFx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdFx0XHQ8ZGl2IGNsYXNzPVwiaC01MiBvdmVyZmxvdy15LWF1dG9cIj5cclxuXHRcdFx0XHRcdFx0PGRpdiBjbGFzcz1cImZsZXggZmxleC1yb3cganVzdGlmeS1iZXR3ZWVuIG10LTIuNVwiPlxyXG5cdFx0XHRcdFx0XHRcdDxzcGFuIGNsYXNzPVwidy0xLzIgdGV4dC1iYXNlIGZvbnQtYm9sZFwiPnt7XHJcblx0XHRcdFx0XHRcdFx0XHQnc2hhcmUuc2hhcmVXaXRoJyB8IHRyYW5zbGF0ZVxyXG5cdFx0XHRcdFx0XHRcdH19PC9zcGFuPlxyXG5cdFx0XHRcdFx0XHRcdDxzcGFuIGNsYXNzPVwidy0xLzQgdGV4dC1iYXNlIGZvbnQtYm9sZFwiPnt7XHJcblx0XHRcdFx0XHRcdFx0XHQnc2hhcmUuc2hhcmVfZGF0ZScgfCB0cmFuc2xhdGVcclxuXHRcdFx0XHRcdFx0XHR9fTwvc3Bhbj5cclxuXHRcdFx0XHRcdFx0XHQ8c3BhbiBjbGFzcz1cInctMS80IHRleHQtYmFzZSBmb250LWJvbGRcIj57e1xyXG5cdFx0XHRcdFx0XHRcdFx0J3NoYXJlLnBlcm1pc3Npb24nIHwgdHJhbnNsYXRlXHJcblx0XHRcdFx0XHRcdFx0fX08L3NwYW4+XHJcblx0XHRcdFx0XHRcdFx0PHNwYW4+Jm5ic3A7PC9zcGFuPlxyXG5cdFx0XHRcdFx0XHQ8L2Rpdj5cclxuXHRcdFx0XHRcdFx0PG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgZCBvZiBzaGFyZWRMaXN0XCI+XHJcblx0XHRcdFx0XHRcdFx0PGRpdiBjbGFzcz1cImZsZXggZmxleC1yb3cganVzdGlmeS1iZXR3ZWVuIG10LTIuNVwiPlxyXG5cdFx0XHRcdFx0XHRcdFx0PGRpdiBjbGFzcz1cImZsZXggZmxleC1yb3cgdy0xLzJcIj5cclxuXHRcdFx0XHRcdFx0XHRcdFx0PGRpdiBjbGFzcz1cImZsZXgtMCB3LTggaC04IHJvdW5kZWQtZnVsbCBvdmVyZmxvdy1oaWRkZW5cIj5cclxuXHRcdFx0XHRcdFx0XHRcdFx0XHQ8Y3RzLWF2YXRhclxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0W3VzZXJdPVwie1xyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRwcm9wZXJ0aWVzOiB7XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0Zmlyc3ROYW1lOiBkLnVzZXIucHJvcGVydGllcz8uZmlyc3ROYW1lLFxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdGxhc3ROYW1lOiBkLnVzZXIucHJvcGVydGllcz8ubGFzdE5hbWVcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0fVwiXHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0PlxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdDwvY3RzLWF2YXRhcj5cclxuXHRcdFx0XHRcdFx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdFx0XHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtY29sIC1tdC0yIHB4LTIgYnJlYWstYWxsXCI+XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0PHNwYW4+e3sgZC51c2VyLmZ1bGxOYW1lIH19PC9zcGFuPlxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdDxzcGFuPnt7IGQudXNlci5wcm9wZXJ0aWVzLmVtYWlsIH19PC9zcGFuPlxyXG5cdFx0XHRcdFx0XHRcdFx0XHQ8L2Rpdj5cclxuXHRcdFx0XHRcdFx0XHRcdDwvZGl2PlxyXG5cdFx0XHRcdFx0XHRcdFx0PGRpdiBjbGFzcz1cInctMS80IG10LTEuNSBicmVhay1hbGwgcHgtMi41XCI+XHJcblx0XHRcdFx0XHRcdFx0XHRcdDxzcGFuPnt7XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0ZC5zaGFyZWREYXRlXHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHR8IGxvY2FsaXplZERhdGVcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0OiAnZGQgTU1NTSB5eXl5J1xyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHQ6IChpc0FyYWJpYyA/ICdhci1BUicgOiAnZW4tVVMnKVxyXG5cdFx0XHRcdFx0XHRcdFx0XHR9fTwvc3Bhbj5cclxuXHRcdFx0XHRcdFx0XHRcdDwvZGl2PlxyXG5cdFx0XHRcdFx0XHRcdFx0PGRpdiBjbGFzcz1cInctMS80IG10LTEuNSBicmVhay1hbGwgcHgtNFwiPlxyXG5cdFx0XHRcdFx0XHRcdFx0XHQ8c3Bhbj57eyAncmlnaHRzLicgKyBkLnNoYXJlZE1vZGUgfCB0cmFuc2xhdGUgfX08L3NwYW4+XHJcblx0XHRcdFx0XHRcdFx0XHQ8L2Rpdj5cclxuXHRcdFx0XHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJtdC0xLjVcIj5cclxuXHRcdFx0XHRcdFx0XHRcdFx0PGJ1dHRvblxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdG1hdC1pY29uLWJ1dHRvblxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdCpwZXJtaXNzaW9uPVwie1xyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0bmFtZTogJ2NhblJlbW92ZVNoYXJlJyxcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdGVudGl0eTogc2VsZWN0ZWRJdGVtLmVudGl0eVxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdH1cIlxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdG1hdFRvb2x0aXA9XCJ7eyAnc2hhcmUuUm1fY3VzdG9tX3NoYXJlJyB8IHRyYW5zbGF0ZSB9fVwiXHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0KGNsaWNrKT1cIlxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0b3BlbkRpYWxvZyhcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0J1JlbV9jdXN0b21fc2hhcmUnLFxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRkLnVzZXIucHJvcGVydGllcy51c2VybmFtZSxcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0ZC5zaGFyZWRNb2RlXHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHQpXHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0XCJcclxuXHRcdFx0XHRcdFx0XHRcdFx0PlxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdDxpXHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHRjbGFzcz1cIm1zLUljb24gbXMtSWNvbi0tQ2hyb21lQ2xvc2VcIlxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0YXJpYS1oaWRkZW49XCJ0cnVlXCJcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFtuZ0NsYXNzXT1cImxvY2FsZSA9PT0gJ2VuJyA/ICdtci0yLjUnIDogJ21sLTIuNSdcIlxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdD48L2k+XHJcblx0XHRcdFx0XHRcdFx0XHRcdDwvYnV0dG9uPlxyXG5cdFx0XHRcdFx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdFx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdFx0XHRcdDwvbmctY29udGFpbmVyPlxyXG5cdFx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdDwvZGl2PlxyXG5cdFx0PC9mb3JtPlxyXG5cdDwvbmctdGVtcGxhdGU+XHJcblxyXG5cdDxuZy10ZW1wbGF0ZSAjYWN0aW9uc1RlbXBsYXRlIGxldC1kaWFsb2c9XCJkaWFsb2dcIj5cclxuXHRcdDxidXR0b25cclxuXHRcdFx0Y2xhc3M9XCJzdWJtaXNzaW9uLWJ1dHRvblwiXHJcblx0XHRcdFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXHJcblx0XHRcdChjbGljayk9XCJkaWFsb2cuZXhlY3V0ZUFjdGlvbihzaGFyZSlcIlxyXG5cdFx0PlxyXG5cdFx0XHR7eyAnc2hhcmUuc2hhcmVCdXR0b24nIHwgdHJhbnNsYXRlIH19XHJcblx0XHQ8L2J1dHRvbj5cclxuXHQ8L25nLXRlbXBsYXRlPlxyXG48L25kZi1udXhlby1kaWFsb2c+XHJcbiJdfQ==