nuxeo-development-framework 6.0.7 → 6.0.9

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 (870) hide show
  1. package/bundles/nuxeo-development-framework.umd.js +289 -364
  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 +2 -2
  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 +2 -2
  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 +2 -2
  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 +2 -2
  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 +261 -179
  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
@@ -67,4 +67,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
67
67
  ],
68
68
  }]
69
69
  }] });
70
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy12aWV3Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL251eGVvLWRldmVsb3BtZW50LWZyYW1ld29yay9zcmMvbGliL2NvbXBvbmVudHMvZHluYW1pYy12aWV3L2R5bmFtaWMtdmlldy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUMxRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUNuRixPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQztBQUN0RixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUMxRSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDdkQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDMUUsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0saURBQWlELENBQUM7QUFDNUYsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0saURBQWlELENBQUM7QUFDM0YsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sK0NBQStDLENBQUM7QUFDeEYsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sMkRBQTJELENBQUM7QUFDMUcsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7O0FBQzdEOzs7R0FHRztBQTBCSCxNQUFNLE9BQU8saUJBQWlCOzsrR0FBakIsaUJBQWlCO2dIQUFqQixpQkFBaUIsaUJBdkIxQixtQkFBbUI7UUFDbkIsc0JBQXNCO1FBQ3RCLHVCQUF1QjtRQUN2QixtQkFBbUI7UUFDbkIsbUJBQW1CO1FBQ25CLHlCQUF5QjtRQUN6Qix3QkFBd0I7UUFDeEIsdUJBQXVCO1FBQ3ZCLDZCQUE2QixhQUVyQixZQUFZLEVBQUUsZUFBZSxFQUFFLFdBQVcsRUFBRSxZQUFZLEVBQUcsZ0JBQWdCLGFBRW5GLG1CQUFtQjtRQUNuQixzQkFBc0I7UUFDdEIsbUJBQW1CO1FBQ25CLHVCQUF1QjtRQUN2QixtQkFBbUI7UUFDbkIseUJBQXlCO1FBQ3pCLHdCQUF3QjtRQUN4Qix1QkFBdUI7UUFDdkIsNkJBQTZCO2dIQUdwQixpQkFBaUIsWUFibkIsQ0FBQyxZQUFZLEVBQUUsZUFBZSxFQUFFLFdBQVcsRUFBRSxZQUFZLEVBQUcsZ0JBQWdCLENBQUM7NEZBYTNFLGlCQUFpQjtrQkF6QjdCLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFO3dCQUNaLG1CQUFtQjt3QkFDbkIsc0JBQXNCO3dCQUN0Qix1QkFBdUI7d0JBQ3ZCLG1CQUFtQjt3QkFDbkIsbUJBQW1CO3dCQUNuQix5QkFBeUI7d0JBQ3pCLHdCQUF3Qjt3QkFDeEIsdUJBQXVCO3dCQUN2Qiw2QkFBNkI7cUJBQzlCO29CQUNELE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxlQUFlLEVBQUUsV0FBVyxFQUFFLFlBQVksRUFBRyxnQkFBZ0IsQ0FBQztvQkFDdEYsT0FBTyxFQUFFO3dCQUNQLG1CQUFtQjt3QkFDbkIsc0JBQXNCO3dCQUN0QixtQkFBbUI7d0JBQ25CLHVCQUF1Qjt3QkFDdkIsbUJBQW1CO3dCQUNuQix5QkFBeUI7d0JBQ3pCLHdCQUF3Qjt3QkFDeEIsdUJBQXVCO3dCQUN2Qiw2QkFBNkI7cUJBQzlCO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgQXZhdGFyTW9kdWxlIH0gZnJvbSAnLi4vYXZhdGFyL2F2YXRhci5tb2R1bGUnO1xyXG5pbXBvcnQgeyBUcmFuc2xhdGVNb2R1bGUgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcclxuaW1wb3J0IHsgRGF0YVZpZXdlckNvbXBvbmVudCB9IGZyb20gJy4vZGF0YS12aWV3ZXIvZGF0YS12aWV3ZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQm9vbGVhblZpZXdlckNvbXBvbmVudCB9IGZyb20gJy4vYm9vbGVhbi12aWV3ZXIvYm9vbGVhbi12aWV3ZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRHJvcGRvd25WaWV3ZXJDb21wb25lbnQgfSBmcm9tICcuL2Ryb3Bkb3duLXZpZXdlci9kcm9wZG93bi12aWV3ZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRGF0ZVZpZXdlckNvbXBvbmVudCB9IGZyb20gJy4vZGF0ZS12aWV3ZXIvZGF0ZS12aWV3ZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgUGlwZXNNb2R1bGUgfSBmcm9tICcuLi8uLi9waXBlcy9waXBlcy5tb2R1bGUnO1xyXG5pbXBvcnQgeyBMaXN0Vmlld2VyQ29tcG9uZW50IH0gZnJvbSAnLi9saXN0LXZpZXdlci9saXN0LXZpZXdlci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBEZXBhcnRtZW50Vmlld2VyQ29tcG9uZW50IH0gZnJvbSAnLi9kZXBhcnRtZW50LXZpZXdlci9kZXBhcnRtZW50LXZpZXdlci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDdXRvbWVWb2NWaWV3ZXJDb21wb25lbnQgfSBmcm9tICcuL2N1dG9tZS12b2Mtdmlld2VyL2N1dG9tZS12b2Mtdmlld2VyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEN1c3RvbVBwVmlld2VyQ29tcG9uZW50IH0gZnJvbSAnLi9jdXN0b20tcHAtdmlld2VyL2N1c3RvbS1wcC12aWV3ZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ3VzdG9tRG9jdW1lbnRWaWV3ZXJDb21wb25lbnQgfSBmcm9tICcuL2N1c3RvbS1kb2N1bWVudC12aWV3ZXIvY3VzdG9tLWRvY3VtZW50LXZpZXdlci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBNYXRUb29sdGlwTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdG9vbHRpcCc7XHJcbi8qKlxyXG4gKiBAdGl0bGVcclxuICogRHluYW1pYyB2aWV3IG1vZHVsZVxyXG4gKi9cclxuQE5nTW9kdWxlKHtcclxuICBkZWNsYXJhdGlvbnM6IFtcclxuICAgIERhdGFWaWV3ZXJDb21wb25lbnQsXHJcbiAgICBCb29sZWFuVmlld2VyQ29tcG9uZW50LFxyXG4gICAgRHJvcGRvd25WaWV3ZXJDb21wb25lbnQsXHJcbiAgICBEYXRlVmlld2VyQ29tcG9uZW50LFxyXG4gICAgTGlzdFZpZXdlckNvbXBvbmVudCxcclxuICAgIERlcGFydG1lbnRWaWV3ZXJDb21wb25lbnQsXHJcbiAgICBDdXRvbWVWb2NWaWV3ZXJDb21wb25lbnQsXHJcbiAgICBDdXN0b21QcFZpZXdlckNvbXBvbmVudCxcclxuICAgIEN1c3RvbURvY3VtZW50Vmlld2VyQ29tcG9uZW50LFxyXG4gIF0sXHJcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgVHJhbnNsYXRlTW9kdWxlLCBQaXBlc01vZHVsZSwgQXZhdGFyTW9kdWxlICwgTWF0VG9vbHRpcE1vZHVsZV0sXHJcbiAgZXhwb3J0czogW1xyXG4gICAgRGF0YVZpZXdlckNvbXBvbmVudCxcclxuICAgIEJvb2xlYW5WaWV3ZXJDb21wb25lbnQsXHJcbiAgICBEYXRlVmlld2VyQ29tcG9uZW50LFxyXG4gICAgRHJvcGRvd25WaWV3ZXJDb21wb25lbnQsXHJcbiAgICBMaXN0Vmlld2VyQ29tcG9uZW50LFxyXG4gICAgRGVwYXJ0bWVudFZpZXdlckNvbXBvbmVudCxcclxuICAgIEN1dG9tZVZvY1ZpZXdlckNvbXBvbmVudCxcclxuICAgIEN1c3RvbVBwVmlld2VyQ29tcG9uZW50LFxyXG4gICAgQ3VzdG9tRG9jdW1lbnRWaWV3ZXJDb21wb25lbnRcclxuICBdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgRHluYW1pY1ZpZXdNb2R1bGUge31cclxuIl19
70
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy12aWV3Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9udXhlby1kZXZlbG9wbWVudC1mcmFtZXdvcmsvc3JjL2xpYi9jb21wb25lbnRzL2R5bmFtaWMtdmlldy9keW5hbWljLXZpZXcubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdEQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDMUUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDbkYsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sNkNBQTZDLENBQUM7QUFDdEYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDMUUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBQzVGLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBQzNGLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQ3hGLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLDJEQUEyRCxDQUFDO0FBQzFHLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDOztBQUM3RDs7O0dBR0c7QUEwQkgsTUFBTSxPQUFPLGlCQUFpQjs7K0dBQWpCLGlCQUFpQjtnSEFBakIsaUJBQWlCLGlCQXZCMUIsbUJBQW1CO1FBQ25CLHNCQUFzQjtRQUN0Qix1QkFBdUI7UUFDdkIsbUJBQW1CO1FBQ25CLG1CQUFtQjtRQUNuQix5QkFBeUI7UUFDekIsd0JBQXdCO1FBQ3hCLHVCQUF1QjtRQUN2Qiw2QkFBNkIsYUFFckIsWUFBWSxFQUFFLGVBQWUsRUFBRSxXQUFXLEVBQUUsWUFBWSxFQUFHLGdCQUFnQixhQUVuRixtQkFBbUI7UUFDbkIsc0JBQXNCO1FBQ3RCLG1CQUFtQjtRQUNuQix1QkFBdUI7UUFDdkIsbUJBQW1CO1FBQ25CLHlCQUF5QjtRQUN6Qix3QkFBd0I7UUFDeEIsdUJBQXVCO1FBQ3ZCLDZCQUE2QjtnSEFHcEIsaUJBQWlCLFlBYm5CLENBQUMsWUFBWSxFQUFFLGVBQWUsRUFBRSxXQUFXLEVBQUUsWUFBWSxFQUFHLGdCQUFnQixDQUFDOzRGQWEzRSxpQkFBaUI7a0JBekI3QixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRTt3QkFDWixtQkFBbUI7d0JBQ25CLHNCQUFzQjt3QkFDdEIsdUJBQXVCO3dCQUN2QixtQkFBbUI7d0JBQ25CLG1CQUFtQjt3QkFDbkIseUJBQXlCO3dCQUN6Qix3QkFBd0I7d0JBQ3hCLHVCQUF1Qjt3QkFDdkIsNkJBQTZCO3FCQUM5QjtvQkFDRCxPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsZUFBZSxFQUFFLFdBQVcsRUFBRSxZQUFZLEVBQUcsZ0JBQWdCLENBQUM7b0JBQ3RGLE9BQU8sRUFBRTt3QkFDUCxtQkFBbUI7d0JBQ25CLHNCQUFzQjt3QkFDdEIsbUJBQW1CO3dCQUNuQix1QkFBdUI7d0JBQ3ZCLG1CQUFtQjt3QkFDbkIseUJBQXlCO3dCQUN6Qix3QkFBd0I7d0JBQ3hCLHVCQUF1Qjt3QkFDdkIsNkJBQTZCO3FCQUM5QjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IEF2YXRhck1vZHVsZSB9IGZyb20gJy4uL2F2YXRhci9hdmF0YXIubW9kdWxlJztcclxuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XHJcbmltcG9ydCB7IERhdGFWaWV3ZXJDb21wb25lbnQgfSBmcm9tICcuL2RhdGEtdmlld2VyL2RhdGEtdmlld2VyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEJvb2xlYW5WaWV3ZXJDb21wb25lbnQgfSBmcm9tICcuL2Jvb2xlYW4tdmlld2VyL2Jvb2xlYW4tdmlld2VyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IERyb3Bkb3duVmlld2VyQ29tcG9uZW50IH0gZnJvbSAnLi9kcm9wZG93bi12aWV3ZXIvZHJvcGRvd24tdmlld2VyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IERhdGVWaWV3ZXJDb21wb25lbnQgfSBmcm9tICcuL2RhdGUtdmlld2VyL2RhdGUtdmlld2VyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFBpcGVzTW9kdWxlIH0gZnJvbSAnLi4vLi4vcGlwZXMvcGlwZXMubW9kdWxlJztcclxuaW1wb3J0IHsgTGlzdFZpZXdlckNvbXBvbmVudCB9IGZyb20gJy4vbGlzdC12aWV3ZXIvbGlzdC12aWV3ZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRGVwYXJ0bWVudFZpZXdlckNvbXBvbmVudCB9IGZyb20gJy4vZGVwYXJ0bWVudC12aWV3ZXIvZGVwYXJ0bWVudC12aWV3ZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ3V0b21lVm9jVmlld2VyQ29tcG9uZW50IH0gZnJvbSAnLi9jdXRvbWUtdm9jLXZpZXdlci9jdXRvbWUtdm9jLXZpZXdlci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDdXN0b21QcFZpZXdlckNvbXBvbmVudCB9IGZyb20gJy4vY3VzdG9tLXBwLXZpZXdlci9jdXN0b20tcHAtdmlld2VyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEN1c3RvbURvY3VtZW50Vmlld2VyQ29tcG9uZW50IH0gZnJvbSAnLi9jdXN0b20tZG9jdW1lbnQtdmlld2VyL2N1c3RvbS1kb2N1bWVudC12aWV3ZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTWF0VG9vbHRpcE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Rvb2x0aXAnO1xyXG4vKipcclxuICogQHRpdGxlXHJcbiAqIER5bmFtaWMgdmlldyBtb2R1bGVcclxuICovXHJcbkBOZ01vZHVsZSh7XHJcbiAgZGVjbGFyYXRpb25zOiBbXHJcbiAgICBEYXRhVmlld2VyQ29tcG9uZW50LFxyXG4gICAgQm9vbGVhblZpZXdlckNvbXBvbmVudCxcclxuICAgIERyb3Bkb3duVmlld2VyQ29tcG9uZW50LFxyXG4gICAgRGF0ZVZpZXdlckNvbXBvbmVudCxcclxuICAgIExpc3RWaWV3ZXJDb21wb25lbnQsXHJcbiAgICBEZXBhcnRtZW50Vmlld2VyQ29tcG9uZW50LFxyXG4gICAgQ3V0b21lVm9jVmlld2VyQ29tcG9uZW50LFxyXG4gICAgQ3VzdG9tUHBWaWV3ZXJDb21wb25lbnQsXHJcbiAgICBDdXN0b21Eb2N1bWVudFZpZXdlckNvbXBvbmVudCxcclxuICBdLFxyXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIFRyYW5zbGF0ZU1vZHVsZSwgUGlwZXNNb2R1bGUsIEF2YXRhck1vZHVsZSAsIE1hdFRvb2x0aXBNb2R1bGVdLFxyXG4gIGV4cG9ydHM6IFtcclxuICAgIERhdGFWaWV3ZXJDb21wb25lbnQsXHJcbiAgICBCb29sZWFuVmlld2VyQ29tcG9uZW50LFxyXG4gICAgRGF0ZVZpZXdlckNvbXBvbmVudCxcclxuICAgIERyb3Bkb3duVmlld2VyQ29tcG9uZW50LFxyXG4gICAgTGlzdFZpZXdlckNvbXBvbmVudCxcclxuICAgIERlcGFydG1lbnRWaWV3ZXJDb21wb25lbnQsXHJcbiAgICBDdXRvbWVWb2NWaWV3ZXJDb21wb25lbnQsXHJcbiAgICBDdXN0b21QcFZpZXdlckNvbXBvbmVudCxcclxuICAgIEN1c3RvbURvY3VtZW50Vmlld2VyQ29tcG9uZW50XHJcbiAgXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIER5bmFtaWNWaWV3TW9kdWxlIHt9XHJcbiJdfQ==
@@ -59,4 +59,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
59
59
  providedIn: 'root'
60
60
  }]
61
61
  }], ctorParameters: function () { return []; } });
62
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy12aWV3ZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9keW5hbWljLXZpZXcvZHluYW1pYy12aWV3ZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBSzNDLE1BQU0sT0FBTyxtQkFBbUI7SUFHOUI7UUFEQSx1QkFBa0IsR0FBRyxFQUFFLENBQUE7UUFFckIsSUFBSSxDQUFDLHNCQUFzQixFQUFFLENBQUM7SUFDaEMsQ0FBQztJQUVELHNCQUFzQjtRQUNwQixJQUFHLFlBQVksQ0FBQyxPQUFPLENBQUMsbUJBQW1CLENBQUMsRUFBQztZQUMzQyxJQUFJLENBQUMsa0JBQWtCLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLG1CQUFtQixDQUFDLENBQUMsQ0FBQztTQUNqRjthQUFJO1lBQ0gsSUFBSSxDQUFDLGtCQUFrQixHQUFHLEVBQUUsQ0FBQztTQUM5QjtJQUNILENBQUM7SUFFRCxlQUFlLENBQUMsSUFBSTtRQUNsQixPQUFPO1lBQ0wsSUFBSSxFQUFHLElBQUk7WUFDWCxJQUFJLEVBQUcsSUFBSSxJQUFJLEVBQUU7U0FDbEIsQ0FBQTtJQUNILENBQUM7SUFFRCxjQUFjLENBQUMsSUFBSTtRQUNqQixJQUFJLEdBQUcsR0FBUyxJQUFJLElBQUksRUFBRSxDQUFDO1FBQzNCLElBQUksT0FBTyxHQUFRLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2xDLElBQUksSUFBSSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQy9ELElBQUcsSUFBSSxHQUFFLENBQUMsRUFBQztZQUNULE9BQU8sSUFBSSxDQUFBO1NBQ1o7YUFBSTtZQUNILE9BQU8sS0FBSyxDQUFBO1NBQ2I7SUFDSCxDQUFDO0lBRUQsNEJBQTRCLENBQUMsRUFBRTtRQUM3Qix5Q0FBeUM7UUFDekMsSUFBRyxJQUFJLENBQUMsa0JBQWtCLENBQUMsRUFBRSxDQUFDLEVBQUM7WUFDN0IsdURBQXVEO1lBQ3ZELElBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBQztnQkFDMUQsT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUMsRUFBRSxDQUFDLENBQUM7YUFDcEM7aUJBQUk7Z0JBQ0gsT0FBTyxJQUFJLENBQUE7YUFDWjtTQUNGO2FBQUk7WUFDSCxPQUFPLElBQUksQ0FBQTtTQUNaO0lBQ0gsQ0FBQztJQUVELGVBQWUsQ0FBQyxFQUFFLEVBQUcsSUFBSTtRQUN2QixJQUFJLFdBQVcsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzdDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxFQUFFLENBQUMscUJBQU8sV0FBVyxDQUFDLENBQUM7UUFDL0MsWUFBWSxDQUFDLE9BQU8sQ0FBQyxtQkFBbUIsRUFBRyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLENBQUE7SUFDckYsQ0FBQzs7aUhBbkRVLG1CQUFtQjtxSEFBbkIsbUJBQW1CLGNBRmxCLE1BQU07NEZBRVAsbUJBQW1CO2tCQUgvQixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIER5bmFtaWNWaWV3ZVNlcnZpY2Uge1xyXG5cclxuICBzdG9yZWRBZ2dyZWdhdGlvbnMgPSB7fVxyXG4gIGNvbnN0cnVjdG9yKCkgeyBcclxuICAgIHRoaXMubG9hZFN0b3JlZEFnZ3JlZ2F0aW9ucygpO1xyXG4gIH1cclxuXHJcbiAgbG9hZFN0b3JlZEFnZ3JlZ2F0aW9ucygpe1xyXG4gICAgaWYobG9jYWxTdG9yYWdlLmdldEl0ZW0oJ3N0b3JlZEFncmVnYXRpb25zJykpe1xyXG4gICAgICB0aGlzLnN0b3JlZEFnZ3JlZ2F0aW9ucyA9IEpTT04ucGFyc2UobG9jYWxTdG9yYWdlLmdldEl0ZW0oJ3N0b3JlZEFncmVnYXRpb25zJykpOyBcclxuICAgIH1lbHNle1xyXG4gICAgICB0aGlzLnN0b3JlZEFnZ3JlZ2F0aW9ucyA9IHt9O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgYWRkaW5nVGltZVN0YW1wKGRhdGEpe1xyXG4gICAgcmV0dXJuIHtcclxuICAgICAgZGF0YSA6IGRhdGEsXHJcbiAgICAgIHRpbWUgOiBuZXcgRGF0ZSgpXHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBjaGVja1RpbWVTdGFtcCh0aW1lKXtcclxuICAgIGxldCBub3cgOiBhbnkgPSBuZXcgRGF0ZSgpO1xyXG4gICAgbGV0IG9sZFRpbWU6IGFueSA9IG5ldyBEYXRlKHRpbWUpO1xyXG4gICAgbGV0IGRheXMgPSBNYXRoLmZsb29yKChub3cgLSBvbGRUaW1lKSAvICgxMDAwICogNjAgKiA2MCAqIDI0KSk7XHJcbiAgICBpZihkYXlzIDwyKXtcclxuICAgICAgcmV0dXJuIHRydWVcclxuICAgIH1lbHNle1xyXG4gICAgICByZXR1cm4gZmFsc2VcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGdldERhdGFGcm9tU3RvcmVkQWdncmVnYXRpb24oaWQpe1xyXG4gICAgLy8gY2hlY2sgaWYgdGhlcmUgaXMgZGF0YSB3aXRoIGNlcnRhaW4gaWRcclxuICAgIGlmKHRoaXMuc3RvcmVkQWdncmVnYXRpb25zW2lkXSl7XHJcbiAgICAgIC8vIGNoZWNrIGlmIHN0b3JlZCBkYXRhIGRvc247dCBleGNlZWQgMiBkYXlzIG9mIHN0b3JpbmdcclxuICAgICAgaWYodGhpcy5jaGVja1RpbWVTdGFtcCh0aGlzLnN0b3JlZEFnZ3JlZ2F0aW9uc1tpZF1bJ3RpbWUnXSkpe1xyXG4gICAgICAgIHJldHVybiB0aGlzLnN0b3JlZEFnZ3JlZ2F0aW9uc1tpZF07XHJcbiAgICAgIH1lbHNle1xyXG4gICAgICAgIHJldHVybiBudWxsXHJcbiAgICAgIH1cclxuICAgIH1lbHNle1xyXG4gICAgICByZXR1cm4gbnVsbFxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgc2V0RGF0YVRvU3RvcmFnKGlkICwgZGF0YSl7XHJcbiAgICBsZXQgdXBkYXRlZERhdGEgPSB0aGlzLmFkZGluZ1RpbWVTdGFtcChkYXRhKTtcclxuICAgIHRoaXMuc3RvcmVkQWdncmVnYXRpb25zW2lkXSA9IHsuLi51cGRhdGVkRGF0YX07XHJcbiAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgnc3RvcmVkQWdyZWdhdGlvbnMnICwgSlNPTi5zdHJpbmdpZnkodGhpcy5zdG9yZWRBZ2dyZWdhdGlvbnMpKVxyXG4gIH1cclxufVxyXG4iXX0=
62
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy12aWV3ZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL251eGVvLWRldmVsb3BtZW50LWZyYW1ld29yay9zcmMvbGliL2NvbXBvbmVudHMvZHluYW1pYy12aWV3L2R5bmFtaWMtdmlld2Uuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUszQyxNQUFNLE9BQU8sbUJBQW1CO0lBRzlCO1FBREEsdUJBQWtCLEdBQUcsRUFBRSxDQUFBO1FBRXJCLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO0lBQ2hDLENBQUM7SUFFRCxzQkFBc0I7UUFDcEIsSUFBRyxZQUFZLENBQUMsT0FBTyxDQUFDLG1CQUFtQixDQUFDLEVBQUM7WUFDM0MsSUFBSSxDQUFDLGtCQUFrQixHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLENBQUM7U0FDakY7YUFBSTtZQUNILElBQUksQ0FBQyxrQkFBa0IsR0FBRyxFQUFFLENBQUM7U0FDOUI7SUFDSCxDQUFDO0lBRUQsZUFBZSxDQUFDLElBQUk7UUFDbEIsT0FBTztZQUNMLElBQUksRUFBRyxJQUFJO1lBQ1gsSUFBSSxFQUFHLElBQUksSUFBSSxFQUFFO1NBQ2xCLENBQUE7SUFDSCxDQUFDO0lBRUQsY0FBYyxDQUFDLElBQUk7UUFDakIsSUFBSSxHQUFHLEdBQVMsSUFBSSxJQUFJLEVBQUUsQ0FBQztRQUMzQixJQUFJLE9BQU8sR0FBUSxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNsQyxJQUFJLElBQUksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUMvRCxJQUFHLElBQUksR0FBRSxDQUFDLEVBQUM7WUFDVCxPQUFPLElBQUksQ0FBQTtTQUNaO2FBQUk7WUFDSCxPQUFPLEtBQUssQ0FBQTtTQUNiO0lBQ0gsQ0FBQztJQUVELDRCQUE0QixDQUFDLEVBQUU7UUFDN0IseUNBQXlDO1FBQ3pDLElBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLEVBQUUsQ0FBQyxFQUFDO1lBQzdCLHVEQUF1RDtZQUN2RCxJQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUM7Z0JBQzFELE9BQU8sSUFBSSxDQUFDLGtCQUFrQixDQUFDLEVBQUUsQ0FBQyxDQUFDO2FBQ3BDO2lCQUFJO2dCQUNILE9BQU8sSUFBSSxDQUFBO2FBQ1o7U0FDRjthQUFJO1lBQ0gsT0FBTyxJQUFJLENBQUE7U0FDWjtJQUNILENBQUM7SUFFRCxlQUFlLENBQUMsRUFBRSxFQUFHLElBQUk7UUFDdkIsSUFBSSxXQUFXLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUM3QyxJQUFJLENBQUMsa0JBQWtCLENBQUMsRUFBRSxDQUFDLHFCQUFPLFdBQVcsQ0FBQyxDQUFDO1FBQy9DLFlBQVksQ0FBQyxPQUFPLENBQUMsbUJBQW1CLEVBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsQ0FBQyxDQUFBO0lBQ3JGLENBQUM7O2lIQW5EVSxtQkFBbUI7cUhBQW5CLG1CQUFtQixjQUZsQixNQUFNOzRGQUVQLG1CQUFtQjtrQkFIL0IsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBEeW5hbWljVmlld2VTZXJ2aWNlIHtcclxuXHJcbiAgc3RvcmVkQWdncmVnYXRpb25zID0ge31cclxuICBjb25zdHJ1Y3RvcigpIHsgXHJcbiAgICB0aGlzLmxvYWRTdG9yZWRBZ2dyZWdhdGlvbnMoKTtcclxuICB9XHJcblxyXG4gIGxvYWRTdG9yZWRBZ2dyZWdhdGlvbnMoKXtcclxuICAgIGlmKGxvY2FsU3RvcmFnZS5nZXRJdGVtKCdzdG9yZWRBZ3JlZ2F0aW9ucycpKXtcclxuICAgICAgdGhpcy5zdG9yZWRBZ2dyZWdhdGlvbnMgPSBKU09OLnBhcnNlKGxvY2FsU3RvcmFnZS5nZXRJdGVtKCdzdG9yZWRBZ3JlZ2F0aW9ucycpKTsgXHJcbiAgICB9ZWxzZXtcclxuICAgICAgdGhpcy5zdG9yZWRBZ2dyZWdhdGlvbnMgPSB7fTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGFkZGluZ1RpbWVTdGFtcChkYXRhKXtcclxuICAgIHJldHVybiB7XHJcbiAgICAgIGRhdGEgOiBkYXRhLFxyXG4gICAgICB0aW1lIDogbmV3IERhdGUoKVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgY2hlY2tUaW1lU3RhbXAodGltZSl7XHJcbiAgICBsZXQgbm93IDogYW55ID0gbmV3IERhdGUoKTtcclxuICAgIGxldCBvbGRUaW1lOiBhbnkgPSBuZXcgRGF0ZSh0aW1lKTtcclxuICAgIGxldCBkYXlzID0gTWF0aC5mbG9vcigobm93IC0gb2xkVGltZSkgLyAoMTAwMCAqIDYwICogNjAgKiAyNCkpO1xyXG4gICAgaWYoZGF5cyA8Mil7XHJcbiAgICAgIHJldHVybiB0cnVlXHJcbiAgICB9ZWxzZXtcclxuICAgICAgcmV0dXJuIGZhbHNlXHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBnZXREYXRhRnJvbVN0b3JlZEFnZ3JlZ2F0aW9uKGlkKXtcclxuICAgIC8vIGNoZWNrIGlmIHRoZXJlIGlzIGRhdGEgd2l0aCBjZXJ0YWluIGlkXHJcbiAgICBpZih0aGlzLnN0b3JlZEFnZ3JlZ2F0aW9uc1tpZF0pe1xyXG4gICAgICAvLyBjaGVjayBpZiBzdG9yZWQgZGF0YSBkb3NuO3QgZXhjZWVkIDIgZGF5cyBvZiBzdG9yaW5nXHJcbiAgICAgIGlmKHRoaXMuY2hlY2tUaW1lU3RhbXAodGhpcy5zdG9yZWRBZ2dyZWdhdGlvbnNbaWRdWyd0aW1lJ10pKXtcclxuICAgICAgICByZXR1cm4gdGhpcy5zdG9yZWRBZ2dyZWdhdGlvbnNbaWRdO1xyXG4gICAgICB9ZWxzZXtcclxuICAgICAgICByZXR1cm4gbnVsbFxyXG4gICAgICB9XHJcbiAgICB9ZWxzZXtcclxuICAgICAgcmV0dXJuIG51bGxcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHNldERhdGFUb1N0b3JhZyhpZCAsIGRhdGEpe1xyXG4gICAgbGV0IHVwZGF0ZWREYXRhID0gdGhpcy5hZGRpbmdUaW1lU3RhbXAoZGF0YSk7XHJcbiAgICB0aGlzLnN0b3JlZEFnZ3JlZ2F0aW9uc1tpZF0gPSB7Li4udXBkYXRlZERhdGF9O1xyXG4gICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0oJ3N0b3JlZEFncmVnYXRpb25zJyAsIEpTT04uc3RyaW5naWZ5KHRoaXMuc3RvcmVkQWdncmVnYXRpb25zKSlcclxuICB9XHJcbn1cclxuIl19
@@ -37,4 +37,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
37
37
  }], vertical: [{
38
38
  type: Input
39
39
  }] } });
40
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC12aWV3ZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9keW5hbWljLXZpZXcvbGlzdC12aWV3ZXIvbGlzdC12aWV3ZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9keW5hbWljLXZpZXcvbGlzdC12aWV3ZXIvbGlzdC12aWV3ZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7Ozs7O0FBRXpEOzs7O0dBSUc7QUFNSCxNQUFNLE9BQU8sbUJBQW1CO0lBUzlCO1FBUkEseUJBQXlCO1FBQ2hCLFVBQUssR0FBRyxFQUFFLENBQUM7UUFDcEIsc0JBQXNCO1FBQ2IsU0FBSSxHQUFHLEVBQUUsQ0FBQztRQUNuQiw0QkFBNEI7UUFDbkIsYUFBUSxHQUFHLEtBQUssQ0FBQztRQUMxQixTQUFJLEdBQUcsS0FBSyxDQUFDO0lBRUcsQ0FBQztJQUVqQixRQUFRO0lBQ1IsQ0FBQzs7aUhBWlUsbUJBQW1CO3FHQUFuQixtQkFBbUIsdUhDWmhDLHl6QkF3QkE7NEZEWmEsbUJBQW1CO2tCQUwvQixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxpQkFBaUI7b0JBQzNCLFdBQVcsRUFBRSw4QkFBOEI7b0JBQzNDLFNBQVMsRUFBRSxDQUFDLDhCQUE4QixDQUFDO2lCQUM1QzswRUFHVSxLQUFLO3NCQUFiLEtBQUs7Z0JBRUcsSUFBSTtzQkFBWixLQUFLO2dCQUVHLFFBQVE7c0JBQWhCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbi8qKlxyXG4gKiBBIGNvbXBvbmVudCB0byBkaXNwbGF5IGEgbGlzdCBvZiB1c2Vyc1xyXG4gKiBAdGl0bGVcclxuICogTGlzdCBWaWV3ZXJcclxuICovXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnY3RzLWxpc3Qtdmlld2VyJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vbGlzdC12aWV3ZXIuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2xpc3Qtdmlld2VyLmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIExpc3RWaWV3ZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIC8qKiBsYWJlbCB0byBiZSBzaG93biAgKi9cclxuICBASW5wdXQoKSBsYWJlbCA9ICcnO1xyXG4gIC8qKiBsaXN0IG9mIENDIHVzZXIgKi9cclxuICBASW5wdXQoKSBkYXRhID0gW107XHJcbiAgLyoqIEZ1cnRoZXIgaW5mbyByZXF1aXJlZCAqL1xyXG4gIEBJbnB1dCgpIHZlcnRpY2FsID0gZmFsc2U7XHJcbiAgc2hvdyA9IGZhbHNlO1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHsgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICB9XHJcblxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJjb250YWluZXJcIj5cclxuICA8ZGl2Pnt7bGFiZWwgfCB0cmFuc2xhdGV9fTwvZGl2PlxyXG4gIDxzcGFuIGNsYXNzPVwidGl0bGVcIiAoY2xpY2spPVwic2hvdyA9ICFzaG93XCIgKm5nSWY9XCJkYXRhLmxlbmd0aCA+IDFcIj5cclxuICAgIHt7XHJcbiAgICAoc2hvdyA/IFwiQ1JFQVRFLlNIT1dfTEVTU1wiIDogXCJDUkVBVEUuU0hPV19NT1JFXCIpXHJcbiAgICB8IHRyYW5zbGF0ZVxyXG4gICAgfX1cclxuICA8L3NwYW4+XHJcbjwvZGl2PlxyXG48ZGl2IGNsYXNzPVwidHdvLWNvbHVtbnNcIiBbY2xhc3Muc2hvd109XCJzaG93XCIgKm5nSWY9XCJkYXRhLmxlbmd0aCBcIj5cclxuICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBlbGVtIG9mIGRhdGFcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJ3cmFwcGVyXCI+XHJcbiAgICAgIDxzcGFuIGNsYXNzPVwiYXZhdGFyLXdyYXBwZXJcIj5cclxuICAgICAgICA8Y3RzLWF2YXRhciBbdXNlcl09XCJlbGVtXCI+PC9jdHMtYXZhdGFyPlxyXG4gICAgICA8L3NwYW4+XHJcbiAgICAgIDxzcGFuIGNsYXNzPVwiZnVsbE5hbWVcIj5cclxuICAgICAgICB7eyBlbGVtPy5wcm9wZXJ0aWVzPy5maXJzdE5hbWUgfX0ge3sgZWxlbT8ucHJvcGVydGllcz8ubGFzdE5hbWUgfX1cclxuICAgICAgPC9zcGFuPlxyXG4gICAgPC9kaXY+XHJcbiAgPC9uZy1jb250YWluZXI+XHJcbjwvZGl2PlxyXG48ZGl2IGNsYXNzPVwibm8tZGF0YS1zZWN0aW9uXCIgKm5nSWY9XCJkYXRhLmxlbmd0aCA9PT0gMFwiPlxyXG4gIHt7XCJDUkVBVEUuTk9fVVNFUlNcIiB8IHRyYW5zbGF0ZX19XHJcbjwvZGl2PlxyXG4iXX0=
40
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC12aWV3ZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL251eGVvLWRldmVsb3BtZW50LWZyYW1ld29yay9zcmMvbGliL2NvbXBvbmVudHMvZHluYW1pYy12aWV3L2xpc3Qtdmlld2VyL2xpc3Qtdmlld2VyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9udXhlby1kZXZlbG9wbWVudC1mcmFtZXdvcmsvc3JjL2xpYi9jb21wb25lbnRzL2R5bmFtaWMtdmlldy9saXN0LXZpZXdlci9saXN0LXZpZXdlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBVSxNQUFNLGVBQWUsQ0FBQzs7Ozs7QUFFekQ7Ozs7R0FJRztBQU1ILE1BQU0sT0FBTyxtQkFBbUI7SUFTOUI7UUFSQSx5QkFBeUI7UUFDaEIsVUFBSyxHQUFHLEVBQUUsQ0FBQztRQUNwQixzQkFBc0I7UUFDYixTQUFJLEdBQUcsRUFBRSxDQUFDO1FBQ25CLDRCQUE0QjtRQUNuQixhQUFRLEdBQUcsS0FBSyxDQUFDO1FBQzFCLFNBQUksR0FBRyxLQUFLLENBQUM7SUFFRyxDQUFDO0lBRWpCLFFBQVE7SUFDUixDQUFDOztpSEFaVSxtQkFBbUI7cUdBQW5CLG1CQUFtQix1SENaaEMseXpCQXdCQTs0RkRaYSxtQkFBbUI7a0JBTC9CLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGlCQUFpQjtvQkFDM0IsV0FBVyxFQUFFLDhCQUE4QjtvQkFDM0MsU0FBUyxFQUFFLENBQUMsOEJBQThCLENBQUM7aUJBQzVDOzBFQUdVLEtBQUs7c0JBQWIsS0FBSztnQkFFRyxJQUFJO3NCQUFaLEtBQUs7Z0JBRUcsUUFBUTtzQkFBaEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuLyoqXHJcbiAqIEEgY29tcG9uZW50IHRvIGRpc3BsYXkgYSBsaXN0IG9mIHVzZXJzXHJcbiAqIEB0aXRsZVxyXG4gKiBMaXN0IFZpZXdlclxyXG4gKi9cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdjdHMtbGlzdC12aWV3ZXInLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9saXN0LXZpZXdlci5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vbGlzdC12aWV3ZXIuY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgTGlzdFZpZXdlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgLyoqIGxhYmVsIHRvIGJlIHNob3duICAqL1xyXG4gIEBJbnB1dCgpIGxhYmVsID0gJyc7XHJcbiAgLyoqIGxpc3Qgb2YgQ0MgdXNlciAqL1xyXG4gIEBJbnB1dCgpIGRhdGEgPSBbXTtcclxuICAvKiogRnVydGhlciBpbmZvIHJlcXVpcmVkICovXHJcbiAgQElucHV0KCkgdmVydGljYWwgPSBmYWxzZTtcclxuICBzaG93ID0gZmFsc2U7XHJcblxyXG4gIGNvbnN0cnVjdG9yKCkgeyB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gIH1cclxuXHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cImNvbnRhaW5lclwiPlxyXG4gIDxkaXY+e3tsYWJlbCB8IHRyYW5zbGF0ZX19PC9kaXY+XHJcbiAgPHNwYW4gY2xhc3M9XCJ0aXRsZVwiIChjbGljayk9XCJzaG93ID0gIXNob3dcIiAqbmdJZj1cImRhdGEubGVuZ3RoID4gMVwiPlxyXG4gICAge3tcclxuICAgIChzaG93ID8gXCJDUkVBVEUuU0hPV19MRVNTXCIgOiBcIkNSRUFURS5TSE9XX01PUkVcIilcclxuICAgIHwgdHJhbnNsYXRlXHJcbiAgICB9fVxyXG4gIDwvc3Bhbj5cclxuPC9kaXY+XHJcbjxkaXYgY2xhc3M9XCJ0d28tY29sdW1uc1wiIFtjbGFzcy5zaG93XT1cInNob3dcIiAqbmdJZj1cImRhdGEubGVuZ3RoIFwiPlxyXG4gIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGVsZW0gb2YgZGF0YVwiPlxyXG4gICAgPGRpdiBjbGFzcz1cIndyYXBwZXJcIj5cclxuICAgICAgPHNwYW4gY2xhc3M9XCJhdmF0YXItd3JhcHBlclwiPlxyXG4gICAgICAgIDxjdHMtYXZhdGFyIFt1c2VyXT1cImVsZW1cIj48L2N0cy1hdmF0YXI+XHJcbiAgICAgIDwvc3Bhbj5cclxuICAgICAgPHNwYW4gY2xhc3M9XCJmdWxsTmFtZVwiPlxyXG4gICAgICAgIHt7IGVsZW0/LnByb3BlcnRpZXM/LmZpcnN0TmFtZSB9fSB7eyBlbGVtPy5wcm9wZXJ0aWVzPy5sYXN0TmFtZSB9fVxyXG4gICAgICA8L3NwYW4+XHJcbiAgICA8L2Rpdj5cclxuICA8L25nLWNvbnRhaW5lcj5cclxuPC9kaXY+XHJcbjxkaXYgY2xhc3M9XCJuby1kYXRhLXNlY3Rpb25cIiAqbmdJZj1cImRhdGEubGVuZ3RoID09PSAwXCI+XHJcbiAge3tcIkNSRUFURS5OT19VU0VSU1wiIHwgdHJhbnNsYXRlfX1cclxuPC9kaXY+XHJcbiJdfQ==
@@ -131,7 +131,7 @@ export class AddToCollectionComponent extends BaseComponent {
131
131
  }
132
132
  }
133
133
  AddToCollectionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: AddToCollectionComponent, deps: [{ token: i1.FileManagerService }, { token: i2.CustomToastrService }, { token: i3.NuxeoDialogService }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
134
- AddToCollectionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: AddToCollectionComponent, selector: "app-add-to-collection", inputs: { createOperation: "createOperation", addOperation: "addOperation", getCollectionPP: "getCollectionPP", memberInCollections: "memberInCollections", enableMemberInCollections: "enableMemberInCollections", visible: "visible", rtlEnabled: "rtlEnabled", selectedItems: "selectedItems" }, outputs: { visibleChange: "visibleChange" }, viewQueries: [{ propertyName: "form", first: true, predicate: DxFormComponent, descendants: true }, { propertyName: "contentTemplate", first: true, predicate: ["contentTemplate"], descendants: true }, { propertyName: "actionsTemplate", first: true, predicate: ["actionsTemplate"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-template #contentTemplate>\r\n <form>\r\n <dx-form\r\n class=\"collection-form-wrapper\"\r\n #createForm\r\n [formData]=\"formData\"\r\n [disabled]=\"loading\"\r\n >\r\n <dxi-item editorType=\"dxTextBox\">\r\n <ng-select\r\n [items]=\"items$ | async\"\r\n bindLabel=\"displayLabel\"\r\n [addTag]=\"true\"\r\n addTagText=\"Add collection\"\r\n [multiple]=\"false\"\r\n [hideSelected]=\"true\"\r\n [minTermLength]=\"0\"\r\n [loading]=\"tagsLoading\"\r\n typeToSearchText=\"search\"\r\n [typeahead]=\"tagsInput$\"\r\n [(ngModel)]=\"selectedTags\"\r\n required\r\n placeholder=\"{{ 'VOCABULARY.SELECT_ITEM' | translate }}\"\r\n name=\"selectedItem\"\r\n (change)=\"emitSelection($event)\"\r\n >\r\n </ng-select>\r\n </dxi-item>\r\n </dx-form>\r\n </form>\r\n</ng-template>\r\n\r\n<ng-template #actionsTemplate let-dialog=\"dialog\">\r\n <span\r\n class=\"submission-button px-5\"\r\n (click)=\"dialog.executeAction(onFormCollectionSubmit)\"\r\n >\r\n {{ \"FILE_MANAGER.ADD\" | translate }}\r\n </span>\r\n</ng-template>\r\n", styles: [""], components: [{ type: i4.DxFormComponent, selector: "dx-form", inputs: ["accessKey", "activeStateEnabled", "alignItemLabels", "alignItemLabelsInAllGroups", "colCount", "colCountByScreen", "customizeItem", "disabled", "elementAttr", "focusStateEnabled", "formData", "height", "hint", "hoverStateEnabled", "items", "labelLocation", "labelMode", "minColWidth", "optionalMark", "readOnly", "requiredMark", "requiredMessage", "rtlEnabled", "screenByWidth", "scrollingEnabled", "showColonAfterLabel", "showOptionalMark", "showRequiredMark", "showValidationSummary", "tabIndex", "validationGroup", "visible", "width"], outputs: ["onContentReady", "onDisposing", "onEditorEnterKey", "onFieldDataChanged", "onInitialized", "onOptionChanged", "accessKeyChange", "activeStateEnabledChange", "alignItemLabelsChange", "alignItemLabelsInAllGroupsChange", "colCountChange", "colCountByScreenChange", "customizeItemChange", "disabledChange", "elementAttrChange", "focusStateEnabledChange", "formDataChange", "heightChange", "hintChange", "hoverStateEnabledChange", "itemsChange", "labelLocationChange", "labelModeChange", "minColWidthChange", "optionalMarkChange", "readOnlyChange", "requiredMarkChange", "requiredMessageChange", "rtlEnabledChange", "screenByWidthChange", "scrollingEnabledChange", "showColonAfterLabelChange", "showOptionalMarkChange", "showRequiredMarkChange", "showValidationSummaryChange", "tabIndexChange", "validationGroupChange", "visibleChange", "widthChange"] }, { type: i5.DxiItemComponent, selector: "dxi-item", inputs: ["disabled", "html", "icon", "template", "text", "title", "titleTemplate", "visible", "onClick", "stylingMode", "type", "baseSize", "box", "ratio", "shrink", "elementAttr", "hint", "beginGroup", "closeMenuOnClick", "items", "selectable", "selected", "colSpan", "cssClass", "dataField", "editorOptions", "editorType", "helpText", "isRequired", "itemType", "label", "name", "validationRules", "visibleIndex", "alignItemLabels", "caption", "colCount", "colCountByScreen", "tabPanelOptions", "tabs", "badge", "tabTemplate", "buttonOptions", "horizontalAlignment", "verticalAlignment", "locateInMenu", "location", "menuItemTemplate", "options", "showText", "widget", "height", "width", "imageAlt", "imageSrc", "acceptedValues", "formatName", "formatValues", "key", "showChevron", "linkAttr", "url", "heightRatio", "widthRatio", "expanded", "hasItems", "id", "parentId"] }, { type: i6.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"] }], directives: [{ type: i7.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i7.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i7.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i7.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { type: i7.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i7.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], pipes: { "async": i8.AsyncPipe, "translate": i9.TranslatePipe } });
134
+ AddToCollectionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: AddToCollectionComponent, selector: "app-add-to-collection", inputs: { createOperation: "createOperation", addOperation: "addOperation", getCollectionPP: "getCollectionPP", memberInCollections: "memberInCollections", enableMemberInCollections: "enableMemberInCollections", visible: "visible", rtlEnabled: "rtlEnabled", selectedItems: "selectedItems" }, outputs: { visibleChange: "visibleChange" }, viewQueries: [{ propertyName: "form", first: true, predicate: DxFormComponent, descendants: true }, { propertyName: "contentTemplate", first: true, predicate: ["contentTemplate"], descendants: true }, { propertyName: "actionsTemplate", first: true, predicate: ["actionsTemplate"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-template #contentTemplate>\r\n <form>\r\n <dx-form\r\n class=\"collection-form-wrapper\"\r\n #createForm\r\n [formData]=\"formData\"\r\n [disabled]=\"loading\"\r\n >\r\n <dxi-item editorType=\"dxTextBox\">\r\n <ng-select\r\n [items]=\"items$ | async\"\r\n bindLabel=\"displayLabel\"\r\n [addTag]=\"true\"\r\n addTagText=\"Add collection\"\r\n [multiple]=\"false\"\r\n [hideSelected]=\"true\"\r\n [minTermLength]=\"0\"\r\n [loading]=\"tagsLoading\"\r\n typeToSearchText=\"search\"\r\n [typeahead]=\"tagsInput$\"\r\n [(ngModel)]=\"selectedTags\"\r\n required\r\n placeholder=\"{{ 'VOCABULARY.SELECT_ITEM' | translate }}\"\r\n name=\"selectedItem\"\r\n (change)=\"emitSelection($event)\"\r\n >\r\n </ng-select>\r\n </dxi-item>\r\n </dx-form>\r\n </form>\r\n</ng-template>\r\n\r\n<ng-template #actionsTemplate let-dialog=\"dialog\">\r\n <span\r\n class=\"submission-button px-5\"\r\n (click)=\"dialog.executeAction(onFormCollectionSubmit)\"\r\n >\r\n {{ \"FILE_MANAGER.ADD\" | translate }}\r\n </span>\r\n</ng-template>\r\n", styles: [""], components: [{ type: i4.DxFormComponent, selector: "dx-form", inputs: ["accessKey", "activeStateEnabled", "alignItemLabels", "alignItemLabelsInAllGroups", "colCount", "colCountByScreen", "customizeItem", "disabled", "elementAttr", "focusStateEnabled", "formData", "height", "hint", "hoverStateEnabled", "isDirty", "items", "labelLocation", "labelMode", "minColWidth", "optionalMark", "readOnly", "requiredMark", "requiredMessage", "rtlEnabled", "screenByWidth", "scrollingEnabled", "showColonAfterLabel", "showOptionalMark", "showRequiredMark", "showValidationSummary", "tabIndex", "validationGroup", "visible", "width"], outputs: ["onContentReady", "onDisposing", "onEditorEnterKey", "onFieldDataChanged", "onInitialized", "onOptionChanged", "accessKeyChange", "activeStateEnabledChange", "alignItemLabelsChange", "alignItemLabelsInAllGroupsChange", "colCountChange", "colCountByScreenChange", "customizeItemChange", "disabledChange", "elementAttrChange", "focusStateEnabledChange", "formDataChange", "heightChange", "hintChange", "hoverStateEnabledChange", "isDirtyChange", "itemsChange", "labelLocationChange", "labelModeChange", "minColWidthChange", "optionalMarkChange", "readOnlyChange", "requiredMarkChange", "requiredMessageChange", "rtlEnabledChange", "screenByWidthChange", "scrollingEnabledChange", "showColonAfterLabelChange", "showOptionalMarkChange", "showRequiredMarkChange", "showValidationSummaryChange", "tabIndexChange", "validationGroupChange", "visibleChange", "widthChange"] }, { type: i5.DxiItemComponent, selector: "dxi-item", inputs: ["disabled", "html", "icon", "template", "text", "title", "titleTemplate", "visible", "onClick", "stylingMode", "type", "baseSize", "box", "ratio", "shrink", "elementAttr", "hint", "beginGroup", "closeMenuOnClick", "items", "selectable", "selected", "colSpan", "cssClass", "dataField", "editorOptions", "editorType", "helpText", "isRequired", "itemType", "label", "name", "validationRules", "visibleIndex", "alignItemLabels", "caption", "colCount", "colCountByScreen", "tabPanelOptions", "tabs", "badge", "tabTemplate", "buttonOptions", "horizontalAlignment", "verticalAlignment", "locateInMenu", "location", "menuItemTemplate", "options", "showText", "widget", "height", "width", "imageAlt", "imageSrc", "acceptedValues", "formatName", "formatValues", "key", "showChevron", "linkAttr", "url", "heightRatio", "widthRatio", "expanded", "hasItems", "id", "parentId"] }, { type: i6.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"] }], directives: [{ type: i7.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i7.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i7.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i7.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { type: i7.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i7.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], pipes: { "async": i8.AsyncPipe, "translate": i9.TranslatePipe } });
135
135
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: AddToCollectionComponent, decorators: [{
136
136
  type: Component,
137
137
  args: [{
@@ -167,4 +167,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
167
167
  }], selectedItems: [{
168
168
  type: Input
169
169
  }] } });
170
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLXRvLWNvbGxlY3Rpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9maWxlLW1hbmdlci9jb21wb25lbnRzL2FkZC10by1jb2xsZWN0aW9uL2FkZC10by1jb2xsZWN0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL251eGVvLWRldmVsb3BtZW50LWZyYW1ld29yay9zcmMvbGliL2NvbXBvbmVudHMvZmlsZS1tYW5nZXIvY29tcG9uZW50cy9hZGQtdG8tY29sbGVjdGlvbi9hZGQtdG8tY29sbGVjdGlvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFlBQVksRUFFWixLQUFLLEVBR0wsTUFBTSxFQUdOLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDckQsT0FBTyxFQUFFLE1BQU0sRUFBYyxFQUFFLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3ZELE9BQU8sRUFDTCxZQUFZLEVBQ1osb0JBQW9CLEVBQ3BCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsR0FBRyxHQUVKLE1BQU0sZ0JBQWdCLENBQUM7QUFJeEIsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlEQUF5RCxDQUFDO0FBQ3pGLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxtREFBbUQsQ0FBQzs7Ozs7Ozs7Ozs7QUFTbEYsTUFBTSxPQUFPLHdCQUF5QixTQUFRLGFBQWE7SUF1Q3pELFlBQ1Usa0JBQXNDLEVBQ3BDLG1CQUF3QyxFQUMzQyxrQkFBc0MsRUFFN0MsUUFBa0I7UUFFbEIsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFD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Q0FDSCxDQUNGLENBQUM7SUFDSixDQUFDOztzSEFySVUsd0JBQXdCOzBHQUF4Qix3QkFBd0Isb2JBQ3hCLGVBQWUsaVJDcEM1QixrdENBd0NBOzRGRExhLHdCQUF3QjtrQkFMcEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsdUJBQXVCO29CQUNqQyxXQUFXLEVBQUUsb0NBQW9DO29CQUNqRCxTQUFTLEVBQUUsQ0FBQyxvQ0FBb0MsQ0FBQztpQkFDbEQ7bU1BRWdELElBQUk7c0JBQWxELFNBQVM7dUJBQUMsZUFBZSxFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRTtnQkFDZixlQUFlO3NCQUE1QyxTQUFTO3VCQUFDLGlCQUFpQjtnQkFDRSxlQUFlO3NCQUE1QyxTQUFTO3VCQUFDLGlCQUFpQjtnQkFFbkIsZUFBZTtzQkFBdkIsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLGVBQWU7c0JBQXZCLEtBQUs7Z0JBQ0csbUJBQW1CO3NCQUEzQixLQUFLO2dCQUNHLHlCQUF5QjtzQkFBakMsS0FBSztnQkFHRixPQUFPO3NCQURWLEtBQUs7Z0JBZU4sYUFBYTtzQkFEWixNQUFNO2dCQUdQLFVBQVU7c0JBRFQsS0FBSztnQkFHTixhQUFhO3NCQURaLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENvbXBvbmVudCxcclxuICBFdmVudEVtaXR0ZXIsXHJcbiAgSW5qZWN0b3IsXHJcbiAgSW5wdXQsXHJcbiAgT25DaGFuZ2VzLFxyXG4gIE9uSW5pdCxcclxuICBPdXRwdXQsXHJcbiAgU2ltcGxlQ2hhbmdlcyxcclxuICBUZW1wbGF0ZVJlZixcclxuICBWaWV3Q2hpbGQsXHJcbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgRHhGb3JtQ29tcG9uZW50IH0gZnJvbSBcImRldmV4dHJlbWUtYW5ndWxhclwiO1xyXG5pbXBvcnQgeyBjb25jYXQsIE9ic2VydmFibGUsIG9mLCBTdWJqZWN0IH0gZnJvbSBcInJ4anNcIjtcclxuaW1wb3J0IHtcclxuICBkZWJvdW5jZVRpbWUsXHJcbiAgZGlzdGluY3RVbnRpbENoYW5nZWQsXHJcbiAgc3dpdGNoTWFwLFxyXG4gIGNhdGNoRXJyb3IsXHJcbiAgdGFwLFxyXG4gIG1hcCxcclxufSBmcm9tIFwicnhqcy9vcGVyYXRvcnNcIjtcclxuaW1wb3J0IHsgQ3VzdG9tVG9hc3RyU2VydmljZSB9IGZyb20gXCIuLi8uLi8uLi9jdXN0b20tdG9hc3RyL3NlcnZpY2VzL2N1c3RvbS10b2FzdHIuc2VydmljZVwiO1xyXG5pbXBvcnQgeyBGaWxlTWFuYWdlclNlcnZpY2UgfSBmcm9tIFwiLi4vLi4vLi4vLi4vc2hhcmVkLXNlcnZpY2VzL2ZpbGUtbWFuYWdlci5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IERpYWxvZ09wdGlvbnMgfSBmcm9tIFwiLi4vLi4vLi4vLi4vc2hhcmVkL2NvbXBvbmVudHMvbnV4ZW8tZGlhbG9nL21vZGVscy9kaWFsb2ctb3B0aW9uLm1vZGVsXCI7XHJcbmltcG9ydCB7IE5kZk51eGVvRGlhbG9nIH0gZnJvbSBcIi4uLy4uLy4uLy4uL3NoYXJlZC9jb21wb25lbnRzL251eGVvLWRpYWxvZy9udXhlby5kaWFsb2dcIjtcclxuaW1wb3J0IHsgQmFzZUNvbXBvbmVudCB9IGZyb20gXCIuLi8uLi8uLi8uLi9zaGFyZWQvY29tcG9uZW50cy9iYXNlL2Jhc2UuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IE51eGVvRGlhbG9nU2VydmljZSB9IGZyb20gXCIuLi8uLi8uLi8uLi9zaGFyZWQvY29tcG9uZW50cy9udXhlby1kaWFsb2cvc2VydmljZXMvbnV4ZW8tZGlhbG9nLnNlcnZpY2VcIjtcclxuaW1wb3J0IHsgRGlhbG9nQWN0aW9uVHlwZSB9IGZyb20gXCIuLi8uLi8uLi8uLi9zaGFyZWQvY29tcG9uZW50cy9udXhlby1kaWFsb2cvbW9kZWxzL2RpYWxvZy1vcHRpb24ubW9kZWxcIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiBcImFwcC1hZGQtdG8tY29sbGVjdGlvblwiLFxyXG4gIHRlbXBsYXRlVXJsOiBcIi4vYWRkLXRvLWNvbGxlY3Rpb24uY29tcG9uZW50Lmh0bWxcIixcclxuICBzdHlsZVVybHM6IFtcIi4vYWRkLXRvLWNvbGxlY3Rpb24uY29tcG9uZW50LnNjc3NcIl0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBZGRUb0NvbGxlY3Rpb25Db21wb25lbnQgZXh0ZW5kcyBCYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICBAVmlld0NoaWxkKER4Rm9ybUNvbXBvbmVudCwgeyBzdGF0aWM6IGZhbHNlIH0pIGZvcm06IER4Rm9ybUNvbXBvbmVudDtcclxuICBAVmlld0NoaWxkKFwiY29udGVudFRlbXBsYXRlXCIpIGNvbnRlbnRUZW1wbGF0ZSE6IFRlbXBsYXRlUmVmPGFueT47XHJcbiAgQFZpZXdDaGlsZChcImFjdGlvbnNUZW1wbGF0ZVwiKSBhY3Rpb25zVGVtcGxhdGUhOiBUZW1wbGF0ZVJlZjxhbnk+O1xyXG5cclxuICBASW5wdXQoKSBjcmVhdGVPcGVyYXRpb246IHN0cmluZyA9IFwiQ29sbGVjdGlvbi5DcmVhdGVcIjtcclxuICBASW5wdXQoKSBhZGRPcGVyYXRpb246IHN0cmluZyA9IFwiRG9jdW1lbnQuQWRkVG9Db2xsZWN0aW9uXCI7XHJcbiAgQElucHV0KCkgZ2V0Q29sbGVjdGlvblBQOiBzdHJpbmcgPSBcIlBQX0RNU19Vc2VyX0NvbGxlY3Rpb25zXCI7XHJcbiAgQElucHV0KCkgbWVtYmVySW5Db2xsZWN0aW9uczogc3RyaW5nW107XHJcbiAgQElucHV0KCkgZW5hYmxlTWVtYmVySW5Db2xsZWN0aW9uczogYm9vbGVhbjtcclxuXHJcbiAgQElucHV0KClcclxuICBzZXQgdmlzaWJsZSh2YWx1ZTogYW55KSB7XHJcbiAgICBpZiAodGhpcy5fdmlzaWJsZSA9PT0gdmFsdWUpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgaWYgKHZhbHVlKSB7XHJcbiAgICAgIHRoaXMub3BlbkRpYWxvZygpO1xyXG4gICAgfVxyXG4gICAgdGhpcy5fdmlzaWJsZSA9IHZhbHVlO1xyXG4gICAgdGhpcy52aXNpYmxlQ2hhbmdlLmVtaXQodGhpcy5fdmlzaWJsZSk7XHJcbiAgfVxyXG4gIGdldCB2aXNpYmxlKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuX3Zpc2libGU7XHJcbiAgfVxyXG4gIEBPdXRwdXQoKVxyXG4gIHZpc2libGVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuICBASW5wdXQoKVxyXG4gIHJ0bEVuYWJsZWQgPSBmYWxzZTtcclxuICBASW5wdXQoKVxyXG4gIHNlbGVjdGVkSXRlbXM6IGFueTtcclxuXHJcbiAgaXNTZWxlY3RlZDogYm9vbGVhbiA9IHRydWU7XHJcbiAgY29sbGVjdGlvbmlkOiBhbnk7XHJcbiAgc2VsZWN0ZWRUYWdzOiBhbnk7XHJcbiAgaXRlbXMkOiBPYnNlcnZhYmxlPGFueVtdPjtcclxuICB0YWdzSW5wdXQkID0gbmV3IFN1YmplY3Q8c3RyaW5nPigpO1xyXG4gIHRhZ3NMb2FkaW5nID0gZmFsc2U7XHJcbiAgX3Zpc2libGUgPSBmYWxzZTtcclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgZmlsZU1hbmFnZXJTZXJ2aWNlOiBGaWxlTWFuYWdlclNlcnZpY2UsXHJcbiAgICBwcm90ZWN0ZWQgY3VzdG9tVG9hc3RyU2VydmljZTogQ3VzdG9tVG9hc3RyU2VydmljZSxcclxuICAgIHB1YmxpYyBudXhlb0RpYWxvZ1NlcnZpY2U6IE51eGVvRGlhbG9nU2VydmljZSxcclxuXHJcbiAgICBpbmplY3RvcjogSW5qZWN0b3JcclxuICApIHtcclxuICAgIHN1cGVyKGluamVjdG9yKTtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge31cclxuXHJcbiAgb3BlbkRpYWxvZygpOiB2b2lkIHtcclxuICAgIHRoaXMubG9hZEl0ZW1zKCk7XHJcbiAgICBjb25zdCBvcHRpb25zOiBEaWFsb2dPcHRpb25zID0ge1xyXG4gICAgICBjb21wb25lbnQ6IE5kZk51eGVvRGlhbG9nLFxyXG4gICAgICAvL1RPRE8gW0FzZW1dIGhvdyB0byBwdXQgdGhlIHdyYXBwZXIgSURcclxuICAgICAgcGFuZWxDbGFzczogXCJwb3BVcFBhcmVudFwiLFxyXG4gICAgICBjb25maWc6IHtcclxuICAgICAgICB0aXRsZTogdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoXCJGSUxFX01BTkFHRVIuQUREX1RPX0NPTExFQ1RJT05cIiksXHJcbiAgICAgICAgY29udGVudFRlbXBsYXRlOiB0aGlzLmNvbnRlbnRUZW1wbGF0ZSxcclxuICAgICAgICBhY3Rpb25zVGVtcGxhdGU6IHRoaXMuYWN0aW9uc1RlbXBsYXRlLFxyXG4gICAgICB9LFxyXG4gICAgfTtcclxuICAgIHRoaXMubnV4ZW9EaWFsb2dTZXJ2aWNlXHJcbiAgICAgIC5vcGVuKG9wdGlvbnMpXHJcbiAgICAgIC5hZnRlckNsb3NlZCgpXHJcbiAgICAgIC5zdWJzY3JpYmUoKHJlcykgPT4ge1xyXG4gICAgICAgIHRoaXMudmlzaWJsZSA9IGZhbHNlO1xyXG4gICAgICB9KTtcclxuICB9XHJcblxyXG4gIGVtaXRTZWxlY3Rpb24oZXZlbnQpIHtcclxuICAgIGlmICh0aGlzLmlzU2VsZWN0ZWQpIHtcclxuICAgICAgdGhpcy5maWxlTWFuYWdlclNlcnZpY2VcclxuICAgICAgICAuY3JlYXRlTmV3Q29sbGVjdGlvbihldmVudC5kaXNwbGF5TGFiZWwsIHRoaXMuY3JlYXRlT3BlcmF0aW9uKVxyXG4gICAgICAgIC5zdWJzY3JpYmUoKHJlcykgPT4ge1xyXG4gICAgICAgICAgdGhpcy5jb2xsZWN0aW9uaWQgPSByZXMudWlkO1xyXG4gICAgICAgIH0pO1xyXG4gICAgfSBlbHNlIHRoaXMuY29sbGVjdGlvbmlkID0gZXZlbnQuaWQ7XHJcbiAgfVxyXG5cclxuICBsb2FkSXRlbXMoKSB7XHJcbiAgICBsZXQgc2VhcmNodGVybSA9IFwiXCI7XHJcbiAgICB0aGlzLmlzU2VsZWN0ZWQgPSBmYWxzZTtcclxuICAgIGxldCBteWNhdGVnb3JpZXMgPSBbXTtcclxuICAgIHRoaXMuaXRlbXMkID0gY29uY2F0KFxyXG4gICAgICB0aGlzLmZpbGVNYW5hZ2VyU2VydmljZVxyXG4gICAgICAgIC5nZXRDb2xsZWN0aW9uRnJvbVBQKHNlYXJjaHRlcm0sIHRoaXMuZ2V0Q29sbGVjdGlvblBQKVxyXG4gICAgICAgIC5waXBlKFxyXG4gICAgICAgICAgc3dpdGNoTWFwKChyZXM6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICByZXMuZW50cmllcy5tYXAoKGVudHJ5KSA9PiB7XHJcbiAgICAgICAgICAgICAgaWYgKFxyXG4gICAgICAgICAgICAgICAgIXRoaXMuZW5hYmxlTWVtYmVySW5Db2xsZWN0aW9ucyB8fFxyXG4gICAgICAgICAgICAgICAgIXRoaXMubWVtYmVySW5Db2xsZWN0aW9ucy5pbmNsdWRlcyhlbnRyeS5pZClcclxuICAgICAgICAgICAgICApIHtcclxuICAgICAgICAgICAgICAgIG15Y2F0ZWdvcmllcy5wdXNoKHtcclxuICAgICAgICAgICAgICAgICAgZGlzcGxheUxhYmVsOiBlbnRyeS50aXRsZSxcclxuICAgICAgICAgICAgICAgICAgaWQ6IGVudHJ5LnVpZCxcclxuICAgICAgICAgICAgICAgICAgcGF0aDogZW50cnkucGF0aCxcclxuICAgICAgICAgICAgICAgICAgaWNvbjogZW50cnkucHJvcGVydGllc1tcImNvbW1vbjppY29uXCJdLFxyXG4gICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgcmV0dXJuIG9mKG15Y2F0ZWdvcmllcyk7XHJcbiAgICAgICAgICB9KVxyXG4gICAgICAgICksIC8vIGRlZmF1bHQgaXRlbXNcclxuICAgICAgdGhpcy50YWdzSW5wdXQkLnBpcGUoXHJcbiAgICAgICAgZGVib3VuY2VUaW1lKDIwMCksXHJcbiAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcclxuICAgICAgICB0YXAoKCkgPT4gKHRoaXMudGFnc0xvYWRpbmcgPSB0cnVlKSksXHJcbiAgICAgICAgc3dpdGNoTWFwKChzZWFyY2h0ZXJtKSA9PiB7XHJcbiAgICAgICAgICByZXR1cm4gdGhpcy5maWxlTWFuYWdlclNlcnZpY2VcclxuICAgICAgICAgICAgLmdldENvbGxlY3Rpb25Gcm9tUFAoc2VhcmNodGVybSwgdGhpcy5nZXRDb2xsZWN0aW9uUFApXHJcbiAgICAgICAgICAgIC5waXBlKFxyXG4gICAgICAgICAgICAgIGNhdGNoRXJyb3IoKCkgPT4gb2YoW10pKSwgLy8gZW1wdHkgbGlzdCBvbiBlcnJvclxyXG4gICAgICAgICAgICAgIHN3aXRjaE1hcCgoc2VhcmNoQ2F0KSA9PiB7XHJcbiAgICAgICAgICAgICAgICBsZXQgbXlJbmVyQ2F0ZWcgPSBbXTtcclxuICAgICAgICAgICAgICAgIHRoaXMudGFnc0xvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgIHRoaXMuaXNTZWxlY3RlZCA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICBzZWFyY2hDYXQuZW50cmllcy5tYXAoKGVudHJ5KSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgIG15SW5lckNhdGVnLnB1c2goe1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXlMYWJlbDogZW50cnkudGl0bGUsXHJcbiAgICAgICAgICAgICAgICAgICAgaWQ6IGVudHJ5LnVpZCxcclxuICAgICAgICAgICAgICAgICAgICBwYXRoOiBlbnRyeS5wYXRoLFxyXG4gICAgICAgICAgICAgICAgICAgIGljb246IGVudHJ5LnByb3BlcnRpZXNbXCJjb21tb246aWNvblwiXSxcclxuICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgIHJldHVybiBvZihteUluZXJDYXRlZyk7XHJcbiAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgKTtcclxuICAgICAgICB9KVxyXG4gICAgICApXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgb25Gb3JtQ29sbGVjdGlvblN1Ym1pdDogRGlhbG9nQWN0aW9uVHlwZSA9ICgpID0+IHtcclxuICAgIHRoaXMubG9hZGluZyA9IHRydWU7XHJcbiAgICByZXR1cm4gdGhpcy5maWxlTWFuYWdlclNlcnZpY2VcclxuICAgICAgLmFkZFRvQ29sbGVjdGlvbih0aGlzLnNlbGVjdGVkSXRlbXMsIHRoaXMuY29sbGVjdGlvbmlkLCB0aGlzLmFkZE9wZXJhdGlvbilcclxuICAgICAgLnBpcGUoXHJcbiAgICAgICAgdGFwKFxyXG4gICAgICAgICAgKHJlcykgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICAgICAgdGhpcy5mb3JtLmluc3RhbmNlLnJlc2V0VmFsdWVzKCk7XHJcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRUYWdzID0gbnVsbDtcclxuICAgICAgICAgICAgdGhpcy52aXNpYmxlID0gZmFsc2U7XHJcbiAgICAgICAgICAgIHRoaXMuY3VzdG9tVG9hc3RyU2VydmljZS5zaG93KFxyXG4gICAgICAgICAgICAgIFwic3VjY2Vzc1wiLFxyXG4gICAgICAgICAgICAgIFwiVE9BU1RFUi5TVUNDRVNTXCIsXHJcbiAgICAgICAgICAgICAgXCJUT0FTVEVSLkRPQ1VNRU5UX0FEREVEX1RPX0NPTExFQ1RJT05cIlxyXG4gICAgICAgICAgICApO1xyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIChlcnIpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICAgIHRoaXMuY3VzdG9tVG9hc3RyU2VydmljZS5zaG93KFxyXG4gICAgICAgICAgICAgIFwiZXJyb3JcIixcclxuICAgICAgICAgICAgICBcIlRPQVNURVIuRVJST1JcIixcclxuICAgICAgICAgICAgICBcIlRPQVNURVIuRE9DVU1FTlRfQURERURfVE9fQ09MTEVDVElPTl9FUlJPUlwiXHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgKVxyXG4gICAgICApO1xyXG4gIH07XHJcbn1cclxuIiwiPG5nLXRlbXBsYXRlICNjb250ZW50VGVtcGxhdGU+XHJcbiAgPGZvcm0+XHJcbiAgICA8ZHgtZm9ybVxyXG4gICAgICBjbGFzcz1cImNvbGxlY3Rpb24tZm9ybS13cmFwcGVyXCJcclxuICAgICAgI2NyZWF0ZUZvcm1cclxuICAgICAgW2Zvcm1EYXRhXT1cImZvcm1EYXRhXCJcclxuICAgICAgW2Rpc2FibGVkXT1cImxvYWRpbmdcIlxyXG4gICAgPlxyXG4gICAgICA8ZHhpLWl0ZW0gZWRpdG9yVHlwZT1cImR4VGV4dEJveFwiPlxyXG4gICAgICAgIDxuZy1zZWxlY3RcclxuICAgICAgICAgIFtpdGVtc109XCJpdGVtcyQgfCBhc3luY1wiXHJcbiAgICAgICAgICBiaW5kTGFiZWw9XCJkaXNwbGF5TGFiZWxcIlxyXG4gICAgICAgICAgW2FkZFRhZ109XCJ0cnVlXCJcclxuICAgICAgICAgIGFkZFRhZ1RleHQ9XCJBZGQgY29sbGVjdGlvblwiXHJcbiAgICAgICAgICBbbXVsdGlwbGVdPVwiZmFsc2VcIlxyXG4gICAgICAgICAgW2hpZGVTZWxlY3RlZF09XCJ0cnVlXCJcclxuICAgICAgICAgIFttaW5UZXJtTGVuZ3RoXT1cIjBcIlxyXG4gICAgICAgICAgW2xvYWRpbmddPVwidGFnc0xvYWRpbmdcIlxyXG4gICAgICAgICAgdHlwZVRvU2VhcmNoVGV4dD1cInNlYXJjaFwiXHJcbiAgICAgICAgICBbdHlwZWFoZWFkXT1cInRhZ3NJbnB1dCRcIlxyXG4gICAgICAgICAgWyhuZ01vZGVsKV09XCJzZWxlY3RlZFRhZ3NcIlxyXG4gICAgICAgICAgcmVxdWlyZWRcclxuICAgICAgICAgIHBsYWNlaG9sZGVyPVwie3sgJ1ZPQ0FCVUxBUlkuU0VMRUNUX0lURU0nIHwgdHJhbnNsYXRlIH19XCJcclxuICAgICAgICAgIG5hbWU9XCJzZWxlY3RlZEl0ZW1cIlxyXG4gICAgICAgICAgKGNoYW5nZSk9XCJlbWl0U2VsZWN0aW9uKCRldmVudClcIlxyXG4gICAgICAgID5cclxuICAgICAgICA8L25nLXNlbGVjdD5cclxuICAgICAgPC9keGktaXRlbT5cclxuICAgIDwvZHgtZm9ybT5cclxuICA8L2Zvcm0+XHJcbjwvbmctdGVtcGxhdGU+XHJcblxyXG48bmctdGVtcGxhdGUgI2FjdGlvbnNUZW1wbGF0ZSBsZXQtZGlhbG9nPVwiZGlhbG9nXCI+XHJcbiAgPHNwYW5cclxuICAgIGNsYXNzPVwic3VibWlzc2lvbi1idXR0b24gcHgtNVwiXHJcbiAgICAoY2xpY2spPVwiZGlhbG9nLmV4ZWN1dGVBY3Rpb24ob25Gb3JtQ29sbGVjdGlvblN1Ym1pdClcIlxyXG4gID5cclxuICAgIHt7IFwiRklMRV9NQU5BR0VSLkFERFwiIHwgdHJhbnNsYXRlIH19XHJcbiAgPC9zcGFuPlxyXG48L25nLXRlbXBsYXRlPlxyXG4iXX0=
170
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLXRvLWNvbGxlY3Rpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL251eGVvLWRldmVsb3BtZW50LWZyYW1ld29yay9zcmMvbGliL2NvbXBvbmVudHMvZmlsZS1tYW5nZXIvY29tcG9uZW50cy9hZGQtdG8tY29sbGVjdGlvbi9hZGQtdG8tY29sbGVjdGlvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9maWxlLW1hbmdlci9jb21wb25lbnRzL2FkZC10by1jb2xsZWN0aW9uL2FkZC10by1jb2xsZWN0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsWUFBWSxFQUVaLEtBQUssRUFHTCxNQUFNLEVBR04sU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsTUFBTSxFQUFjLEVBQUUsRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDdkQsT0FBTyxFQUNMLFlBQVksRUFDWixvQkFBb0IsRUFDcEIsU0FBUyxFQUNULFVBQVUsRUFDVixHQUFHLEdBRUosTUFBTSxnQkFBZ0IsQ0FBQztBQUl4QixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seURBQXlELENBQUM7QUFDekYsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG1EQUFtRCxDQUFDOzs7Ozs7Ozs7OztBQVNsRixNQUFNLE9BQU8sd0JBQXlCLFNBQVEsYUFBYTtJQXVDekQsWUFDVSxrQkFBc0MsRUFDcEMsbUJBQXdDLEVBQzNDLGtCQUFzQyxFQUU3QyxRQUFrQjtRQUVsQixLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7UUFOUix1QkFB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Q0FBQztJQUNKLENBQUM7O3NIQXJJVSx3QkFBd0I7MEdBQXhCLHdCQUF3QixvYkFDeEIsZUFBZSxpUkNwQzVCLGt0Q0F3Q0E7NEZETGEsd0JBQXdCO2tCQUxwQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSx1QkFBdUI7b0JBQ2pDLFdBQVcsRUFBRSxvQ0FBb0M7b0JBQ2pELFNBQVMsRUFBRSxDQUFDLG9DQUFvQyxDQUFDO2lCQUNsRDttTUFFZ0QsSUFBSTtzQkFBbEQsU0FBUzt1QkFBQyxlQUFlLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFO2dCQUNmLGVBQWU7c0JBQTVDLFNBQVM7dUJBQUMsaUJBQWlCO2dCQUNFLGVBQWU7c0JBQTVDLFNBQVM7dUJBQUMsaUJBQWlCO2dCQUVuQixlQUFlO3NCQUF2QixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csZUFBZTtzQkFBdkIsS0FBSztnQkFDRyxtQkFBbUI7c0JBQTNCLEtBQUs7Z0JBQ0cseUJBQXlCO3NCQUFqQyxLQUFLO2dCQUdGLE9BQU87c0JBRFYsS0FBSztnQkFlTixhQUFhO3NCQURaLE1BQU07Z0JBR1AsVUFBVTtzQkFEVCxLQUFLO2dCQUdOLGFBQWE7c0JBRFosS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ29tcG9uZW50LFxyXG4gIEV2ZW50RW1pdHRlcixcclxuICBJbmplY3RvcixcclxuICBJbnB1dCxcclxuICBPbkNoYW5nZXMsXHJcbiAgT25Jbml0LFxyXG4gIE91dHB1dCxcclxuICBTaW1wbGVDaGFuZ2VzLFxyXG4gIFRlbXBsYXRlUmVmLFxyXG4gIFZpZXdDaGlsZCxcclxufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBEeEZvcm1Db21wb25lbnQgfSBmcm9tIFwiZGV2ZXh0cmVtZS1hbmd1bGFyXCI7XHJcbmltcG9ydCB7IGNvbmNhdCwgT2JzZXJ2YWJsZSwgb2YsIFN1YmplY3QgfSBmcm9tIFwicnhqc1wiO1xyXG5pbXBvcnQge1xyXG4gIGRlYm91bmNlVGltZSxcclxuICBkaXN0aW5jdFVudGlsQ2hhbmdlZCxcclxuICBzd2l0Y2hNYXAsXHJcbiAgY2F0Y2hFcnJvcixcclxuICB0YXAsXHJcbiAgbWFwLFxyXG59IGZyb20gXCJyeGpzL29wZXJhdG9yc1wiO1xyXG5pbXBvcnQgeyBDdXN0b21Ub2FzdHJTZXJ2aWNlIH0gZnJvbSBcIi4uLy4uLy4uL2N1c3RvbS10b2FzdHIvc2VydmljZXMvY3VzdG9tLXRvYXN0ci5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IEZpbGVNYW5hZ2VyU2VydmljZSB9IGZyb20gXCIuLi8uLi8uLi8uLi9zaGFyZWQtc2VydmljZXMvZmlsZS1tYW5hZ2VyLnNlcnZpY2VcIjtcclxuaW1wb3J0IHsgRGlhbG9nT3B0aW9ucyB9IGZyb20gXCIuLi8uLi8uLi8uLi9zaGFyZWQvY29tcG9uZW50cy9udXhlby1kaWFsb2cvbW9kZWxzL2RpYWxvZy1vcHRpb24ubW9kZWxcIjtcclxuaW1wb3J0IHsgTmRmTnV4ZW9EaWFsb2cgfSBmcm9tIFwiLi4vLi4vLi4vLi4vc2hhcmVkL2NvbXBvbmVudHMvbnV4ZW8tZGlhbG9nL251eGVvLmRpYWxvZ1wiO1xyXG5pbXBvcnQgeyBCYXNlQ29tcG9uZW50IH0gZnJvbSBcIi4uLy4uLy4uLy4uL3NoYXJlZC9jb21wb25lbnRzL2Jhc2UvYmFzZS5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgTnV4ZW9EaWFsb2dTZXJ2aWNlIH0gZnJvbSBcIi4uLy4uLy4uLy4uL3NoYXJlZC9jb21wb25lbnRzL251eGVvLWRpYWxvZy9zZXJ2aWNlcy9udXhlby1kaWFsb2cuc2VydmljZVwiO1xyXG5pbXBvcnQgeyBEaWFsb2dBY3Rpb25UeXBlIH0gZnJvbSBcIi4uLy4uLy4uLy4uL3NoYXJlZC9jb21wb25lbnRzL251eGVvLWRpYWxvZy9tb2RlbHMvZGlhbG9nLW9wdGlvbi5tb2RlbFwiO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6IFwiYXBwLWFkZC10by1jb2xsZWN0aW9uXCIsXHJcbiAgdGVtcGxhdGVVcmw6IFwiLi9hZGQtdG8tY29sbGVjdGlvbi5jb21wb25lbnQuaHRtbFwiLFxyXG4gIHN0eWxlVXJsczogW1wiLi9hZGQtdG8tY29sbGVjdGlvbi5jb21wb25lbnQuc2Nzc1wiXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEFkZFRvQ29sbGVjdGlvbkNvbXBvbmVudCBleHRlbmRzIEJhc2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIEBWaWV3Q2hpbGQoRHhGb3JtQ29tcG9uZW50LCB7IHN0YXRpYzogZmFsc2UgfSkgZm9ybTogRHhGb3JtQ29tcG9uZW50O1xyXG4gIEBWaWV3Q2hpbGQoXCJjb250ZW50VGVtcGxhdGVcIikgY29udGVudFRlbXBsYXRlITogVGVtcGxhdGVSZWY8YW55PjtcclxuICBAVmlld0NoaWxkKFwiYWN0aW9uc1RlbXBsYXRlXCIpIGFjdGlvbnNUZW1wbGF0ZSE6IFRlbXBsYXRlUmVmPGFueT47XHJcblxyXG4gIEBJbnB1dCgpIGNyZWF0ZU9wZXJhdGlvbjogc3RyaW5nID0gXCJDb2xsZWN0aW9uLkNyZWF0ZVwiO1xyXG4gIEBJbnB1dCgpIGFkZE9wZXJhdGlvbjogc3RyaW5nID0gXCJEb2N1bWVudC5BZGRUb0NvbGxlY3Rpb25cIjtcclxuICBASW5wdXQoKSBnZXRDb2xsZWN0aW9uUFA6IHN0cmluZyA9IFwiUFBfRE1TX1VzZXJfQ29sbGVjdGlvbnNcIjtcclxuICBASW5wdXQoKSBtZW1iZXJJbkNvbGxlY3Rpb25zOiBzdHJpbmdbXTtcclxuICBASW5wdXQoKSBlbmFibGVNZW1iZXJJbkNvbGxlY3Rpb25zOiBib29sZWFuO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHNldCB2aXNpYmxlKHZhbHVlOiBhbnkpIHtcclxuICAgIGlmICh0aGlzLl92aXNpYmxlID09PSB2YWx1ZSkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICBpZiAodmFsdWUpIHtcclxuICAgICAgdGhpcy5vcGVuRGlhbG9nKCk7XHJcbiAgICB9XHJcbiAgICB0aGlzLl92aXNpYmxlID0gdmFsdWU7XHJcbiAgICB0aGlzLnZpc2libGVDaGFuZ2UuZW1pdCh0aGlzLl92aXNpYmxlKTtcclxuICB9XHJcbiAgZ2V0IHZpc2libGUoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5fdmlzaWJsZTtcclxuICB9XHJcbiAgQE91dHB1dCgpXHJcbiAgdmlzaWJsZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG4gIEBJbnB1dCgpXHJcbiAgcnRsRW5hYmxlZCA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpXHJcbiAgc2VsZWN0ZWRJdGVtczogYW55O1xyXG5cclxuICBpc1NlbGVjdGVkOiBib29sZWFuID0gdHJ1ZTtcclxuICBjb2xsZWN0aW9uaWQ6IGFueTtcclxuICBzZWxlY3RlZFRhZ3M6IGFueTtcclxuICBpdGVtcyQ6IE9ic2VydmFibGU8YW55W10+O1xyXG4gIHRhZ3NJbnB1dCQgPSBuZXcgU3ViamVjdDxzdHJpbmc+KCk7XHJcbiAgdGFnc0xvYWRpbmcgPSBmYWxzZTtcclxuICBfdmlzaWJsZSA9IGZhbHNlO1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBmaWxlTWFuYWdlclNlcnZpY2U6IEZpbGVNYW5hZ2VyU2VydmljZSxcclxuICAgIHByb3RlY3RlZCBjdXN0b21Ub2FzdHJTZXJ2aWNlOiBDdXN0b21Ub2FzdHJTZXJ2aWNlLFxyXG4gICAgcHVibGljIG51eGVvRGlhbG9nU2VydmljZTogTnV4ZW9EaWFsb2dTZXJ2aWNlLFxyXG5cclxuICAgIGluamVjdG9yOiBJbmplY3RvclxyXG4gICkge1xyXG4gICAgc3VwZXIoaW5qZWN0b3IpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7fVxyXG5cclxuICBvcGVuRGlhbG9nKCk6IHZvaWQge1xyXG4gICAgdGhpcy5sb2FkSXRlbXMoKTtcclxuICAgIGNvbnN0IG9wdGlvbnM6IERpYWxvZ09wdGlvbnMgPSB7XHJcbiAgICAgIGNvbXBvbmVudDogTmRmTnV4ZW9EaWFsb2csXHJcbiAgICAgIC8vVE9ETyBbQXNlbV0gaG93IHRvIHB1dCB0aGUgd3JhcHBlciBJRFxyXG4gICAgICBwYW5lbENsYXNzOiBcInBvcFVwUGFyZW50XCIsXHJcbiAgICAgIGNvbmZpZzoge1xyXG4gICAgICAgIHRpdGxlOiB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudChcIkZJTEVfTUFOQUdFUi5BRERfVE9fQ09MTEVDVElPTlwiKSxcclxuICAgICAgICBjb250ZW50VGVtcGxhdGU6IHRoaXMuY29udGVudFRlbXBsYXRlLFxyXG4gICAgICAgIGFjdGlvbnNUZW1wbGF0ZTogdGhpcy5hY3Rpb25zVGVtcGxhdGUsXHJcbiAgICAgIH0sXHJcbiAgICB9O1xyXG4gICAgdGhpcy5udXhlb0RpYWxvZ1NlcnZpY2VcclxuICAgICAgLm9wZW4ob3B0aW9ucylcclxuICAgICAgLmFmdGVyQ2xvc2VkKClcclxuICAgICAgLnN1YnNjcmliZSgocmVzKSA9PiB7XHJcbiAgICAgICAgdGhpcy52aXNpYmxlID0gZmFsc2U7XHJcbiAgICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgZW1pdFNlbGVjdGlvbihldmVudCkge1xyXG4gICAgaWYgKHRoaXMuaXNTZWxlY3RlZCkge1xyXG4gICAgICB0aGlzLmZpbGVNYW5hZ2VyU2VydmljZVxyXG4gICAgICAgIC5jcmVhdGVOZXdDb2xsZWN0aW9uKGV2ZW50LmRpc3BsYXlMYWJlbCwgdGhpcy5jcmVhdGVPcGVyYXRpb24pXHJcbiAgICAgICAgLnN1YnNjcmliZSgocmVzKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLmNvbGxlY3Rpb25pZCA9IHJlcy51aWQ7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9IGVsc2UgdGhpcy5jb2xsZWN0aW9uaWQgPSBldmVudC5pZDtcclxuICB9XHJcblxyXG4gIGxvYWRJdGVtcygpIHtcclxuICAgIGxldCBzZWFyY2h0ZXJtID0gXCJcIjtcclxuICAgIHRoaXMuaXNTZWxlY3RlZCA9IGZhbHNlO1xyXG4gICAgbGV0IG15Y2F0ZWdvcmllcyA9IFtdO1xyXG4gICAgdGhpcy5pdGVtcyQgPSBjb25jYXQoXHJcbiAgICAgIHRoaXMuZmlsZU1hbmFnZXJTZXJ2aWNlXHJcbiAgICAgICAgLmdldENvbGxlY3Rpb25Gcm9tUFAoc2VhcmNodGVybSwgdGhpcy5nZXRDb2xsZWN0aW9uUFApXHJcbiAgICAgICAgLnBpcGUoXHJcbiAgICAgICAgICBzd2l0Y2hNYXAoKHJlczogYW55KSA9PiB7XHJcbiAgICAgICAgICAgIHJlcy5lbnRyaWVzLm1hcCgoZW50cnkpID0+IHtcclxuICAgICAgICAgICAgICBpZiAoXHJcbiAgICAgICAgICAgICAgICAhdGhpcy5lbmFibGVNZW1iZXJJbkNvbGxlY3Rpb25zIHx8XHJcbiAgICAgICAgICAgICAgICAhdGhpcy5tZW1iZXJJbkNvbGxlY3Rpb25zLmluY2x1ZGVzKGVudHJ5LmlkKVxyXG4gICAgICAgICAgICAgICkge1xyXG4gICAgICAgICAgICAgICAgbXljYXRlZ29yaWVzLnB1c2goe1xyXG4gICAgICAgICAgICAgICAgICBkaXNwbGF5TGFiZWw6IGVudHJ5LnRpdGxlLFxyXG4gICAgICAgICAgICAgICAgICBpZDogZW50cnkudWlkLFxyXG4gICAgICAgICAgICAgICAgICBwYXRoOiBlbnRyeS5wYXRoLFxyXG4gICAgICAgICAgICAgICAgICBpY29uOiBlbnRyeS5wcm9wZXJ0aWVzW1wiY29tbW9uOmljb25cIl0sXHJcbiAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICByZXR1cm4gb2YobXljYXRlZ29yaWVzKTtcclxuICAgICAgICAgIH0pXHJcbiAgICAgICAgKSwgLy8gZGVmYXVsdCBpdGVtc1xyXG4gICAgICB0aGlzLnRhZ3NJbnB1dCQucGlwZShcclxuICAgICAgICBkZWJvdW5jZVRpbWUoMjAwKSxcclxuICAgICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxyXG4gICAgICAgIHRhcCgoKSA9PiAodGhpcy50YWdzTG9hZGluZyA9IHRydWUpKSxcclxuICAgICAgICBzd2l0Y2hNYXAoKHNlYXJjaHRlcm0pID0+IHtcclxuICAgICAgICAgIHJldHVybiB0aGlzLmZpbGVNYW5hZ2VyU2VydmljZVxyXG4gICAgICAgICAgICAuZ2V0Q29sbGVjdGlvbkZyb21QUChzZWFyY2h0ZXJtLCB0aGlzLmdldENvbGxlY3Rpb25QUClcclxuICAgICAgICAgICAgLnBpcGUoXHJcbiAgICAgICAgICAgICAgY2F0Y2hFcnJvcigoKSA9PiBvZihbXSkpLCAvLyBlbXB0eSBsaXN0IG9uIGVycm9yXHJcbiAgICAgICAgICAgICAgc3dpdGNoTWFwKChzZWFyY2hDYXQpID0+IHtcclxuICAgICAgICAgICAgICAgIGxldCBteUluZXJDYXRlZyA9IFtdO1xyXG4gICAgICAgICAgICAgICAgdGhpcy50YWdzTG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5pc1NlbGVjdGVkID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgIHNlYXJjaENhdC5lbnRyaWVzLm1hcCgoZW50cnkpID0+IHtcclxuICAgICAgICAgICAgICAgICAgbXlJbmVyQ2F0ZWcucHVzaCh7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheUxhYmVsOiBlbnRyeS50aXRsZSxcclxuICAgICAgICAgICAgICAgICAgICBpZDogZW50cnkudWlkLFxyXG4gICAgICAgICAgICAgICAgICAgIHBhdGg6IGVudHJ5LnBhdGgsXHJcbiAgICAgICAgICAgICAgICAgICAgaWNvbjogZW50cnkucHJvcGVydGllc1tcImNvbW1vbjppY29uXCJdLFxyXG4gICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuIG9mKG15SW5lckNhdGVnKTtcclxuICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICApO1xyXG4gICAgICAgIH0pXHJcbiAgICAgIClcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBvbkZvcm1Db2xsZWN0aW9uU3VibWl0OiBEaWFsb2dBY3Rpb25UeXBlID0gKCkgPT4ge1xyXG4gICAgdGhpcy5sb2FkaW5nID0gdHJ1ZTtcclxuICAgIHJldHVybiB0aGlzLmZpbGVNYW5hZ2VyU2VydmljZVxyXG4gICAgICAuYWRkVG9Db2xsZWN0aW9uKHRoaXMuc2VsZWN0ZWRJdGVtcywgdGhpcy5jb2xsZWN0aW9uaWQsIHRoaXMuYWRkT3BlcmF0aW9uKVxyXG4gICAgICAucGlwZShcclxuICAgICAgICB0YXAoXHJcbiAgICAgICAgICAocmVzKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgICB0aGlzLmZvcm0uaW5zdGFuY2UucmVzZXRWYWx1ZXMoKTtcclxuICAgICAgICAgICAgdGhpcy5zZWxlY3RlZFRhZ3MgPSBudWxsO1xyXG4gICAgICAgICAgICB0aGlzLnZpc2libGUgPSBmYWxzZTtcclxuICAgICAgICAgICAgdGhpcy5jdXN0b21Ub2FzdHJTZXJ2aWNlLnNob3coXHJcbiAgICAgICAgICAgICAgXCJzdWNjZXNzXCIsXHJcbiAgICAgICAgICAgICAgXCJUT0FTVEVSLlNVQ0NFU1NcIixcclxuICAgICAgICAgICAgICBcIlRPQVNURVIuRE9DVU1FTlRfQURERURfVE9fQ09MTEVDVElPTlwiXHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAgKGVycikgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICAgICAgdGhpcy5jdXN0b21Ub2FzdHJTZXJ2aWNlLnNob3coXHJcbiAgICAgICAgICAgICAgXCJlcnJvclwiLFxyXG4gICAgICAgICAgICAgIFwiVE9BU1RFUi5FUlJPUlwiLFxyXG4gICAgICAgICAgICAgIFwiVE9BU1RFUi5ET0NVTUVOVF9BRERFRF9UT19DT0xMRUNUSU9OX0VSUk9SXCJcclxuICAgICAgICAgICAgKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICApXHJcbiAgICAgICk7XHJcbiAgfTtcclxufVxyXG4iLCI8bmctdGVtcGxhdGUgI2NvbnRlbnRUZW1wbGF0ZT5cclxuICA8Zm9ybT5cclxuICAgIDxkeC1mb3JtXHJcbiAgICAgIGNsYXNzPVwiY29sbGVjdGlvbi1mb3JtLXdyYXBwZXJcIlxyXG4gICAgICAjY3JlYXRlRm9ybVxyXG4gICAgICBbZm9ybURhdGFdPVwiZm9ybURhdGFcIlxyXG4gICAgICBbZGlzYWJsZWRdPVwibG9hZGluZ1wiXHJcbiAgICA+XHJcbiAgICAgIDxkeGktaXRlbSBlZGl0b3JUeXBlPVwiZHhUZXh0Qm94XCI+XHJcbiAgICAgICAgPG5nLXNlbGVjdFxyXG4gICAgICAgICAgW2l0ZW1zXT1cIml0ZW1zJCB8IGFzeW5jXCJcclxuICAgICAgICAgIGJpbmRMYWJlbD1cImRpc3BsYXlMYWJlbFwiXHJcbiAgICAgICAgICBbYWRkVGFnXT1cInRydWVcIlxyXG4gICAgICAgICAgYWRkVGFnVGV4dD1cIkFkZCBjb2xsZWN0aW9uXCJcclxuICAgICAgICAgIFttdWx0aXBsZV09XCJmYWxzZVwiXHJcbiAgICAgICAgICBbaGlkZVNlbGVjdGVkXT1cInRydWVcIlxyXG4gICAgICAgICAgW21pblRlcm1MZW5ndGhdPVwiMFwiXHJcbiAgICAgICAgICBbbG9hZGluZ109XCJ0YWdzTG9hZGluZ1wiXHJcbiAgICAgICAgICB0eXBlVG9TZWFyY2hUZXh0PVwic2VhcmNoXCJcclxuICAgICAgICAgIFt0eXBlYWhlYWRdPVwidGFnc0lucHV0JFwiXHJcbiAgICAgICAgICBbKG5nTW9kZWwpXT1cInNlbGVjdGVkVGFnc1wiXHJcbiAgICAgICAgICByZXF1aXJlZFxyXG4gICAgICAgICAgcGxhY2Vob2xkZXI9XCJ7eyAnVk9DQUJVTEFSWS5TRUxFQ1RfSVRFTScgfCB0cmFuc2xhdGUgfX1cIlxyXG4gICAgICAgICAgbmFtZT1cInNlbGVjdGVkSXRlbVwiXHJcbiAgICAgICAgICAoY2hhbmdlKT1cImVtaXRTZWxlY3Rpb24oJGV2ZW50KVwiXHJcbiAgICAgICAgPlxyXG4gICAgICAgIDwvbmctc2VsZWN0PlxyXG4gICAgICA8L2R4aS1pdGVtPlxyXG4gICAgPC9keC1mb3JtPlxyXG4gIDwvZm9ybT5cclxuPC9uZy10ZW1wbGF0ZT5cclxuXHJcbjxuZy10ZW1wbGF0ZSAjYWN0aW9uc1RlbXBsYXRlIGxldC1kaWFsb2c9XCJkaWFsb2dcIj5cclxuICA8c3BhblxyXG4gICAgY2xhc3M9XCJzdWJtaXNzaW9uLWJ1dHRvbiBweC01XCJcclxuICAgIChjbGljayk9XCJkaWFsb2cuZXhlY3V0ZUFjdGlvbihvbkZvcm1Db2xsZWN0aW9uU3VibWl0KVwiXHJcbiAgPlxyXG4gICAge3sgXCJGSUxFX01BTkFHRVIuQUREXCIgfCB0cmFuc2xhdGUgfX1cclxuICA8L3NwYW4+XHJcbjwvbmctdGVtcGxhdGU+XHJcbiJdfQ==
@@ -239,7 +239,7 @@ export class ClipboardComponent {
239
239
  }
240
240
  }
241
241
  ClipboardComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ClipboardComponent, deps: [{ token: i1.FileManagerService }, { token: i2.UserService }, { token: i3.CustomToastrService }, { token: i4.UserPreferencesService }], target: i0.ɵɵFactoryTarget.Component });
242
- ClipboardComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: ClipboardComponent, selector: "lib-clipboard", inputs: { clipboardItems: "clipboardItems", myCurrecntFolderData: "myCurrecntFolderData", preventedGroups: "preventedGroups", directory: "directory" }, outputs: { onClipboardClose: "onClipboardClose", onRefreshFolderTree: "onRefreshFolderTree" }, ngImport: i0, template: "<div class=\"clipboard-side-section relative\">\r\n\r\n <div class=\"p-3 h-full\">\r\n <div class=\"clipboard-header flex justify-between items-center border-b-2\">\r\n <span class=\"flex text-gray-500 font-bold items-center\">\r\n <span class=\"text-4xl bi bi-clipboard\"></span>\r\n <span class=\"mx-2 text-xl\">{{'clipboard' | translate}}</span>\r\n </span>\r\n <mat-icon class=\"close-icon text-gray-500 cursor-pointer\" (click)=\"closeClipboard()\"\r\n [matTooltip]=\"'BUTTONS.CLOSE' | translate\">close</mat-icon>\r\n </div>\r\n <!-- <div class=\"h-full font-bold d-flex justify-center items-center\" *ngIf=\"clipboardLoading\">\r\n {{ \"loading\" | translate }}\r\n </div> -->\r\n <div class=\"w-full h-px bg-gray-200 mb-3\" *ngIf=\"clipboardLoading\">\r\n <mat-progress-bar mode=\"indeterminate\"></mat-progress-bar>\r\n </div>\r\n <div class=\"clipboard-content flex flex-col justify-between items-between\">\r\n <div class=\"h-full flex justify-center items-center text-gray-500\"\r\n *ngIf=\"clipboardDocments.length === 0\">{{'no_clipboard_items' | translate}}</div>\r\n\r\n <div class=\"px-2 h-5/6 overflow-y-auto\" *ngIf=\"clipboardDocments.length > 0\">\r\n <div class=\"border-b-2\" *ngFor=\"let document of clipboardDocments\">\r\n <div class=\"py-1 w-82 flex items-center justify-between\">\r\n <div class=\"flex items-center w-5/6\">\r\n <mat-checkbox [(ngModel)]=\"document.isSelected\" (change)=\"checking()\"> </mat-checkbox>\r\n <div class=\"flex w-full\">\r\n <!-- <title-with-icon class=\"w-1/6 -my-1.5\" [context]=\"document\"\r\n [showTitle]=\"false\"></title-with-icon> -->\r\n <app-display-suitable-icon class=\"mx-1\" [data]=\"document\" [size]=\"'40px'\"></app-display-suitable-icon>\r\n\r\n <!-- -->\r\n <div *ngIf=\"document.isFile === 'File'\"\r\n class=\"justify-center flex flex-col flex-1 flex-grow-0 w-5/6\">\r\n <div class=\"text-base text-gray-500 font-bold truncate\"\r\n [title]=\"document.properties?.['file:content']?.['name']\"\r\n [alt]=\"document.properties?.['file:content']?.['name']\">\r\n {{document['title']}}\r\n </div>\r\n <div class=\"text-gray-500 text-sm text-nowrap\">\r\n {{((document.properties?.['file:content']?.['length']) / (1024 *\r\n 1024)).toFixed(2) }}\r\n MB\r\n </div>\r\n </div>\r\n <div class=\"\r\n d-flex\r\n items-center\r\n text-base text-gray-500\r\n font-bold\r\n \" *ngIf=\"document.isFile === 'Folder'\">\r\n {{ document?.title }}\r\n </div>\r\n </div>\r\n </div>\r\n <span [matTooltip]=\"'BUTTONS.REMOVE_CLIPBOARD' | translate\"\r\n class=\"cursor-pointer w-5 h-5 rounded-full border-2 flex justify-center items-center border-gray-500 \"\r\n (click)=\"deletefromClipboard(document)\">\r\n <span class=\"text-gray-500 bi bi-x text-lg flex items-center\"></span>\r\n </span>\r\n </div>\r\n <div class=\"text-md text-gray-500 text-center my-2\">\r\n <span *ngIf=\"document.canCopyToTarget && !document.canMoveToTarget\">{{'can_copy_only' |\r\n translate}}</span>\r\n <span *ngIf=\"!document.canCopyToTarget && document.canMoveToTarget\">{{'can_move_only' |\r\n translate}}</span>\r\n <span *ngIf=\"document.canCopyToTarget && document.canMoveToTarget\">{{'can_copy_and_move' |\r\n translate}}</span>\r\n <span\r\n *ngIf=\"!document.canCopyToTarget && !document.canMoveToTarget\">{{'can_not_copy_and_move'\r\n | translate}}</span>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n <div class=\"h-1/6 flex w-full justify-center items-center\">\r\n <button class=\"submission-button mx-2\" [disabled]=\"!enableCopy\"\r\n (click)=\"copyFromInsideClipboard()\">{{'BUTTONS.COPY' | translate}}</button>\r\n <button class=\"submission-button mx-2\" [disabled]=\"!enableMove\"\r\n (click)=\"moveFromInsideClipboard()\">{{'BUTTONS.MOVE' | translate}}</button>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"bg-transparent absolute top-0 bottom-0 left-0 right-0 \" *ngIf=\"clipboardLoading\">\r\n\r\n </div>\r\n</div>", styles: [".clipboard-side-section{width:0px;overflow-x:hidden;height:91vh;background-color:#fff;overflow:hidden;border:1px solid lightgray;z-index:999;transition:.1s ease-in-out;border-bottom:none}.clipboard-side-section .clipboard-header{height:60px}.clipboard-side-section .clipboard-content{height:calc(100% - 60px)}\n"], components: [{ type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i6.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "mode", "value", "bufferValue"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }, { type: i7.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex", "aria-label", "aria-labelledby", "id", "labelPosition", "name", "required", "checked", "disabled", "indeterminate", "aria-describedby", "value"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { type: i8.DisplaySuitableIconComponent, selector: "app-display-suitable-icon", inputs: ["data", "size", "dataType", "archive"] }], directives: [{ type: i9.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltipPosition", "matTooltipDisabled", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { type: i10.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i10.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i11.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i11.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], pipes: { "translate": i12.TranslatePipe }, encapsulation: i0.ViewEncapsulation.None });
242
+ ClipboardComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: ClipboardComponent, selector: "lib-clipboard", inputs: { clipboardItems: "clipboardItems", myCurrecntFolderData: "myCurrecntFolderData", preventedGroups: "preventedGroups", directory: "directory" }, outputs: { onClipboardClose: "onClipboardClose", onRefreshFolderTree: "onRefreshFolderTree" }, ngImport: i0, template: "<div class=\"clipboard-side-section relative\">\r\n\r\n <div class=\"p-3 h-full\">\r\n <div class=\"clipboard-header flex justify-between items-center border-b-2\">\r\n <span class=\"flex text-gray-500 font-bold items-center\">\r\n <span class=\"text-4xl bi bi-clipboard\"></span>\r\n <span class=\"mx-2 text-xl\">{{'clipboard' | translate}}</span>\r\n </span>\r\n <mat-icon class=\"close-icon text-gray-500 cursor-pointer\" (click)=\"closeClipboard()\"\r\n [matTooltip]=\"'BUTTONS.CLOSE' | translate\">close</mat-icon>\r\n </div>\r\n <!-- <div class=\"h-full font-bold d-flex justify-center items-center\" *ngIf=\"clipboardLoading\">\r\n {{ \"loading\" | translate }}\r\n </div> -->\r\n <div class=\"w-full h-px bg-gray-200 mb-3\" *ngIf=\"clipboardLoading\">\r\n <mat-progress-bar mode=\"indeterminate\"></mat-progress-bar>\r\n </div>\r\n <div class=\"clipboard-content flex flex-col justify-between items-between\">\r\n <div class=\"h-full flex justify-center items-center text-gray-500\"\r\n *ngIf=\"clipboardDocments.length === 0\">{{'no_clipboard_items' | translate}}</div>\r\n\r\n <div class=\"px-2 h-5/6 overflow-y-auto\" *ngIf=\"clipboardDocments.length > 0\">\r\n <div class=\"border-b-2\" *ngFor=\"let document of clipboardDocments\">\r\n <div class=\"py-1 w-82 flex items-center justify-between\">\r\n <div class=\"flex items-center w-5/6\">\r\n <mat-checkbox [(ngModel)]=\"document.isSelected\" (change)=\"checking()\"> </mat-checkbox>\r\n <div class=\"flex w-full\">\r\n <!-- <title-with-icon class=\"w-1/6 -my-1.5\" [context]=\"document\"\r\n [showTitle]=\"false\"></title-with-icon> -->\r\n <app-display-suitable-icon class=\"mx-1\" [data]=\"document\" [size]=\"'40px'\"></app-display-suitable-icon>\r\n\r\n <!-- -->\r\n <div *ngIf=\"document.isFile === 'File'\"\r\n class=\"justify-center flex flex-col flex-1 flex-grow-0 w-5/6\">\r\n <div class=\"text-base text-gray-500 font-bold truncate\"\r\n [title]=\"document.properties?.['file:content']?.['name']\"\r\n [alt]=\"document.properties?.['file:content']?.['name']\">\r\n {{document['title']}}\r\n </div>\r\n <div class=\"text-gray-500 text-sm text-nowrap\">\r\n {{((document.properties?.['file:content']?.['length']) / (1024 *\r\n 1024)).toFixed(2) }}\r\n MB\r\n </div>\r\n </div>\r\n <div class=\"\r\n d-flex\r\n items-center\r\n text-base text-gray-500\r\n font-bold\r\n \" *ngIf=\"document.isFile === 'Folder'\">\r\n {{ document?.title }}\r\n </div>\r\n </div>\r\n </div>\r\n <span [matTooltip]=\"'BUTTONS.REMOVE_CLIPBOARD' | translate\"\r\n class=\"cursor-pointer w-5 h-5 rounded-full border-2 flex justify-center items-center border-gray-500 \"\r\n (click)=\"deletefromClipboard(document)\">\r\n <span class=\"text-gray-500 bi bi-x text-lg flex items-center\"></span>\r\n </span>\r\n </div>\r\n <div class=\"text-md text-gray-500 text-center my-2\">\r\n <span *ngIf=\"document.canCopyToTarget && !document.canMoveToTarget\">{{'can_copy_only' |\r\n translate}}</span>\r\n <span *ngIf=\"!document.canCopyToTarget && document.canMoveToTarget\">{{'can_move_only' |\r\n translate}}</span>\r\n <span *ngIf=\"document.canCopyToTarget && document.canMoveToTarget\">{{'can_copy_and_move' |\r\n translate}}</span>\r\n <span\r\n *ngIf=\"!document.canCopyToTarget && !document.canMoveToTarget\">{{'can_not_copy_and_move'\r\n | translate}}</span>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n <div class=\"h-1/6 flex w-full justify-center items-center\">\r\n <button class=\"submission-button mx-2\" [disabled]=\"!enableCopy\"\r\n (click)=\"copyFromInsideClipboard()\">{{'BUTTONS.COPY' | translate}}</button>\r\n <button class=\"submission-button mx-2\" [disabled]=\"!enableMove\"\r\n (click)=\"moveFromInsideClipboard()\">{{'BUTTONS.MOVE' | translate}}</button>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"bg-transparent absolute top-0 bottom-0 left-0 right-0 \" *ngIf=\"clipboardLoading\">\r\n\r\n </div>\r\n</div>", styles: [".clipboard-side-section{width:0px;overflow-x:hidden;height:91vh;background-color:#fff;overflow:hidden;border:1px solid lightgray;z-index:999;transition:.1s ease-in-out;border-bottom:none}.clipboard-side-section .clipboard-header{height:60px}.clipboard-side-section .clipboard-content{height:calc(100% - 60px)}\n"], components: [{ type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i6.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "mode", "value", "bufferValue"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }, { type: i7.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex", "aria-label", "aria-labelledby", "id", "labelPosition", "name", "required", "checked", "disabled", "indeterminate", "aria-describedby", "value"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { type: i8.DisplaySuitableIconComponent, selector: "app-display-suitable-icon", inputs: ["data", "size", "dataType", "archive"] }], directives: [{ type: i9.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { type: i10.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i10.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i11.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i11.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], pipes: { "translate": i12.TranslatePipe }, encapsulation: i0.ViewEncapsulation.None });
243
243
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ClipboardComponent, decorators: [{
244
244
  type: Component,
245
245
  args: [{
@@ -261,4 +261,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
261
261
  }], directory: [{
262
262
  type: Input
263
263
  }] } });
264
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpcGJvYXJkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL251eGVvLWRldmVsb3BtZW50LWZyYW1ld29yay9zcmMvbGliL2NvbXBvbmVudHMvZmlsZS1tYW5nZXIvY29tcG9uZW50cy9jbGlwYm9hcmQvY2xpcGJvYXJkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL251eGVvLWRldmVsb3BtZW50LWZyYW1ld29yay9zcmMvbGliL2NvbXBvbmVudHMvZmlsZS1tYW5nZXIvY29tcG9uZW50cy9jbGlwYm9hcmQvY2xpcGJvYXJkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBcUIsTUFBTSxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDOzs7Ozs7Ozs7Ozs7OztBQWE3RyxNQUFNLE9BQU8sa0JBQWtCO0lBaUI3QixZQUFvQixrQkFBc0MsRUFDaEQsV0FBd0IsRUFDeEIsbUJBQXdDLEVBQ3hDLHFCQUE2QztRQUhuQyx1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW9CO1FBQ2hELGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBQ3hCLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFDeEMsMEJBQXFCLEdBQXJCLHFCQUFxQixDQUF3QjtRQWxCN0MscUJBQWdCLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUN0Qyx3QkFBbUIsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBRTFDLG1CQUFjLEdBQUcsRUFBRSxDQUFDLENBQUMsb0NBQW9DO1FBRXpELG9CQUFlLEdBQUcsRUFBRSxDQUFDO1FBRzlCLHNCQUFpQixHQUFHLEVBQUUsQ0FBQyxDQUFDLDZEQUE2RDtRQUNyRixlQUFVLEdBQUcsS0FBSyxDQUFDO1FBQ25CLGVBQVUsR0FBRyxL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QUNuRyxrR0FBa0c7Z0JBQ2xHLElBQUksQ0FBQywyQkFBMkIsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUE7YUFDaEQ7UUFDSCxDQUFDLENBQUMsQ0FBQTtRQUNGLElBQUksSUFBSSxDQUFDLDJCQUEyQixDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7WUFDL0MsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsMkJBQTJCLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxFQUFFO2dCQUM5RCxPQUFPLElBQUksQ0FBQyxlQUFlLEtBQUssSUFBSSxDQUFDO1lBQ3ZDLENBQUMsQ0FBQyxDQUFBO1lBQ0YsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsMkJBQTJCLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxFQUFFO2dCQUM5RCxPQUFPLElBQUksQ0FBQyxlQUFlLEtBQUssSUFBSSxDQUFDO1lBQ3ZDLENBQUMsQ0FBQyxDQUFBO1NBQ0g7UUFDRCxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQywyQkFBMkIsQ0FBQyxDQUFBO0lBQy9DLENBQUM7O2dIQXhRVSxrQkFBa0I7b0dBQWxCLGtCQUFrQiw0U0NiL0IsK2dMQXVGTTs0RkQxRU8sa0JBQWtCO2tCQU45QixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxlQUFlO29CQUN6QixXQUFXLEVBQUUsNEJBQTRCO29CQUN6QyxTQUFTLEVBQUUsQ0FBQyw0QkFBNEIsQ0FBQztvQkFDekMsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7aUJBQ3RDOzBNQUdXLGdCQUFnQjtzQkFBekIsTUFBTTtnQkFDRyxtQkFBbUI7c0JBQTVCLE1BQU07Z0JBRUUsY0FBYztzQkFBdEIsS0FBSztnQkFDRyxvQkFBb0I7c0JBQTVCLEtBQUs7Z0JBQ0csZUFBZTtzQkFBdkIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3V0cHV0LCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBGaWxlTWFuYWdlclNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi8uLi9zaGFyZWQtc2VydmljZXMvZmlsZS1tYW5hZ2VyLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBVc2VyU2VydmljZSB9IGZyb20gJy4uLy4uLy4uLy4uL3NoYXJlZC1zZXJ2aWNlcy91c2VyLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBDdXN0b21Ub2FzdHJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vY3VzdG9tLXRvYXN0ci9zZXJ2aWNlcy9jdXN0b20tdG9hc3RyLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBVc2VyUHJlZmVyZW5jZXNTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vY29yZS9zZXJ2aWNlcy91c2VyL3VzZXItcHJlZmVyZW5jZXMuc2VydmljZSc7XHJcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdsaWItY2xpcGJvYXJkJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vY2xpcGJvYXJkLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9jbGlwYm9hcmQuY29tcG9uZW50LnNjc3MnXSxcclxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDbGlwYm9hcmRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XHJcblxyXG4gIEBPdXRwdXQoKSBvbkNsaXBib2FyZENsb3NlID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gIEBPdXRwdXQoKSBvblJlZnJlc2hGb2xkZXJUcmVlID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICBASW5wdXQoKSBjbGlwYm9hcmRJdGVtcyA9IFtdOyAvLyBhcnJheSBvZiBpZCB0byBpdGVtcyBpbiBjbGlwYm9hcmRcclxuICBASW5wdXQoKSBteUN1cnJlY250Rm9sZGVyRGF0YTtcclxuICBASW5wdXQoKSBwcmV2ZW50ZWRHcm91cHMgPSBbXTtcclxuICBASW5wdXQoKSBkaXJlY3Rvcnk7XHJcblxyXG4gIGNsaXBib2FyZERvY21lbnRzID0gW107IC8vIGFycmF5IG9mIGRvY3VtZW50cyB3aXRoIGZ1bGwgZGV0YWlscyBvZiBpdGVtcyBpbiBjbGlwYm9hcmRcclxuICBlbmFibGVDb3B5ID0gZmFsc2U7XHJcbiAgZW5hYmxlTW92ZSA9IGZhbHNlO1xyXG4gIGNsaXBib2FyZExvYWRpbmcgPSBmYWxzZTtcclxuICBkb2N1bWVudFNlbGVjdGVkSW5DbGlwYm9hcmQgPSBbXTtcclxuICBteVRhcmdldEZvbGRlckFjY2VwdGVkQ2hpbGRyZW5zO1xyXG4gIHJlZnJlc2hDbGlwU3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBmaWxlTWFuYWdlclNlcnZpY2U6IEZpbGVNYW5hZ2VyU2VydmljZSxcclxuICAgIHByaXZhdGUgdXNlclNlcnZpY2U6IFVzZXJTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBjdXN0b21Ub2FzdHJTZXJ2aWNlOiBDdXN0b21Ub2FzdHJTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSB1c2VyUHJlZmVyZW5jZVNlcnZpY2U6IFVzZXJQcmVmZXJlbmNlc1NlcnZpY2UpIHsgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMucmVmcmVzaENsaXBTdWJzY3JpcHRpb24gPSB0aGlzLmZpbGVNYW5hZ2VyU2VydmljZS5vblJlZnJlc2hDbGlwYm9hcmQuc3Vic2NyaWJlKHJlcyA9PiB7XHJcbiAgICAgIHRoaXMub3BlbkNsaXBib2FyZCgpO1xyXG4gICAgfSlcclxuICAgIHRoaXMub3BlbkNsaXBib2FyZCgpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLnJlZnJlc2hDbGlwU3Vic2NyaXB0aW9uID8gdGhpcy5yZWZyZXNoQ2xpcFN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpIDogbnVsbDtcclxuICB9XHJcbiAgY2xvc2VDbGlwYm9hcmQoKSB7XHJcbiAgICB0aGlzLm9uQ2xpcGJvYXJkQ2xvc2UuZW1pdCgpO1xyXG4gICAgdGhpcy5jbGlwYm9hcmREb2NtZW50cyA9IFtdO1xyXG4gIH1cclxuXHJcbiAgb3BlbkNsaXBib2FyZCgpIHtcclxuICAgIHRoaXMuZW5hYmxlQ29weSA9IGZhbHNlO1xyXG4gICAgdGhpcy5lbmFibGVNb3ZlID0gZmFsc2U7XHJcbiAgICB0aGlzLmNsaXBib2FyZExvYWRpbmcgPSB0cnVlO1xyXG4gICAgaWYgKHRoaXMubXlDdXJyZWNudEZvbGRlckRhdGEuZW50aXR5LnByb3BlcnRpZXNbJ2Rtc2ZvbGRlcjpkb2N1bWVudFR5cGVDb2RlJ10gJiYgdGhpcy5teUN1cnJlY250Rm9sZGVyRGF0YS5lbnRpdHkucHJvcGVydGllc1snZG1zZm9sZGVyOmRvY3VtZW50VHlwZUNvZGUnXSAhPT0gJzA4MTEyMDIxJykge1xyXG4gICAgICAvLyBnZXQgYWNjZXB0ZWQgY2hpbGRlcm5zIGZvciBteSBjdXJyZW50IGZvbGRlclxyXG4gICAgICAvLyBpZiAodGhpcy5zdWJ0eXBlc1NlcnZpY2Uuc3RvcmVkU3VidHlwZXNbdGhpcy5teUN1cnJlY250Rm9sZGVyRGF0YS5lbnRpdHkudWlkXSkge1xyXG4gICAgICAvLyAgICAgdGhpcy5teVRhcmdldEZvbGRlckFjY2VwdGVkQ2hpbGRyZW5zID0gdGhpcy5zdWJ0eXBlc1NlcnZpY2Uuc3RvcmVkU3VidHlwZXNbdGhpcy5teUN1cnJlY250Rm9sZGVyRGF0YS5lbnRpdHkudWlkXTtcclxuICAgICAgLy8gfSBlbHNlIHtcclxuICAgICAgdGhpcy5maWxlTWFuYWdlclNlcnZpY2UuZ2V0Q2xpcGJvYXJkQWNjZXB0ZWRUeXBlcyh0aGlzLm15Q3VycmVjbnRGb2xkZXJEYXRhLmVudGl0eS51aWQpLnN1YnNjcmliZShyZXMgPT4ge1xyXG4gICAgICAgIHRoaXMubXlUYXJnZXRGb2xkZXJBY2NlcHRlZENoaWxkcmVucyA9IHJlcztcclxuICAgICAgfSwgZXJyb3IgPT4ge1xyXG4gICAgICAgIHRoaXMuY2xpcGJvYXJkTG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMuY2xpcGJvYXJkRG9jbWVudHMgPSBbXTtcclxuICAgICAgfSlcclxuICAgICAgLy8gfVxyXG4gICAgfVxyXG4gICAgaWYgKHRoaXMuY2xpcGJvYXJkSXRlbXMubGVuZ3RoID4gMCkge1xyXG4gICAgICB0aGlzLmZpbGVNYW5hZ2VyU2VydmljZS5nZXRDbGlwYm9hcmREb2N1bWVudHModGhpcy5jbGlwYm9hcmRJdGVtcykuc3Vic2NyaWJlKHJlcyA9PiB7XHJcbiAgICAgICAgcmVzLm1hcChkb2N1bWVudCA9PiB7XHJcbiAgICAgICAgICBkb2N1bWVudFsnY2FuQ29weVRvVGFyZ2V0J10gPSAodGhpcy5jYW5QZXJmb3JtQWN0aW9uSW5zaWRlVGFyZ2V0KGRvY3VtZW50KSAmJiB0aGlzLmNoZWNrSWZOb3RUaGVTYW1lUGFyZW50KGRvY3VtZW50KSAmJiBkb2N1bWVudC5jYW5Db3B5KTtcclxuICAgICAgICAgIGRvY3VtZW50WydjYW5Nb3ZlVG9UYXJnZXQnXSA9ICh0aGlzLmNhblBlcmZvcm1BY3Rpb25JbnNpZGVUYXJnZXQoZG9jdW1lbnQpICYmIHRoaXMuY2hlY2tJZk5vdFRoZVNhbWVQYXJlbnQoZG9jdW1lbnQpICYmIGRvY3VtZW50LmNhbk1vdmUpXHJcbiAgICAgICAgfSlcclxuICAgICAgICB0aGlzLmNsaXBib2FyZERvY21lbnRzID0gcmVzO1xyXG4gICAgICAgIGNvbnNvbGUubG9nKHRoaXMuY2xpcGJvYXJkRG9jbWVudHMpO1xyXG4gICAgICAgIHRoaXMuY2xpcGJvYXJkTG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICB9KVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5jbGlwYm9hcmREb2NtZW50cyA9IFtdO1xyXG4gICAgICB0aGlzLmNsaXBib2FyZExvYWRpbmcgPSBmYWxzZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vIHByZXZlbnQgY29weWluZyBvciBtb3ZpbmcgdGhlIGZpbGUgdG8gaXRzIHNhbWUgcGxhY2Ugc2luY2UgaXQgaXMgcHJldmVudGVkIFxyXG4gIC8vIHByZXZlbnQgY29weWluZyBvciBtb3ZpbmcgdGhlIGZvbGRlciBpbnNpZGUgaXQgc2VsZlxyXG4gIGNoZWNrSWZOb3RUaGVTYW1lUGFyZW50KGRvY3VtZW50KSB7XHJcbiAgICAvLyBsZXQgZGlyZWN0b3J5ID0gdGhpcy5nZXRDdXJyZW50RGlyZWN0b3J5KCk7XHJcbiAgICBpZiAoZG9jdW1lbnQucGFyZW50UmVmICE9PSB0aGlzLmRpcmVjdG9yeS5kYXRhSXRlbS5pZCAmJiBkb2N1bWVudC51aWQgIT09IHRoaXMuZGlyZWN0b3J5LmRhdGFJdGVtLmlkKSB7XHJcbiAgICAgIHJldHVybiB0cnVlXHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gZmFsc2VcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGRlbGV0ZWZyb21DbGlwYm9hcmQoZG9jdW1lbnQpIHtcclxuICAgIGxldCBteWluZGV4ID0gLTE7XHJcbiAgICB0aGlzLmNsaXBib2FyZEl0ZW1zLm1hcCgoaWQsIGluZGV4KSA9PiB7XHJcbiAgICAgIGlmIChkb2N1bWVudC51aWQgPT09IGlkKSB7XHJcbiAgICAgICAgbXlpbmRleCA9IGluZGV4XHJcbiAgICAgIH1cclxuICAgIH0pXHJcbiAgICB0aGlzLmNsaXBib2FyZEl0ZW1zLnNwbGljZShteWluZGV4LCAxKTtcclxuICAgIHRoaXMuY3VzdG9tVG9hc3RyU2VydmljZS5zaG93KCdzdWNjZXNzJywgJ1RPQVNURVIuU1VDQ0VTUycsIFwiVE9BU1RFUi5yZW1vdmVkX2Zyb21fY2xpcGJvYXJkXCIpO1xyXG4gICAgLy8gbGV0IGRpcmVjdG9yeSA9IHRoaXMuZ2V0Q3VycmVudERpcmVjdG9yeSgpO1xyXG4gICAgLy8gbGV0IGlkID1cclxuICAgIC8vICAgICBkaXJlY3RvcnkuZGF0YUl0ZW0gPT09IHVuZGVmaW5lZFxyXG4gICAgLy8gICAgICAgICA/IHRoaXMubWFpbkZvbGRlclxyXG4gICAgLy8gICAgICAgICA6IHRoaXMuZ2V0Q3VycmVudEZvbGRlcklkKGRpcmVjdG9yeSk7XHJcbiAgICAvLyB0aGlzLnJlaW5pdGlhbGl6ZUZvbGRlclRyZWUoaWQsIGRpcmVjdG9yeSk7XHJcbiAgICB0aGlzLm9uUmVmcmVzaEZvbGRlclRyZWUuZW1pdCgpO1xyXG4gICAgdGhpcy5vcGVuQ2xpcGJvYXJkKCk7XHJcbiAgICB0aGlzLnVzZXJQcmVmZXJlbmNlU2VydmljZS5zZXQoJ2NsaXBib2FyZEl0ZW1zJywgSlNPTi5zdHJpbmdpZnkodGhpcy5jbGlwYm9hcmRJdGVtcykpO1xyXG4gIH1cclxuXHJcbiAgLy8gZnVuY3Rpb24gdG8gY2hlY2sgaWYgaSBjYW4gcGVyZm9ybSBhY3Rpb24gb24gdGhhdCB0YXJnZXQgZm9sZGVyIG9yIG5vdCBcclxuICBjYW5QZXJmb3JtQWN0aW9uSW5zaWRlVGFyZ2V0KGRvY3VtZW50KSB7XHJcbiAgICAvL2NoZWNrIGlmIHRhcmdldCBpcyAnb3RoZXInIHR5cGUgZm9sZGVyIG9yIGRtcyBmb2xkZXJcclxuICAgIGlmICh0aGlzLm15Q3VycmVjbnRGb2xkZXJEYXRhLmVudGl0eS5wcm9wZXJ0aWVzWydkbXNmb2xkZXI6ZG9jdW1lbnRUeXBlQ29kZSddID09PSAnMDgxMTIwMjEnICYmICF0aGlzLmNoZWNrSWZJblByZXZlbnRlZEdyb3Vwcyh0aGlzLm15Q3VycmVjbnRGb2xkZXJEYXRhLmVudGl0eS5wYXRoKSkge1xyXG4gICAgICAvLyBpZiBteSBmb2xkZXIgaXMgZnJvbSB0eXBlIG90aGVycyBhbmQgbm90IGluIHByZXZlbnRlZCBncm91cHNcclxuICAgICAgcmV0dXJuIHRydWVcclxuICAgIH0gZWxzZSBpZiAodGhpcy5teUN1cnJlY250Rm9sZGVyRGF0YS5lbnRpdHkucHJvcGVydGllc1snZG1zZm9sZGVyOmRvY3VtZW50VHlwZUNvZGUnXSAmJiB0aGlzLm15Q3VycmVjbnRGb2xkZXJEYXRhLmVudGl0eS5wcm9wZXJ0aWVzWydkbXNmb2xkZXI6ZG9jdW1lbnRUeXBlQ29kZSddICE9PSAnMDgxMTIwMjEnKSB7XHJcbiAgICAgIC8vaWYgbXkgZm9sZGVyIGhhcyBjb2RlIGFuZCB3YXMgbm90IG90aGVyIHR5cGUgZm9sZGVyIHRoZW4gY2hlY2sgZm9yIGFjY2VwdGVkIGNoaWxyZHJuIGZvciB0aGF0IGZvbGRlciB0byBjb250YWluIHRoaXMgZmlsZSB0eXBlXHJcbiAgICAgIGlmIChkb2N1bWVudC5pc0ZpbGUgPT09ICdGaWxlJykge1xyXG4gICAgICAgIGlmICh0aGlzLm15VGFyZ2V0Rm9sZGVyQWNjZXB0ZWRDaGlsZHJlbnMuY29udGV4dFBhcmFtZXRlcnMgJiZcclxuICAgICAgICAgIHRoaXMubXlUYXJnZXRGb2xkZXJBY2NlcHRlZENoaWxkcmVucy5jb250ZXh0UGFyYW1ldGVycy5hY2NlcHRlZF9jaGlsZHJlbiAmJiBBcnJheS5pc0FycmF5KHRoaXMubXlUYXJnZXRGb2xkZXJBY2NlcHRlZENoaWxkcmVucy5jb250ZXh0UGFyYW1ldGVycy5hY2NlcHRlZF9jaGlsZHJlbikgJiZcclxuICAgICAgICAgIHRoaXMubXlUYXJnZXRGb2xkZXJBY2NlcHRlZENoaWxkcmVucy5jb250ZXh0UGFyYW1ldGVycy5hY2NlcHRlZF9jaGlsZHJlbi5pbmRleE9mKGRvY3VtZW50LnByb3BlcnRpZXNbJ2dkb2M6ZG9jdW1lbnRUeXBlQ29kZSddKSA+IC0xKSB7XHJcbiAgICAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgcmV0dXJuIGZhbHNlXHJcbiAgICAgICAgfVxyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIGlmICh0aGlzLm15VGFyZ2V0Rm9sZGVyQWNjZXB0ZWRDaGlsZHJlbnMuY29udGV4dFBhcmFtZXRlcnMgJiZcclxuICAgICAgICAgIHRoaXMubXlUYXJnZXRGb2xkZXJBY2NlcHRlZENoaWxkcmVucy5jb250ZXh0UGFyYW1ldGVycy5hY2NlcHRlZF9jaGlsZHJlbiAmJiBBcnJheS5pc0FycmF5KHRoaXMubXlUYXJnZXRGb2xkZXJBY2NlcHRlZENoaWxkcmVucy5jb250ZXh0UGFyYW1ldGVycy5hY2NlcHRlZF9jaGlsZHJlbikgJiZcclxuICAgICAgICAgIHRoaXMubXlUYXJnZXRGb2xkZXJBY2NlcHRlZENoaWxkcmVucy5jb250ZXh0UGFyYW1ldGVycz8uYWNjZXB0ZWRfY2hpbGRyZW4uaW5kZXhPZihkb2N1bWVudC5wcm9wZXJ0aWVzWydkbXNmb2xkZXI6ZG9jdW1lbnRUeXBlQ29kZSddKSA+IC0xKSB7XHJcbiAgICAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgcmV0dXJuIGZhbHNlXHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICAvLyBwcmV2ZW50IGFjdGlvbiB0byB0aGlzIHRhcmdldCBcclxuICAgICAgcmV0dXJuIGZhbHNlXHJcbiAgICB9XHJcblxyXG4gIH1cclxuXHJcbiAgLy8gZnVuY3Rpb24gdG8gY2hlY2sgaWYgdGhpcyBwYXRoIG5vdCBiZWxvbmcgdG8gZ3JvdXAgdGhhdCBpcyBwcmV2ZW50ZWQgZnJvbSBjcmVhdGluZyBmb2xkZXIgb2YgdHlwZSBvdGhlcnNcclxuICBjaGVja0lmSW5QcmV2ZW50ZWRHcm91cHMocGF0aCkge1xyXG4gICAgLy8gaWYgaW4gcHJldmVudGVkIGZyb3VwIHJ0dXJuIHRydWUgZWxzZSByZXR1cm4gZmFsc2VcclxuICAgIGNvbnNvbGUubG9nKHBhdGgpO1xyXG4gICAgbGV0IG15RGVwYXJ0bWVudCA9IHRoaXMudXNlclNlcnZpY2UuZ2V0VXNlckRlcGFydG1lbnRGcm9tUGF0aChwYXRoKTtcclxuICAgIGxldCBleGlzdCA9IHRoaXMucHJldmVudGVkR3JvdXBzLmluZGV4T2YobXlEZXBhcnRtZW50KSA+IC0xID8gdHJ1ZSA6IGZhbHNlO1xyXG4gICAgcmV0dXJuIGV4aXN0O1xyXG4gIH1cclxuXHJcbiAgY29weUZyb21JbnNpZGVDbGlwYm9hcmQoKSB7XHJcbiAgICBsZXQgY2xpcGJvYXJkU2VsZWN0ZWRJdGVtcyA9IFtdO1xyXG4gICAgbGV0IGNsaXBib2FyZFNlbGVjdGVkSXRlbXNMZW5ndGggPSAwO1xyXG4gICAgLy8gc2VwZXJhdGUgc2VsZWN0ZWQgaXRlbXMgaW4gc2VwZXJhdGUgYXJyYXkgXHJcbiAgICB0aGlzLmNsaXBib2FyZERvY21lbnRzLm1hcCgoZG9jLCBpbmRleCkgPT4ge1xyXG4gICAgICAvLyBjYW4ndCBjb3B5IGZpbGUgaW4gdGhlIHNhbWUgcGxhY2UgaXQgZXhpc3QgYW5kIGNhbid0IGNvcHkgZm9sZGVyIGluc2lkZSBpdCBzZWxmIFxyXG4gICAgICBpZiAoZG9jLmlzU2VsZWN0ZWQgJiYgZG9jLnBhcmVudFJlZiAhPT0gdGhpcy5kaXJlY3RvcnkuZGF0YUl0ZW0uaWQgJiYgZG9jLnVpZCAhPT0gdGhpcy5kaXJlY3RvcnkuZGF0YUl0ZW0uaWQpIHtcclxuICAgICAgICBjbGlwYm9hcmRTZWxlY3RlZEl0ZW1zLnB1c2goZG9jLnVpZClcclxuICAgICAgfVxyXG4gICAgfSlcclxuXHJcbiAgICBpZiAoY2xpcGJvYXJkU2VsZWN0ZWRJdGVtcy5sZW5ndGggPiAwKSB7XHJcbiAgICAgIHRoaXMuY2xpcGJvYXJkTG9hZGluZyA9IHRydWU7XHJcbiAgICAgIC8vICAgIHRoaXMuY3VycmVudFBhdGggPSAnJztcclxuICAgICAgdGhpcy5maWxlTWFuYWdlclNlcnZpY2VcclxuICAgICAgICAuY29weVRvKHsgaWQ6IHRoaXMuZGlyZWN0b3J5LmRhdGFJdGVtLmlkLCBuYW1lOiB0aGlzLmRpcmVjdG9yeS5kYXRhSXRlbS5uYW1lIH0sIGNsaXBib2FyZFNlbGVjdGVkSXRlbXMudG9TdHJpbmcoKSlcclxuICAgICAgICAuc3Vic2NyaWJlKFxyXG4gICAgICAgICAgKHJlcykgPT4ge1xyXG4gICAgICAgICAgICAvLyByZW1vdmUgc2VsZWN0ZWQgaXRlbXMgZnJvbSBjbGlwYm9hcmQgYWZ0ZXIgYWN0aW9uIGlzIGRvbmVcclxuICAgICAgICAgICAgdGhpcy5yZW1vdmVJdGVtc0FmdGVyQWN0aW9uRG9uZShjbGlwYm9hcmRTZWxlY3RlZEl0ZW1zKTtcclxuICAgICAgICAgICAgdGhpcy5jbGlwYm9hcmRMb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICAgIHRoaXMub25DbGlwYm9hcmRDbG9zZS5lbWl0KCk7XHJcbiAgICAgICAgICAgIHRoaXMub25SZWZyZXNoRm9sZGVyVHJlZS5lbWl0KCk7XHJcbiAgICAgICAgICAgIHRoaXMuY3VzdG9tVG9hc3RyU2VydmljZS5zaG93KFxyXG4gICAgICAgICAgICAgICdzdWNjZXNzJyxcclxuICAgICAgICAgICAgICAnVE9BU1RFUi5TVUNDRVNTJyxcclxuICAgICAgICAgICAgICAnVE9BU1RFUi5ET0NVTUVOVF9DT1BJRUQnXHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAgKGVycikgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLmNsaXBib2FyZExvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICAgICAgdGhpcy5jdXN0b21Ub2FzdHJTZXJ2aWNlLnNob3coXHJcbiAgICAgICAgICAgICAgJ2Vycm9yJyxcclxuICAgICAgICAgICAgICAnVE9BU1RFUi5FUlJPUicsXHJcbiAgICAgICAgICAgICAgJ1RPQVNURVIuRE9DVU1FTlRfQ09QSUVEX0VSUk9SJ1xyXG4gICAgICAgICAgICApO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLmN1c3RvbVRvYXN0clNlcnZpY2Uuc2hvdyhcclxuICAgICAgICAnZXJyb3InLFxyXG4gICAgICAgICdUT0FTVEVSLkVSUk9SJyxcclxuICAgICAgICAnVE9BU1RFUi5ET0NVTUVOVF9DT1BJRURfREVTVElOQVRJT05fRVJST1InXHJcbiAgICAgICk7XHJcbiAgICB9XHJcblxyXG4gIH1cclxuXHJcbiAgbW92ZUZyb21JbnNpZGVDbGlwYm9hcmQoKSB7XHJcbiAgICBsZXQgY2xpcGJvYXJkU2VsZWN0ZWRJdGVtcyA9IFtdO1xyXG4gICAgbGV0IGNsaXBib2FyZFNlbGVjdGVkSXRlbXNMZW5ndGggPSAwO1xyXG4gICAgLy8gc2VwZXJhdGUgc2VsZWN0ZWQgaXRlbXMgaW4gc2VwZXJhdGUgYXJyYXkgXHJcbiAgICB0aGlzLmNsaXBib2FyZERvY21lbnRzLm1hcCgoZG9jLCBpbmRleCkgPT4ge1xyXG4gICAgICAvLyBjYW4ndCBtb3ZlIGZpbGUgaW4gdGhlIHNhbWUgcGxhY2UgaXQgZXhpc3QgYW5kIGNhbid0IG1vdmUgZm9sZGVyIGluc2lkZSBpdCBzZWxmIFxyXG4gICAgICBpZiAoZG9jLmlzU2VsZWN0ZWQgJiYgZG9jLnBhcmVudFJlZiAhPT0gdGhpcy5kaXJlY3RvcnkuZGF0YUl0ZW0uaWQgJiYgZG9jLnVpZCAhPT0gdGhpcy5kaXJlY3RvcnkuZGF0YUl0ZW0uaWQpIHtcclxuICAgICAgICBjbGlwYm9hcmRTZWxlY3RlZEl0ZW1zLnB1c2goZG9jLnVpZClcclxuICAgICAgfVxyXG4gICAgfSlcclxuXHJcbiAgICBpZiAoY2xpcGJvYXJkU2VsZWN0ZWRJdGVtcy5sZW5ndGggPiAwKSB7XHJcbiAgICAgIHRoaXMuY2xpcGJvYXJkTG9hZGluZyA9IHRydWU7XHJcbiAgICAgIHRoaXMuZmlsZU1hbmFnZXJTZXJ2aWNlXHJcbiAgICAgICAgLm1vdmVUbyh7IGlkOiB0aGlzLmRpcmVjdG9yeS5kYXRhSXRlbS5pZCwgbmFtZTogdGhpcy5kaXJlY3RvcnkuZGF0YUl0ZW0ubmFtZSB9LCBjbGlwYm9hcmRTZWxlY3RlZEl0ZW1zLnRvU3RyaW5nKCkpXHJcbiAgICAgICAgLnN1YnNjcmliZShcclxuICAgICAgICAgIChyZXMpID0+IHtcclxuICAgICAgICAgICAgLy8gcmVtb3ZlIHNlbGVjdGVkIGl0ZW1zIGZyb20gY2xpcGJvYXJkIGFmdGVyIGFjdGlvbiBpcyBkb25lXHJcbiAgICAgICAgICAgIHRoaXMucmVtb3ZlSXRlbXNBZnRlckFjdGlvbkRvbmUoY2xpcGJvYXJkU2VsZWN0ZWRJdGVtcyk7XHJcbiAgICAgICAgICAgIHRoaXMuY2xpcGJvYXJkTG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgICB0aGlzLm9uQ2xpcGJvYXJkQ2xvc2UuZW1pdCgpO1xyXG4gICAgICAgICAgICB0aGlzLm9uUmVmcmVzaEZvbGRlclRyZWUuZW1pdCgpO1xyXG4gICAgICAgICAgICB0aGlzLmN1c3RvbVRvYXN0clNlcnZpY2Uuc2hvdyhcclxuICAgICAgICAgICAgICAnc3VjY2VzcycsXHJcbiAgICAgICAgICAgICAgJ1RPQVNURVIuU1VDQ0VTUycsXHJcbiAgICAgICAgICAgICAgJ1RPQVNURVIuRE9DVU1FTlRfTU9WRUQnXHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAgKGVycikgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLmNsaXBib2FyZExvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICAgICAgdGhpcy5jdXN0b21Ub2FzdHJTZXJ2aWNlLnNob3coXHJcbiAgICAgICAgICAgICAgJ2Vycm9yJyxcclxuICAgICAgICAgICAgICAnVE9BU1RFUi5FUlJPUicsXHJcbiAgICAgICAgICAgICAgJ1RPQVNURVIuRE9DVU1FTlRfTU9WRURfRVJST1InXHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgKTtcclxuICAgIH0gZWxzZVxyXG4gICAgICB0aGlzLmN1c3RvbVRvYXN0clNlcnZpY2Uuc2hvdyhcclxuICAgICAgICAnZXJyb3InLFxyXG4gICAgICAgICdUT0FTVEVSLkVSUk9SJyxcclxuICAgICAgICAnVE9BU1RFUi5ET0NVTUVOVF9NT1ZFRF9ERVNUSU5BVElPTl9FUlJPUidcclxuICAgICAgKTtcclxuICB9XHJcblxyXG4gIHJlbW92ZUl0ZW1zQWZ0ZXJBY3Rpb25Eb25lKHNlbGVjdGVkSXRlbXMpIHtcclxuICAgIHRoaXMuY2xpcGJvYXJkSXRlbXMgPSB0aGlzLmNsaXBib2FyZEl0ZW1zLmZpbHRlcihmdW5jdGlvbiAoZWwpIHtcclxuICAgICAgcmV0dXJuICFzZWxlY3RlZEl0ZW1zLmluY2x1ZGVzKGVsKTtcclxuICAgIH0pO1xyXG4gICAgdGhpcy51c2VyUHJlZmVyZW5jZVNlcnZpY2Uuc2V0KCdjbGlwYm9hcmRJdGVtcycsIEpTT04uc3RyaW5naWZ5KHRoaXMuY2xpcGJvYXJkSXRlbXMpKTtcclxuICB9XHJcblxyXG4gIGNoZWNraW5nKCkge1xyXG4gICAgdGhpcy5lbmFibGVDb3B5ID0gZmFsc2U7XHJcbiAgICB0aGlzLmVuYWJsZU1vdmUgPSBmYWxzZTtcclxuICAgIHRoaXMuZG9jdW1lbnRTZWxlY3RlZEluQ2xpcGJvYXJkID0gW107XHJcbiAgICAvLyBjb25zb2xlLmxvZyh0aGlzLmNsaXBib2FyZERvY21lbnRzKTtcclxuICAgIHRoaXMuY2xpcGJvYXJkRG9jbWVudHMubWFwKGRvY3VtZW50ID0+IHtcclxuICAgICAgLy8gd29rcmluZyB3aXRoIG9ubHkgc2VsZWN0ZWQgZG9jdW1lbnRzIFxyXG4gICAgICBpZiAoZG9jdW1lbnQuaXNTZWxlY3RlZCA9PT0gdHJ1ZSkge1xyXG4gICAgICAgIC8vIGRvY3VtZW50WydjYW5Db3B5VG9UYXJnZXQnXSA9ICh0aGlzLmNhblBlcmZvcm1BY3Rpb25JbnNpZGVUYXJnZXQoZG9jdW1lbnQpICYmIGRvY3VtZW50LmNhbkNvcHkpO1xyXG4gICAgICAgIC8vIGRvY3VtZW50WydjYW5Nb3ZlVG9UYXJnZXQnXSA9ICh0aGlzLmNhblBlcmZvcm1BY3Rpb25JbnNpZGVUYXJnZXQoZG9jdW1lbnQpICYmIGRvY3VtZW50LmNhbk1vdmUpXHJcbiAgICAgICAgdGhpcy5kb2N1bWVudFNlbGVjdGVkSW5DbGlwYm9hcmQucHVzaChkb2N1bWVudClcclxuICAgICAgfVxyXG4gICAgfSlcclxuICAgIGlmICh0aGlzLmRvY3VtZW50U2VsZWN0ZWRJbkNsaXBib2FyZC5sZW5ndGggPiAwKSB7XHJcbiAgICAgIHRoaXMuZW5hYmxlQ29weSA9IHRoaXMuZG9jdW1lbnRTZWxlY3RlZEluQ2xpcGJvYXJkLmV2ZXJ5KGl0ZW0gPT4ge1xyXG4gICAgICAgIHJldHVybiBpdGVtLmNhbkNvcHlUb1RhcmdldCA9PT0gdHJ1ZTtcclxuICAgICAgfSlcclxuICAgICAgdGhpcy5lbmFibGVNb3ZlID0gdGhpcy5kb2N1bWVudFNlbGVjdGVkSW5DbGlwYm9hcmQuZXZlcnkoaXRlbSA9PiB7XHJcbiAgICAgICAgcmV0dXJuIGl0ZW0uY2FuTW92ZVRvVGFyZ2V0ID09PSB0cnVlO1xyXG4gICAgICB9KVxyXG4gICAgfVxyXG4gICAgY29uc29sZS5sb2codGhpcy5kb2N1bWVudFNlbGVjdGVkSW5DbGlwYm9hcmQpXHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJjbGlwYm9hcmQtc2lkZS1zZWN0aW9uIHJlbGF0aXZlXCI+XHJcblxyXG4gICAgPGRpdiBjbGFzcz1cInAtMyBoLWZ1bGxcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY2xpcGJvYXJkLWhlYWRlciBmbGV4IGp1c3RpZnktYmV0d2VlbiBpdGVtcy1jZW50ZXIgYm9yZGVyLWItMlwiPlxyXG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cImZsZXggdGV4dC1ncmF5LTUwMCBmb250LWJvbGQgaXRlbXMtY2VudGVyXCI+XHJcbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtNHhsIGJpIGJpLWNsaXBib2FyZFwiPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibXgtMiB0ZXh0LXhsXCI+e3snY2xpcGJvYXJkJyB8IHRyYW5zbGF0ZX19PC9zcGFuPlxyXG4gICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgIDxtYXQtaWNvbiBjbGFzcz1cImNsb3NlLWljb24gdGV4dC1ncmF5LTUwMCBjdXJzb3ItcG9pbnRlclwiIChjbGljayk9XCJjbG9zZUNsaXBib2FyZCgpXCJcclxuICAgICAgICAgICAgICAgIFttYXRUb29sdGlwXT1cIidCVVRUT05TLkNMT1NFJyB8IHRyYW5zbGF0ZVwiPmNsb3NlPC9tYXQtaWNvbj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8IS0tIDxkaXYgY2xhc3M9XCJoLWZ1bGwgZm9udC1ib2xkIGQtZmxleCBqdXN0aWZ5LWNlbnRlciBpdGVtcy1jZW50ZXJcIiAqbmdJZj1cImNsaXBib2FyZExvYWRpbmdcIj5cclxuICAgICAgICAgICAge3sgXCJsb2FkaW5nXCIgfCB0cmFuc2xhdGUgfX1cclxuICAgICAgICA8L2Rpdj4gLS0+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInctZnVsbCBoLXB4IGJnLWdyYXktMjAwIG1iLTNcIiAqbmdJZj1cImNsaXBib2FyZExvYWRpbmdcIj5cclxuICAgICAgICAgICAgPG1hdC1wcm9ncmVzcy1iYXIgbW9kZT1cImluZGV0ZXJtaW5hdGVcIj48L21hdC1wcm9ncmVzcy1iYXI+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNsaXBib2FyZC1jb250ZW50IGZsZXggZmxleC1jb2wganVzdGlmeS1iZXR3ZWVuIGl0ZW1zLWJldHdlZW5cIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImgtZnVsbCBmbGV4IGp1c3RpZnktY2VudGVyIGl0ZW1zLWNlbnRlciB0ZXh0LWdyYXktNTAwXCJcclxuICAgICAgICAgICAgICAgICpuZ0lmPVwiY2xpcGJvYXJkRG9jbWVudHMubGVuZ3RoID09PSAwXCI+e3snbm9fY2xpcGJvYXJkX2l0ZW1zJyB8IHRyYW5zbGF0ZX19PC9kaXY+XHJcblxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwicHgtMiBoLTUvNiBvdmVyZmxvdy15LWF1dG9cIiAqbmdJZj1cImNsaXBib2FyZERvY21lbnRzLmxlbmd0aCA+IDBcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJib3JkZXItYi0yXCIgKm5nRm9yPVwibGV0IGRvY3VtZW50IG9mIGNsaXBib2FyZERvY21lbnRzXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInB5LTEgdy04MiBmbGV4ICBpdGVtcy1jZW50ZXIganVzdGlmeS1iZXR3ZWVuXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGl0ZW1zLWNlbnRlciB3LTUvNlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1jaGVja2JveCBbKG5nTW9kZWwpXT1cImRvY3VtZW50LmlzU2VsZWN0ZWRcIiAoY2hhbmdlKT1cImNoZWNraW5nKClcIj4gPC9tYXQtY2hlY2tib3g+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCB3LWZ1bGxcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIDx0aXRsZS13aXRoLWljb24gY2xhc3M9XCJ3LTEvNiAtbXktMS41XCIgW2NvbnRleHRdPVwiZG9jdW1lbnRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbc2hvd1RpdGxlXT1cImZhbHNlXCI+PC90aXRsZS13aXRoLWljb24+IC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGFwcC1kaXNwbGF5LXN1aXRhYmxlLWljb24gY2xhc3M9XCJteC0xXCIgW2RhdGFdPVwiZG9jdW1lbnRcIiBbc2l6ZV09XCInNDBweCdcIj48L2FwcC1kaXNwbGF5LXN1aXRhYmxlLWljb24+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gIC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJkb2N1bWVudC5pc0ZpbGUgPT09ICdGaWxlJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwianVzdGlmeS1jZW50ZXIgZmxleCBmbGV4LWNvbCBmbGV4LTEgZmxleC1ncm93LTAgdy01LzZcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRleHQtYmFzZSB0ZXh0LWdyYXktNTAwIGZvbnQtYm9sZCB0cnVuY2F0ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdGl0bGVdPVwiZG9jdW1lbnQucHJvcGVydGllcz8uWydmaWxlOmNvbnRlbnQnXT8uWyduYW1lJ11cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2FsdF09XCJkb2N1bWVudC5wcm9wZXJ0aWVzPy5bJ2ZpbGU6Y29udGVudCddPy5bJ25hbWUnXVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3tkb2N1bWVudFsndGl0bGUnXX19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGV4dC1ncmF5LTUwMCB0ZXh0LXNtIHRleHQtbm93cmFwXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eygoZG9jdW1lbnQucHJvcGVydGllcz8uWydmaWxlOmNvbnRlbnQnXT8uWydsZW5ndGgnXSkgLyAoMTAyNCAqXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxMDI0KSkudG9GaXhlZCgyKSB9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTUJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZC1mbGV4XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpdGVtcy1jZW50ZXJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYmFzZSB0ZXh0LWdyYXktNTAwXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LWJvbGRcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCIgKm5nSWY9XCJkb2N1bWVudC5pc0ZpbGUgPT09ICdGb2xkZXInXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IGRvY3VtZW50Py50aXRsZSB9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBbbWF0VG9vbHRpcF09XCInQlVUVE9OUy5SRU1PVkVfQ0xJUEJPQVJEJyB8IHRyYW5zbGF0ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImN1cnNvci1wb2ludGVyIHctNSBoLTUgcm91bmRlZC1mdWxsIGJvcmRlci0yIGZsZXgganVzdGlmeS1jZW50ZXIgaXRlbXMtY2VudGVyIGJvcmRlci1ncmF5LTUwMCBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImRlbGV0ZWZyb21DbGlwYm9hcmQoZG9jdW1lbnQpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtZ3JheS01MDAgYmkgYmkteCB0ZXh0LWxnIGZsZXggaXRlbXMtY2VudGVyXCI+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRleHQtbWQgdGV4dC1ncmF5LTUwMCB0ZXh0LWNlbnRlciBteS0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiZG9jdW1lbnQuY2FuQ29weVRvVGFyZ2V0ICYmICFkb2N1bWVudC5jYW5Nb3ZlVG9UYXJnZXRcIj57eydjYW5fY29weV9vbmx5JyB8XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2xhdGV9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCIhZG9jdW1lbnQuY2FuQ29weVRvVGFyZ2V0ICYmIGRvY3VtZW50LmNhbk1vdmVUb1RhcmdldFwiPnt7J2Nhbl9tb3ZlX29ubHknIHxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zbGF0ZX19PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cImRvY3VtZW50LmNhbkNvcHlUb1RhcmdldCAmJiBkb2N1bWVudC5jYW5Nb3ZlVG9UYXJnZXRcIj57eydjYW5fY29weV9hbmRfbW92ZScgfFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNsYXRlfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cIiFkb2N1bWVudC5jYW5Db3B5VG9UYXJnZXQgJiYgIWRvY3VtZW50LmNhbk1vdmVUb1RhcmdldFwiPnt7J2Nhbl9ub3RfY29weV9hbmRfbW92ZSdcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgdHJhbnNsYXRlfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaC0xLzYgZmxleCB3LWZ1bGwganVzdGlmeS1jZW50ZXIgaXRlbXMtY2VudGVyXCI+XHJcbiAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwic3VibWlzc2lvbi1idXR0b24gbXgtMlwiIFtkaXNhYmxlZF09XCIhZW5hYmxlQ29weVwiXHJcbiAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImNvcHlGcm9tSW5zaWRlQ2xpcGJvYXJkKClcIj57eydCVVRUT05TLkNPUFknIHwgdHJhbnNsYXRlfX08L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJzdWJtaXNzaW9uLWJ1dHRvbiBteC0yXCIgW2Rpc2FibGVkXT1cIiFlbmFibGVNb3ZlXCJcclxuICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwibW92ZUZyb21JbnNpZGVDbGlwYm9hcmQoKVwiPnt7J0JVVFRPTlMuTU9WRScgfCB0cmFuc2xhdGV9fTwvYnV0dG9uPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG5cclxuICAgIDxkaXYgY2xhc3M9XCJiZy10cmFuc3BhcmVudCBhYnNvbHV0ZSB0b3AtMCBib3R0b20tMCBsZWZ0LTAgcmlnaHQtMCBcIiAqbmdJZj1cImNsaXBib2FyZExvYWRpbmdcIj5cclxuXHJcbiAgICA8L2Rpdj5cclxuPC9kaXY+Il19
264
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpcGJvYXJkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9udXhlby1kZXZlbG9wbWVudC1mcmFtZXdvcmsvc3JjL2xpYi9jb21wb25lbnRzL2ZpbGUtbWFuZ2VyL2NvbXBvbmVudHMvY2xpcGJvYXJkL2NsaXBib2FyZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9maWxlLW1hbmdlci9jb21wb25lbnRzL2NsaXBib2FyZC9jbGlwYm9hcmQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7Ozs7Ozs7Ozs7O0FBYTdHLE1BQU0sT0FBTyxrQkFBa0I7SUFpQjdCLFlBQW9CLGtCQUFzQyxFQUNoRCxXQUF3QixFQUN4QixtQkFBd0MsRUFDeEMscUJBQTZDO1FBSG5DLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBb0I7UUFDaEQsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFDeEIsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFxQjtRQUN4QywwQkFBcUIsR0FBckIscUJBQXFCLENBQXdCO1FBbEI3QyxxQkFBZ0IsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQ3RDLHdCQUFtQixHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFFMUMsbUJBQWMsR0FBRyxFQUFFLENBQUMsQ0FBQyxvQ0FBb0M7UUFFekQsb0JBQWUsR0FBRyxFQUFFLENBQUM7UUFHOUIsc0JBQWlCLEdBQUcsRUFBRSxDQUFDLENBQUMsNkRBQTZEO1FBQ3JGLGVBQVUsR0FBRyxLQUFLLENBQUM7UUFDbkIsZUFBVSxHQUFHLEtBQUssQ0FBQztR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RztnQkFDbEcsSUFBSSxDQUFDLDJCQUEyQixDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQTthQUNoRDtRQUNILENBQUMsQ0FBQyxDQUFBO1FBQ0YsSUFBSSxJQUFJLENBQUMsMkJBQTJCLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtZQUMvQyxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQywyQkFBMkIsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEVBQUU7Z0JBQzlELE9BQU8sSUFBSSxDQUFDLGVBQWUsS0FBSyxJQUFJLENBQUM7WUFDdkMsQ0FBQyxDQUFDLENBQUE7WUFDRixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQywyQkFBMkIsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEVBQUU7Z0JBQzlELE9BQU8sSUFBSSxDQUFDLGVBQWUsS0FBSyxJQUFJLENBQUM7WUFDdkMsQ0FBQyxDQUFDLENBQUE7U0FDSDtRQUNELE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLDJCQUEyQixDQUFDLENBQUE7SUFDL0MsQ0FBQzs7Z0hBeFFVLGtCQUFrQjtvR0FBbEIsa0JBQWtCLDRTQ2IvQiwrZ0xBdUZNOzRGRDFFTyxrQkFBa0I7a0JBTjlCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGVBQWU7b0JBQ3pCLFdBQVcsRUFBRSw0QkFBNEI7b0JBQ3pDLFNBQVMsRUFBRSxDQUFDLDRCQUE0QixDQUFDO29CQUN6QyxhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTtpQkFDdEM7ME1BR1csZ0JBQWdCO3NCQUF6QixNQUFNO2dCQUNHLG1CQUFtQjtzQkFBNUIsTUFBTTtnQkFFRSxjQUFjO3NCQUF0QixLQUFLO2dCQUNHLG9CQUFvQjtzQkFBNUIsS0FBSztnQkFDRyxlQUFlO3NCQUF2QixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0LCBPdXRwdXQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZpbGVNYW5hZ2VyU2VydmljZSB9IGZyb20gJy4uLy4uLy4uLy4uL3NoYXJlZC1zZXJ2aWNlcy9maWxlLW1hbmFnZXIuc2VydmljZSc7XHJcbmltcG9ydCB7IFVzZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vc2hhcmVkLXNlcnZpY2VzL3VzZXIuc2VydmljZSc7XHJcbmltcG9ydCB7IEN1c3RvbVRvYXN0clNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9jdXN0b20tdG9hc3RyL3NlcnZpY2VzL2N1c3RvbS10b2FzdHIuc2VydmljZSc7XHJcbmltcG9ydCB7IFVzZXJQcmVmZXJlbmNlc1NlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi8uLi9jb3JlL3NlcnZpY2VzL3VzZXIvdXNlci1wcmVmZXJlbmNlcy5zZXJ2aWNlJztcclxuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2xpYi1jbGlwYm9hcmQnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9jbGlwYm9hcmQuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2NsaXBib2FyZC5jb21wb25lbnQuc2NzcyddLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcclxufSlcclxuZXhwb3J0IGNsYXNzIENsaXBib2FyZENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcclxuXHJcbiAgQE91dHB1dCgpIG9uQ2xpcGJvYXJkQ2xvc2UgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgQE91dHB1dCgpIG9uUmVmcmVzaEZvbGRlclRyZWUgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gIEBJbnB1dCgpIGNsaXBib2FyZEl0ZW1zID0gW107IC8vIGFycmF5IG9mIGlkIHRvIGl0ZW1zIGluIGNsaXBib2FyZFxyXG4gIEBJbnB1dCgpIG15Q3VycmVjbnRGb2xkZXJEYXRhO1xyXG4gIEBJbnB1dCgpIHByZXZlbnRlZEdyb3VwcyA9IFtdO1xyXG4gIEBJbnB1dCgpIGRpcmVjdG9yeTtcclxuXHJcbiAgY2xpcGJvYXJkRG9jbWVudHMgPSBbXTsgLy8gYXJyYXkgb2YgZG9jdW1lbnRzIHdpdGggZnVsbCBkZXRhaWxzIG9mIGl0ZW1zIGluIGNsaXBib2FyZFxyXG4gIGVuYWJsZUNvcHkgPSBmYWxzZTtcclxuICBlbmFibGVNb3ZlID0gZmFsc2U7XHJcbiAgY2xpcGJvYXJkTG9hZGluZyA9IGZhbHNlO1xyXG4gIGRvY3VtZW50U2VsZWN0ZWRJbkNsaXBib2FyZCA9IFtdO1xyXG4gIG15VGFyZ2V0Rm9sZGVyQWNjZXB0ZWRDaGlsZHJlbnM7XHJcbiAgcmVmcmVzaENsaXBTdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGZpbGVNYW5hZ2VyU2VydmljZTogRmlsZU1hbmFnZXJTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSB1c2VyU2VydmljZTogVXNlclNlcnZpY2UsXHJcbiAgICBwcml2YXRlIGN1c3RvbVRvYXN0clNlcnZpY2U6IEN1c3RvbVRvYXN0clNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHVzZXJQcmVmZXJlbmNlU2VydmljZTogVXNlclByZWZlcmVuY2VzU2VydmljZSkgeyB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5yZWZyZXNoQ2xpcFN1YnNjcmlwdGlvbiA9IHRoaXMuZmlsZU1hbmFnZXJTZXJ2aWNlLm9uUmVmcmVzaENsaXBib2FyZC5zdWJzY3JpYmUocmVzID0+IHtcclxuICAgICAgdGhpcy5vcGVuQ2xpcGJvYXJkKCk7XHJcbiAgICB9KVxyXG4gICAgdGhpcy5vcGVuQ2xpcGJvYXJkKCk7XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIHRoaXMucmVmcmVzaENsaXBTdWJzY3JpcHRpb24gPyB0aGlzLnJlZnJlc2hDbGlwU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCkgOiBudWxsO1xyXG4gIH1cclxuICBjbG9zZUNsaXBib2FyZCgpIHtcclxuICAgIHRoaXMub25DbGlwYm9hcmRDbG9zZS5lbWl0KCk7XHJcbiAgICB0aGlzLmNsaXBib2FyZERvY21lbnRzID0gW107XHJcbiAgfVxyXG5cclxuICBvcGVuQ2xpcGJvYXJkKCkge1xyXG4gICAgdGhpcy5lbmFibGVDb3B5ID0gZmFsc2U7XHJcbiAgICB0aGlzLmVuYWJsZU1vdmUgPSBmYWxzZTtcclxuICAgIHRoaXMuY2xpcGJvYXJkTG9hZGluZyA9IHRydWU7XHJcbiAgICBpZiAodGhpcy5teUN1cnJlY250Rm9sZGVyRGF0YS5lbnRpdHkucHJvcGVydGllc1snZG1zZm9sZGVyOmRvY3VtZW50VHlwZUNvZGUnXSAmJiB0aGlzLm15Q3VycmVjbnRGb2xkZXJEYXRhLmVudGl0eS5wcm9wZXJ0aWVzWydkbXNmb2xkZXI6ZG9jdW1lbnRUeXBlQ29kZSddICE9PSAnMDgxMTIwMjEnKSB7XHJcbiAgICAgIC8vIGdldCBhY2NlcHRlZCBjaGlsZGVybnMgZm9yIG15IGN1cnJlbnQgZm9sZGVyXHJcbiAgICAgIC8vIGlmICh0aGlzLnN1YnR5cGVzU2VydmljZS5zdG9yZWRTdWJ0eXBlc1t0aGlzLm15Q3VycmVjbnRGb2xkZXJEYXRhLmVudGl0eS51aWRdKSB7XHJcbiAgICAgIC8vICAgICB0aGlzLm15VGFyZ2V0Rm9sZGVyQWNjZXB0ZWRDaGlsZHJlbnMgPSB0aGlzLnN1YnR5cGVzU2VydmljZS5zdG9yZWRTdWJ0eXBlc1t0aGlzLm15Q3VycmVjbnRGb2xkZXJEYXRhLmVudGl0eS51aWRdO1xyXG4gICAgICAvLyB9IGVsc2Uge1xyXG4gICAgICB0aGlzLmZpbGVNYW5hZ2VyU2VydmljZS5nZXRDbGlwYm9hcmRBY2NlcHRlZFR5cGVzKHRoaXMubXlDdXJyZWNudEZvbGRlckRhdGEuZW50aXR5LnVpZCkuc3Vic2NyaWJlKHJlcyA9PiB7XHJcbiAgICAgICAgdGhpcy5teVRhcmdldEZvbGRlckFjY2VwdGVkQ2hpbGRyZW5zID0gcmVzO1xyXG4gICAgICB9LCBlcnJvciA9PiB7XHJcbiAgICAgICAgdGhpcy5jbGlwYm9hcmRMb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5jbGlwYm9hcmREb2NtZW50cyA9IFtdO1xyXG4gICAgICB9KVxyXG4gICAgICAvLyB9XHJcbiAgICB9XHJcbiAgICBpZiAodGhpcy5jbGlwYm9hcmRJdGVtcy5sZW5ndGggPiAwKSB7XHJcbiAgICAgIHRoaXMuZmlsZU1hbmFnZXJTZXJ2aWNlLmdldENsaXBib2FyZERvY3VtZW50cyh0aGlzLmNsaXBib2FyZEl0ZW1zKS5zdWJzY3JpYmUocmVzID0+IHtcclxuICAgICAgICByZXMubWFwKGRvY3VtZW50ID0+IHtcclxuICAgICAgICAgIGRvY3VtZW50WydjYW5Db3B5VG9UYXJnZXQnXSA9ICh0aGlzLmNhblBlcmZvcm1BY3Rpb25JbnNpZGVUYXJnZXQoZG9jdW1lbnQpICYmIHRoaXMuY2hlY2tJZk5vdFRoZVNhbWVQYXJlbnQoZG9jdW1lbnQpICYmIGRvY3VtZW50LmNhbkNvcHkpO1xyXG4gICAgICAgICAgZG9jdW1lbnRbJ2Nhbk1vdmVUb1RhcmdldCddID0gKHRoaXMuY2FuUGVyZm9ybUFjdGlvbkluc2lkZVRhcmdldChkb2N1bWVudCkgJiYgdGhpcy5jaGVja0lmTm90VGhlU2FtZVBhcmVudChkb2N1bWVudCkgJiYgZG9jdW1lbnQuY2FuTW92ZSlcclxuICAgICAgICB9KVxyXG4gICAgICAgIHRoaXMuY2xpcGJvYXJkRG9jbWVudHMgPSByZXM7XHJcbiAgICAgICAgY29uc29sZS5sb2codGhpcy5jbGlwYm9hcmREb2NtZW50cyk7XHJcbiAgICAgICAgdGhpcy5jbGlwYm9hcmRMb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgIH0pXHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLmNsaXBib2FyZERvY21lbnRzID0gW107XHJcbiAgICAgIHRoaXMuY2xpcGJvYXJkTG9hZGluZyA9IGZhbHNlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8gcHJldmVudCBjb3B5aW5nIG9yIG1vdmluZyB0aGUgZmlsZSB0byBpdHMgc2FtZSBwbGFjZSBzaW5jZSBpdCBpcyBwcmV2ZW50ZWQgXHJcbiAgLy8gcHJldmVudCBjb3B5aW5nIG9yIG1vdmluZyB0aGUgZm9sZGVyIGluc2lkZSBpdCBzZWxmXHJcbiAgY2hlY2tJZk5vdFRoZVNhbWVQYXJlbnQoZG9jdW1lbnQpIHtcclxuICAgIC8vIGxldCBkaXJlY3RvcnkgPSB0aGlzLmdldEN1cnJlbnREaXJlY3RvcnkoKTtcclxuICAgIGlmIChkb2N1bWVudC5wYXJlbnRSZWYgIT09IHRoaXMuZGlyZWN0b3J5LmRhdGFJdGVtLmlkICYmIGRvY3VtZW50LnVpZCAhPT0gdGhpcy5kaXJlY3RvcnkuZGF0YUl0ZW0uaWQpIHtcclxuICAgICAgcmV0dXJuIHRydWVcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiBmYWxzZVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZGVsZXRlZnJvbUNsaXBib2FyZChkb2N1bWVudCkge1xyXG4gICAgbGV0IG15aW5kZXggPSAtMTtcclxuICAgIHRoaXMuY2xpcGJvYXJkSXRlbXMubWFwKChpZCwgaW5kZXgpID0+IHtcclxuICAgICAgaWYgKGRvY3VtZW50LnVpZCA9PT0gaWQpIHtcclxuICAgICAgICBteWluZGV4ID0gaW5kZXhcclxuICAgICAgfVxyXG4gICAgfSlcclxuICAgIHRoaXMuY2xpcGJvYXJkSXRlbXMuc3BsaWNlKG15aW5kZXgsIDEpO1xyXG4gICAgdGhpcy5jdXN0b21Ub2FzdHJTZXJ2aWNlLnNob3coJ3N1Y2Nlc3MnLCAnVE9BU1RFUi5TVUNDRVNTJywgXCJUT0FTVEVSLnJlbW92ZWRfZnJvbV9jbGlwYm9hcmRcIik7XHJcbiAgICAvLyBsZXQgZGlyZWN0b3J5ID0gdGhpcy5nZXRDdXJyZW50RGlyZWN0b3J5KCk7XHJcbiAgICAvLyBsZXQgaWQgPVxyXG4gICAgLy8gICAgIGRpcmVjdG9yeS5kYXRhSXRlbSA9PT0gdW5kZWZpbmVkXHJcbiAgICAvLyAgICAgICAgID8gdGhpcy5tYWluRm9sZGVyXHJcbiAgICAvLyAgICAgICAgIDogdGhpcy5nZXRDdXJyZW50Rm9sZGVySWQoZGlyZWN0b3J5KTtcclxuICAgIC8vIHRoaXMucmVpbml0aWFsaXplRm9sZGVyVHJlZShpZCwgZGlyZWN0b3J5KTtcclxuICAgIHRoaXMub25SZWZyZXNoRm9sZGVyVHJlZS5lbWl0KCk7XHJcbiAgICB0aGlzLm9wZW5DbGlwYm9hcmQoKTtcclxuICAgIHRoaXMudXNlclByZWZlcmVuY2VTZXJ2aWNlLnNldCgnY2xpcGJvYXJkSXRlbXMnLCBKU09OLnN0cmluZ2lmeSh0aGlzLmNsaXBib2FyZEl0ZW1zKSk7XHJcbiAgfVxyXG5cclxuICAvLyBmdW5jdGlvbiB0byBjaGVjayBpZiBpIGNhbiBwZXJmb3JtIGFjdGlvbiBvbiB0aGF0IHRhcmdldCBmb2xkZXIgb3Igbm90IFxyXG4gIGNhblBlcmZvcm1BY3Rpb25JbnNpZGVUYXJnZXQoZG9jdW1lbnQpIHtcclxuICAgIC8vY2hlY2sgaWYgdGFyZ2V0IGlzICdvdGhlcicgdHlwZSBmb2xkZXIgb3IgZG1zIGZvbGRlclxyXG4gICAgaWYgKHRoaXMubXlDdXJyZWNudEZvbGRlckRhdGEuZW50aXR5LnByb3BlcnRpZXNbJ2Rtc2ZvbGRlcjpkb2N1bWVudFR5cGVDb2RlJ10gPT09ICcwODExMjAyMScgJiYgIXRoaXMuY2hlY2tJZkluUHJldmVudGVkR3JvdXBzKHRoaXMubXlDdXJyZWNudEZvbGRlckRhdGEuZW50aXR5LnBhdGgpKSB7XHJcbiAgICAgIC8vIGlmIG15IGZvbGRlciBpcyBmcm9tIHR5cGUgb3RoZXJzIGFuZCBub3QgaW4gcHJldmVudGVkIGdyb3Vwc1xyXG4gICAgICByZXR1cm4gdHJ1ZVxyXG4gICAgfSBlbHNlIGlmICh0aGlzLm15Q3VycmVjbnRGb2xkZXJEYXRhLmVudGl0eS5wcm9wZXJ0aWVzWydkbXNmb2xkZXI6ZG9jdW1lbnRUeXBlQ29kZSddICYmIHRoaXMubXlDdXJyZWNudEZvbGRlckRhdGEuZW50aXR5LnByb3BlcnRpZXNbJ2Rtc2ZvbGRlcjpkb2N1bWVudFR5cGVDb2RlJ10gIT09ICcwODExMjAyMScpIHtcclxuICAgICAgLy9pZiBteSBmb2xkZXIgaGFzIGNvZGUgYW5kIHdhcyBub3Qgb3RoZXIgdHlwZSBmb2xkZXIgdGhlbiBjaGVjayBmb3IgYWNjZXB0ZWQgY2hpbHJkcm4gZm9yIHRoYXQgZm9sZGVyIHRvIGNvbnRhaW4gdGhpcyBmaWxlIHR5cGVcclxuICAgICAgaWYgKGRvY3VtZW50LmlzRmlsZSA9PT0gJ0ZpbGUnKSB7XHJcbiAgICAgICAgaWYgKHRoaXMubXlUYXJnZXRGb2xkZXJBY2NlcHRlZENoaWxkcmVucy5jb250ZXh0UGFyYW1ldGVycyAmJlxyXG4gICAgICAgICAgdGhpcy5teVRhcmdldEZvbGRlckFjY2VwdGVkQ2hpbGRyZW5zLmNvbnRleHRQYXJhbWV0ZXJzLmFjY2VwdGVkX2NoaWxkcmVuICYmIEFycmF5LmlzQXJyYXkodGhpcy5teVRhcmdldEZvbGRlckFjY2VwdGVkQ2hpbGRyZW5zLmNvbnRleHRQYXJhbWV0ZXJzLmFjY2VwdGVkX2NoaWxkcmVuKSAmJlxyXG4gICAgICAgICAgdGhpcy5teVRhcmdldEZvbGRlckFjY2VwdGVkQ2hpbGRyZW5zLmNvbnRleHRQYXJhbWV0ZXJzLmFjY2VwdGVkX2NoaWxkcmVuLmluZGV4T2YoZG9jdW1lbnQucHJvcGVydGllc1snZ2RvYzpkb2N1bWVudFR5cGVDb2RlJ10pID4gLTEpIHtcclxuICAgICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICByZXR1cm4gZmFsc2VcclxuICAgICAgICB9XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgaWYgKHRoaXMubXlUYXJnZXRGb2xkZXJBY2NlcHRlZENoaWxkcmVucy5jb250ZXh0UGFyYW1ldGVycyAmJlxyXG4gICAgICAgICAgdGhpcy5teVRhcmdldEZvbGRlckFjY2VwdGVkQ2hpbGRyZW5zLmNvbnRleHRQYXJhbWV0ZXJzLmFjY2VwdGVkX2NoaWxkcmVuICYmIEFycmF5LmlzQXJyYXkodGhpcy5teVRhcmdldEZvbGRlckFjY2VwdGVkQ2hpbGRyZW5zLmNvbnRleHRQYXJhbWV0ZXJzLmFjY2VwdGVkX2NoaWxkcmVuKSAmJlxyXG4gICAgICAgICAgdGhpcy5teVRhcmdldEZvbGRlckFjY2VwdGVkQ2hpbGRyZW5zLmNvbnRleHRQYXJhbWV0ZXJzPy5hY2NlcHRlZF9jaGlsZHJlbi5pbmRleE9mKGRvY3VtZW50LnByb3BlcnRpZXNbJ2Rtc2ZvbGRlcjpkb2N1bWVudFR5cGVDb2RlJ10pID4gLTEpIHtcclxuICAgICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICByZXR1cm4gZmFsc2VcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIC8vIHByZXZlbnQgYWN0aW9uIHRvIHRoaXMgdGFyZ2V0IFxyXG4gICAgICByZXR1cm4gZmFsc2VcclxuICAgIH1cclxuXHJcbiAgfVxyXG5cclxuICAvLyBmdW5jdGlvbiB0byBjaGVjayBpZiB0aGlzIHBhdGggbm90IGJlbG9uZyB0byBncm91cCB0aGF0IGlzIHByZXZlbnRlZCBmcm9tIGNyZWF0aW5nIGZvbGRlciBvZiB0eXBlIG90aGVyc1xyXG4gIGNoZWNrSWZJblByZXZlbnRlZEdyb3VwcyhwYXRoKSB7XHJcbiAgICAvLyBpZiBpbiBwcmV2ZW50ZWQgZnJvdXAgcnR1cm4gdHJ1ZSBlbHNlIHJldHVybiBmYWxzZVxyXG4gICAgY29uc29sZS5sb2cocGF0aCk7XHJcbiAgICBsZXQgbXlEZXBhcnRtZW50ID0gdGhpcy51c2VyU2VydmljZS5nZXRVc2VyRGVwYXJ0bWVudEZyb21QYXRoKHBhdGgpO1xyXG4gICAgbGV0IGV4aXN0ID0gdGhpcy5wcmV2ZW50ZWRHcm91cHMuaW5kZXhPZihteURlcGFydG1lbnQpID4gLTEgPyB0cnVlIDogZmFsc2U7XHJcbiAgICByZXR1cm4gZXhpc3Q7XHJcbiAgfVxyXG5cclxuICBjb3B5RnJvbUluc2lkZUNsaXBib2FyZCgpIHtcclxuICAgIGxldCBjbGlwYm9hcmRTZWxlY3RlZEl0ZW1zID0gW107XHJcbiAgICBsZXQgY2xpcGJvYXJkU2VsZWN0ZWRJdGVtc0xlbmd0aCA9IDA7XHJcbiAgICAvLyBzZXBlcmF0ZSBzZWxlY3RlZCBpdGVtcyBpbiBzZXBlcmF0ZSBhcnJheSBcclxuICAgIHRoaXMuY2xpcGJvYXJkRG9jbWVudHMubWFwKChkb2MsIGluZGV4KSA9PiB7XHJcbiAgICAgIC8vIGNhbid0IGNvcHkgZmlsZSBpbiB0aGUgc2FtZSBwbGFjZSBpdCBleGlzdCBhbmQgY2FuJ3QgY29weSBmb2xkZXIgaW5zaWRlIGl0IHNlbGYgXHJcbiAgICAgIGlmIChkb2MuaXNTZWxlY3RlZCAmJiBkb2MucGFyZW50UmVmICE9PSB0aGlzLmRpcmVjdG9yeS5kYXRhSXRlbS5pZCAmJiBkb2MudWlkICE9PSB0aGlzLmRpcmVjdG9yeS5kYXRhSXRlbS5pZCkge1xyXG4gICAgICAgIGNsaXBib2FyZFNlbGVjdGVkSXRlbXMucHVzaChkb2MudWlkKVxyXG4gICAgICB9XHJcbiAgICB9KVxyXG5cclxuICAgIGlmIChjbGlwYm9hcmRTZWxlY3RlZEl0ZW1zLmxlbmd0aCA+IDApIHtcclxuICAgICAgdGhpcy5jbGlwYm9hcmRMb2FkaW5nID0gdHJ1ZTtcclxuICAgICAgLy8gICAgdGhpcy5jdXJyZW50UGF0aCA9ICcnO1xyXG4gICAgICB0aGlzLmZpbGVNYW5hZ2VyU2VydmljZVxyXG4gICAgICAgIC5jb3B5VG8oeyBpZDogdGhpcy5kaXJlY3RvcnkuZGF0YUl0ZW0uaWQsIG5hbWU6IHRoaXMuZGlyZWN0b3J5LmRhdGFJdGVtLm5hbWUgfSwgY2xpcGJvYXJkU2VsZWN0ZWRJdGVtcy50b1N0cmluZygpKVxyXG4gICAgICAgIC5zdWJzY3JpYmUoXHJcbiAgICAgICAgICAocmVzKSA9PiB7XHJcbiAgICAgICAgICAgIC8vIHJlbW92ZSBzZWxlY3RlZCBpdGVtcyBmcm9tIGNsaXBib2FyZCBhZnRlciBhY3Rpb24gaXMgZG9uZVxyXG4gICAgICAgICAgICB0aGlzLnJlbW92ZUl0ZW1zQWZ0ZXJBY3Rpb25Eb25lKGNsaXBib2FyZFNlbGVjdGVkSXRlbXMpO1xyXG4gICAgICAgICAgICB0aGlzLmNsaXBib2FyZExvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICAgICAgdGhpcy5vbkNsaXBib2FyZENsb3NlLmVtaXQoKTtcclxuICAgICAgICAgICAgdGhpcy5vblJlZnJlc2hGb2xkZXJUcmVlLmVtaXQoKTtcclxuICAgICAgICAgICAgdGhpcy5jdXN0b21Ub2FzdHJTZXJ2aWNlLnNob3coXHJcbiAgICAgICAgICAgICAgJ3N1Y2Nlc3MnLFxyXG4gICAgICAgICAgICAgICdUT0FTVEVSLlNVQ0NFU1MnLFxyXG4gICAgICAgICAgICAgICdUT0FTVEVSLkRPQ1VNRU5UX0NPUElFRCdcclxuICAgICAgICAgICAgKTtcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICAoZXJyKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuY2xpcGJvYXJkTG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgICB0aGlzLmN1c3RvbVRvYXN0clNlcnZpY2Uuc2hvdyhcclxuICAgICAgICAgICAgICAnZXJyb3InLFxyXG4gICAgICAgICAgICAgICdUT0FTVEVSLkVSUk9SJyxcclxuICAgICAgICAgICAgICAnVE9BU1RFUi5ET0NVTUVOVF9DT1BJRURfRVJST1InXHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuY3VzdG9tVG9hc3RyU2VydmljZS5zaG93KFxyXG4gICAgICAgICdlcnJvcicsXHJcbiAgICAgICAgJ1RPQVNURVIuRVJST1InLFxyXG4gICAgICAgICdUT0FTVEVSLkRPQ1VNRU5UX0NPUElFRF9ERVNUSU5BVElPTl9FUlJPUidcclxuICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgfVxyXG5cclxuICBtb3ZlRnJvbUluc2lkZUNsaXBib2FyZCgpIHtcclxuICAgIGxldCBjbGlwYm9hcmRTZWxlY3RlZEl0ZW1zID0gW107XHJcbiAgICBsZXQgY2xpcGJvYXJkU2VsZWN0ZWRJdGVtc0xlbmd0aCA9IDA7XHJcbiAgICAvLyBzZXBlcmF0ZSBzZWxlY3RlZCBpdGVtcyBpbiBzZXBlcmF0ZSBhcnJheSBcclxuICAgIHRoaXMuY2xpcGJvYXJkRG9jbWVudHMubWFwKChkb2MsIGluZGV4KSA9PiB7XHJcbiAgICAgIC8vIGNhbid0IG1vdmUgZmlsZSBpbiB0aGUgc2FtZSBwbGFjZSBpdCBleGlzdCBhbmQgY2FuJ3QgbW92ZSBmb2xkZXIgaW5zaWRlIGl0IHNlbGYgXHJcbiAgICAgIGlmIChkb2MuaXNTZWxlY3RlZCAmJiBkb2MucGFyZW50UmVmICE9PSB0aGlzLmRpcmVjdG9yeS5kYXRhSXRlbS5pZCAmJiBkb2MudWlkICE9PSB0aGlzLmRpcmVjdG9yeS5kYXRhSXRlbS5pZCkge1xyXG4gICAgICAgIGNsaXBib2FyZFNlbGVjdGVkSXRlbXMucHVzaChkb2MudWlkKVxyXG4gICAgICB9XHJcbiAgICB9KVxyXG5cclxuICAgIGlmIChjbGlwYm9hcmRTZWxlY3RlZEl0ZW1zLmxlbmd0aCA+IDApIHtcclxuICAgICAgdGhpcy5jbGlwYm9hcmRMb2FkaW5nID0gdHJ1ZTtcclxuICAgICAgdGhpcy5maWxlTWFuYWdlclNlcnZpY2VcclxuICAgICAgICAubW92ZVRvKHsgaWQ6IHRoaXMuZGlyZWN0b3J5LmRhdGFJdGVtLmlkLCBuYW1lOiB0aGlzLmRpcmVjdG9yeS5kYXRhSXRlbS5uYW1lIH0sIGNsaXBib2FyZFNlbGVjdGVkSXRlbXMudG9TdHJpbmcoKSlcclxuICAgICAgICAuc3Vic2NyaWJlKFxyXG4gICAgICAgICAgKHJlcykgPT4ge1xyXG4gICAgICAgICAgICAvLyByZW1vdmUgc2VsZWN0ZWQgaXRlbXMgZnJvbSBjbGlwYm9hcmQgYWZ0ZXIgYWN0aW9uIGlzIGRvbmVcclxuICAgICAgICAgICAgdGhpcy5yZW1vdmVJdGVtc0FmdGVyQWN0aW9uRG9uZShjbGlwYm9hcmRTZWxlY3RlZEl0ZW1zKTtcclxuICAgICAgICAgICAgdGhpcy5jbGlwYm9hcmRMb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICAgIHRoaXMub25DbGlwYm9hcmRDbG9zZS5lbWl0KCk7XHJcbiAgICAgICAgICAgIHRoaXMub25SZWZyZXNoRm9sZGVyVHJlZS5lbWl0KCk7XHJcbiAgICAgICAgICAgIHRoaXMuY3VzdG9tVG9hc3RyU2VydmljZS5zaG93KFxyXG4gICAgICAgICAgICAgICdzdWNjZXNzJyxcclxuICAgICAgICAgICAgICAnVE9BU1RFUi5TVUNDRVNTJyxcclxuICAgICAgICAgICAgICAnVE9BU1RFUi5ET0NVTUVOVF9NT1ZFRCdcclxuICAgICAgICAgICAgKTtcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICAoZXJyKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuY2xpcGJvYXJkTG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgICB0aGlzLmN1c3RvbVRvYXN0clNlcnZpY2Uuc2hvdyhcclxuICAgICAgICAgICAgICAnZXJyb3InLFxyXG4gICAgICAgICAgICAgICdUT0FTVEVSLkVSUk9SJyxcclxuICAgICAgICAgICAgICAnVE9BU1RFUi5ET0NVTUVOVF9NT1ZFRF9FUlJPUidcclxuICAgICAgICAgICAgKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICApO1xyXG4gICAgfSBlbHNlXHJcbiAgICAgIHRoaXMuY3VzdG9tVG9hc3RyU2VydmljZS5zaG93KFxyXG4gICAgICAgICdlcnJvcicsXHJcbiAgICAgICAgJ1RPQVNURVIuRVJST1InLFxyXG4gICAgICAgICdUT0FTVEVSLkRPQ1VNRU5UX01PVkVEX0RFU1RJTkFUSU9OX0VSUk9SJ1xyXG4gICAgICApO1xyXG4gIH1cclxuXHJcbiAgcmVtb3ZlSXRlbXNBZnRlckFjdGlvbkRvbmUoc2VsZWN0ZWRJdGVtcykge1xyXG4gICAgdGhpcy5jbGlwYm9hcmRJdGVtcyA9IHRoaXMuY2xpcGJvYXJkSXRlbXMuZmlsdGVyKGZ1bmN0aW9uIChlbCkge1xyXG4gICAgICByZXR1cm4gIXNlbGVjdGVkSXRlbXMuaW5jbHVkZXMoZWwpO1xyXG4gICAgfSk7XHJcbiAgICB0aGlzLnVzZXJQcmVmZXJlbmNlU2VydmljZS5zZXQoJ2NsaXBib2FyZEl0ZW1zJywgSlNPTi5zdHJpbmdpZnkodGhpcy5jbGlwYm9hcmRJdGVtcykpO1xyXG4gIH1cclxuXHJcbiAgY2hlY2tpbmcoKSB7XHJcbiAgICB0aGlzLmVuYWJsZUNvcHkgPSBmYWxzZTtcclxuICAgIHRoaXMuZW5hYmxlTW92ZSA9IGZhbHNlO1xyXG4gICAgdGhpcy5kb2N1bWVudFNlbGVjdGVkSW5DbGlwYm9hcmQgPSBbXTtcclxuICAgIC8vIGNvbnNvbGUubG9nKHRoaXMuY2xpcGJvYXJkRG9jbWVudHMpO1xyXG4gICAgdGhpcy5jbGlwYm9hcmREb2NtZW50cy5tYXAoZG9jdW1lbnQgPT4ge1xyXG4gICAgICAvLyB3b2tyaW5nIHdpdGggb25seSBzZWxlY3RlZCBkb2N1bWVudHMgXHJcbiAgICAgIGlmIChkb2N1bWVudC5pc1NlbGVjdGVkID09PSB0cnVlKSB7XHJcbiAgICAgICAgLy8gZG9jdW1lbnRbJ2NhbkNvcHlUb1RhcmdldCddID0gKHRoaXMuY2FuUGVyZm9ybUFjdGlvbkluc2lkZVRhcmdldChkb2N1bWVudCkgJiYgZG9jdW1lbnQuY2FuQ29weSk7XHJcbiAgICAgICAgLy8gZG9jdW1lbnRbJ2Nhbk1vdmVUb1RhcmdldCddID0gKHRoaXMuY2FuUGVyZm9ybUFjdGlvbkluc2lkZVRhcmdldChkb2N1bWVudCkgJiYgZG9jdW1lbnQuY2FuTW92ZSlcclxuICAgICAgICB0aGlzLmRvY3VtZW50U2VsZWN0ZWRJbkNsaXBib2FyZC5wdXNoKGRvY3VtZW50KVxyXG4gICAgICB9XHJcbiAgICB9KVxyXG4gICAgaWYgKHRoaXMuZG9jdW1lbnRTZWxlY3RlZEluQ2xpcGJvYXJkLmxlbmd0aCA+IDApIHtcclxuICAgICAgdGhpcy5lbmFibGVDb3B5ID0gdGhpcy5kb2N1bWVudFNlbGVjdGVkSW5DbGlwYm9hcmQuZXZlcnkoaXRlbSA9PiB7XHJcbiAgICAgICAgcmV0dXJuIGl0ZW0uY2FuQ29weVRvVGFyZ2V0ID09PSB0cnVlO1xyXG4gICAgICB9KVxyXG4gICAgICB0aGlzLmVuYWJsZU1vdmUgPSB0aGlzLmRvY3VtZW50U2VsZWN0ZWRJbkNsaXBib2FyZC5ldmVyeShpdGVtID0+IHtcclxuICAgICAgICByZXR1cm4gaXRlbS5jYW5Nb3ZlVG9UYXJnZXQgPT09IHRydWU7XHJcbiAgICAgIH0pXHJcbiAgICB9XHJcbiAgICBjb25zb2xlLmxvZyh0aGlzLmRvY3VtZW50U2VsZWN0ZWRJbkNsaXBib2FyZClcclxuICB9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cImNsaXBib2FyZC1zaWRlLXNlY3Rpb24gcmVsYXRpdmVcIj5cclxuXHJcbiAgICA8ZGl2IGNsYXNzPVwicC0zIGgtZnVsbFwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjbGlwYm9hcmQtaGVhZGVyIGZsZXgganVzdGlmeS1iZXR3ZWVuIGl0ZW1zLWNlbnRlciBib3JkZXItYi0yXCI+XHJcbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZmxleCB0ZXh0LWdyYXktNTAwIGZvbnQtYm9sZCBpdGVtcy1jZW50ZXJcIj5cclxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dC00eGwgYmkgYmktY2xpcGJvYXJkXCI+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJteC0yIHRleHQteGxcIj57eydjbGlwYm9hcmQnIHwgdHJhbnNsYXRlfX08L3NwYW4+XHJcbiAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgPG1hdC1pY29uIGNsYXNzPVwiY2xvc2UtaWNvbiB0ZXh0LWdyYXktNTAwIGN1cnNvci1wb2ludGVyXCIgKGNsaWNrKT1cImNsb3NlQ2xpcGJvYXJkKClcIlxyXG4gICAgICAgICAgICAgICAgW21hdFRvb2x0aXBdPVwiJ0JVVFRPTlMuQ0xPU0UnIHwgdHJhbnNsYXRlXCI+Y2xvc2U8L21hdC1pY29uPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwhLS0gPGRpdiBjbGFzcz1cImgtZnVsbCBmb250LWJvbGQgZC1mbGV4IGp1c3RpZnktY2VudGVyIGl0ZW1zLWNlbnRlclwiICpuZ0lmPVwiY2xpcGJvYXJkTG9hZGluZ1wiPlxyXG4gICAgICAgICAgICB7eyBcImxvYWRpbmdcIiB8IHRyYW5zbGF0ZSB9fVxyXG4gICAgICAgIDwvZGl2PiAtLT5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwidy1mdWxsIGgtcHggYmctZ3JheS0yMDAgbWItM1wiICpuZ0lmPVwiY2xpcGJvYXJkTG9hZGluZ1wiPlxyXG4gICAgICAgICAgICA8bWF0LXByb2dyZXNzLWJhciBtb2RlPVwiaW5kZXRlcm1pbmF0ZVwiPjwvbWF0LXByb2dyZXNzLWJhcj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY2xpcGJvYXJkLWNvbnRlbnQgZmxleCBmbGV4LWNvbCBqdXN0aWZ5LWJldHdlZW4gaXRlbXMtYmV0d2VlblwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaC1mdWxsIGZsZXgganVzdGlmeS1jZW50ZXIgaXRlbXMtY2VudGVyIHRleHQtZ3JheS01MDBcIlxyXG4gICAgICAgICAgICAgICAgKm5nSWY9XCJjbGlwYm9hcmREb2NtZW50cy5sZW5ndGggPT09IDBcIj57eydub19jbGlwYm9hcmRfaXRlbXMnIHwgdHJhbnNsYXRlfX08L2Rpdj5cclxuXHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJweC0yIGgtNS82IG92ZXJmbG93LXktYXV0b1wiICpuZ0lmPVwiY2xpcGJvYXJkRG9jbWVudHMubGVuZ3RoID4gMFwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImJvcmRlci1iLTJcIiAqbmdGb3I9XCJsZXQgZG9jdW1lbnQgb2YgY2xpcGJvYXJkRG9jbWVudHNcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicHktMSB3LTgyIGZsZXggIGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWJldHdlZW5cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXggaXRlbXMtY2VudGVyIHctNS82XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bWF0LWNoZWNrYm94IFsobmdNb2RlbCldPVwiZG9jdW1lbnQuaXNTZWxlY3RlZFwiIChjaGFuZ2UpPVwiY2hlY2tpbmcoKVwiPiA8L21hdC1jaGVja2JveD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IHctZnVsbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gPHRpdGxlLXdpdGgtaWNvbiBjbGFzcz1cInctMS82IC1teS0xLjVcIiBbY29udGV4dF09XCJkb2N1bWVudFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzaG93VGl0bGVdPVwiZmFsc2VcIj48L3RpdGxlLXdpdGgtaWNvbj4gLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YXBwLWRpc3BsYXktc3VpdGFibGUtaWNvbiBjbGFzcz1cIm14LTFcIiBbZGF0YV09XCJkb2N1bWVudFwiIFtzaXplXT1cIic0MHB4J1wiPjwvYXBwLWRpc3BsYXktc3VpdGFibGUtaWNvbj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSAgLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cImRvY3VtZW50LmlzRmlsZSA9PT0gJ0ZpbGUnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJqdXN0aWZ5LWNlbnRlciBmbGV4IGZsZXgtY29sIGZsZXgtMSBmbGV4LWdyb3ctMCB3LTUvNlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGV4dC1iYXNlIHRleHQtZ3JheS01MDAgZm9udC1ib2xkIHRydW5jYXRlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt0aXRsZV09XCJkb2N1bWVudC5wcm9wZXJ0aWVzPy5bJ2ZpbGU6Y29udGVudCddPy5bJ25hbWUnXVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYWx0XT1cImRvY3VtZW50LnByb3BlcnRpZXM/LlsnZmlsZTpjb250ZW50J10/LlsnbmFtZSddXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e2RvY3VtZW50Wyd0aXRsZSddfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0ZXh0LWdyYXktNTAwIHRleHQtc20gdGV4dC1ub3dyYXBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7KChkb2N1bWVudC5wcm9wZXJ0aWVzPy5bJ2ZpbGU6Y29udGVudCddPy5bJ2xlbmd0aCddKSAvICgxMDI0ICpcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEwMjQpKS50b0ZpeGVkKDIpIH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBNQlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkLWZsZXhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW1zLWNlbnRlclxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1iYXNlIHRleHQtZ3JheS01MDBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtYm9sZFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIiAqbmdJZj1cImRvY3VtZW50LmlzRmlsZSA9PT0gJ0ZvbGRlcidcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgZG9jdW1lbnQ/LnRpdGxlIH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIFttYXRUb29sdGlwXT1cIidCVVRUT05TLlJFTU9WRV9DTElQQk9BUkQnIHwgdHJhbnNsYXRlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiY3Vyc29yLXBvaW50ZXIgdy01IGgtNSByb3VuZGVkLWZ1bGwgYm9yZGVyLTIgZmxleCBqdXN0aWZ5LWNlbnRlciBpdGVtcy1jZW50ZXIgYm9yZGVyLWdyYXktNTAwIFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiZGVsZXRlZnJvbUNsaXBib2FyZChkb2N1bWVudClcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dC1ncmF5LTUwMCBiaSBiaS14IHRleHQtbGcgZmxleCBpdGVtcy1jZW50ZXJcIj48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGV4dC1tZCB0ZXh0LWdyYXktNTAwIHRleHQtY2VudGVyIG15LTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJkb2N1bWVudC5jYW5Db3B5VG9UYXJnZXQgJiYgIWRvY3VtZW50LmNhbk1vdmVUb1RhcmdldFwiPnt7J2Nhbl9jb3B5X29ubHknIHxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zbGF0ZX19PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cIiFkb2N1bWVudC5jYW5Db3B5VG9UYXJnZXQgJiYgZG9jdW1lbnQuY2FuTW92ZVRvVGFyZ2V0XCI+e3snY2FuX21vdmVfb25seScgfFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNsYXRlfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiZG9jdW1lbnQuY2FuQ29weVRvVGFyZ2V0ICYmIGRvY3VtZW50LmNhbk1vdmVUb1RhcmdldFwiPnt7J2Nhbl9jb3B5X2FuZF9tb3ZlJyB8XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2xhdGV9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiIWRvY3VtZW50LmNhbkNvcHlUb1RhcmdldCAmJiAhZG9jdW1lbnQuY2FuTW92ZVRvVGFyZ2V0XCI+e3snY2FuX25vdF9jb3B5X2FuZF9tb3ZlJ1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfCB0cmFuc2xhdGV9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJoLTEvNiBmbGV4IHctZnVsbCBqdXN0aWZ5LWNlbnRlciBpdGVtcy1jZW50ZXJcIj5cclxuICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJzdWJtaXNzaW9uLWJ1dHRvbiBteC0yXCIgW2Rpc2FibGVkXT1cIiFlbmFibGVDb3B5XCJcclxuICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiY29weUZyb21JbnNpZGVDbGlwYm9hcmQoKVwiPnt7J0JVVFRPTlMuQ09QWScgfCB0cmFuc2xhdGV9fTwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cInN1Ym1pc3Npb24tYnV0dG9uIG14LTJcIiBbZGlzYWJsZWRdPVwiIWVuYWJsZU1vdmVcIlxyXG4gICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJtb3ZlRnJvbUluc2lkZUNsaXBib2FyZCgpXCI+e3snQlVUVE9OUy5NT1ZFJyB8IHRyYW5zbGF0ZX19PC9idXR0b24+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcblxyXG4gICAgPGRpdiBjbGFzcz1cImJnLXRyYW5zcGFyZW50IGFic29sdXRlIHRvcC0wIGJvdHRvbS0wIGxlZnQtMCByaWdodC0wIFwiICpuZ0lmPVwiY2xpcGJvYXJkTG9hZGluZ1wiPlxyXG5cclxuICAgIDwvZGl2PlxyXG48L2Rpdj4iXX0=
@@ -148,4 +148,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
148
148
  }], pageConfigurations: [{
149
149
  type: Input
150
150
  }] } });
151
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29weS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9udXhlby1kZXZlbG9wbWVudC1mcmFtZXdvcmsvc3JjL2xpYi9jb21wb25lbnRzL2ZpbGUtbWFuZ2VyL2NvbXBvbmVudHMvY29weS9jb3B5LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL251eGVvLWRldmVsb3BtZW50LWZyYW1ld29yay9zcmMvbGliL2NvbXBvbmVudHMvZmlsZS1tYW5nZXIvY29tcG9uZW50cy9jb3B5L2NvcHkuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNOLFNBQVMsRUFDVCxZQUFZLEVBRVosS0FBSyxFQUVMLE1BQU0sRUFFTixTQUFTLEVBQ1QsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFJMUIsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlEQUF5RCxDQUFDO0FBR3pGLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyQyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sbURBQW1ELENBQUM7Ozs7Ozs7QUFNbEYsTUFBTSxPQUFPLGFBQWMsU0FBUSxhQUFhO0lBdUMvQyxZQUNTLGtCQUFzQyxFQUNwQyxtQkFBd0MsRUFDM0Msa0JBQXNDLEVBQzdDLFFBQWtCO1FBRWxCLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUxSLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBb0I7UUFDcEMsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFxQjtRQUMzQyx1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW9CO1FBdkI5QyxrQkFBYSxHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7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O29CQUNWLFFBQVEsRUFBRSxVQUFVO29CQUNwQixXQUFXLEVBQUUsdUJBQXVCO29CQUNwQyxTQUFTLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQztpQkFDcEM7bU1BRStDLElBQUk7c0JBQWxELFNBQVM7dUJBQUMsZUFBZSxFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRTtnQkFDZixlQUFlO3NCQUE1QyxTQUFTO3VCQUFDLGlCQUFpQjtnQkFDRSxlQUFlO3NCQUE1QyxTQUFTO3VCQUFDLGlCQUFpQjtnQkFFeEIsT0FBTztzQkFEVixLQUFLO2dCQWVOLGFBQWE7c0JBRFosTUFBTTtnQkFHUCxpQkFBaUI7c0JBRGhCLE1BQU07Z0JBR1AsVUFBVTtzQkFEVCxLQUFLO2dCQUdOLFlBQVk7c0JBRFgsS0FBSztnQkFHTixVQUFVO3NCQURULEtBQUs7Z0JBR04sV0FBVztzQkFEVixLQUFLO2dCQUdOLGFBQWE7c0JBRFosS0FBSztnQkFHTixTQUFTO3NCQURSLEtBQUs7Z0JBRUcsa0JBQWtCO3NCQUExQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuXHRDb21wb25lbnQsXHJcblx0RXZlbnRFbWl0dGVyLFxyXG5cdEluamVjdG9yLFxyXG5cdElucHV0LFxyXG5cdE9uSW5pdCxcclxuXHRPdXRwdXQsXHJcblx0VGVtcGxhdGVSZWYsXHJcblx0Vmlld0NoaWxkXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IER4Rm9ybUNvbXBvbmVudCB9IGZyb20gJ2RldmV4dHJlbWUtYW5ndWxhcic7XHJcbmltcG9ydCB7IG9mIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IEN1c3RvbVRvYXN0clNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9jdXN0b20tdG9hc3RyL3NlcnZpY2VzL2N1c3RvbS10b2FzdHIuc2VydmljZSc7XHJcbmltcG9ydCB7IEZpbGVNYW5hZ2VyU2VydmljZSB9IGZyb20gJy4uLy4uLy4uLy4uL3NoYXJlZC1zZXJ2aWNlcy9maWxlLW1hbmFnZXIuc2VydmljZSc7XHJcbmltcG9ydCB7IERpYWxvZ09wdGlvbnMgfSBmcm9tICcuLi8uLi8uLi8uLi9zaGFyZWQvY29tcG9uZW50cy9udXhlby1kaWFsb2cvbW9kZWxzL2RpYWxvZy1vcHRpb24ubW9kZWwnO1xyXG5pbXBvcnQgeyBOZGZOdXhlb0RpYWxvZyB9IGZyb20gJy4uLy4uLy4uLy4uL3NoYXJlZC9jb21wb25lbnRzL251eGVvLWRpYWxvZy9udXhlby5kaWFsb2cnO1xyXG5pbXBvcnQgeyBOdXhlb0RpYWxvZ1NlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi8uLi9zaGFyZWQvY29tcG9uZW50cy9udXhlby1kaWFsb2cvc2VydmljZXMvbnV4ZW8tZGlhbG9nLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBEaWFsb2dBY3Rpb25UeXBlIH0gZnJvbSAnLi4vLi4vLi4vLi4vc2hhcmVkL2NvbXBvbmVudHMvbnV4ZW8tZGlhbG9nL21vZGVscy9kaWFsb2ctb3B0aW9uLm1vZGVsJztcclxuaW1wb3J0IHsgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBCYXNlQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vLi4vc2hhcmVkL2NvbXBvbmVudHMvYmFzZS9iYXNlLmNvbXBvbmVudCc7XHJcbkBDb21wb25lbnQoe1xyXG5cdHNlbGVjdG9yOiAnYXBwLWNvcHknLFxyXG5cdHRlbXBsYXRlVXJsOiAnLi9jb3B5LmNvbXBvbmVudC5odG1sJyxcclxuXHRzdHlsZVVybHM6IFsnLi9jb3B5LmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIENvcHlDb21wb25lbnQgZXh0ZW5kcyBCYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuXHRAVmlld0NoaWxkKER4Rm9ybUNvbXBvbmVudCwgeyBzdGF0aWM6IGZhbHNlIH0pIGZvcm06IER4Rm9ybUNvbXBvbmVudDtcclxuXHRAVmlld0NoaWxkKCdjb250ZW50VGVtcGxhdGUnKSBjb250ZW50VGVtcGxhdGUhOiBUZW1wbGF0ZVJlZjxhbnk+O1xyXG5cdEBWaWV3Q2hpbGQoJ2FjdGlvbnNUZW1wbGF0ZScpIGFjdGlvbnNUZW1wbGF0ZSE6IFRlbXBsYXRlUmVmPGFueT47XHJcblx0QElucHV0KClcclxuXHRzZXQgdmlzaWJsZSh2YWx1ZTogYW55KSB7XHJcblx0XHRpZiAodGhpcy5fdmlzaWJsZSA9PT0gdmFsdWUpIHtcclxuXHRcdFx0cmV0dXJuO1xyXG5cdFx0fVxyXG5cdFx0aWYgKHZhbHVlKSB7XHJcblx0XHRcdHRoaXMub3BlbkRpYWxvZygpO1xyXG5cdFx0fVxyXG5cdFx0dGhpcy5fdmlzaWJsZSA9IHZhbHVlO1xyXG5cdFx0dGhpcy52aXNpYmxlQ2hhbmdlLmVtaXQodGhpcy5fdmlzaWJsZSk7XHJcblx0fVxyXG5cdGdldCB2aXNpYmxlKCkge1xyXG5cdFx0cmV0dXJuIHRoaXMuX3Zpc2libGU7XHJcblx0fVxyXG5cdEBPdXRwdXQoKVxyXG5cdHZpc2libGVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuXHRAT3V0cHV0KClcclxuXHRnZXRTZWxlY3RlZEZvbGRlciA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG5cdEBJbnB1dCgpXHJcblx0cnRsRW5hYmxlZCA9IGZhbHNlO1xyXG5cdEBJbnB1dCgpXHJcblx0c2VsZWN0ZWRJdGVtOiBhbnk7XHJcblx0QElucHV0KClcclxuXHRyb290Rm9sZGVyOiBhbnk7XHJcblx0QElucHV0KClcclxuXHRyb290RW50cmllczogYW55O1xyXG5cdEBJbnB1dCgpXHJcblx0c2VsZWN0ZWRJdGVtczogYW55O1xyXG5cdEBJbnB1dCgpXHJcblx0ZGlyZWN0b3J5OiBhbnk7XHJcblx0QElucHV0KCkgcGFnZUNvbmZpZ3VyYXRpb25zO1xyXG5cdGZvcm1EYXRhOiBhbnkgPSB7fTtcclxuXHRkaXNhYmxlID0gdHJ1ZTtcclxuXHRfdmlzaWJsZSA9IGZhbHNlO1xyXG5cdGN1cnJlbnRJdGVtO1xyXG5cdGNvbnN0cnVjdG9yKFxyXG5cdFx0cHJpdmF0ZSBmaWxlTWFuYWdlclNlcnZpY2U6IEZpbGVNYW5hZ2VyU2VydmljZSxcclxuXHRcdHByb3RlY3RlZCBjdXN0b21Ub2FzdHJTZXJ2aWNlOiBDdXN0b21Ub2FzdHJTZXJ2aWNlLFxyXG5cdFx0cHVibGljIG51eGVvRGlhbG9nU2VydmljZTogTnV4ZW9EaWFsb2dTZXJ2aWNlLFxyXG5cdFx0aW5qZWN0b3I6IEluamVjdG9yXHJcblx0KSB7XHJcblx0XHRzdXBlcihpbmplY3Rvcik7XHJcblx0fVxyXG5cclxuXHRuZ09uSW5pdCgpOiB2b2lkIHt9XHJcblxyXG5cdG9wZW5EaWFsb2coKTogdm9pZCB7XHJcblx0XHRjb25zdCBvcHRpb25zOiBEaWFsb2dPcHRpb25zID0ge1xyXG5cdFx0XHRjb21wb25lbnQ6IE5kZk51eGVvRGlhbG9nLFxyXG5cdFx0XHRwYW5lbENsYXNzOiAncG9wVXBQYXJlbnQnLFxyXG5cdFx0XHRjb25maWc6IHtcclxuXHRcdFx0XHR0aXRsZTogdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoJ0ZJTEVfTUFOQUdFUi5DT1BZX09SX01PVkUnKSxcclxuXHRcdFx0XHRjb250ZW50VGVtcGxhdGU6IHRoaXMuY29udGVudFRlbXBsYXRlLFxyXG5cdFx0XHRcdGFjdGlvbnNUZW1wbGF0ZTogdGhpcy5hY3Rpb25zVGVtcGxhdGVcclxuXHRcdFx0fVxyXG5cdFx0fTtcclxuXHRcdHRoaXMubnV4ZW9EaWFsb2dTZXJ2aWNlXHJcblx0XHRcdC5vcGVuKG9wdGlvbnMpXHJcblx0XHRcdC5hZnRlckNsb3NlZCgpXHJcblx0XHRcdC5zdWJzY3JpYmUoKHJlcykgPT4ge1xyXG5cdFx0XHRcdHRoaXMuY2FuY2VsKCk7XHJcblx0XHRcdH0pO1xyXG5cdH1cclxuXHJcblx0Y2FuY2VsKCkge1xyXG5cdFx0dGhpcy52aXNpYmxlID0gZmFsc2U7XHJcblx0fVxyXG5cdHNlbGVjdEl0ZW0oZSkge1xyXG5cdFx0dGhpcy5kaXNhYmxlID0gZmFsc2U7XHJcblx0XHR0aGlzLmN1cnJlbnRJdGVtID0gZS5pdGVtRGF0YTtcclxuXHR9XHJcblxyXG5cdGNyZWF0ZVRyZWVOb2RlQ2hpbGRyZW4gPSAocGFyZW50KSA9PiB7XHJcblx0XHRsZXQgbXlwYXJlbnQgPSBwYXJlbnQgPyBwYXJlbnQua2V5IDogdGhpcy5yb290Rm9sZGVyO1xyXG5cdFx0bGV0IG15b2JzO1xyXG5cdFx0aWYgKG15cGFyZW50ID09PSB0aGlzLnBhZ2VDb25maWd1cmF0aW9ucy5yb290TmFtZSkge1xyXG5cdFx0XHQvLyB3aGVuIGl0IGlzIHJvb3Qgb2YgZmlsZSBsaXN0IHRoZW4gdXNlZCBwYXNzZWQgcm9vdCBlbnRyaWVzIGFuZCBmb3Igcm9vdCBvZlxyXG5cdFx0XHQvLyBteSBmaWxlcyBvciBhbnkgb3RoZXIgZm9sZGVyIHVzZSBnZXR0aW5nIGNoaWxkcyBmb3IgdGhhdCBmb2xkZXIgd2l0aCBpdHMgaWRcclxuXHRcdFx0bXlvYnMgPSB0aGlzLmZpbGVNYW5hZ2VyU2VydmljZS5wYXJzZU5vZGVDaGlsZHJlbihcclxuXHRcdFx0XHRvZih0aGlzLnJvb3RFbnRyaWVzKSxcclxuXHRcdFx0XHR0aGlzLnBhZ2VDb25maWd1cmF0aW9ucyxcclxuXHRcdFx0XHRwYXJlbnRcclxuXHRcdFx0KTtcclxuXHRcdH0gZWxzZSB7XHJcblx0XHRcdG15b2JzID0gdGhpcy5maWxlTWFuYWdlclNlcnZpY2UuY3JlYXRlVHJlZU5vZGVDaGlsZHJlbihteXBhcmVudCk7XHJcblx0XHR9XHJcblx0XHRyZXR1cm4gbXlvYnM7XHJcblx0XHQvLyBjb25zb2xlLmxvZyhwYXJlbnQpO1xyXG5cdFx0Ly8gbGV0IG9icyA9IChcclxuXHRcdC8vICAgcGFyZW50XHJcblx0XHQvLyAgICAgPyB0aGlzLmZpbGVNYW5hZ2VyU2VydmljZS5nZXRUcmVlTm9kZUNoaWxkcmVuKHBhcmVudClcclxuXHRcdC8vICAgICA6IG9mKFxyXG5cdFx0Ly8gICAgICAgdGhpcy5yb290RW50cmllc1xyXG5cdFx0Ly8gICAgIClcclxuXHRcdC8vIClcclxuXHRcdC8vIHJldHVybiB0aGlzLmZpbGVNYW5hZ2VyU2VydmljZS5wYXJzZU5vZGVDaGlsZHJlbihvYnMsIHBhcmVudCk7XHJcblx0fTtcclxuXHJcblx0Y29weTogRGlhbG9nQWN0aW9uVHlwZSA9IChhbnN3ZXIpID0+IHtcclxuXHRcdGlmICh0aGlzLmN1cnJlbnRJdGVtLmNhbkNvcHlUb0Rlc3RpbmF0aW9uKSB7XHJcblx0XHRcdGlmIChcclxuXHRcdFx0XHR0aGlzLmRpcmVjdG9yeT8uZGF0YUl0ZW0/LmlkICE9PSB0aGlzLmN1cnJlbnRJdGVtLmlkICYmXHJcblx0XHRcdFx0IXRoaXMuY3VycmVudEl0ZW0uZW50aXR5LnBhdGguaW5jbHVkZXModGhpcy5zZWxlY3RlZEl0ZW0ubmFtZSlcclxuXHRcdFx0KSB7XHJcblx0XHRcdFx0Ly8gdGhpcy5jdXJyZW50UGF0aCA9ICcnO1xyXG5cdFx0XHRcdHJldHVybiB0aGlzLmZpbGVNYW5hZ2VyU2VydmljZVxyXG5cdFx0XHRcdFx0LmNvcHlUbyh0aGlzLmN1cnJlbnRJdGVtLCB0aGlzLnNlbGVjdGVkSXRlbXMpXHJcblx0XHRcdFx0XHQucGlwZShcclxuXHRcdFx0XHRcdFx0dGFwKFxyXG5cdFx0XHRcdFx0XHRcdChyZXMpID0+IHtcclxuXHRcdFx0XHRcdFx0XHRcdHRoaXMudmlzaWJsZSA9IGFuc3dlcjtcclxuXHRcdFx0XHRcdFx0XHRcdHRoaXMuZ2V0U2VsZWN0ZWRGb2xkZXIubmV4dCh0aGlzLmN1cnJlbnRJdGVtLmlkKTtcclxuXHRcdFx0XHRcdFx0XHRcdHRoaXMuY3VzdG9tVG9hc3RyU2VydmljZS5zaG93KFxyXG5cdFx0XHRcdFx0XHRcdFx0XHQnc3VjY2VzcycsXHJcblx0XHRcdFx0XHRcdFx0XHRcdCdUT0FTVEVSLlNVQ0NFU1MnLFxyXG5cdFx0XHRcdFx0XHRcdFx0XHQnVE9BU1RFUi5ET0NVTUVOVF9DT1BJRUQnXHJcblx0XHRcdFx0XHRcdFx0XHQpO1xyXG5cdFx0XHRcdFx0XHRcdH0sXHJcblx0XHRcdFx0XHRcdFx0KGVycikgPT4ge1xyXG5cdFx0XHRcdFx0XHRcdFx0dGhpcy52aXNpYmxlID0gdHJ1ZTtcclxuXHRcdFx0XHRcdFx0XHRcdHRoaXMuY3VzdG9tVG9hc3RyU2VydmljZS5zaG93KFxyXG5cdFx0XHRcdFx0XHRcdFx0XHQnZXJyb3InLFxyXG5cdFx0XHRcdFx0XHRcdFx0XHQnVE9BU1RFUi5FUlJPUicsXHJcblx0XHRcdFx0XHRcdFx0XHRcdCdUT0FTVEVSLkRPQ1VNRU5UX0NPUElFRF9FUlJPUidcclxuXHRcdFx0XHRcdFx0XHRcdCk7XHJcblx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHQpXHJcblx0XHRcdFx0XHQpO1xyXG5cdFx0XHR9IGVsc2VcclxuXHRcdFx0XHR0aGlzLmN1c3RvbVRvYXN0clNlcnZpY2Uuc2hvdyhcclxuXHRcdFx0XHRcdCdlcnJvcicsXHJcblx0XHRcdFx0XHQnVE9BU1RFUi5FUlJPUicsXHJcblx0XHRcdFx0XHQnVE9BU1RFUi5GQUlMRURfVE9fQ09QWSdcclxuXHRcdFx0XHQpO1xyXG5cdFx0fSBlbHNlIHtcclxuXHRcdFx0dGhpcy5jdXN0b21Ub2FzdHJTZXJ2aWNlLnNob3coXHJcblx0XHRcdFx0J2Vycm9yJyxcclxuXHRcdFx0XHQnVE9BU1RFUi5FUlJPUicsXHJcblx0XHRcdFx0J1RPQVNURVIuTk9fUEVSTUlTU0lPTidcclxuXHRcdFx0KTtcclxuXHRcdH1cclxuXHRcdHJldHVybiBvZihudWxsKTtcclxuXHR9O1xyXG59XHJcbiIsIjxuZy10ZW1wbGF0ZSAjY29udGVudFRlbXBsYXRlPlxyXG5cdDxkaXYgY2xhc3M9XCJwLTRcIj5cclxuXHRcdDxkeC1zY3JvbGwtdmlldyB3aWR0aD1cIjEwMCVcIiBoZWlnaHQ9XCIxMDAlXCI+XHJcblx0XHRcdDxkaXYgY2xhc3M9XCJmb3JtXCI+XHJcblx0XHRcdFx0PGR4LXRyZWUtdmlld1xyXG5cdFx0XHRcdFx0W3J0bEVuYWJsZWRdPVwicnRsRW5hYmxlZFwiXHJcblx0XHRcdFx0XHRpZD1cInRyZWVMaXN0XCJcclxuXHRcdFx0XHRcdFtyb290VmFsdWVdPVwicm9vdEZvbGRlclwiXHJcblx0XHRcdFx0XHRrZXlFeHByPVwiaWRcIlxyXG5cdFx0XHRcdFx0ZGlzcGxheUV4cHI9XCJuYW1lXCJcclxuXHRcdFx0XHRcdGhhc0l0ZW1zRXhwcj1cImlzRXhwYW5kZWRcIlxyXG5cdFx0XHRcdFx0ZGF0YVN0cnVjdHVyZT1cInBsYWluXCJcclxuXHRcdFx0XHRcdFtjcmVhdGVDaGlsZHJlbl09XCJjcmVhdGVUcmVlTm9kZUNoaWxkcmVuXCJcclxuXHRcdFx0XHRcdFt3aWR0aF09XCI0NjVcIlxyXG5cdFx0XHRcdFx0KG9uSXRlbUNsaWNrKT1cInNlbGVjdEl0ZW0oJGV2ZW50KVwiXHJcblx0XHRcdFx0PlxyXG5cdFx0XHRcdDwvZHgtdHJlZS12aWV3PlxyXG5cdFx0XHQ8L2Rpdj5cclxuXHRcdDwvZHgtc2Nyb2xsLXZpZXc+XHJcblx0PC9kaXY+XHJcbjwvbmctdGVtcGxhdGU+XHJcblxyXG48bmctdGVtcGxhdGUgI2FjdGlvbnNUZW1wbGF0ZSBsZXQtZGlhbG9nPVwiZGlhbG9nXCI+XHJcblx0PGJ1dHRvblxyXG5cdFx0W2Rpc2FibGVkXT1cImRpc2FibGVcIlxyXG5cdFx0Y2xhc3M9XCJzdWJtaXNzaW9uLWJ1dHRvbiBweC01XCJcclxuXHRcdChjbGljayk9XCJkaWFsb2cuZXhlY3V0ZUFjdGlvbihjb3B5LCBbZmFsc2VdKVwiXHJcblx0PlxyXG5cdFx0e3sgJ0JVVFRPTlMuQ09QWScgfCB0cmFuc2xhdGUgfX1cclxuXHQ8L2J1dHRvbj5cclxuPC9uZy10ZW1wbGF0ZT5cclxuIl19
151
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29weS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9maWxlLW1hbmdlci9jb21wb25lbnRzL2NvcHkvY29weS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9maWxlLW1hbmdlci9jb21wb25lbnRzL2NvcHkvY29weS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ04sU0FBUyxFQUNULFlBQVksRUFFWixLQUFLLEVBRUwsTUFBTSxFQUVOLFNBQVMsRUFDVCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDckQsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUkxQixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seURBQXlELENBQUM7QUFHekYsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3JDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxtREFBbUQsQ0FBQzs7Ozs7OztBQU1sRixNQUFNLE9BQU8sYUFBYyxTQUFRLGFBQWE7SUF1Qy9DLFlBQ1Msa0JBQXNDLEVBQ3BDLG1CQUF3QyxFQUMzQyxrQkFBc0MsRUFDN0MsUUFBa0I7UUFFbEIsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBTFIsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFvQjtRQUNwQyx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXFCO1FBQzNDLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBb0I7UUF2QjlDLGtCQUFhLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUV4QyxzQkFB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USxFQUFFLFVBQVU7b0JBQ3BCLFdBQVcsRUFBRSx1QkFBdUI7b0JBQ3BDLFNBQVMsRUFBRSxDQUFDLHVCQUF1QixDQUFDO2lCQUNwQzttTUFFK0MsSUFBSTtzQkFBbEQsU0FBUzt1QkFBQyxlQUFlLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFO2dCQUNmLGVBQWU7c0JBQTVDLFNBQVM7dUJBQUMsaUJBQWlCO2dCQUNFLGVBQWU7c0JBQTVDLFNBQVM7dUJBQUMsaUJBQWlCO2dCQUV4QixPQUFPO3NCQURWLEtBQUs7Z0JBZU4sYUFBYTtzQkFEWixNQUFNO2dCQUdQLGlCQUFpQjtzQkFEaEIsTUFBTTtnQkFHUCxVQUFVO3NCQURULEtBQUs7Z0JBR04sWUFBWTtzQkFEWCxLQUFLO2dCQUdOLFVBQVU7c0JBRFQsS0FBSztnQkFHTixXQUFXO3NCQURWLEtBQUs7Z0JBR04sYUFBYTtzQkFEWixLQUFLO2dCQUdOLFNBQVM7c0JBRFIsS0FBSztnQkFFRyxrQkFBa0I7c0JBQTFCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG5cdENvbXBvbmVudCxcclxuXHRFdmVudEVtaXR0ZXIsXHJcblx0SW5qZWN0b3IsXHJcblx0SW5wdXQsXHJcblx0T25Jbml0LFxyXG5cdE91dHB1dCxcclxuXHRUZW1wbGF0ZVJlZixcclxuXHRWaWV3Q2hpbGRcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRHhGb3JtQ29tcG9uZW50IH0gZnJvbSAnZGV2ZXh0cmVtZS1hbmd1bGFyJztcclxuaW1wb3J0IHsgb2YgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgQ3VzdG9tVG9hc3RyU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL2N1c3RvbS10b2FzdHIvc2VydmljZXMvY3VzdG9tLXRvYXN0ci5zZXJ2aWNlJztcclxuaW1wb3J0IHsgRmlsZU1hbmFnZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vc2hhcmVkLXNlcnZpY2VzL2ZpbGUtbWFuYWdlci5zZXJ2aWNlJztcclxuaW1wb3J0IHsgRGlhbG9nT3B0aW9ucyB9IGZyb20gJy4uLy4uLy4uLy4uL3NoYXJlZC9jb21wb25lbnRzL251eGVvLWRpYWxvZy9tb2RlbHMvZGlhbG9nLW9wdGlvbi5tb2RlbCc7XHJcbmltcG9ydCB7IE5kZk51eGVvRGlhbG9nIH0gZnJvbSAnLi4vLi4vLi4vLi4vc2hhcmVkL2NvbXBvbmVudHMvbnV4ZW8tZGlhbG9nL251eGVvLmRpYWxvZyc7XHJcbmltcG9ydCB7IE51eGVvRGlhbG9nU2VydmljZSB9IGZyb20gJy4uLy4uLy4uLy4uL3NoYXJlZC9jb21wb25lbnRzL251eGVvLWRpYWxvZy9zZXJ2aWNlcy9udXhlby1kaWFsb2cuc2VydmljZSc7XHJcbmltcG9ydCB7IERpYWxvZ0FjdGlvblR5cGUgfSBmcm9tICcuLi8uLi8uLi8uLi9zaGFyZWQvY29tcG9uZW50cy9udXhlby1kaWFsb2cvbW9kZWxzL2RpYWxvZy1vcHRpb24ubW9kZWwnO1xyXG5pbXBvcnQgeyB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IEJhc2VDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi8uLi9zaGFyZWQvY29tcG9uZW50cy9iYXNlL2Jhc2UuY29tcG9uZW50JztcclxuQENvbXBvbmVudCh7XHJcblx0c2VsZWN0b3I6ICdhcHAtY29weScsXHJcblx0dGVtcGxhdGVVcmw6ICcuL2NvcHkuY29tcG9uZW50Lmh0bWwnLFxyXG5cdHN0eWxlVXJsczogWycuL2NvcHkuY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgQ29weUNvbXBvbmVudCBleHRlbmRzIEJhc2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG5cdEBWaWV3Q2hpbGQoRHhGb3JtQ29tcG9uZW50LCB7IHN0YXRpYzogZmFsc2UgfSkgZm9ybTogRHhGb3JtQ29tcG9uZW50O1xyXG5cdEBWaWV3Q2hpbGQoJ2NvbnRlbnRUZW1wbGF0ZScpIGNvbnRlbnRUZW1wbGF0ZSE6IFRlbXBsYXRlUmVmPGFueT47XHJcblx0QFZpZXdDaGlsZCgnYWN0aW9uc1RlbXBsYXRlJykgYWN0aW9uc1RlbXBsYXRlITogVGVtcGxhdGVSZWY8YW55PjtcclxuXHRASW5wdXQoKVxyXG5cdHNldCB2aXNpYmxlKHZhbHVlOiBhbnkpIHtcclxuXHRcdGlmICh0aGlzLl92aXNpYmxlID09PSB2YWx1ZSkge1xyXG5cdFx0XHRyZXR1cm47XHJcblx0XHR9XHJcblx0XHRpZiAodmFsdWUpIHtcclxuXHRcdFx0dGhpcy5vcGVuRGlhbG9nKCk7XHJcblx0XHR9XHJcblx0XHR0aGlzLl92aXNpYmxlID0gdmFsdWU7XHJcblx0XHR0aGlzLnZpc2libGVDaGFuZ2UuZW1pdCh0aGlzLl92aXNpYmxlKTtcclxuXHR9XHJcblx0Z2V0IHZpc2libGUoKSB7XHJcblx0XHRyZXR1cm4gdGhpcy5fdmlzaWJsZTtcclxuXHR9XHJcblx0QE91dHB1dCgpXHJcblx0dmlzaWJsZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG5cdEBPdXRwdXQoKVxyXG5cdGdldFNlbGVjdGVkRm9sZGVyID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XHJcblx0QElucHV0KClcclxuXHRydGxFbmFibGVkID0gZmFsc2U7XHJcblx0QElucHV0KClcclxuXHRzZWxlY3RlZEl0ZW06IGFueTtcclxuXHRASW5wdXQoKVxyXG5cdHJvb3RGb2xkZXI6IGFueTtcclxuXHRASW5wdXQoKVxyXG5cdHJvb3RFbnRyaWVzOiBhbnk7XHJcblx0QElucHV0KClcclxuXHRzZWxlY3RlZEl0ZW1zOiBhbnk7XHJcblx0QElucHV0KClcclxuXHRkaXJlY3Rvcnk6IGFueTtcclxuXHRASW5wdXQoKSBwYWdlQ29uZmlndXJhdGlvbnM7XHJcblx0Zm9ybURhdGE6IGFueSA9IHt9O1xyXG5cdGRpc2FibGUgPSB0cnVlO1xyXG5cdF92aXNpYmxlID0gZmFsc2U7XHJcblx0Y3VycmVudEl0ZW07XHJcblx0Y29uc3RydWN0b3IoXHJcblx0XHRwcml2YXRlIGZpbGVNYW5hZ2VyU2VydmljZTogRmlsZU1hbmFnZXJTZXJ2aWNlLFxyXG5cdFx0cHJvdGVjdGVkIGN1c3RvbVRvYXN0clNlcnZpY2U6IEN1c3RvbVRvYXN0clNlcnZpY2UsXHJcblx0XHRwdWJsaWMgbnV4ZW9EaWFsb2dTZXJ2aWNlOiBOdXhlb0RpYWxvZ1NlcnZpY2UsXHJcblx0XHRpbmplY3RvcjogSW5qZWN0b3JcclxuXHQpIHtcclxuXHRcdHN1cGVyKGluamVjdG9yKTtcclxuXHR9XHJcblxyXG5cdG5nT25Jbml0KCk6IHZvaWQge31cclxuXHJcblx0b3BlbkRpYWxvZygpOiB2b2lkIHtcclxuXHRcdGNvbnN0IG9wdGlvbnM6IERpYWxvZ09wdGlvbnMgPSB7XHJcblx0XHRcdGNvbXBvbmVudDogTmRmTnV4ZW9EaWFsb2csXHJcblx0XHRcdHBhbmVsQ2xhc3M6ICdwb3BVcFBhcmVudCcsXHJcblx0XHRcdGNvbmZpZzoge1xyXG5cdFx0XHRcdHRpdGxlOiB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgnRklMRV9NQU5BR0VSLkNPUFlfT1JfTU9WRScpLFxyXG5cdFx0XHRcdGNvbnRlbnRUZW1wbGF0ZTogdGhpcy5jb250ZW50VGVtcGxhdGUsXHJcblx0XHRcdFx0YWN0aW9uc1RlbXBsYXRlOiB0aGlzLmFjdGlvbnNUZW1wbGF0ZVxyXG5cdFx0XHR9XHJcblx0XHR9O1xyXG5cdFx0dGhpcy5udXhlb0RpYWxvZ1NlcnZpY2VcclxuXHRcdFx0Lm9wZW4ob3B0aW9ucylcclxuXHRcdFx0LmFmdGVyQ2xvc2VkKClcclxuXHRcdFx0LnN1YnNjcmliZSgocmVzKSA9PiB7XHJcblx0XHRcdFx0dGhpcy5jYW5jZWwoKTtcclxuXHRcdFx0fSk7XHJcblx0fVxyXG5cclxuXHRjYW5jZWwoKSB7XHJcblx0XHR0aGlzLnZpc2libGUgPSBmYWxzZTtcclxuXHR9XHJcblx0c2VsZWN0SXRlbShlKSB7XHJcblx0XHR0aGlzLmRpc2FibGUgPSBmYWxzZTtcclxuXHRcdHRoaXMuY3VycmVudEl0ZW0gPSBlLml0ZW1EYXRhO1xyXG5cdH1cclxuXHJcblx0Y3JlYXRlVHJlZU5vZGVDaGlsZHJlbiA9IChwYXJlbnQpID0+IHtcclxuXHRcdGxldCBteXBhcmVudCA9IHBhcmVudCA/IHBhcmVudC5rZXkgOiB0aGlzLnJvb3RGb2xkZXI7XHJcblx0XHRsZXQgbXlvYnM7XHJcblx0XHRpZiAobXlwYXJlbnQgPT09IHRoaXMucGFnZUNvbmZpZ3VyYXRpb25zLnJvb3ROYW1lKSB7XHJcblx0XHRcdC8vIHdoZW4gaXQgaXMgcm9vdCBvZiBmaWxlIGxpc3QgdGhlbiB1c2VkIHBhc3NlZCByb290IGVudHJpZXMgYW5kIGZvciByb290IG9mXHJcblx0XHRcdC8vIG15IGZpbGVzIG9yIGFueSBvdGhlciBmb2xkZXIgdXNlIGdldHRpbmcgY2hpbGRzIGZvciB0aGF0IGZvbGRlciB3aXRoIGl0cyBpZFxyXG5cdFx0XHRteW9icyA9IHRoaXMuZmlsZU1hbmFnZXJTZXJ2aWNlLnBhcnNlTm9kZUNoaWxkcmVuKFxyXG5cdFx0XHRcdG9mKHRoaXMucm9vdEVudHJpZXMpLFxyXG5cdFx0XHRcdHRoaXMucGFnZUNvbmZpZ3VyYXRpb25zLFxyXG5cdFx0XHRcdHBhcmVudFxyXG5cdFx0XHQpO1xyXG5cdFx0fSBlbHNlIHtcclxuXHRcdFx0bXlvYnMgPSB0aGlzLmZpbGVNYW5hZ2VyU2VydmljZS5jcmVhdGVUcmVlTm9kZUNoaWxkcmVuKG15cGFyZW50KTtcclxuXHRcdH1cclxuXHRcdHJldHVybiBteW9icztcclxuXHRcdC8vIGNvbnNvbGUubG9nKHBhcmVudCk7XHJcblx0XHQvLyBsZXQgb2JzID0gKFxyXG5cdFx0Ly8gICBwYXJlbnRcclxuXHRcdC8vICAgICA/IHRoaXMuZmlsZU1hbmFnZXJTZXJ2aWNlLmdldFRyZWVOb2RlQ2hpbGRyZW4ocGFyZW50KVxyXG5cdFx0Ly8gICAgIDogb2YoXHJcblx0XHQvLyAgICAgICB0aGlzLnJvb3RFbnRyaWVzXHJcblx0XHQvLyAgICAgKVxyXG5cdFx0Ly8gKVxyXG5cdFx0Ly8gcmV0dXJuIHRoaXMuZmlsZU1hbmFnZXJTZXJ2aWNlLnBhcnNlTm9kZUNoaWxkcmVuKG9icywgcGFyZW50KTtcclxuXHR9O1xyXG5cclxuXHRjb3B5OiBEaWFsb2dBY3Rpb25UeXBlID0gKGFuc3dlcikgPT4ge1xyXG5cdFx0aWYgKHRoaXMuY3VycmVudEl0ZW0uY2FuQ29weVRvRGVzdGluYXRpb24pIHtcclxuXHRcdFx0aWYgKFxyXG5cdFx0XHRcdHRoaXMuZGlyZWN0b3J5Py5kYXRhSXRlbT8uaWQgIT09IHRoaXMuY3VycmVudEl0ZW0uaWQgJiZcclxuXHRcdFx0XHQhdGhpcy5jdXJyZW50SXRlbS5lbnRpdHkucGF0aC5pbmNsdWRlcyh0aGlzLnNlbGVjdGVkSXRlbS5uYW1lKVxyXG5cdFx0XHQpIHtcclxuXHRcdFx0XHQvLyB0aGlzLmN1cnJlbnRQYXRoID0gJyc7XHJcblx0XHRcdFx0cmV0dXJuIHRoaXMuZmlsZU1hbmFnZXJTZXJ2aWNlXHJcblx0XHRcdFx0XHQuY29weVRvKHRoaXMuY3VycmVudEl0ZW0sIHRoaXMuc2VsZWN0ZWRJdGVtcylcclxuXHRcdFx0XHRcdC5waXBlKFxyXG5cdFx0XHRcdFx0XHR0YXAoXHJcblx0XHRcdFx0XHRcdFx0KHJlcykgPT4ge1xyXG5cdFx0XHRcdFx0XHRcdFx0dGhpcy52aXNpYmxlID0gYW5zd2VyO1xyXG5cdFx0XHRcdFx0XHRcdFx0dGhpcy5nZXRTZWxlY3RlZEZvbGRlci5uZXh0KHRoaXMuY3VycmVudEl0ZW0uaWQpO1xyXG5cdFx0XHRcdFx0XHRcdFx0dGhpcy5jdXN0b21Ub2FzdHJTZXJ2aWNlLnNob3coXHJcblx0XHRcdFx0XHRcdFx0XHRcdCdzdWNjZXNzJyxcclxuXHRcdFx0XHRcdFx0XHRcdFx0J1RPQVNURVIuU1VDQ0VTUycsXHJcblx0XHRcdFx0XHRcdFx0XHRcdCdUT0FTVEVSLkRPQ1VNRU5UX0NPUElFRCdcclxuXHRcdFx0XHRcdFx0XHRcdCk7XHJcblx0XHRcdFx0XHRcdFx0fSxcclxuXHRcdFx0XHRcdFx0XHQoZXJyKSA9PiB7XHJcblx0XHRcdFx0XHRcdFx0XHR0aGlzLnZpc2libGUgPSB0cnVlO1xyXG5cdFx0XHRcdFx0XHRcdFx0dGhpcy5jdXN0b21Ub2FzdHJTZXJ2aWNlLnNob3coXHJcblx0XHRcdFx0XHRcdFx0XHRcdCdlcnJvcicsXHJcblx0XHRcdFx0XHRcdFx0XHRcdCdUT0FTVEVSLkVSUk9SJyxcclxuXHRcdFx0XHRcdFx0XHRcdFx0J1RPQVNURVIuRE9DVU1FTlRfQ09QSUVEX0VSUk9SJ1xyXG5cdFx0XHRcdFx0XHRcdFx0KTtcclxuXHRcdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdClcclxuXHRcdFx0XHRcdCk7XHJcblx0XHRcdH0gZWxzZVxyXG5cdFx0XHRcdHRoaXMuY3VzdG9tVG9hc3RyU2VydmljZS5zaG93KFxyXG5cdFx0XHRcdFx0J2Vycm9yJyxcclxuXHRcdFx0XHRcdCdUT0FTVEVSLkVSUk9SJyxcclxuXHRcdFx0XHRcdCdUT0FTVEVSLkZBSUxFRF9UT19DT1BZJ1xyXG5cdFx0XHRcdCk7XHJcblx0XHR9IGVsc2Uge1xyXG5cdFx0XHR0aGlzLmN1c3RvbVRvYXN0clNlcnZpY2Uuc2hvdyhcclxuXHRcdFx0XHQnZXJyb3InLFxyXG5cdFx0XHRcdCdUT0FTVEVSLkVSUk9SJyxcclxuXHRcdFx0XHQnVE9BU1RFUi5OT19QRVJNSVNTSU9OJ1xyXG5cdFx0XHQpO1xyXG5cdFx0fVxyXG5cdFx0cmV0dXJuIG9mKG51bGwpO1xyXG5cdH07XHJcbn1cclxuIiwiPG5nLXRlbXBsYXRlICNjb250ZW50VGVtcGxhdGU+XHJcblx0PGRpdiBjbGFzcz1cInAtNFwiPlxyXG5cdFx0PGR4LXNjcm9sbC12aWV3IHdpZHRoPVwiMTAwJVwiIGhlaWdodD1cIjEwMCVcIj5cclxuXHRcdFx0PGRpdiBjbGFzcz1cImZvcm1cIj5cclxuXHRcdFx0XHQ8ZHgtdHJlZS12aWV3XHJcblx0XHRcdFx0XHRbcnRsRW5hYmxlZF09XCJydGxFbmFibGVkXCJcclxuXHRcdFx0XHRcdGlkPVwidHJlZUxpc3RcIlxyXG5cdFx0XHRcdFx0W3Jvb3RWYWx1ZV09XCJyb290Rm9sZGVyXCJcclxuXHRcdFx0XHRcdGtleUV4cHI9XCJpZFwiXHJcblx0XHRcdFx0XHRkaXNwbGF5RXhwcj1cIm5hbWVcIlxyXG5cdFx0XHRcdFx0aGFzSXRlbXNFeHByPVwiaXNFeHBhbmRlZFwiXHJcblx0XHRcdFx0XHRkYXRhU3RydWN0dXJlPVwicGxhaW5cIlxyXG5cdFx0XHRcdFx0W2NyZWF0ZUNoaWxkcmVuXT1cImNyZWF0ZVRyZWVOb2RlQ2hpbGRyZW5cIlxyXG5cdFx0XHRcdFx0W3dpZHRoXT1cIjQ2NVwiXHJcblx0XHRcdFx0XHQob25JdGVtQ2xpY2spPVwic2VsZWN0SXRlbSgkZXZlbnQpXCJcclxuXHRcdFx0XHQ+XHJcblx0XHRcdFx0PC9keC10cmVlLXZpZXc+XHJcblx0XHRcdDwvZGl2PlxyXG5cdFx0PC9keC1zY3JvbGwtdmlldz5cclxuXHQ8L2Rpdj5cclxuPC9uZy10ZW1wbGF0ZT5cclxuXHJcbjxuZy10ZW1wbGF0ZSAjYWN0aW9uc1RlbXBsYXRlIGxldC1kaWFsb2c9XCJkaWFsb2dcIj5cclxuXHQ8YnV0dG9uXHJcblx0XHRbZGlzYWJsZWRdPVwiZGlzYWJsZVwiXHJcblx0XHRjbGFzcz1cInN1Ym1pc3Npb24tYnV0dG9uIHB4LTVcIlxyXG5cdFx0KGNsaWNrKT1cImRpYWxvZy5leGVjdXRlQWN0aW9uKGNvcHksIFtmYWxzZV0pXCJcclxuXHQ+XHJcblx0XHR7eyAnQlVUVE9OUy5DT1BZJyB8IHRyYW5zbGF0ZSB9fVxyXG5cdDwvYnV0dG9uPlxyXG48L25nLXRlbXBsYXRlPlxyXG4iXX0=