nuxeo-development-framework 6.0.4 → 6.0.6
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.
- package/bundles/nuxeo-development-framework.umd.js +840 -244
- package/bundles/nuxeo-development-framework.umd.js.map +1 -1
- package/esm2015/lib/components/activities-log/activities-log/activities-log.component.js +1 -1
- package/esm2015/lib/components/activities-log/activities-log/activities-log.service.js +1 -1
- package/esm2015/lib/components/activities-log/activities-log.module.js +1 -1
- package/esm2015/lib/components/activity/activity/activity.component.js +1 -1
- package/esm2015/lib/components/activity/activity.module.js +1 -1
- package/esm2015/lib/components/attachment-item/attachment-item/attachment-item.component.js +2 -2
- package/esm2015/lib/components/attachment-item/attachment-item.module.js +1 -1
- package/esm2015/lib/components/attachment-modal/attachment-modal.module.js +1 -1
- package/esm2015/lib/components/attachment-modal/attachments/attachments.component.js +1 -1
- package/esm2015/lib/components/avatar/avatar/avatar.component.js +1 -1
- package/esm2015/lib/components/avatar/avatar.module.js +1 -1
- package/esm2015/lib/components/card/card.component.js +1 -1
- package/esm2015/lib/components/card/card.module.js +1 -1
- package/esm2015/lib/components/comments/comments.module.js +1 -1
- package/esm2015/lib/components/comments/components/comment-item/comment-item.component.js +2 -2
- package/esm2015/lib/components/comments/components/comments-dashlet/comments-dashlet.component.js +1 -1
- package/esm2015/lib/components/comments/components/comments-list/comments-list.component.js +1 -1
- package/esm2015/lib/components/comments/components/edit-delete-modal/edit-delete-modal.component.js +1 -1
- package/esm2015/lib/components/comments/constants/comment.js +1 -1
- package/esm2015/lib/components/comments/services/comment-api.service.js +1 -1
- package/esm2015/lib/components/confirm-caller/confirm-caller.dialog.js +1 -1
- package/esm2015/lib/components/confirm-caller/confirm-caller.module.js +1 -1
- package/esm2015/lib/components/confirm-caller/confirm-dialog/confirm-dialog.component.js +1 -1
- package/esm2015/lib/components/confirmation-dialog/confirmation-dialog/confirmation-dialog.component.js +1 -1
- package/esm2015/lib/components/confirmation-dialog/confirmation-dialog.module.js +1 -1
- package/esm2015/lib/components/correspondence-relation/components/correspondence-relation/correspondence-relation.component.js +9 -4
- package/esm2015/lib/components/correspondence-relation/components/correspondence-relation-create-form/correspondence-relation-create-form.component.js +1 -1
- package/esm2015/lib/components/correspondence-relation/components/correspondence-relation-list/correspondence-relation-list.component.js +2 -2
- package/esm2015/lib/components/correspondence-relation/components/correspondence-relation-reply/correspondence-relation-reply.component.js +6 -4
- package/esm2015/lib/components/correspondence-relation/components/versions/versions.component.js +1 -1
- package/esm2015/lib/components/correspondence-relation/correspondence-relation.module.js +1 -1
- package/esm2015/lib/components/correspondence-relation/services/correspondence-realation.service.js +1 -1
- package/esm2015/lib/components/correspondence-relation/services/viewer-files.service.js +1 -1
- package/esm2015/lib/components/create-entity/create-entity/create-entity.component.js +1 -1
- package/esm2015/lib/components/create-entity/create-entity.module.js +1 -1
- package/esm2015/lib/components/cts-tags/components/correspondence-tags/correspondence-tags.component.js +2 -2
- package/esm2015/lib/components/cts-tags/cts-tags.module.js +1 -1
- package/esm2015/lib/components/cts-tags/services/tags-api.service.js +1 -1
- package/esm2015/lib/components/custom-toastr/components/custom-toastr/custom-toastr.component.js +1 -1
- package/esm2015/lib/components/custom-toastr/custom-toastr.module.js +1 -1
- package/esm2015/lib/components/custom-toastr/interfaces/toast-type.interface.js +1 -1
- package/esm2015/lib/components/custom-toastr/services/custom-toastr.service.js +1 -1
- package/esm2015/lib/components/diagrams/components/base-node.component.js +1 -1
- package/esm2015/lib/components/diagrams/components/circle-node/circle-node.component.js +1 -1
- package/esm2015/lib/components/diagrams/components/connection-label.component.js +1 -1
- package/esm2015/lib/components/diagrams/components/content-node/content-node.component.js +1 -1
- package/esm2015/lib/components/diagrams/components/custom-connection.component.js +1 -1
- package/esm2015/lib/components/diagrams/components/custom-socket.component.js +1 -1
- package/esm2015/lib/components/diagrams/components/gateway-node/gateway-node.component.js +1 -1
- package/esm2015/lib/components/diagrams/components/gateway-ports.component.js +1 -1
- package/esm2015/lib/components/diagrams/components/index.js +1 -1
- package/esm2015/lib/components/diagrams/components/node-icon.component.js +1 -1
- package/esm2015/lib/components/diagrams/components/node-inputs.component.js +1 -1
- package/esm2015/lib/components/diagrams/components/node-outputs.component.js +1 -1
- package/esm2015/lib/components/diagrams/components/node-ports.component.js +1 -1
- package/esm2015/lib/components/diagrams/components/remove-button.component.js +1 -1
- package/esm2015/lib/components/diagrams/components/status-icon.component.js +1 -1
- package/esm2015/lib/components/diagrams/components/template-node/template-node.component.js +1 -1
- package/esm2015/lib/components/diagrams/components/zoom-control.component.js +1 -1
- package/esm2015/lib/components/diagrams/constants/defaults.js +1 -1
- package/esm2015/lib/components/diagrams/constants/direction.js +1 -1
- package/esm2015/lib/components/diagrams/constants/index.js +1 -1
- package/esm2015/lib/components/diagrams/constants/message-type.js +1 -1
- package/esm2015/lib/components/diagrams/constants/node-type.js +1 -1
- package/esm2015/lib/components/diagrams/constants/notify-events.js +1 -1
- package/esm2015/lib/components/diagrams/constants/sizes.js +1 -1
- package/esm2015/lib/components/diagrams/constants/status.js +1 -1
- package/esm2015/lib/components/diagrams/diagrams.module.js +1 -1
- package/esm2015/lib/components/diagrams/directive/diagram.directive.js +1 -1
- package/esm2015/lib/components/diagrams/directive/index.js +1 -1
- package/esm2015/lib/components/diagrams/editor/customize.js +1 -1
- package/esm2015/lib/components/diagrams/editor/editor.js +1 -1
- package/esm2015/lib/components/diagrams/editor/index.js +1 -1
- package/esm2015/lib/components/diagrams/editor/overrides/connection-path.transformers.js +1 -1
- package/esm2015/lib/components/diagrams/editor/overrides/index.js +1 -1
- package/esm2015/lib/components/diagrams/editor/path-plugin.js +1 -1
- package/esm2015/lib/components/diagrams/editor/socket-position-watcher.js +1 -1
- package/esm2015/lib/components/diagrams/index.js +1 -1
- package/esm2015/lib/components/diagrams/models/base-node.model.js +1 -1
- package/esm2015/lib/components/diagrams/models/circle-node.model.js +1 -1
- package/esm2015/lib/components/diagrams/models/connection.model.js +1 -1
- package/esm2015/lib/components/diagrams/models/content-node.model.js +1 -1
- package/esm2015/lib/components/diagrams/models/gate-way.model.js +1 -1
- package/esm2015/lib/components/diagrams/models/index.js +1 -1
- package/esm2015/lib/components/diagrams/models/ports.model.js +1 -1
- package/esm2015/lib/components/diagrams/models/socket.model.js +1 -1
- package/esm2015/lib/components/diagrams/models/template-node.model.js +1 -1
- package/esm2015/lib/components/diagrams/public-api.js +1 -1
- package/esm2015/lib/components/diagrams/services/diagram-plugins.service.js +1 -1
- package/esm2015/lib/components/diagrams/services/diagram.service.js +1 -1
- package/esm2015/lib/components/diagrams/services/index.js +1 -1
- package/esm2015/lib/components/diagrams/services/message.service.js +1 -1
- package/esm2015/lib/components/diagrams/services/workflow.service.js +1 -1
- package/esm2015/lib/components/diagrams/types/common.type.js +1 -1
- package/esm2015/lib/components/diagrams/types/connection-config.type.js +1 -1
- package/esm2015/lib/components/diagrams/types/connection-label.type.js +1 -1
- package/esm2015/lib/components/diagrams/types/customization.type.js +1 -1
- package/esm2015/lib/components/diagrams/types/diagram-config.type.js +1 -1
- package/esm2015/lib/components/diagrams/types/diagram-editor.type.js +1 -1
- package/esm2015/lib/components/diagrams/types/emitter-type.js +1 -1
- package/esm2015/lib/components/diagrams/types/index.js +1 -1
- package/esm2015/lib/components/diagrams/types/layout.type.js +1 -1
- package/esm2015/lib/components/diagrams/types/node-content.js +1 -1
- package/esm2015/lib/components/diagrams/types/node-definition.js +1 -1
- package/esm2015/lib/components/diagrams/types/node-status.type.js +1 -1
- package/esm2015/lib/components/diagrams/types/node.type.js +1 -1
- package/esm2015/lib/components/diagrams/types/notify-event.type.js +1 -1
- package/esm2015/lib/components/diagrams/types/path.type.js +1 -1
- package/esm2015/lib/components/diagrams/types/ports-config.type.js +1 -1
- package/esm2015/lib/components/diagrams/types/schemes.type.js +1 -1
- package/esm2015/lib/components/diagrams/types/socket.type.js +1 -1
- package/esm2015/lib/components/diagrams/utilities/common.js +1 -1
- package/esm2015/lib/components/diagrams/utilities/index.js +1 -1
- package/esm2015/lib/components/diagrams/utilities/random.js +1 -1
- package/esm2015/lib/components/diagrams/utilities/remove.util.js +1 -1
- package/esm2015/lib/components/diagrams/utilities/serialize.js +1 -1
- package/esm2015/lib/components/display-suitable-icon/display-suitable-icon/display-suitable-icon.component.js +2 -2
- package/esm2015/lib/components/display-suitable-icon/display-suitable-icon/icon.service.js +1 -1
- package/esm2015/lib/components/display-suitable-icon/display-suitable-icon.module.js +1 -1
- package/esm2015/lib/components/documents/components/attachments-list/attachments-list.component.js +1 -1
- package/esm2015/lib/components/documents/components/attachments-page-provider/attachments-page-provider.component.js +1 -1
- package/esm2015/lib/components/documents/components/document-list/documents-list.component.js +1 -1
- package/esm2015/lib/components/documents/components/document-scan/document-scan.component.js +1 -1
- package/esm2015/lib/components/documents/components/document-scan/document-scan.service.js +1 -1
- package/esm2015/lib/components/documents/components/document-upload/document-upload.component.js +1 -1
- package/esm2015/lib/components/documents/components/documents/documents.component.js +1 -1
- package/esm2015/lib/components/documents/constants/document-templates.js +1 -1
- package/esm2015/lib/components/documents/constants/documents.js +1 -1
- package/esm2015/lib/components/documents/documents.module.js +1 -1
- package/esm2015/lib/components/documents/services/document-templates.service.js +1 -1
- package/esm2015/lib/components/documents/services/documents.service.js +1 -1
- package/esm2015/lib/components/dynamic-chart/dynamic-chart/dynamic-chart.component.js +1 -1
- package/esm2015/lib/components/dynamic-chart/dynamic-chart.module.js +1 -1
- package/esm2015/lib/components/dynamic-chart/services/chart-data.service.js +1 -1
- package/esm2015/lib/components/dynamic-fields-renderer/dynamic-fields-renderer/dynamic-fields-renderer.component.js +1 -1
- package/esm2015/lib/components/dynamic-fields-renderer/dynamic-fields-renderer.module.js +1 -1
- package/esm2015/lib/components/dynamic-filter/dynamic-filter/dynamic-filter.component.js +2 -2
- package/esm2015/lib/components/dynamic-filter/dynamic-filter.module.js +1 -1
- package/esm2015/lib/components/dynamic-form/components/department-form/department-form.component.js +1 -1
- package/esm2015/lib/components/dynamic-form/components/dynamic-form/dynamic-form.component.js +1 -1
- package/esm2015/lib/components/dynamic-form/components/dynamic-form/fields.adapter.js +1 -1
- package/esm2015/lib/components/dynamic-form/components/dynamic-form/form-builder.service.js +1 -1
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-boolitem/dynamic-form-boolitem.component.js +1 -1
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-builder/dynamic-form-builder.component.js +1 -1
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-checkbox-item/dynamic-form-checkbox-item.component.js +1 -1
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-dateitem/dynamic-form-dateitem.component.js +1 -1
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-dateitem/owlDateTimeIntl.js +1 -1
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-department/constants/department.js +1 -1
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-department/dynamic-form-department.component.js +1 -1
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-department/services/department-api.service.js +1 -1
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-department/services/department-management.service.js +1 -1
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-field/dynamic-form-field.component.js +1 -1
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-hijri-dateitem/dynamic-form-hijri-dateitem.component.js +1 -1
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-item-dispatcher/dynamic-form-item-dispatcher.component.js +1 -1
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-mapitem/dynamic-form-mapitem.component.js +1 -1
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-options/dynamic-form-options.component.js +1 -1
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-select-tag/dynamic-form-select-tag.component.js +1 -1
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-select-user-filter/dynamic-form-select-user-filter.component.js +1 -1
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-select-users/dynamic-form-select-users.component.js +1 -3
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-select-users/services/user-api.service.js +1 -1
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-selectitem/dynamic-form-selectitem.component.js +1 -1
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-slide-toggleitem/dynamic-form-slide-toggleitem.component.js +2 -2
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-textarea/dynamic-form-textarea.component.js +1 -1
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-textitem/dynamic-form-textitem.component.js +1 -1
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-treeview-select/dropdown-treeview-select-i18n.js +1 -1
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-treeview-select/dropdown-treeview-select.component.js +2 -2
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-viewer/dynamic-form-viewer.component.js +1 -1
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-vocabulary-item/dynamic-form-vocabulary-item.component.js +1 -1
- package/esm2015/lib/components/dynamic-form/components/form-wrappers/base-edit-form/base-edit-form.js +1 -1
- package/esm2015/lib/components/dynamic-form/components/form-wrappers/date-wrapper/date-wrapper.component.js +1 -1
- package/esm2015/lib/components/dynamic-form/components/form-wrappers/date-wrapper/date-wrapper.formio.js +1 -1
- package/esm2015/lib/components/dynamic-form/components/form-wrappers/toggle-wrapper/toggle-wrapper.component.js +1 -1
- package/esm2015/lib/components/dynamic-form/components/form-wrappers/toggle-wrapper/toggle-wrapper.formio.js +1 -1
- package/esm2015/lib/components/dynamic-form/components/form-wrappers/user-selector-wrapper/user-selector-wrapper.component.js +1 -1
- package/esm2015/lib/components/dynamic-form/components/form-wrappers/user-selector-wrapper/user-selector-wrapper.formio.js +1 -1
- package/esm2015/lib/components/dynamic-form/components/form-wrappers/vocabulary-wrapper/vocabulary-wrapper.component.js +1 -1
- package/esm2015/lib/components/dynamic-form/components/form-wrappers/vocabulary-wrapper/vocabulary-wrapper.formio.js +1 -1
- package/esm2015/lib/components/dynamic-form/directives/dynamic-form-content-proxy.directive.js +1 -1
- package/esm2015/lib/components/dynamic-form/dynamic-form.module.js +1 -1
- package/esm2015/lib/components/dynamic-form/interfaces/dynamic-form-boolitem-properties.interface.js +1 -1
- package/esm2015/lib/components/dynamic-form/interfaces/dynamic-form-dateitem-properties.interface.js +1 -1
- package/esm2015/lib/components/dynamic-form/interfaces/dynamic-form-item-properties.interface.js +1 -1
- package/esm2015/lib/components/dynamic-form/interfaces/dynamic-form-item-validator.interface.js +1 -1
- package/esm2015/lib/components/dynamic-form/interfaces/dynamic-form-item.interface.js +1 -1
- package/esm2015/lib/components/dynamic-form/interfaces/dynamic-form-keyvaluepairsitem-properties.interface.js +1 -1
- package/esm2015/lib/components/dynamic-form/interfaces/dynamic-form-selectitem-properties.interface.js +1 -1
- package/esm2015/lib/components/dynamic-form/interfaces/dynamic-form-textitem-pipe-property.interface.js +1 -1
- package/esm2015/lib/components/dynamic-form/interfaces/dynamic-form-textitem-properties.interface.js +1 -1
- package/esm2015/lib/components/dynamic-form/interfaces/dynamic-form.interfaces.js +1 -1
- package/esm2015/lib/components/dynamic-form/models/dynamic-form-baseitem.model.js +1 -1
- package/esm2015/lib/components/dynamic-form/models/dynamic-form-boolitem.model.js +1 -1
- package/esm2015/lib/components/dynamic-form/models/dynamic-form-dateitem.model.js +1 -1
- package/esm2015/lib/components/dynamic-form/models/dynamic-form-datetimeitem.model.js +1 -1
- package/esm2015/lib/components/dynamic-form/models/dynamic-form-mapitem.model.js +1 -1
- package/esm2015/lib/components/dynamic-form/models/dynamic-form-selectitem.model.js +1 -1
- package/esm2015/lib/components/dynamic-form/models/dynamic-form-textitem.model.js +1 -1
- package/esm2015/lib/components/dynamic-form/models/dynamic-form.models.js +1 -1
- package/esm2015/lib/components/dynamic-form/services/card-item-types.service.js +1 -1
- package/esm2015/lib/components/dynamic-form/services/dynamic-component-mapper.service.js +1 -1
- package/esm2015/lib/components/dynamic-form/services/dynamic-form-update.service.js +1 -1
- package/esm2015/lib/components/dynamic-form/services/vocabulary-api.service.js +1 -1
- package/esm2015/lib/components/dynamic-form/validators/length-validator.js +1 -1
- package/esm2015/lib/components/dynamic-form/validators/regex-validator.js +1 -1
- package/esm2015/lib/components/dynamic-form/validators/required-validator.js +1 -1
- package/esm2015/lib/components/dynamic-form/validators/value-validator.js +1 -1
- package/esm2015/lib/components/dynamic-search/dynamic-search/dynamic-search.component.js +1 -1
- package/esm2015/lib/components/dynamic-search/dynamic-search.module.js +1 -1
- package/esm2015/lib/components/dynamic-tabs/dynamic-tabs/dynamic-tabs.component.js +1 -1
- package/esm2015/lib/components/dynamic-tabs/dynamic-tabs.module.js +1 -1
- package/esm2015/lib/components/dynamic-view/boolean-viewer/boolean-viewer.component.js +2 -2
- package/esm2015/lib/components/dynamic-view/custom-document-viewer/custom-document-viewer.component.js +1 -1
- package/esm2015/lib/components/dynamic-view/custom-pp-viewer/custom-pp-viewer.component.js +1 -1
- package/esm2015/lib/components/dynamic-view/cutome-voc-viewer/cutome-voc-viewer.component.js +1 -1
- package/esm2015/lib/components/dynamic-view/data-viewer/data-viewer.component.js +2 -2
- package/esm2015/lib/components/dynamic-view/date-viewer/date-viewer.component.js +2 -2
- package/esm2015/lib/components/dynamic-view/department-viewer/department-viewer.component.js +2 -2
- package/esm2015/lib/components/dynamic-view/dropdown-viewer/dropdown-viewer.component.js +2 -2
- package/esm2015/lib/components/dynamic-view/dynamic-view.module.js +1 -1
- package/esm2015/lib/components/dynamic-view/dynamic-viewe.service.js +1 -1
- package/esm2015/lib/components/dynamic-view/list-viewer/list-viewer.component.js +1 -1
- package/esm2015/lib/components/file-manger/components/add-to-collection/add-to-collection.component.js +2 -2
- package/esm2015/lib/components/file-manger/components/clipboard/clipboard.component.js +2 -2
- package/esm2015/lib/components/file-manger/components/copy/copy.component.js +1 -1
- package/esm2015/lib/components/file-manger/components/create-directory/create-directory.component.js +2 -2
- package/esm2015/lib/components/file-manger/components/create-modal/create-modal.component.js +1 -1
- package/esm2015/lib/components/file-manger/components/creation-type/creation-type.component.js +1 -1
- package/esm2015/lib/components/file-manger/components/delete/delete.component.js +1 -1
- package/esm2015/lib/components/file-manger/components/folder-modal/folder-modal.component.js +1 -1
- package/esm2015/lib/components/file-manger/components/loan-request/loan-request.component.js +2 -2
- package/esm2015/lib/components/file-manger/components/move/move.component.js +1 -1
- package/esm2015/lib/components/file-manger/components/publish-dialog/publish-dialog.component.js +1 -1
- package/esm2015/lib/components/file-manger/components/rename/rename.component.js +2 -2
- package/esm2015/lib/components/file-manger/components/scan-modal/scan-modal.component.js +1 -1
- package/esm2015/lib/components/file-manger/components/share-dialog/share-dialog.component.js +2 -2
- package/esm2015/lib/components/file-manger/components/sidepanel/sidepanel.component.js +2 -2
- package/esm2015/lib/components/file-manger/components/template-modal/template-modal.component.js +1 -1
- package/esm2015/lib/components/file-manger/components/transfer-doc/transfer-doc.component.js +1 -1
- package/esm2015/lib/components/file-manger/components/update-modal/update-modal.component.js +1 -1
- package/esm2015/lib/components/file-manger/directives/file-grid-infinite-scroll.directive.js +1 -1
- package/esm2015/lib/components/file-manger/file-manager.abstract.js +1 -1
- package/esm2015/lib/components/file-manger/file-manger.module.js +1 -1
- package/esm2015/lib/components/file-manger/models/file-manager-config.model.js +1 -1
- package/esm2015/lib/components/file-manger/models/index.js +1 -1
- package/esm2015/lib/components/file-manger/models/pagination-payload.mode.js +1 -1
- package/esm2015/lib/components/file-manger/models/pagination-response.model.js +1 -1
- package/esm2015/lib/components/filter/filter/filter.component.js +1 -1
- package/esm2015/lib/components/filter/filter.module.js +1 -1
- package/esm2015/lib/components/hijri-gregorian-datepicker/hijri-gregorian-datepicker/gregorian-datepicker/gregorian-datepicker.component.js +1 -1
- package/esm2015/lib/components/hijri-gregorian-datepicker/hijri-gregorian-datepicker/hijri-datepicker/hijri-datepicker.component.js +1 -1
- package/esm2015/lib/components/hijri-gregorian-datepicker/hijri-gregorian-datepicker/hijri-gregorian-datepicker.component.js +1 -1
- package/esm2015/lib/components/hijri-gregorian-datepicker/hijri-gregorian-datepicker/provide-parent-form.directive.js +1 -1
- package/esm2015/lib/components/hijri-gregorian-datepicker/ngx-hijri-gregorian-datepicker.module.js +1 -1
- package/esm2015/lib/components/hijri-gregorian-datepicker/services/date-formatter.service.js +1 -1
- package/esm2015/lib/components/hijri-gregorian-datepicker/services/date-helper.service.js +1 -1
- package/esm2015/lib/components/hijri-gregorian-datepicker/utils/CustomNgbDateParserFormatter.js +1 -1
- package/esm2015/lib/components/hijri-gregorian-datepicker/utils/IslamicI18n.js +1 -1
- package/esm2015/lib/components/hijri-gregorian-datepicker/utils/consts.js +1 -1
- package/esm2015/lib/components/latest-activity/components/activity-line/activity-line.component.js +1 -1
- package/esm2015/lib/components/latest-activity/components/latest-activity/latest-activity.component.js +1 -1
- package/esm2015/lib/components/latest-activity/components/single-activity/single-activity.component.js +1 -1
- package/esm2015/lib/components/latest-activity/constants/activitylog.js +1 -1
- package/esm2015/lib/components/latest-activity/latest-activity.module.js +1 -1
- package/esm2015/lib/components/latest-activity/services/activity-log.service.js +1 -1
- package/esm2015/lib/components/mutiple-dynamic-form-viewer/multiple-dynamic-form-viewer/multiple-dynamic-form-viewer.component.js +1 -1
- package/esm2015/lib/components/mutiple-dynamic-form-viewer/mutiple-dynamic-form-viewer.module.js +1 -1
- package/esm2015/lib/components/ndf-config-editor/components/config-editor-actions/config-editor-actions.component.js +1 -1
- package/esm2015/lib/components/ndf-config-editor/components/editor-mode-switch.component.js +1 -1
- package/esm2015/lib/components/ndf-config-editor/components/index.js +1 -1
- package/esm2015/lib/components/ndf-config-editor/components/info-dialog/info-dialog.component.js +2 -2
- package/esm2015/lib/components/ndf-config-editor/config.token.js +1 -1
- package/esm2015/lib/components/ndf-config-editor/constants/index.js +1 -1
- package/esm2015/lib/components/ndf-config-editor/constants/mode.js +1 -1
- package/esm2015/lib/components/ndf-config-editor/constants/query.js +1 -1
- package/esm2015/lib/components/ndf-config-editor/containers/config-preview/config-preview.component.js +1 -1
- package/esm2015/lib/components/ndf-config-editor/containers/editor-settings/editor-settings.component.js +2 -2
- package/esm2015/lib/components/ndf-config-editor/containers/index.js +1 -1
- package/esm2015/lib/components/ndf-config-editor/containers/monaco-editor.component.js +1 -1
- package/esm2015/lib/components/ndf-config-editor/containers/ndf-config-editor/ndf-config-editor.component.js +1 -1
- package/esm2015/lib/components/ndf-config-editor/index.js +1 -1
- package/esm2015/lib/components/ndf-config-editor/metadata-token.js +1 -1
- package/esm2015/lib/components/ndf-config-editor/models/config.js +1 -1
- package/esm2015/lib/components/ndf-config-editor/models/dialog-data.js +1 -1
- package/esm2015/lib/components/ndf-config-editor/models/editor-model.js +1 -1
- package/esm2015/lib/components/ndf-config-editor/models/index.js +1 -1
- package/esm2015/lib/components/ndf-config-editor/models/payload-data.js +1 -1
- package/esm2015/lib/components/ndf-config-editor/models/type-helper.js +1 -1
- package/esm2015/lib/components/ndf-config-editor/ndf-config-editor.module.js +1 -1
- package/esm2015/lib/components/ndf-config-editor/pipes/index.js +1 -1
- package/esm2015/lib/components/ndf-config-editor/pipes/is-valid-json.pipe.js +1 -1
- package/esm2015/lib/components/ndf-config-editor/pipes/validate-object.pipe.js +1 -1
- package/esm2015/lib/components/ndf-config-editor/public/editor-navigate-button.js +2 -2
- package/esm2015/lib/components/ndf-config-editor/public/index.js +1 -1
- package/esm2015/lib/components/ndf-config-editor/public-api.js +1 -1
- package/esm2015/lib/components/ndf-config-editor/services/data-access.service.js +1 -1
- package/esm2015/lib/components/ndf-config-editor/services/data-store.service.js +1 -1
- package/esm2015/lib/components/ndf-config-editor/services/index.js +1 -1
- package/esm2015/lib/components/ndf-config-editor/services/monaco.loader.service.js +1 -1
- package/esm2015/lib/components/ndf-config-editor/utility/index.js +1 -1
- package/esm2015/lib/components/ndf-config-editor/utility/json.js +1 -1
- package/esm2015/lib/components/ndf-datepicker/adapters/hijri-adapter.js +1 -1
- package/esm2015/lib/components/ndf-datepicker/adapters/index.js +1 -1
- package/esm2015/lib/components/ndf-datepicker/adapters/moment-adapter.js +1 -1
- package/esm2015/lib/components/ndf-datepicker/base/base-value-accessor.js +1 -1
- package/esm2015/lib/components/ndf-datepicker/base/index.js +1 -1
- package/esm2015/lib/components/ndf-datepicker/components/base-datepicker.js +1 -1
- package/esm2015/lib/components/ndf-datepicker/components/index.js +1 -1
- package/esm2015/lib/components/ndf-datepicker/components/input-date.component.js +1 -1
- package/esm2015/lib/components/ndf-datepicker/components/input-range-date.component.js +1 -1
- package/esm2015/lib/components/ndf-datepicker/constants/date-locale-keys.js +1 -1
- package/esm2015/lib/components/ndf-datepicker/constants/date-picker.js +1 -1
- package/esm2015/lib/components/ndf-datepicker/constants/date-type.js +1 -1
- package/esm2015/lib/components/ndf-datepicker/constants/formats.js +1 -1
- package/esm2015/lib/components/ndf-datepicker/constants/hijri-dates-names.js +1 -1
- package/esm2015/lib/components/ndf-datepicker/constants/index.js +1 -1
- package/esm2015/lib/components/ndf-datepicker/containers/datepicker-container.js +1 -1
- package/esm2015/lib/components/ndf-datepicker/containers/index.js +1 -1
- package/esm2015/lib/components/ndf-datepicker/containers/ndf-gregorian-datepicker.component.js +1 -1
- package/esm2015/lib/components/ndf-datepicker/containers/ndf-hijri-datepicker.component.js +1 -1
- package/esm2015/lib/components/ndf-datepicker/index.js +1 -1
- package/esm2015/lib/components/ndf-datepicker/models/data-types.js +1 -1
- package/esm2015/lib/components/ndf-datepicker/models/index.js +1 -1
- package/esm2015/lib/components/ndf-datepicker/models/value-object.js +1 -1
- package/esm2015/lib/components/ndf-datepicker/ndf-datepicker.component.js +2 -2
- package/esm2015/lib/components/ndf-datepicker/ndf-datepicker.module.js +1 -1
- package/esm2015/lib/components/ndf-datepicker/services/calendar.service.js +1 -1
- package/esm2015/lib/components/ndf-datepicker/services/index.js +1 -1
- package/esm2015/lib/components/ndf-datepicker/services/localize-state.service.js +1 -1
- package/esm2015/lib/components/ndf-filters/base/base-aggregation-field.component.js +1 -1
- package/esm2015/lib/components/ndf-filters/base/base-checkbox-radio.component.js +1 -1
- package/esm2015/lib/components/ndf-filters/base/base-custom-field.component.js +1 -1
- package/esm2015/lib/components/ndf-filters/base/base-predicate-field.component.js +1 -1
- package/esm2015/lib/components/ndf-filters/base/base-value-accessor.component.js +1 -1
- package/esm2015/lib/components/ndf-filters/base/index.js +1 -1
- package/esm2015/lib/components/ndf-filters/components/__parts/field-header.component.js +1 -1
- package/esm2015/lib/components/ndf-filters/components/__parts/filter-autocomplete-input/filter-autocomplete-input.component.js +1 -1
- package/esm2015/lib/components/ndf-filters/components/__parts/filter-autocomplete-input/filter-autocomplete.service.js +1 -1
- package/esm2015/lib/components/ndf-filters/components/__parts/filter-collapse-control/filter-collapse-control.component.js +1 -1
- package/esm2015/lib/components/ndf-filters/components/__parts/filter-date-range/filter-date-range.component.js +1 -1
- package/esm2015/lib/components/ndf-filters/components/__parts/filter-empty-message.component.js +1 -1
- package/esm2015/lib/components/ndf-filters/components/__parts/filter-option-text/filter-option-text.component.js +2 -2
- package/esm2015/lib/components/ndf-filters/components/__parts/filter-options-sort/filter-options-sort.component.js +2 -2
- package/esm2015/lib/components/ndf-filters/components/__parts/filter-search-input/filter-search-input.component.js +1 -1
- package/esm2015/lib/components/ndf-filters/components/__parts/html-dialog/html-dialog.component.js +1 -1
- package/esm2015/lib/components/ndf-filters/components/__parts/index.js +1 -1
- package/esm2015/lib/components/ndf-filters/components/aggregation-autocomplete/aggregation-autocomplete.component.js +1 -1
- package/esm2015/lib/components/ndf-filters/components/aggregation-checkbox/aggregation-checkbox.component.js +1 -1
- package/esm2015/lib/components/ndf-filters/components/aggregation-custom/aggregation-custom.component.js +1 -1
- package/esm2015/lib/components/ndf-filters/components/aggregation-date-list/aggregation-date-list.component.js +1 -1
- package/esm2015/lib/components/ndf-filters/components/aggregation-radio/aggregation-radio.component.js +1 -1
- package/esm2015/lib/components/ndf-filters/components/aggregation-select/aggregation-select.component.js +1 -1
- package/esm2015/lib/components/ndf-filters/components/aggregation-switch/aggregation-switch.component.js +2 -2
- package/esm2015/lib/components/ndf-filters/components/index.js +1 -1
- package/esm2015/lib/components/ndf-filters/components/predicate-date-input/predicate-date-input.component.js +1 -1
- package/esm2015/lib/components/ndf-filters/components/predicate-text-input/predicate-text-input.component.js +2 -2
- package/esm2015/lib/components/ndf-filters/constants/common.js +1 -1
- package/esm2015/lib/components/ndf-filters/constants/field.js +1 -1
- package/esm2015/lib/components/ndf-filters/constants/index.js +1 -1
- package/esm2015/lib/components/ndf-filters/constants/operators.js +1 -1
- package/esm2015/lib/components/ndf-filters/constants/sort.js +1 -1
- package/esm2015/lib/components/ndf-filters/constants/type.js +1 -1
- package/esm2015/lib/components/ndf-filters/containers/aggregation-field/aggregation-field.component.js +1 -1
- package/esm2015/lib/components/ndf-filters/containers/base-field.js +1 -1
- package/esm2015/lib/components/ndf-filters/containers/custom-field/custom-field.component.js +1 -1
- package/esm2015/lib/components/ndf-filters/containers/filters-panel/base-filters-panel.js +1 -1
- package/esm2015/lib/components/ndf-filters/containers/filters-panel/filters-panel.component.js +1 -1
- package/esm2015/lib/components/ndf-filters/containers/index.js +1 -1
- package/esm2015/lib/components/ndf-filters/containers/predicate-field/predicate-field.component.js +1 -1
- package/esm2015/lib/components/ndf-filters/custom-components/active-user-switch/active-user-switch.component.js +2 -2
- package/esm2015/lib/components/ndf-filters/custom-components/active-user-switch/active-user.service.js +1 -1
- package/esm2015/lib/components/ndf-filters/custom-components/active-user-switch/user-types.js +1 -1
- package/esm2015/lib/components/ndf-filters/custom-components/aggregation-group/aggregation-group.component.js +1 -1
- package/esm2015/lib/components/ndf-filters/custom-components/aggregation-group/map-aggregation-config.js +1 -1
- package/esm2015/lib/components/ndf-filters/custom-components/index.js +1 -1
- package/esm2015/lib/components/ndf-filters/directives/autocomplete-template.directive.js +1 -1
- package/esm2015/lib/components/ndf-filters/directives/checkbox-template.directive.js +1 -1
- package/esm2015/lib/components/ndf-filters/directives/custom-template.directive.js +1 -1
- package/esm2015/lib/components/ndf-filters/directives/date-template.directive.js +1 -1
- package/esm2015/lib/components/ndf-filters/directives/dropdown-label-template.directive.js +1 -1
- package/esm2015/lib/components/ndf-filters/directives/dropdown-template.directive.js +1 -1
- package/esm2015/lib/components/ndf-filters/directives/index.js +1 -1
- package/esm2015/lib/components/ndf-filters/directives/radio-template.directive.js +1 -1
- package/esm2015/lib/components/ndf-filters/directives/switch-template.directive.js +1 -1
- package/esm2015/lib/components/ndf-filters/index.js +1 -1
- package/esm2015/lib/components/ndf-filters/models/aggregation-field-config.js +1 -1
- package/esm2015/lib/components/ndf-filters/models/aggregation-response.model.js +1 -1
- package/esm2015/lib/components/ndf-filters/models/base-field-config.js +1 -1
- package/esm2015/lib/components/ndf-filters/models/common.js +1 -1
- package/esm2015/lib/components/ndf-filters/models/custom-field-config.js +1 -1
- package/esm2015/lib/components/ndf-filters/models/field-config.model.js +1 -1
- package/esm2015/lib/components/ndf-filters/models/field-options/autocomplete-options.js +1 -1
- package/esm2015/lib/components/ndf-filters/models/field-options/checkbox-options.js +1 -1
- package/esm2015/lib/components/ndf-filters/models/field-options/common-utils.js +1 -1
- package/esm2015/lib/components/ndf-filters/models/field-options/custom-fields-options.js +1 -1
- package/esm2015/lib/components/ndf-filters/models/field-options/custom-options.js +1 -1
- package/esm2015/lib/components/ndf-filters/models/field-options/date-list-options.js +1 -1
- package/esm2015/lib/components/ndf-filters/models/field-options/date-options.js +1 -1
- package/esm2015/lib/components/ndf-filters/models/field-options/dropdown-options.js +1 -1
- package/esm2015/lib/components/ndf-filters/models/field-options/index.js +1 -1
- package/esm2015/lib/components/ndf-filters/models/field-options/input-options.js +1 -1
- package/esm2015/lib/components/ndf-filters/models/field-options/radio-options.js +1 -1
- package/esm2015/lib/components/ndf-filters/models/field-options/switch-options.js +1 -1
- package/esm2015/lib/components/ndf-filters/models/filter-option.model.js +1 -1
- package/esm2015/lib/components/ndf-filters/models/form-query-request.js +1 -1
- package/esm2015/lib/components/ndf-filters/models/index.js +1 -1
- package/esm2015/lib/components/ndf-filters/models/operator-value-object.js +1 -1
- package/esm2015/lib/components/ndf-filters/models/predicate-field-config.js +1 -1
- package/esm2015/lib/components/ndf-filters/models/types-helper.js +1 -1
- package/esm2015/lib/components/ndf-filters/models/value-object.model.js +1 -1
- package/esm2015/lib/components/ndf-filters/ndf-filters-panel.module.js +1 -1
- package/esm2015/lib/components/ndf-filters/pipes/autocomplete-filter.pipe.js +1 -1
- package/esm2015/lib/components/ndf-filters/pipes/check-condition.pipe.js +1 -1
- package/esm2015/lib/components/ndf-filters/pipes/filter.pipe.js +1 -1
- package/esm2015/lib/components/ndf-filters/pipes/hash-translate.pipe.js +1 -1
- package/esm2015/lib/components/ndf-filters/pipes/index.js +1 -1
- package/esm2015/lib/components/ndf-filters/pipes/localized-label.pipe.js +1 -1
- package/esm2015/lib/components/ndf-filters/pipes/roles-filters.pipe.js +1 -1
- package/esm2015/lib/components/ndf-filters/pipes/sanitizer.pipe.js +1 -1
- package/esm2015/lib/components/ndf-filters/pipes/sort.pipe.js +1 -1
- package/esm2015/lib/components/ndf-filters/pipes/tooltip.pipe.js +1 -1
- package/esm2015/lib/components/ndf-filters/public-api.js +1 -1
- package/esm2015/lib/components/ndf-filters/services/aggregation-field.service.js +1 -1
- package/esm2015/lib/components/ndf-filters/services/dynamic-component-loader.service.js +1 -1
- package/esm2015/lib/components/ndf-filters/services/filters-mapper.service.js +1 -1
- package/esm2015/lib/components/ndf-filters/services/filters-query.service.js +1 -1
- package/esm2015/lib/components/ndf-filters/services/index.js +1 -1
- package/esm2015/lib/components/ndf-filters/utility/index.js +1 -1
- package/esm2015/lib/components/ndf-filters/utility/nxql-query.js +1 -1
- package/esm2015/lib/components/ndf-filters/utility/nxql.js +1 -1
- package/esm2015/lib/components/ndf-filters/utility/object.js +1 -1
- package/esm2015/lib/components/ndf-panel/component/ndf-panel.component.js +1 -1
- package/esm2015/lib/components/ndf-panel/index.js +1 -1
- package/esm2015/lib/components/ndf-panel/ndf-panel.module.js +1 -1
- package/esm2015/lib/components/ndf-scanner/index.js +1 -1
- package/esm2015/lib/components/ndf-scanner/ndf-scanner.component.js +2 -2
- package/esm2015/lib/components/ndf-scanner/ndf-scanner.module.js +1 -1
- package/esm2015/lib/components/ndf-signatures/emdha/dialogs/auth/emdha-auth.dialog.js +116 -0
- package/esm2015/lib/components/ndf-signatures/emdha/dialogs/index.js +2 -0
- package/esm2015/lib/components/ndf-signatures/emdha/index.js +3 -0
- package/esm2015/lib/components/ndf-signatures/emdha/services/emdha.service.js +133 -0
- package/esm2015/lib/components/ndf-signatures/emdha/services/index.js +2 -0
- package/esm2015/lib/components/ndf-signatures/index.js +5 -0
- package/esm2015/lib/components/ndf-signatures/ndf-signature-panel/ndf-signature-panel.component.js +132 -0
- package/esm2015/lib/components/ndf-signatures/ndf-signatures.module.js +68 -0
- package/esm2015/lib/components/ndf-signatures/services/index.js +2 -0
- package/esm2015/lib/components/ndf-signatures/services/signatures.service.js +307 -0
- package/esm2015/lib/components/ndf-tabs/component/ndf-tabs.component.js +1 -1
- package/esm2015/lib/components/ndf-tabs/index.js +1 -1
- package/esm2015/lib/components/ndf-tabs/ndf-tabs.module.js +1 -1
- package/esm2015/lib/components/ndf-tabs/tab.type.js +1 -1
- package/esm2015/lib/components/ndf-uploader/components/bottom-sheet/ndf-uploader-bottom-sheet.component.js +2 -2
- package/esm2015/lib/components/ndf-uploader/components/index.js +1 -1
- package/esm2015/lib/components/ndf-uploader/config/index.js +1 -1
- package/esm2015/lib/components/ndf-uploader/config/uploader.config.js +1 -1
- package/esm2015/lib/components/ndf-uploader/constant/file-content.js +1 -1
- package/esm2015/lib/components/ndf-uploader/constant/index.js +1 -1
- package/esm2015/lib/components/ndf-uploader/helpers/index.js +1 -1
- package/esm2015/lib/components/ndf-uploader/helpers/uploader.helper.js +1 -1
- package/esm2015/lib/components/ndf-uploader/index.js +1 -1
- package/esm2015/lib/components/ndf-uploader/models/batch.model.js +1 -1
- package/esm2015/lib/components/ndf-uploader/models/index.js +1 -1
- package/esm2015/lib/components/ndf-uploader/models/ndf-file.model.js +1 -1
- package/esm2015/lib/components/ndf-uploader/models/provider.model.js +1 -1
- package/esm2015/lib/components/ndf-uploader/ndf-uploader-bottom-sheet.service.js +1 -1
- package/esm2015/lib/components/ndf-uploader/ndf-uploader.module.js +1 -1
- package/esm2015/lib/components/ndf-uploader/ndf-uploader.service.js +1 -1
- package/esm2015/lib/components/ndf-uploader/providers/index.js +1 -1
- package/esm2015/lib/components/ndf-uploader/providers/nuxeo-provider.service.js +1 -1
- package/esm2015/lib/components/ndf-uploader/providers/s3-provider.service.js +1 -1
- package/esm2015/lib/components/no-data-found/index.js +1 -1
- package/esm2015/lib/components/no-data-found/no-data-found.component.js +1 -1
- package/esm2015/lib/components/no-data-found/no-data.module.js +1 -1
- package/esm2015/lib/components/notifications/components/base-list-notfications.component.js +1 -1
- package/esm2015/lib/components/notifications/components/base-notifications.component.js +1 -1
- package/esm2015/lib/components/notifications/components/index.js +1 -1
- package/esm2015/lib/components/notifications/components/notification-item/get-icon.pipe.js +1 -1
- package/esm2015/lib/components/notifications/components/notification-item/notification-item.component.js +2 -2
- package/esm2015/lib/components/notifications/components/notification-sortby-toggle/notification-sortby-toggle.component.js +2 -2
- package/esm2015/lib/components/notifications/components/notification-source-select/notification-source-select.component.js +2 -2
- package/esm2015/lib/components/notifications/components/notification-status-toggle/notification-status-toggle.component.js +2 -2
- package/esm2015/lib/components/notifications/components/notifications-button/notifications-button.component.js +2 -2
- package/esm2015/lib/components/notifications/components/notifications-date-select/notifications-date-select.component.js +2 -2
- package/esm2015/lib/components/notifications/components/notifications-list/notifications-list.component.js +2 -2
- package/esm2015/lib/components/notifications/components/notifications-list/options.js +1 -1
- package/esm2015/lib/components/notifications/components/notifications-list-actions/notifications-list-actions.component.js +2 -2
- package/esm2015/lib/components/notifications/components/notifications-settings/check-if-subscribed.pipe.js +1 -1
- package/esm2015/lib/components/notifications/components/notifications-settings/notifications-settings.adapter.js +1 -1
- package/esm2015/lib/components/notifications/components/notifications-settings/notifications-settings.component.js +2 -2
- package/esm2015/lib/components/notifications/components/notifications-sidebar/notifications-sidebar-content.js +1 -1
- package/esm2015/lib/components/notifications/components/notifications-sidebar/notifications-sidebar.component.js +1 -1
- package/esm2015/lib/components/notifications/constants/date.js +1 -1
- package/esm2015/lib/components/notifications/constants/index.js +1 -1
- package/esm2015/lib/components/notifications/constants/pagination.js +1 -1
- package/esm2015/lib/components/notifications/constants/panel.js +1 -1
- package/esm2015/lib/components/notifications/constants/status.js +1 -1
- package/esm2015/lib/components/notifications/containers/index.js +1 -1
- package/esm2015/lib/components/notifications/containers/notifications-list-container/notifications-list-container.component.js +2 -2
- package/esm2015/lib/components/notifications/containers/notifications-list-container/options.js +1 -1
- package/esm2015/lib/components/notifications/containers/notifications-settings-container/notifications-settings-container.component.js +1 -1
- package/esm2015/lib/components/notifications/directives/button.directive.js +1 -1
- package/esm2015/lib/components/notifications/directives/index.js +1 -1
- package/esm2015/lib/components/notifications/directives/notification.directive.js +1 -1
- package/esm2015/lib/components/notifications/index.js +1 -1
- package/esm2015/lib/components/notifications/models/common.js +1 -1
- package/esm2015/lib/components/notifications/models/index.js +1 -1
- package/esm2015/lib/components/notifications/models/notification-definition.model.js +1 -1
- package/esm2015/lib/components/notifications/models/notification-message.mode.js +1 -1
- package/esm2015/lib/components/notifications/models/notification-options.js +1 -1
- package/esm2015/lib/components/notifications/models/notification-setting.presenter.js +1 -1
- package/esm2015/lib/components/notifications/models/notification-subscription.model.js +1 -1
- package/esm2015/lib/components/notifications/models/notification.model.js +1 -1
- package/esm2015/lib/components/notifications/models/notifications-list-options.js +1 -1
- package/esm2015/lib/components/notifications/models/paging-response.model.js +1 -1
- package/esm2015/lib/components/notifications/models/params.model.js +1 -1
- package/esm2015/lib/components/notifications/models/vocabularies.js +1 -1
- package/esm2015/lib/components/notifications/notifications.module.js +1 -1
- package/esm2015/lib/components/notifications/public-api.js +1 -1
- package/esm2015/lib/components/notifications/services/index.js +1 -1
- package/esm2015/lib/components/notifications/services/listener.service.js +1 -1
- package/esm2015/lib/components/notifications/services/notifications.service.js +1 -1
- package/esm2015/lib/components/notifications/services/params.service.js +1 -1
- package/esm2015/lib/components/notifications/services/response.service.js +1 -1
- package/esm2015/lib/components/notifications/services/socket.service.js +1 -1
- package/esm2015/lib/components/notifications/utilities/index.js +1 -1
- package/esm2015/lib/components/notifications/utilities/response.adapter.js +1 -1
- package/esm2015/lib/components/pagination/pagination/pagination.component.js +1 -1
- package/esm2015/lib/components/pagination/pagination.module.js +1 -1
- package/esm2015/lib/components/pdf-tron/directives/index.js +1 -1
- package/esm2015/lib/components/pdf-tron/directives/ndf-tron-extract-text.directive.js +1 -1
- package/esm2015/lib/components/pdf-tron/models/index.js +1 -1
- package/esm2015/lib/components/pdf-tron/models/tron.model.js +1 -1
- package/esm2015/lib/components/pdf-tron/pdf-tron.module.js +1 -1
- package/esm2015/lib/components/pdf-tron/pdftron/pdftron.component.js +1 -1
- package/esm2015/lib/components/pdf-tron/pdftron/pdftron.service.js +1 -1
- package/esm2015/lib/components/pdf-tron/pdftron/silent-pdftron.service.js +1 -1
- package/esm2015/lib/components/permissions/add-permissions-dialog/add-permissions-dialog.component.js +2 -2
- package/esm2015/lib/components/permissions/permission.service.js +1 -1
- package/esm2015/lib/components/permissions/permissions/permissions.component.js +1 -1
- package/esm2015/lib/components/permissions/permissions-template/permissions-template.component.js +1 -1
- package/esm2015/lib/components/permissions/permissions.module.js +1 -1
- package/esm2015/lib/components/reports/chart-panel.js +1 -1
- package/esm2015/lib/components/reports/charts/chart.const.js +1 -1
- package/esm2015/lib/components/reports/charts/chart.token.js +1 -1
- package/esm2015/lib/components/reports/charts/charts.module.js +1 -1
- package/esm2015/lib/components/reports/charts/components/base-chart.component.js +1 -1
- package/esm2015/lib/components/reports/charts/components/chart.component.js +1 -1
- package/esm2015/lib/components/reports/charts/components/data-chart.component.js +1 -1
- package/esm2015/lib/components/reports/charts/components/index.js +1 -1
- package/esm2015/lib/components/reports/charts/defaults/bar.js +1 -1
- package/esm2015/lib/components/reports/charts/defaults/doughnut.js +1 -1
- package/esm2015/lib/components/reports/charts/defaults/index.js +1 -1
- package/esm2015/lib/components/reports/charts/defaults/line.js +1 -1
- package/esm2015/lib/components/reports/charts/defaults/pie.js +1 -1
- package/esm2015/lib/components/reports/charts/index.js +1 -1
- package/esm2015/lib/components/reports/charts/models/index.js +1 -1
- package/esm2015/lib/components/reports/charts/models/options.js +1 -1
- package/esm2015/lib/components/reports/charts/models/plugins-options.js +1 -1
- package/esm2015/lib/components/reports/charts/models/response.js +1 -1
- package/esm2015/lib/components/reports/charts/models/statistic-request-config.js +1 -1
- package/esm2015/lib/components/reports/charts/plugins/data-labels.js +1 -1
- package/esm2015/lib/components/reports/charts/plugins/doughnut-center-text.js +1 -1
- package/esm2015/lib/components/reports/charts/plugins/doughnut-empty-state.js +1 -1
- package/esm2015/lib/components/reports/charts/plugins/index.js +1 -1
- package/esm2015/lib/components/reports/charts/plugins/legend-margin.js +1 -1
- package/esm2015/lib/components/reports/charts/plugins/scrollable-legends.js +1 -1
- package/esm2015/lib/components/reports/charts/public-api.js +1 -1
- package/esm2015/lib/components/reports/charts/services/index.js +1 -1
- package/esm2015/lib/components/reports/charts/services/statistic.service.js +1 -1
- package/esm2015/lib/components/reports/charts/utility/colors.js +1 -1
- package/esm2015/lib/components/reports/charts/utility/common.js +1 -1
- package/esm2015/lib/components/reports/charts/utility/css.js +1 -1
- package/esm2015/lib/components/reports/charts/utility/index.js +1 -1
- package/esm2015/lib/components/reports/index.js +1 -1
- package/esm2015/lib/components/reports/ndf-reports/base/base-chart.js +1 -1
- package/esm2015/lib/components/reports/ndf-reports/base/base-custom-report.js +1 -1
- package/esm2015/lib/components/reports/ndf-reports/base/base-graph.report.js +1 -1
- package/esm2015/lib/components/reports/ndf-reports/base/base-report.js +1 -1
- package/esm2015/lib/components/reports/ndf-reports/base/index.js +1 -1
- package/esm2015/lib/components/reports/ndf-reports/charts-components/custom-chart/custom-chart.component.js +1 -1
- package/esm2015/lib/components/reports/ndf-reports/charts-components/digit-chart/digit-chart.component.js +1 -1
- package/esm2015/lib/components/reports/ndf-reports/charts-components/graph-chart/graph-chart.component.js +1 -1
- package/esm2015/lib/components/reports/ndf-reports/charts-components/graph-chart/graph-chart.service.js +1 -1
- package/esm2015/lib/components/reports/ndf-reports/charts-components/index.js +1 -1
- package/esm2015/lib/components/reports/ndf-reports/components/_parts/chart-type-selector/chart-type-selector.component.js +2 -2
- package/esm2015/lib/components/reports/ndf-reports/components/_parts/custom-chart-dialog/custom-chart-dialog.component.js +2 -2
- package/esm2015/lib/components/reports/ndf-reports/components/_parts/graph-dialog/graph-dialog.component.js +2 -2
- package/esm2015/lib/components/reports/ndf-reports/components/_parts/index.js +1 -1
- package/esm2015/lib/components/reports/ndf-reports/components/_parts/report-actions/report-actions.component.js +2 -2
- package/esm2015/lib/components/reports/ndf-reports/components/_parts/time-group-selector/time-group-selector.component.js +1 -1
- package/esm2015/lib/components/reports/ndf-reports/components/_parts/timeline-dialog/timeline-dialog.component.js +2 -2
- package/esm2015/lib/components/reports/ndf-reports/components/custom-report/custom-report.component.js +2 -2
- package/esm2015/lib/components/reports/ndf-reports/components/digit-report/digit-report.component.js +1 -1
- package/esm2015/lib/components/reports/ndf-reports/components/dynamic-timeline-report/dynamic-timeline-report.component.js +2 -2
- package/esm2015/lib/components/reports/ndf-reports/components/graph-report/graph-report.component.js +2 -2
- package/esm2015/lib/components/reports/ndf-reports/components/index.js +1 -1
- package/esm2015/lib/components/reports/ndf-reports/constants/charts-types.js +1 -1
- package/esm2015/lib/components/reports/ndf-reports/constants/index.js +1 -1
- package/esm2015/lib/components/reports/ndf-reports/constants/time-group.js +1 -1
- package/esm2015/lib/components/reports/ndf-reports/containers/index.js +1 -1
- package/esm2015/lib/components/reports/ndf-reports/containers/ndf-report/ndf-report.component.js +1 -1
- package/esm2015/lib/components/reports/ndf-reports/containers/ndf-reports/ndf-reports.component.js +1 -1
- package/esm2015/lib/components/reports/ndf-reports/directives/index.js +1 -1
- package/esm2015/lib/components/reports/ndf-reports/directives/scrollable-div.directive.js +1 -1
- package/esm2015/lib/components/reports/ndf-reports/index.js +1 -1
- package/esm2015/lib/components/reports/ndf-reports/models/base.js +1 -1
- package/esm2015/lib/components/reports/ndf-reports/models/common.js +1 -1
- package/esm2015/lib/components/reports/ndf-reports/models/custom-definition.js +1 -1
- package/esm2015/lib/components/reports/ndf-reports/models/details.js +1 -1
- package/esm2015/lib/components/reports/ndf-reports/models/dialog-data.js +1 -1
- package/esm2015/lib/components/reports/ndf-reports/models/digit.js +1 -1
- package/esm2015/lib/components/reports/ndf-reports/models/dynamic-line.js +1 -1
- package/esm2015/lib/components/reports/ndf-reports/models/graph-definition.js +1 -1
- package/esm2015/lib/components/reports/ndf-reports/models/index.js +1 -1
- package/esm2015/lib/components/reports/ndf-reports/models/ndf-reports.config.js +1 -1
- package/esm2015/lib/components/reports/ndf-reports/models/report-config.js +1 -1
- package/esm2015/lib/components/reports/ndf-reports/models/report-data-source.js +1 -1
- package/esm2015/lib/components/reports/ndf-reports/models/report-response.model.js +1 -1
- package/esm2015/lib/components/reports/ndf-reports/models/request.js +1 -1
- package/esm2015/lib/components/reports/ndf-reports/ndf-reports.module.js +1 -1
- package/esm2015/lib/components/reports/ndf-reports/options/doughnut.js +1 -1
- package/esm2015/lib/components/reports/ndf-reports/options/horizontal-bar.js +1 -1
- package/esm2015/lib/components/reports/ndf-reports/options/index.js +1 -1
- package/esm2015/lib/components/reports/ndf-reports/options/line.js +1 -1
- package/esm2015/lib/components/reports/ndf-reports/options/pie.js +1 -1
- package/esm2015/lib/components/reports/ndf-reports/options/vertical-bar.js +1 -1
- package/esm2015/lib/components/reports/ndf-reports/public-api.js +1 -1
- package/esm2015/lib/components/reports/ndf-reports/services/base-chart-builder.service.js +1 -1
- package/esm2015/lib/components/reports/ndf-reports/services/chart-callbacks-register.services.js +1 -1
- package/esm2015/lib/components/reports/ndf-reports/services/chart-data-transformers.service.js +1 -1
- package/esm2015/lib/components/reports/ndf-reports/services/chart-manager.service.js +1 -1
- package/esm2015/lib/components/reports/ndf-reports/services/chart-plugins-registry.service.js +1 -1
- package/esm2015/lib/components/reports/ndf-reports/services/chart-theme.service.js +1 -1
- package/esm2015/lib/components/reports/ndf-reports/services/custom-reports-registry.service.js +1 -1
- package/esm2015/lib/components/reports/ndf-reports/services/digit-chart.service.js +1 -1
- package/esm2015/lib/components/reports/ndf-reports/services/dynamic-timeline-report.service.js +1 -1
- package/esm2015/lib/components/reports/ndf-reports/services/index.js +1 -1
- package/esm2015/lib/components/reports/ndf-reports/services/ndf-reports.service.js +1 -1
- package/esm2015/lib/components/reports/ndf-reports/services/report-config-mapper.service.js +1 -1
- package/esm2015/lib/components/reports/ndf-reports/services/report-configuration.service.js +1 -1
- package/esm2015/lib/components/reports/ndf-reports/services/report-transform.service.js +1 -1
- package/esm2015/lib/components/reports/ndf-reports/services/reports-data-transformers.service.js +1 -1
- package/esm2015/lib/components/reports/ndf-reports/services/reports-dialog.service.js +1 -1
- package/esm2015/lib/components/reports/ndf-reports/services/reports-state.service.js +1 -1
- package/esm2015/lib/components/reports/ndf-reports/utilities/dataset-colors.js +1 -1
- package/esm2015/lib/components/reports/ndf-reports/utilities/index.js +1 -1
- package/esm2015/lib/components/reports/ndf-reports/utilities/reports-table.mapper.js +1 -1
- package/esm2015/lib/components/select/select/select.component.js +1 -1
- package/esm2015/lib/components/select/select.module.js +1 -1
- package/esm2015/lib/components/select-users-by-department/select-users-by-department.module.js +1 -1
- package/esm2015/lib/components/select-users-by-department/select-users-by-departments/department-management.service.js +1 -1
- package/esm2015/lib/components/select-users-by-department/select-users-by-departments/select-users-by-departments.component.js +1 -1
- package/esm2015/lib/components/skeleton/index.js +1 -1
- package/esm2015/lib/components/skeleton/skeleton.component.js +1 -1
- package/esm2015/lib/components/skeleton/skeleton.module.js +1 -1
- package/esm2015/lib/components/skeleton/table-skeleton.component.js +1 -1
- package/esm2015/lib/components/spell-checker-field/spell-checker-field.module.js +1 -1
- package/esm2015/lib/components/spell-checker-field/spell-checker-text-field/spell-checker-text-field.component.js +1 -1
- package/esm2015/lib/components/tables/dynamic-table/directives/empty-state.directive.js +1 -1
- package/esm2015/lib/components/tables/dynamic-table/dynamic-table/dynamic-table.component.js +1 -1
- package/esm2015/lib/components/tables/dynamic-table/dynamic-table.module.js +1 -1
- package/esm2015/lib/components/tables/dynamic-table/index.js +1 -1
- package/esm2015/lib/components/tables/dynamic-table/public-api.js +1 -1
- package/esm2015/lib/components/tables/dynamic-table/services/dynamic-table.service.js +1 -1
- package/esm2015/lib/components/tables/index.js +1 -1
- package/esm2015/lib/components/tables/ndf-table/components/index.js +1 -1
- package/esm2015/lib/components/tables/ndf-table/components/mode-toggler/mode-toggler.component.js +1 -1
- package/esm2015/lib/components/tables/ndf-table/components/sorting-list/sorting-list.component.js +2 -2
- package/esm2015/lib/components/tables/ndf-table/components/table-columns-toggler/table-columns-toggler.component.js +2 -2
- package/esm2015/lib/components/tables/ndf-table/components/table-export/table-export.component.js +2 -2
- package/esm2015/lib/components/tables/ndf-table/components/text-search/text-search.component.js +1 -1
- package/esm2015/lib/components/tables/ndf-table/constants/index.js +1 -1
- package/esm2015/lib/components/tables/ndf-table/constants/sizes.js +1 -1
- package/esm2015/lib/components/tables/ndf-table/containers/index.js +1 -1
- package/esm2015/lib/components/tables/ndf-table/containers/ndf-table/ndf-table.component.js +1 -1
- package/esm2015/lib/components/tables/ndf-table/directives/actions.directive.js +1 -1
- package/esm2015/lib/components/tables/ndf-table/directives/filter-custom.directive.js +1 -1
- package/esm2015/lib/components/tables/ndf-table/directives/index.js +1 -1
- package/esm2015/lib/components/tables/ndf-table/directives/search.directive.js +1 -1
- package/esm2015/lib/components/tables/ndf-table/index.js +1 -1
- package/esm2015/lib/components/tables/ndf-table/models/index.js +1 -1
- package/esm2015/lib/components/tables/ndf-table/models/payload-types.js +1 -1
- package/esm2015/lib/components/tables/ndf-table/models/search.config.js +1 -1
- package/esm2015/lib/components/tables/ndf-table/models/table-column.js +1 -1
- package/esm2015/lib/components/tables/ndf-table/models/table-config.js +1 -1
- package/esm2015/lib/components/tables/ndf-table/models/table-mode.js +1 -1
- package/esm2015/lib/components/tables/ndf-table/models/table-options.js +1 -1
- package/esm2015/lib/components/tables/ndf-table/models/types.js +1 -1
- package/esm2015/lib/components/tables/ndf-table/ndf-table.module.js +1 -1
- package/esm2015/lib/components/tables/ndf-table/public-api.js +1 -1
- package/esm2015/lib/components/tables/ndf-table/services/index.js +1 -1
- package/esm2015/lib/components/tables/ndf-table/services/ndf-table-configuration.service.js +1 -1
- package/esm2015/lib/components/tables/ndf-table/services/ndf-table.service.js +1 -1
- package/esm2015/lib/components/tables/public-api.js +1 -1
- package/esm2015/lib/components/tables/table/dynamic-column/dynamic-column.component.js +1 -1
- package/esm2015/lib/components/tables/table/dynamic-component.js +1 -1
- package/esm2015/lib/components/tables/table/index.js +1 -1
- package/esm2015/lib/components/tables/table/page-sizes-list/page-sizes-list.component.js +1 -1
- package/esm2015/lib/components/tables/table/public-api.js +1 -1
- package/esm2015/lib/components/tables/table/table/table.component.js +2 -2
- package/esm2015/lib/components/tables/table/table.module.js +1 -1
- package/esm2015/lib/components/toasts/components/notification-toast/notification-toast.component.js +1 -1
- package/esm2015/lib/components/toasts/index.js +1 -1
- package/esm2015/lib/components/toasts/public-api.js +1 -1
- package/esm2015/lib/components/toasts/toasts.module.js +1 -1
- package/esm2015/lib/components/user/user/user.component.js +1 -1
- package/esm2015/lib/components/user/user.module.js +1 -1
- package/esm2015/lib/components/users-card/users-card.component.js +2 -2
- package/esm2015/lib/components/users-card/users-card.module.js +1 -1
- package/esm2015/lib/components/viewer-log/components/viewer-log/viewer-log.component.js +1 -1
- package/esm2015/lib/components/viewer-log/viewer-log.module.js +1 -1
- package/esm2015/lib/components/vocabulary/interfaces/op-type.interface.js +1 -1
- package/esm2015/lib/components/vocabulary/services/vocabulary-api.service.js +1 -1
- package/esm2015/lib/components/vocabulary/translated-vocabulary-select/translated-vocabulary-select.component.js +1 -1
- package/esm2015/lib/components/vocabulary/vocabulary/vocabulary.component.js +1 -1
- package/esm2015/lib/components/vocabulary/vocabulary.module.js +1 -1
- package/esm2015/lib/configuration/app-config.service.js +1 -1
- package/esm2015/lib/configuration/helpers/app-initializer.js +1 -1
- package/esm2015/lib/core/adapters/adapter.service.js +1 -1
- package/esm2015/lib/core/core.module.js +1 -1
- package/esm2015/lib/core/enums/language.enum.js +1 -1
- package/esm2015/lib/core/env/env-manager.js +1 -1
- package/esm2015/lib/core/env/index.js +1 -1
- package/esm2015/lib/core/models/api-response.model.js +1 -1
- package/esm2015/lib/core/models/automation-response.model.js +1 -1
- package/esm2015/lib/core/models/base-response.models.js +1 -1
- package/esm2015/lib/core/models/component.model.js +1 -1
- package/esm2015/lib/core/models/index.js +1 -1
- package/esm2015/lib/core/services/callApi/call-api.service.js +4 -1
- package/esm2015/lib/core/services/column-renderer/column-renderer-registry.service.js +1 -1
- package/esm2015/lib/core/services/column-renderer/index.js +1 -1
- package/esm2015/lib/core/services/extension/action.extensions.js +1 -1
- package/esm2015/lib/core/services/extension/component-register.service.js +1 -1
- package/esm2015/lib/core/services/extension/extenion-utils.js +1 -1
- package/esm2015/lib/core/services/extension/extension-element.js +1 -1
- package/esm2015/lib/core/services/extension/extension-loader.service.js +1 -1
- package/esm2015/lib/core/services/extension/extension.service.js +1 -1
- package/esm2015/lib/core/services/index.js +1 -1
- package/esm2015/lib/core/services/initialization/initialization.service.js +1 -1
- package/esm2015/lib/core/services/localStorag/local-storag.service.js +1 -1
- package/esm2015/lib/core/services/ndf-transform.service.js +1 -1
- package/esm2015/lib/core/services/nuxeo/new-nuxeo-overide.js +1 -1
- package/esm2015/lib/core/services/nuxeo/nuxeo-override.js +1 -1
- package/esm2015/lib/core/services/nuxeo/nuxeo.service.js +1 -1
- package/esm2015/lib/core/services/roles/roles.service.js +1 -1
- package/esm2015/lib/core/services/translation/translate-loader.service.js +1 -1
- package/esm2015/lib/core/services/translation/translation.service.js +1 -1
- package/esm2015/lib/core/services/user/user-preferences.service.js +1 -1
- package/esm2015/lib/core/tokens/index.js +1 -1
- package/esm2015/lib/core/tokens/project.token.js +1 -1
- package/esm2015/lib/core/utilities/moment-date-adapter.js +1 -1
- package/esm2015/lib/core/utilities/utility.service.js +1 -1
- package/esm2015/lib/directive/app-has-role/app-has-role.directive.js +1 -1
- package/esm2015/lib/directive/clickOutSide/click-outside.directive.js +1 -1
- package/esm2015/lib/directive/directive.module.js +1 -1
- package/esm2015/lib/directive/drag-and-drop/drag-and-drop.directive.js +1 -1
- package/esm2015/lib/directive/permissions/evaluators.service.js +1 -1
- package/esm2015/lib/directive/permissions/permissions.directive.js +1 -1
- package/esm2015/lib/directive/rtl/set-dir-rtl.directive.js +1 -1
- package/esm2015/lib/directive/rtl/set-rtl.directive.js +1 -1
- package/esm2015/lib/nuxeo-development-framework.component.js +1 -1
- package/esm2015/lib/nuxeo-development-framework.module.js +1 -1
- package/esm2015/lib/nuxeo-development-framework.service.js +1 -1
- package/esm2015/lib/pipes/file-size.pipe.js +1 -1
- package/esm2015/lib/pipes/hijri-date.pipe.js +1 -1
- package/esm2015/lib/pipes/localized-date.pipe.js +1 -1
- package/esm2015/lib/pipes/multi-value.pipe.js +1 -1
- package/esm2015/lib/pipes/pipes.module.js +1 -1
- package/esm2015/lib/pipes/secure-html.pipe.js +1 -1
- package/esm2015/lib/pipes/secure.pipe.js +1 -1
- package/esm2015/lib/pipes/time-ago.pipe.js +1 -1
- package/esm2015/lib/shared/components/base/base-column.component.js +1 -1
- package/esm2015/lib/shared/components/base/base-dialog.component.js +1 -1
- package/esm2015/lib/shared/components/base/base-selector.component.js +1 -1
- package/esm2015/lib/shared/components/base/base.component.js +1 -1
- package/esm2015/lib/shared/components/base/destroy.subject.js +1 -1
- package/esm2015/lib/shared/components/base/index.js +1 -1
- package/esm2015/lib/shared/components/button/button.component.js +1 -1
- package/esm2015/lib/shared/components/general-notification-popup/general-notification-popup.component.js +2 -2
- package/esm2015/lib/shared/components/index.js +1 -1
- package/esm2015/lib/shared/components/item-list/item-list.component.js +2 -2
- package/esm2015/lib/shared/components/no-data/no-data.component.js +1 -1
- package/esm2015/lib/shared/components/nuxeo-dialog/confirmation/ndf-confirmation-dialog.component.js +1 -1
- package/esm2015/lib/shared/components/nuxeo-dialog/index.js +1 -1
- package/esm2015/lib/shared/components/nuxeo-dialog/models/confirm-options.model.js +1 -1
- package/esm2015/lib/shared/components/nuxeo-dialog/models/dialog-option.model.js +1 -1
- package/esm2015/lib/shared/components/nuxeo-dialog/nuxeo-dialog.module.js +1 -1
- package/esm2015/lib/shared/components/nuxeo-dialog/nuxeo.dialog.js +2 -2
- package/esm2015/lib/shared/components/nuxeo-dialog/services/nuxeo-dialog.service.js +1 -1
- package/esm2015/lib/shared/components/read-more/read-more.component.js +1 -1
- package/esm2015/lib/shared/components/search-autocomplete/search-autocomplete.component.js +1 -1
- package/esm2015/lib/shared/components/spinner/spinner.component.js +1 -1
- package/esm2015/lib/shared/components/user-card/user-card.component.js +1 -1
- package/esm2015/lib/shared/constants/editor-config-type.js +1 -1
- package/esm2015/lib/shared/constants/index.js +1 -1
- package/esm2015/lib/shared/directives/copy-to-clipboard.directive.js +1 -1
- package/esm2015/lib/shared/directives/element-height.directive.js +1 -1
- package/esm2015/lib/shared/directives/fluid-height.directive.js +1 -1
- package/esm2015/lib/shared/directives/index.js +1 -1
- package/esm2015/lib/shared/evaluator/evaluator.js +1 -1
- package/esm2015/lib/shared/evaluator/index.js +1 -1
- package/esm2015/lib/shared/evaluator/types.js +1 -1
- package/esm2015/lib/shared/index.js +1 -1
- package/esm2015/lib/shared/libraryShared.module.js +1 -1
- package/esm2015/lib/shared/models/index.js +1 -1
- package/esm2015/lib/shared/models/mapper/index.js +1 -1
- package/esm2015/lib/shared/models/mapper/nuxeo-mapper.js +1 -1
- package/esm2015/lib/shared/models/ndf-request.model.js +1 -1
- package/esm2015/lib/shared/models/nuxeo-response.model.js +1 -1
- package/esm2015/lib/shared/models/task.model.js +1 -1
- package/esm2015/lib/shared/models/type-helpers.js +1 -1
- package/esm2015/lib/shared/services/base/base-editor-config.service.js +1 -1
- package/esm2015/lib/shared/services/base/base.service.js +1 -1
- package/esm2015/lib/shared/services/base/cache-base.service.js +1 -1
- package/esm2015/lib/shared/services/base/config/default-ttl-config.js +1 -1
- package/esm2015/lib/shared/services/base/config/index.js +1 -1
- package/esm2015/lib/shared/services/base/constants/default-cache-options.js +1 -1
- package/esm2015/lib/shared/services/base/constants/index.js +1 -1
- package/esm2015/lib/shared/services/base/http-base.service.js +1 -1
- package/esm2015/lib/shared/services/base/index.js +1 -1
- package/esm2015/lib/shared/services/base/models/cache-info-model.js +1 -1
- package/esm2015/lib/shared/services/base/models/http-options.model.js +1 -1
- package/esm2015/lib/shared/services/base/models/index.js +1 -1
- package/esm2015/lib/shared/services/base/models/operation-options.model.js +1 -1
- package/esm2015/lib/shared/services/base/models/query-options.model.js +1 -1
- package/esm2015/lib/shared/services/base/models/request-options.model.js +1 -1
- package/esm2015/lib/shared/services/index.js +1 -1
- package/esm2015/lib/shared-services/apis-errors-messages.service.js +1 -1
- package/esm2015/lib/shared-services/dialog-mangment.service.js +1 -1
- package/esm2015/lib/shared-services/dynamic-form.service.js +1 -1
- package/esm2015/lib/shared-services/file-manager.adapter.js +1 -1
- package/esm2015/lib/shared-services/file-manager.service.js +1 -1
- package/esm2015/lib/shared-services/global-admin.service.js +1 -1
- package/esm2015/lib/shared-services/global-pdftron.service.js +1 -1
- package/esm2015/lib/shared-services/mainfolder.service.js +1 -1
- package/esm2015/lib/shared-services/publishing-document.service.js +1 -1
- package/esm2015/lib/shared-services/recently-viewed.service.js +1 -1
- package/esm2015/lib/shared-services/shared-docs.service.js +1 -1
- package/esm2015/lib/shared-services/shared-services.module.js +1 -1
- package/esm2015/lib/shared-services/upload-file.service.js +1 -1
- package/esm2015/lib/shared-services/upload-managment.service.js +1 -1
- package/esm2015/lib/shared-services/user.service.js +1 -1
- package/esm2015/nuxeo-development-framework.js +1 -1
- package/esm2015/public-api.js +2 -1
- package/fesm2015/nuxeo-development-framework.js +773 -69
- package/fesm2015/nuxeo-development-framework.js.map +1 -1
- package/lib/components/diagrams/components/custom-connection.component.d.ts +1 -1
- package/lib/components/dynamic-form/components/dynamic-form-select-users/dynamic-form-select-users.component.d.ts +0 -1
- package/lib/components/dynamic-form/components/form-wrappers/base-edit-form/base-edit-form.d.ts +1 -1
- package/lib/components/ndf-signatures/emdha/dialogs/auth/emdha-auth.dialog.d.ts +18 -0
- package/lib/components/ndf-signatures/emdha/dialogs/index.d.ts +1 -0
- package/lib/components/ndf-signatures/emdha/index.d.ts +2 -0
- package/lib/components/ndf-signatures/emdha/services/emdha.service.d.ts +31 -0
- package/lib/components/ndf-signatures/emdha/services/index.d.ts +1 -0
- package/lib/components/ndf-signatures/index.d.ts +4 -0
- package/lib/components/ndf-signatures/ndf-signature-panel/ndf-signature-panel.component.d.ts +37 -0
- package/lib/components/ndf-signatures/ndf-signatures.module.d.ts +17 -0
- package/lib/components/ndf-signatures/services/index.d.ts +1 -0
- package/lib/components/ndf-signatures/services/signatures.service.d.ts +53 -0
- package/lib/components/reports/charts/components/base-chart.component.d.ts +1 -1
- package/lib/components/reports/ndf-reports/base/base-chart.d.ts +1 -1
- package/lib/components/reports/ndf-reports/components/dynamic-timeline-report/dynamic-timeline-report.component.d.ts +17 -1
- package/lib/components/reports/ndf-reports/components/graph-report/graph-report.component.d.ts +1 -1
- package/lib/components/reports/ndf-reports/services/base-chart-builder.service.d.ts +14 -14
- package/lib/components/tables/ndf-table/components/table-export/table-export.component.d.ts +1 -1
- package/lib/core/services/callApi/call-api.service.d.ts +1 -0
- package/lib/shared/components/nuxeo-dialog/models/dialog-option.model.d.ts +1 -0
- package/package.json +1 -1
- package/public-api.d.ts +1 -0
package/esm2015/lib/components/file-manger/components/create-directory/create-directory.component.js
CHANGED
|
@@ -87,7 +87,7 @@ export class CreateDirectoryComponent extends BaseComponent {
|
|
|
87
87
|
}
|
|
88
88
|
}
|
|
89
89
|
CreateDirectoryComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: CreateDirectoryComponent, deps: [{ token: i1.FileManagerService }, { token: i2.CustomToastrService }, { token: i3.NuxeoDialogService }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
|
|
90
|
-
CreateDirectoryComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: CreateDirectoryComponent, selector: "app-create-directory", inputs: { visible: "visible", rtlEnabled: "rtlEnabled", selectedItem: "selectedItem" }, outputs: { visibleChange: "visibleChange", refresh: "refresh" }, 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\t<div>\r\n\t\t<form>\r\n\t\t\t<dx-form\r\n\t\t\t\tclass=\"form-wrapper\"\r\n\t\t\t\t#form\r\n\t\t\t\t[formData]=\"formData\"\r\n\t\t\t\t[disabled]=\"loading\"\r\n\t\t\t>\r\n\t\t\t\t<dxi-item dataField=\"title\" editorType=\"dxTextBox\">\r\n\t\t\t\t\t<dxo-label text=\"{{ 'CREATE.TITLE' | translate }}\"></dxo-label>\r\n\t\t\t\t\t<dxi-validation-rule\r\n\t\t\t\t\t\ttype=\"required\"\r\n\t\t\t\t\t\tmessage=\"Title is required\"\r\n\t\t\t\t\t></dxi-validation-rule>\r\n\t\t\t\t</dxi-item>\r\n\t\t\t\t<dxi-item name=\"description\" editorType=\"dxTextBox\">\r\n\t\t\t\t\t<dxo-label text=\"{{ 'CREATE.DESCRIPTION' | translate }}\"></dxo-label>\r\n\t\t\t\t</dxi-item>\r\n\t\t\t</dx-form>\r\n\t\t</form>\r\n\t</div>\r\n</ng-template>\r\n\r\n<ng-template #actionsTemplate let-dialog=\"dialog\">\r\n\t<span\r\n\t\tclass=\"dx-button-text\"\r\n\t\t(click)=\"dialog.executeAction(onSubmit, [$event])\"\r\n\t>\r\n\t\t{{ 'FILE_MANAGER.CREATE' | translate }}\r\n\t</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: i5.DxoLabelComponent, selector: "dxo-label", inputs: ["connectorColor", "connectorWidth", "customizeText", "font", "format", "indent", "visible", "horizontalAlignment", "position", "text", "verticalAlignment", "alignment", "customizeHint", "displayMode", "indentFromAxis", "overlappingBehavior", "rotationAngle", "staggeringSpacing", "template", "textOverflow", "wordWrap", "argumentFormat", "backgroundColor", "border", "connector", "displayFormat", "horizontalOffset", "showForZeroValues", "verticalOffset", "hideFirstOrLast", "indentFromTick", "useRangeColors", "location", "showColon", "radialOffset", "topIndent", "shadow", "useNodeColors", "dataField", "enabled"] }, { type: i5.DxiValidationRuleComponent, selector: "dxi-validation-rule", inputs: ["message", "trim", "type", "ignoreEmptyValue", "max", "min", "reevaluate", "validationCallback", "comparisonTarget", "comparisonType", "pattern"] }], directives: [{ type: i6.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i6.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i6.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }], pipes: { "translate": i7.TranslatePipe } });
|
|
90
|
+
CreateDirectoryComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: CreateDirectoryComponent, selector: "app-create-directory", inputs: { visible: "visible", rtlEnabled: "rtlEnabled", selectedItem: "selectedItem" }, outputs: { visibleChange: "visibleChange", refresh: "refresh" }, 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\t<div>\r\n\t\t<form>\r\n\t\t\t<dx-form\r\n\t\t\t\tclass=\"form-wrapper\"\r\n\t\t\t\t#form\r\n\t\t\t\t[formData]=\"formData\"\r\n\t\t\t\t[disabled]=\"loading\"\r\n\t\t\t>\r\n\t\t\t\t<dxi-item dataField=\"title\" editorType=\"dxTextBox\">\r\n\t\t\t\t\t<dxo-label text=\"{{ 'CREATE.TITLE' | translate }}\"></dxo-label>\r\n\t\t\t\t\t<dxi-validation-rule\r\n\t\t\t\t\t\ttype=\"required\"\r\n\t\t\t\t\t\tmessage=\"Title is required\"\r\n\t\t\t\t\t></dxi-validation-rule>\r\n\t\t\t\t</dxi-item>\r\n\t\t\t\t<dxi-item name=\"description\" editorType=\"dxTextBox\">\r\n\t\t\t\t\t<dxo-label text=\"{{ 'CREATE.DESCRIPTION' | translate }}\"></dxo-label>\r\n\t\t\t\t</dxi-item>\r\n\t\t\t</dx-form>\r\n\t\t</form>\r\n\t</div>\r\n</ng-template>\r\n\r\n<ng-template #actionsTemplate let-dialog=\"dialog\">\r\n\t<span\r\n\t\tclass=\"dx-button-text\"\r\n\t\t(click)=\"dialog.executeAction(onSubmit, [$event])\"\r\n\t>\r\n\t\t{{ 'FILE_MANAGER.CREATE' | translate }}\r\n\t</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: i5.DxoLabelComponent, selector: "dxo-label", inputs: ["connectorColor", "connectorWidth", "customizeText", "font", "format", "indent", "visible", "horizontalAlignment", "position", "text", "verticalAlignment", "alignment", "customizeHint", "displayMode", "indentFromAxis", "overlappingBehavior", "rotationAngle", "staggeringSpacing", "template", "textOverflow", "wordWrap", "argumentFormat", "backgroundColor", "border", "connector", "displayFormat", "horizontalOffset", "showForZeroValues", "verticalOffset", "hideFirstOrLast", "indentFromTick", "useRangeColors", "location", "showColon", "radialOffset", "topIndent", "shadow", "useNodeColors", "dataField", "enabled"] }, { type: i5.DxiValidationRuleComponent, selector: "dxi-validation-rule", inputs: ["message", "trim", "type", "ignoreEmptyValue", "max", "min", "reevaluate", "validationCallback", "comparisonTarget", "comparisonType", "pattern"] }], directives: [{ type: i6.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i6.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i6.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }], pipes: { "translate": i7.TranslatePipe } });
|
|
91
91
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: CreateDirectoryComponent, decorators: [{
|
|
92
92
|
type: Component,
|
|
93
93
|
args: [{
|
|
@@ -115,4 +115,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
115
115
|
}], selectedItem: [{
|
|
116
116
|
type: Input
|
|
117
117
|
}] } });
|
|
118
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLWRpcmVjdG9yeS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9udXhlby1kZXZlbG9wbWVudC1mcmFtZXdvcmsvc3JjL2xpYi9jb21wb25lbnRzL2ZpbGUtbWFuZ2VyL2NvbXBvbmVudHMvY3JlYXRlLWRpcmVjdG9yeS9jcmVhdGUtZGlyZWN0b3J5LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL251eGVvLWRldmVsb3BtZW50LWZyYW1ld29yay9zcmMvbGliL2NvbXBvbmVudHMvZmlsZS1tYW5nZXIvY29tcG9uZW50cy9jcmVhdGUtZGlyZWN0b3J5L2NyZWF0ZS1kaXJlY3RvcnkuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNOLFNBQVMsRUFDVCxZQUFZLEVBRVosS0FBSyxFQUVMLE1BQU0sRUFFTixTQUFTLEVBQ1QsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBR3JELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5REFBeUQsQ0FBQztBQUV6RixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sbURBQW1ELENBQUM7Ozs7Ozs7OztBQU9sRixNQUFNLE9BQU8sd0JBQXlCLFNBQVEsYUFBYTtJQTZCMUQsWUFDUyxrQkFBc0MsRUFDdEMsbUJBQXdDLEVBQ3pDLGtCQUFzQyxFQUM3QyxRQUFrQjtRQUVsQixLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7UUFMUix1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW9CO1FBQ3RDLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFDekMsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFvQjtRQWI5QyxrQkFBYSxHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7UUFFeEMsWUFBTyxHQUFHLElBQUks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QUUsbUNBQW1DO29CQUNoRCxTQUFTLEVBQUUsQ0FBQyxtQ0FBbUMsQ0FBQztpQkFDaEQ7bU1BRStDLElBQUk7c0JBQWxELFNBQVM7dUJBQUMsZUFBZSxFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRTtnQkFDZixlQUFlO3NCQUE1QyxTQUFTO3VCQUFDLGlCQUFpQjtnQkFDRSxlQUFlO3NCQUE1QyxTQUFTO3VCQUFDLGlCQUFpQjtnQkFFeEIsT0FBTztzQkFEVixLQUFLO2dCQWVOLGFBQWE7c0JBRFosTUFBTTtnQkFHUCxPQUFPO3NCQUROLE1BQU07Z0JBR1AsVUFBVTtzQkFEVCxLQUFLO2dCQUdOLFlBQVk7c0JBRFgsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcblx0Q29tcG9uZW50LFxyXG5cdEV2ZW50RW1pdHRlcixcclxuXHRJbmplY3RvcixcclxuXHRJbnB1dCxcclxuXHRPbkluaXQsXHJcblx0T3V0cHV0LFxyXG5cdFRlbXBsYXRlUmVmLFxyXG5cdFZpZXdDaGlsZFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBGaWxlTWFuYWdlclNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi8uLi9zaGFyZWQtc2VydmljZXMvZmlsZS1tYW5hZ2VyLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBEeEZvcm1Db21wb25lbnQgfSBmcm9tICdkZXZleHRyZW1lLWFuZ3VsYXInO1xyXG5pbXBvcnQgeyBDdXN0b21Ub2FzdHJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vY3VzdG9tLXRvYXN0ci9zZXJ2aWNlcy9jdXN0b20tdG9hc3RyLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBEaWFsb2dPcHRpb25zIH0gZnJvbSAnLi4vLi4vLi4vLi4vc2hhcmVkL2NvbXBvbmVudHMvbnV4ZW8tZGlhbG9nL21vZGVscy9kaWFsb2ctb3B0aW9uLm1vZGVsJztcclxuaW1wb3J0IHsgTmRmTnV4ZW9EaWFsb2cgfSBmcm9tICcuLi8uLi8uLi8uLi9zaGFyZWQvY29tcG9uZW50cy9udXhlby1kaWFsb2cvbnV4ZW8uZGlhbG9nJztcclxuaW1wb3J0IHsgTnV4ZW9EaWFsb2dTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vc2hhcmVkL2NvbXBvbmVudHMvbnV4ZW8tZGlhbG9nL3NlcnZpY2VzL251eGVvLWRpYWxvZy5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQmFzZUNvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uLy4uL3NoYXJlZC9jb21wb25lbnRzL2Jhc2UvYmFzZS5jb21wb25lbnQnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcblx0c2VsZWN0b3I6ICdhcHAtY3JlYXRlLWRpcmVjdG9yeScsXHJcblx0dGVtcGxhdGVVcmw6ICcuL2NyZWF0ZS1kaXJlY3RvcnkuY29tcG9uZW50Lmh0bWwnLFxyXG5cdHN0eWxlVXJsczogWycuL2NyZWF0ZS1kaXJlY3RvcnkuY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgQ3JlYXRlRGlyZWN0b3J5Q29tcG9uZW50IGV4dGVuZHMgQmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcblx0QFZpZXdDaGlsZChEeEZvcm1Db21wb25lbnQsIHsgc3RhdGljOiBmYWxzZSB9KSBmb3JtOiBEeEZvcm1Db21wb25lbnQ7XHJcblx0QFZpZXdDaGlsZCgnY29udGVudFRlbXBsYXRlJykgY29udGVudFRlbXBsYXRlITogVGVtcGxhdGVSZWY8YW55PjtcclxuXHRAVmlld0NoaWxkKCdhY3Rpb25zVGVtcGxhdGUnKSBhY3Rpb25zVGVtcGxhdGUhOiBUZW1wbGF0ZVJlZjxhbnk+O1xyXG5cdEBJbnB1dCgpXHJcblx0c2V0IHZpc2libGUodmFsdWU6IGFueSkge1xyXG5cdFx0aWYgKHRoaXMuX3Zpc2libGUgPT09IHZhbHVlKSB7XHJcblx0XHRcdHJldHVybjtcclxuXHRcdH1cclxuXHRcdGlmICh2YWx1ZSkge1xyXG5cdFx0XHR0aGlzLm9wZW5EaWFsb2coKTtcclxuXHRcdH1cclxuXHRcdHRoaXMuX3Zpc2libGUgPSB2YWx1ZTtcclxuXHRcdHRoaXMudmlzaWJsZUNoYW5nZS5lbWl0KHRoaXMuX3Zpc2libGUpO1xyXG5cdH1cclxuXHRnZXQgdmlzaWJsZSgpIHtcclxuXHRcdHJldHVybiB0aGlzLl92aXNpYmxlO1xyXG5cdH1cclxuXHRAT3V0cHV0KClcclxuXHR2aXNpYmxlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XHJcblx0QE91dHB1dCgpXHJcblx0cmVmcmVzaCA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG5cdEBJbnB1dCgpXHJcblx0cnRsRW5hYmxlZCA9IGZhbHNlO1xyXG5cdEBJbnB1dCgpXHJcblx0c2VsZWN0ZWRJdGVtOiBhbnk7XHJcblxyXG5cdGZvcm1EYXRhOiBhbnkgPSB7fTtcclxuXHRfdmlzaWJsZSA9IGZhbHNlO1xyXG5cdGNvbnN0cnVjdG9yKFxyXG5cdFx0cHJpdmF0ZSBmaWxlTWFuYWdlclNlcnZpY2U6IEZpbGVNYW5hZ2VyU2VydmljZSxcclxuXHRcdHByaXZhdGUgY3VzdG9tVG9hc3RyU2VydmljZTogQ3VzdG9tVG9hc3RyU2VydmljZSxcclxuXHRcdHB1YmxpYyBudXhlb0RpYWxvZ1NlcnZpY2U6IE51eGVvRGlhbG9nU2VydmljZSxcclxuXHRcdGluamVjdG9yOiBJbmplY3RvclxyXG5cdCkge1xyXG5cdFx0c3VwZXIoaW5qZWN0b3IpO1xyXG5cdH1cclxuXHJcblx0bmdPbkluaXQoKTogdm9pZCB7fVxyXG5cclxuXHRvcGVuRGlhbG9nKCk6IHZvaWQge1xyXG5cdFx0Y29uc3Qgb3B0aW9uczogRGlhbG9nT3B0aW9ucyA9IHtcclxuXHRcdFx0Y29tcG9uZW50OiBOZGZOdXhlb0RpYWxvZyxcclxuXHRcdFx0cGFuZWxDbGFzczogJ3BvcFVwUGFyZW50JyxcclxuXHRcdFx0Y29uZmlnOiB7XHJcblx0XHRcdFx0dGl0bGU6IHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KCdDUkVBVEUuY3JlYXRlRm9sZGVyJyksXHJcblx0XHRcdFx0Y29udGVudFRlbXBsYXRlOiB0aGlzLmNvbnRlbnRUZW1wbGF0ZSxcclxuXHRcdFx0XHRhY3Rpb25zVGVtcGxhdGU6IHRoaXMuYWN0aW9uc1RlbXBsYXRlXHJcblx0XHRcdH1cclxuXHRcdH07XHJcblx0XHR0aGlzLm51eGVvRGlhbG9nU2VydmljZVxyXG5cdFx0XHQub3BlbihvcHRpb25zKVxyXG5cdFx0XHQuYWZ0ZXJDbG9zZWQoKVxyXG5cdFx0XHQuc3Vic2NyaWJlKChyZXMpID0+IHtcclxuXHRcdFx0XHR0aGlzLnZpc2libGUgPSBmYWxzZTtcclxuXHRcdFx0fSk7XHJcblx0fVxyXG5cclxuXHRvblN1Ym1pdChlKSB7XHJcblx0XHRlLnByZXZlbnREZWZhdWx0KCk7XHJcblx0XHR0aGlzLmxvYWRpbmcgPSB0cnVlO1xyXG5cdFx0Ly8gbGV0IGRpcmVjdG9yeSA9IHRoaXMuZ2V0Q3VycmVudERpcmVjdG9yeSgpO1xyXG5cdFx0Ly8gbGV0IGlkID1cclxuXHRcdC8vICAgICBkaXJlY3RvcnkuZGF0YUl0ZW0gPT09IHVuZGVmaW5lZFxyXG5cdFx0Ly8gICAgICAgICA/IHRoaXMubWFpbkZvbGRlclxyXG5cdFx0Ly8gICAgICAgICA6IHRoaXMuZ2V0Q3VycmVudEZvbGRlcklkKGRpcmVjdG9yeSk7XHJcblx0XHR0aGlzLmZpbGVNYW5hZ2VyU2VydmljZVxyXG5cdFx0XHQuY3JlYXRlRGlyZWN0b3J5KHRoaXMuZm9ybURhdGEsIHRoaXMuc2VsZWN0ZWRJdGVtKVxyXG5cdFx0XHQuc3Vic2NyaWJlKFxyXG5cdFx0XHRcdChyZXMpID0+IHtcclxuXHRcdFx0XHRcdHRoaXMubG9hZGluZyA9IGZhbHNlO1xyXG5cdFx0XHRcdFx0dGhpcy52aXNpYmxlID0gZmFsc2U7XHJcblx0XHRcdFx0XHQvLyBpZiAodGhpcy5pc0l0ZW1TZWxlY3RlZCkge1xyXG5cdFx0XHRcdFx0Ly8gICAgIGxldCBzZWxlY3RlZEl0ZW0gPVxyXG5cdFx0XHRcdFx0Ly8gICAgICAgICB0aGlzLmZpbGVNYW5hZ2VyLmluc3RhbmNlLmdldFNlbGVjdGVkSXRlbXMoKTtcclxuXHRcdFx0XHRcdC8vICAgICB0aGlzLmN1cnJlbnRQYXRoID1cclxuXHRcdFx0XHRcdC8vICAgICAgICAgdGhpcy5zZWxlY3RlZE9iamVjdC5lbnRpdHkucGF0aC5zdWJzdHIoXHJcblx0XHRcdFx0XHQvLyAgICAgICAgICAgICB0aGlzLmZpbGVNYW5hZ2VyT2JqPy5wYXRoLmxlbmd0aFxyXG5cdFx0XHRcdFx0Ly8gICAgICAgICApO1xyXG5cdFx0XHRcdFx0Ly8gICAgIGRpcmVjdG9yeSA9IHNlbGVjdGVkSXRlbVswXTtcclxuXHRcdFx0XHRcdC8vICAgICBpZCA9IHRoaXMuc2VsZWN0ZWRJdGVtO1xyXG5cdFx0XHRcdFx0Ly8gfVxyXG5cdFx0XHRcdFx0dGhpcy5yZWZyZXNoLm5leHQodHJ1ZSk7XHJcblx0XHRcdFx0XHR0aGlzLmZvcm0uaW5zdGFuY2UucmVzZXRWYWx1ZXMoKTtcclxuXHRcdFx0XHRcdHRoaXMuY3VzdG9tVG9hc3RyU2VydmljZS5zaG93KFxyXG5cdFx0XHRcdFx0XHQnc3VjY2VzcycsXHJcblx0XHRcdFx0XHRcdCdUT0FTVEVSLlNVQ0NFU1MnLFxyXG5cdFx0XHRcdFx0XHQnVE9BU1RFUi5ET0NVTUVOVF9DUkVBVEVEJ1xyXG5cdFx0XHRcdFx0KTtcclxuXHRcdFx0XHR9LFxyXG5cdFx0XHRcdChlcnIpID0+IHtcclxuXHRcdFx0XHRcdHRoaXMubG9hZGluZyA9IGZhbHNlO1xyXG5cdFx0XHRcdFx0dGhpcy52aXNpYmxlID0gdHJ1ZTtcclxuXHRcdFx0XHRcdHRoaXMuY3VzdG9tVG9hc3RyU2VydmljZS5zaG93KFxyXG5cdFx0XHRcdFx0XHQnZXJyb3InLFxyXG5cdFx0XHRcdFx0XHQnVE9BU1RFUi5FUlJPUicsXHJcblx0XHRcdFx0XHRcdCdUT0FTVEVSLkRPQ1VNRU5UX0NSRUFURURfRVJST1InXHJcblx0XHRcdFx0XHQpO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0KTtcclxuXHR9XHJcbn1cclxuIiwiPG5nLXRlbXBsYXRlICNjb250ZW50VGVtcGxhdGU+XHJcblx0PGRpdj5cclxuXHRcdDxmb3JtPlxyXG5cdFx0XHQ8ZHgtZm9ybVxyXG5cdFx0XHRcdGNsYXNzPVwiZm9ybS13cmFwcGVyXCJcclxuXHRcdFx0XHQjZm9ybVxyXG5cdFx0XHRcdFtmb3JtRGF0YV09XCJmb3JtRGF0YVwiXHJcblx0XHRcdFx0W2Rpc2FibGVkXT1cImxvYWRpbmdcIlxyXG5cdFx0XHQ+XHJcblx0XHRcdFx0PGR4aS1pdGVtIGRhdGFGaWVsZD1cInRpdGxlXCIgZWRpdG9yVHlwZT1cImR4VGV4dEJveFwiPlxyXG5cdFx0XHRcdFx0PGR4by1sYWJlbCB0ZXh0PVwie3sgJ0NSRUFURS5USVRMRScgfCB0cmFuc2xhdGUgfX1cIj48L2R4by1sYWJlbD5cclxuXHRcdFx0XHRcdDxkeGktdmFsaWRhdGlvbi1ydWxlXHJcblx0XHRcdFx0XHRcdHR5cGU9XCJyZXF1aXJlZFwiXHJcblx0XHRcdFx0XHRcdG1lc3NhZ2U9XCJUaXRsZSBpcyByZXF1aXJlZFwiXHJcblx0XHRcdFx0XHQ+PC9keGktdmFsaWRhdGlvbi1ydWxlPlxyXG5cdFx0XHRcdDwvZHhpLWl0ZW0+XHJcblx0XHRcdFx0PGR4aS1pdGVtIG5hbWU9XCJkZXNjcmlwdGlvblwiIGVkaXRvclR5cGU9XCJkeFRleHRCb3hcIj5cclxuXHRcdFx0XHRcdDxkeG8tbGFiZWwgdGV4dD1cInt7ICdDUkVBVEUuREVTQ1JJUFRJT04nIHwgdHJhbnNsYXRlIH19XCI+PC9keG8tbGFiZWw+XHJcblx0XHRcdFx0PC9keGktaXRlbT5cclxuXHRcdFx0PC9keC1mb3JtPlxyXG5cdFx0PC9mb3JtPlxyXG5cdDwvZGl2PlxyXG48L25nLXRlbXBsYXRlPlxyXG5cclxuPG5nLXRlbXBsYXRlICNhY3Rpb25zVGVtcGxhdGUgbGV0LWRpYWxvZz1cImRpYWxvZ1wiPlxyXG5cdDxzcGFuXHJcblx0XHRjbGFzcz1cImR4LWJ1dHRvbi10ZXh0XCJcclxuXHRcdChjbGljayk9XCJkaWFsb2cuZXhlY3V0ZUFjdGlvbihvblN1Ym1pdCwgWyRldmVudF0pXCJcclxuXHQ+XHJcblx0XHR7eyAnRklMRV9NQU5BR0VSLkNSRUFURScgfCB0cmFuc2xhdGUgfX1cclxuXHQ8L3NwYW4+XHJcbjwvbmctdGVtcGxhdGU+XHJcbiJdfQ==
|
|
118
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLWRpcmVjdG9yeS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9maWxlLW1hbmdlci9jb21wb25lbnRzL2NyZWF0ZS1kaXJlY3RvcnkvY3JlYXRlLWRpcmVjdG9yeS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9maWxlLW1hbmdlci9jb21wb25lbnRzL2NyZWF0ZS1kaXJlY3RvcnkvY3JlYXRlLWRpcmVjdG9yeS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ04sU0FBUyxFQUNULFlBQVksRUFFWixLQUFLLEVBRUwsTUFBTSxFQUVOLFNBQVMsRUFDVCxNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFHckQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlEQUF5RCxDQUFDO0FBRXpGLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxtREFBbUQsQ0FBQzs7Ozs7Ozs7O0FBT2xGLE1BQU0sT0FBTyx3QkFBeUIsU0FBUSxhQUFhO0lBNkIxRCxZQUNTLGtCQUFzQyxFQUN0QyxtQkFBd0MsRUFDekMsa0JBQXNDLEVBQzdDLFFBQWtCO1FBRWxCLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUxSLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBb0I7UUFDdEMsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFxQjtRQUN6Qyx1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW9CO1FBYjlDLGtCQUFhLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUV4QyxZQUFPLEdBQUcsSUFBSSxZQUFZLEVBQU8s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b0JBQ2hELFNBQVMsRUFBRSxDQUFDLG1DQUFtQyxDQUFDO2lCQUNoRDttTUFFK0MsSUFBSTtzQkFBbEQsU0FBUzt1QkFBQyxlQUFlLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFO2dCQUNmLGVBQWU7c0JBQTVDLFNBQVM7dUJBQUMsaUJBQWlCO2dCQUNFLGVBQWU7c0JBQTVDLFNBQVM7dUJBQUMsaUJBQWlCO2dCQUV4QixPQUFPO3NCQURWLEtBQUs7Z0JBZU4sYUFBYTtzQkFEWixNQUFNO2dCQUdQLE9BQU87c0JBRE4sTUFBTTtnQkFHUCxVQUFVO3NCQURULEtBQUs7Z0JBR04sWUFBWTtzQkFEWCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuXHRDb21wb25lbnQsXHJcblx0RXZlbnRFbWl0dGVyLFxyXG5cdEluamVjdG9yLFxyXG5cdElucHV0LFxyXG5cdE9uSW5pdCxcclxuXHRPdXRwdXQsXHJcblx0VGVtcGxhdGVSZWYsXHJcblx0Vmlld0NoaWxkXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZpbGVNYW5hZ2VyU2VydmljZSB9IGZyb20gJy4uLy4uLy4uLy4uL3NoYXJlZC1zZXJ2aWNlcy9maWxlLW1hbmFnZXIuc2VydmljZSc7XHJcbmltcG9ydCB7IER4Rm9ybUNvbXBvbmVudCB9IGZyb20gJ2RldmV4dHJlbWUtYW5ndWxhcic7XHJcbmltcG9ydCB7IEN1c3RvbVRvYXN0clNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9jdXN0b20tdG9hc3RyL3NlcnZpY2VzL2N1c3RvbS10b2FzdHIuc2VydmljZSc7XHJcbmltcG9ydCB7IERpYWxvZ09wdGlvbnMgfSBmcm9tICcuLi8uLi8uLi8uLi9zaGFyZWQvY29tcG9uZW50cy9udXhlby1kaWFsb2cvbW9kZWxzL2RpYWxvZy1vcHRpb24ubW9kZWwnO1xyXG5pbXBvcnQgeyBOZGZOdXhlb0RpYWxvZyB9IGZyb20gJy4uLy4uLy4uLy4uL3NoYXJlZC9jb21wb25lbnRzL251eGVvLWRpYWxvZy9udXhlby5kaWFsb2cnO1xyXG5pbXBvcnQgeyBOdXhlb0RpYWxvZ1NlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi8uLi9zaGFyZWQvY29tcG9uZW50cy9udXhlby1kaWFsb2cvc2VydmljZXMvbnV4ZW8tZGlhbG9nLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBCYXNlQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vLi4vc2hhcmVkL2NvbXBvbmVudHMvYmFzZS9iYXNlLmNvbXBvbmVudCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuXHRzZWxlY3RvcjogJ2FwcC1jcmVhdGUtZGlyZWN0b3J5JyxcclxuXHR0ZW1wbGF0ZVVybDogJy4vY3JlYXRlLWRpcmVjdG9yeS5jb21wb25lbnQuaHRtbCcsXHJcblx0c3R5bGVVcmxzOiBbJy4vY3JlYXRlLWRpcmVjdG9yeS5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDcmVhdGVEaXJlY3RvcnlDb21wb25lbnQgZXh0ZW5kcyBCYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuXHRAVmlld0NoaWxkKER4Rm9ybUNvbXBvbmVudCwgeyBzdGF0aWM6IGZhbHNlIH0pIGZvcm06IER4Rm9ybUNvbXBvbmVudDtcclxuXHRAVmlld0NoaWxkKCdjb250ZW50VGVtcGxhdGUnKSBjb250ZW50VGVtcGxhdGUhOiBUZW1wbGF0ZVJlZjxhbnk+O1xyXG5cdEBWaWV3Q2hpbGQoJ2FjdGlvbnNUZW1wbGF0ZScpIGFjdGlvbnNUZW1wbGF0ZSE6IFRlbXBsYXRlUmVmPGFueT47XHJcblx0QElucHV0KClcclxuXHRzZXQgdmlzaWJsZSh2YWx1ZTogYW55KSB7XHJcblx0XHRpZiAodGhpcy5fdmlzaWJsZSA9PT0gdmFsdWUpIHtcclxuXHRcdFx0cmV0dXJuO1xyXG5cdFx0fVxyXG5cdFx0aWYgKHZhbHVlKSB7XHJcblx0XHRcdHRoaXMub3BlbkRpYWxvZygpO1xyXG5cdFx0fVxyXG5cdFx0dGhpcy5fdmlzaWJsZSA9IHZhbHVlO1xyXG5cdFx0dGhpcy52aXNpYmxlQ2hhbmdlLmVtaXQodGhpcy5fdmlzaWJsZSk7XHJcblx0fVxyXG5cdGdldCB2aXNpYmxlKCkge1xyXG5cdFx0cmV0dXJuIHRoaXMuX3Zpc2libGU7XHJcblx0fVxyXG5cdEBPdXRwdXQoKVxyXG5cdHZpc2libGVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuXHRAT3V0cHV0KClcclxuXHRyZWZyZXNoID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XHJcblx0QElucHV0KClcclxuXHRydGxFbmFibGVkID0gZmFsc2U7XHJcblx0QElucHV0KClcclxuXHRzZWxlY3RlZEl0ZW06IGFueTtcclxuXHJcblx0Zm9ybURhdGE6IGFueSA9IHt9O1xyXG5cdF92aXNpYmxlID0gZmFsc2U7XHJcblx0Y29uc3RydWN0b3IoXHJcblx0XHRwcml2YXRlIGZpbGVNYW5hZ2VyU2VydmljZTogRmlsZU1hbmFnZXJTZXJ2aWNlLFxyXG5cdFx0cHJpdmF0ZSBjdXN0b21Ub2FzdHJTZXJ2aWNlOiBDdXN0b21Ub2FzdHJTZXJ2aWNlLFxyXG5cdFx0cHVibGljIG51eGVvRGlhbG9nU2VydmljZTogTnV4ZW9EaWFsb2dTZXJ2aWNlLFxyXG5cdFx0aW5qZWN0b3I6IEluamVjdG9yXHJcblx0KSB7XHJcblx0XHRzdXBlcihpbmplY3Rvcik7XHJcblx0fVxyXG5cclxuXHRuZ09uSW5pdCgpOiB2b2lkIHt9XHJcblxyXG5cdG9wZW5EaWFsb2coKTogdm9pZCB7XHJcblx0XHRjb25zdCBvcHRpb25zOiBEaWFsb2dPcHRpb25zID0ge1xyXG5cdFx0XHRjb21wb25lbnQ6IE5kZk51eGVvRGlhbG9nLFxyXG5cdFx0XHRwYW5lbENsYXNzOiAncG9wVXBQYXJlbnQnLFxyXG5cdFx0XHRjb25maWc6IHtcclxuXHRcdFx0XHR0aXRsZTogdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoJ0NSRUFURS5jcmVhdGVGb2xkZXInKSxcclxuXHRcdFx0XHRjb250ZW50VGVtcGxhdGU6IHRoaXMuY29udGVudFRlbXBsYXRlLFxyXG5cdFx0XHRcdGFjdGlvbnNUZW1wbGF0ZTogdGhpcy5hY3Rpb25zVGVtcGxhdGVcclxuXHRcdFx0fVxyXG5cdFx0fTtcclxuXHRcdHRoaXMubnV4ZW9EaWFsb2dTZXJ2aWNlXHJcblx0XHRcdC5vcGVuKG9wdGlvbnMpXHJcblx0XHRcdC5hZnRlckNsb3NlZCgpXHJcblx0XHRcdC5zdWJzY3JpYmUoKHJlcykgPT4ge1xyXG5cdFx0XHRcdHRoaXMudmlzaWJsZSA9IGZhbHNlO1xyXG5cdFx0XHR9KTtcclxuXHR9XHJcblxyXG5cdG9uU3VibWl0KGUpIHtcclxuXHRcdGUucHJldmVudERlZmF1bHQoKTtcclxuXHRcdHRoaXMubG9hZGluZyA9IHRydWU7XHJcblx0XHQvLyBsZXQgZGlyZWN0b3J5ID0gdGhpcy5nZXRDdXJyZW50RGlyZWN0b3J5KCk7XHJcblx0XHQvLyBsZXQgaWQgPVxyXG5cdFx0Ly8gICAgIGRpcmVjdG9yeS5kYXRhSXRlbSA9PT0gdW5kZWZpbmVkXHJcblx0XHQvLyAgICAgICAgID8gdGhpcy5tYWluRm9sZGVyXHJcblx0XHQvLyAgICAgICAgIDogdGhpcy5nZXRDdXJyZW50Rm9sZGVySWQoZGlyZWN0b3J5KTtcclxuXHRcdHRoaXMuZmlsZU1hbmFnZXJTZXJ2aWNlXHJcblx0XHRcdC5jcmVhdGVEaXJlY3RvcnkodGhpcy5mb3JtRGF0YSwgdGhpcy5zZWxlY3RlZEl0ZW0pXHJcblx0XHRcdC5zdWJzY3JpYmUoXHJcblx0XHRcdFx0KHJlcykgPT4ge1xyXG5cdFx0XHRcdFx0dGhpcy5sb2FkaW5nID0gZmFsc2U7XHJcblx0XHRcdFx0XHR0aGlzLnZpc2libGUgPSBmYWxzZTtcclxuXHRcdFx0XHRcdC8vIGlmICh0aGlzLmlzSXRlbVNlbGVjdGVkKSB7XHJcblx0XHRcdFx0XHQvLyAgICAgbGV0IHNlbGVjdGVkSXRlbSA9XHJcblx0XHRcdFx0XHQvLyAgICAgICAgIHRoaXMuZmlsZU1hbmFnZXIuaW5zdGFuY2UuZ2V0U2VsZWN0ZWRJdGVtcygpO1xyXG5cdFx0XHRcdFx0Ly8gICAgIHRoaXMuY3VycmVudFBhdGggPVxyXG5cdFx0XHRcdFx0Ly8gICAgICAgICB0aGlzLnNlbGVjdGVkT2JqZWN0LmVudGl0eS5wYXRoLnN1YnN0cihcclxuXHRcdFx0XHRcdC8vICAgICAgICAgICAgIHRoaXMuZmlsZU1hbmFnZXJPYmo/LnBhdGgubGVuZ3RoXHJcblx0XHRcdFx0XHQvLyAgICAgICAgICk7XHJcblx0XHRcdFx0XHQvLyAgICAgZGlyZWN0b3J5ID0gc2VsZWN0ZWRJdGVtWzBdO1xyXG5cdFx0XHRcdFx0Ly8gICAgIGlkID0gdGhpcy5zZWxlY3RlZEl0ZW07XHJcblx0XHRcdFx0XHQvLyB9XHJcblx0XHRcdFx0XHR0aGlzLnJlZnJlc2gubmV4dCh0cnVlKTtcclxuXHRcdFx0XHRcdHRoaXMuZm9ybS5pbnN0YW5jZS5yZXNldFZhbHVlcygpO1xyXG5cdFx0XHRcdFx0dGhpcy5jdXN0b21Ub2FzdHJTZXJ2aWNlLnNob3coXHJcblx0XHRcdFx0XHRcdCdzdWNjZXNzJyxcclxuXHRcdFx0XHRcdFx0J1RPQVNURVIuU1VDQ0VTUycsXHJcblx0XHRcdFx0XHRcdCdUT0FTVEVSLkRPQ1VNRU5UX0NSRUFURUQnXHJcblx0XHRcdFx0XHQpO1xyXG5cdFx0XHRcdH0sXHJcblx0XHRcdFx0KGVycikgPT4ge1xyXG5cdFx0XHRcdFx0dGhpcy5sb2FkaW5nID0gZmFsc2U7XHJcblx0XHRcdFx0XHR0aGlzLnZpc2libGUgPSB0cnVlO1xyXG5cdFx0XHRcdFx0dGhpcy5jdXN0b21Ub2FzdHJTZXJ2aWNlLnNob3coXHJcblx0XHRcdFx0XHRcdCdlcnJvcicsXHJcblx0XHRcdFx0XHRcdCdUT0FTVEVSLkVSUk9SJyxcclxuXHRcdFx0XHRcdFx0J1RPQVNURVIuRE9DVU1FTlRfQ1JFQVRFRF9FUlJPUidcclxuXHRcdFx0XHRcdCk7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHQpO1xyXG5cdH1cclxufVxyXG4iLCI8bmctdGVtcGxhdGUgI2NvbnRlbnRUZW1wbGF0ZT5cclxuXHQ8ZGl2PlxyXG5cdFx0PGZvcm0+XHJcblx0XHRcdDxkeC1mb3JtXHJcblx0XHRcdFx0Y2xhc3M9XCJmb3JtLXdyYXBwZXJcIlxyXG5cdFx0XHRcdCNmb3JtXHJcblx0XHRcdFx0W2Zvcm1EYXRhXT1cImZvcm1EYXRhXCJcclxuXHRcdFx0XHRbZGlzYWJsZWRdPVwibG9hZGluZ1wiXHJcblx0XHRcdD5cclxuXHRcdFx0XHQ8ZHhpLWl0ZW0gZGF0YUZpZWxkPVwidGl0bGVcIiBlZGl0b3JUeXBlPVwiZHhUZXh0Qm94XCI+XHJcblx0XHRcdFx0XHQ8ZHhvLWxhYmVsIHRleHQ9XCJ7eyAnQ1JFQVRFLlRJVExFJyB8IHRyYW5zbGF0ZSB9fVwiPjwvZHhvLWxhYmVsPlxyXG5cdFx0XHRcdFx0PGR4aS12YWxpZGF0aW9uLXJ1bGVcclxuXHRcdFx0XHRcdFx0dHlwZT1cInJlcXVpcmVkXCJcclxuXHRcdFx0XHRcdFx0bWVzc2FnZT1cIlRpdGxlIGlzIHJlcXVpcmVkXCJcclxuXHRcdFx0XHRcdD48L2R4aS12YWxpZGF0aW9uLXJ1bGU+XHJcblx0XHRcdFx0PC9keGktaXRlbT5cclxuXHRcdFx0XHQ8ZHhpLWl0ZW0gbmFtZT1cImRlc2NyaXB0aW9uXCIgZWRpdG9yVHlwZT1cImR4VGV4dEJveFwiPlxyXG5cdFx0XHRcdFx0PGR4by1sYWJlbCB0ZXh0PVwie3sgJ0NSRUFURS5ERVNDUklQVElPTicgfCB0cmFuc2xhdGUgfX1cIj48L2R4by1sYWJlbD5cclxuXHRcdFx0XHQ8L2R4aS1pdGVtPlxyXG5cdFx0XHQ8L2R4LWZvcm0+XHJcblx0XHQ8L2Zvcm0+XHJcblx0PC9kaXY+XHJcbjwvbmctdGVtcGxhdGU+XHJcblxyXG48bmctdGVtcGxhdGUgI2FjdGlvbnNUZW1wbGF0ZSBsZXQtZGlhbG9nPVwiZGlhbG9nXCI+XHJcblx0PHNwYW5cclxuXHRcdGNsYXNzPVwiZHgtYnV0dG9uLXRleHRcIlxyXG5cdFx0KGNsaWNrKT1cImRpYWxvZy5leGVjdXRlQWN0aW9uKG9uU3VibWl0LCBbJGV2ZW50XSlcIlxyXG5cdD5cclxuXHRcdHt7ICdGSUxFX01BTkFHRVIuQ1JFQVRFJyB8IHRyYW5zbGF0ZSB9fVxyXG5cdDwvc3Bhbj5cclxuPC9uZy10ZW1wbGF0ZT5cclxuIl19
|
package/esm2015/lib/components/file-manger/components/create-modal/create-modal.component.js
CHANGED
|
@@ -523,4 +523,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
523
523
|
type: HostListener,
|
|
524
524
|
args: ['document:keyup.enter', ['$event']]
|
|
525
525
|
}] } });
|
|
526
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLW1vZGFsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL251eGVvLWRldmVsb3BtZW50LWZyYW1ld29yay9zcmMvbGliL2NvbXBvbmVudHMvZmlsZS1tYW5nZXIvY29tcG9uZW50cy9jcmVhdGUtbW9kYWwvY3JlYXRlLW1vZGFsLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL251eGVvLWRldmVsb3BtZW50LWZyYW1ld29yay9zcmMvbGliL2NvbXBvbmVudHMvZmlsZS1tYW5nZXIvY29tcG9uZW50cy9jcmVhdGUtbW9kYWwvY3JlYXRlLW1vZGFsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTixTQUFTLEVBQ1QsWUFBWSxFQUNaLE1BQU0sRUFJTixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQTBCLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQU0zRCxPQUFPLEtBQUssTUFBTSxNQUFNLFFBQVEsQ0FBQztBQUNqQyxPQUFPLEVBQUUsUUFBUSxFQUFFLEVBQUUsRUFBZ0IsTUFBTSxNQUFNLENBQUM7QUFLbEQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sMERBQTBELENBQUM7QUFFL0YsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQU9yQyxNQUFNLE9BQU8sb0JBQ1osU0FBUSxtQkFBbUQ7SUE2QzNELFlBQ2lDLElBQUksRUFDN0IscUJBQTZDLEVBQzdDLHFCQUE0QyxFQUMzQyxpQkFBcUMsRUFDckMsYUFBa0MsRUFDbkMsV0FBd0IsRUFDdkIsUUFBd0IsRUFDeEIsa0JBQXNDLEVBQ3RDLGNBQWdDLEVBQ2hDLGlCQUFvQyxFQUNw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SkM5QmpDLDB5T0FxTUE7NEZEdkthLG9CQUFvQjtrQkFMaEMsU0FBUzttQkFBQztvQkFDVixRQUFRLEVBQUUsa0JBQWtCO29CQUM1QixXQUFXLEVBQUUsK0JBQStCO29CQUM1QyxTQUFTLEVBQUUsQ0FBQywrQkFBK0IsQ0FBQztpQkFDNUM7OzBCQWdERSxNQUFNOzJCQUFDLGVBQWU7OzBCQVd0QixNQUFNOzJCQUFDLGFBQWE7cUdBM0J0QixVQUFVO3NCQURULFlBQVk7dUJBQUMsc0JBQXNCLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG5cdENvbXBvbmVudCxcclxuXHRIb3N0TGlzdGVuZXIsXHJcblx0SW5qZWN0LFxyXG5cdEluamVjdG9yLFxyXG5cdE9uRGVzdHJveSxcclxuXHRPbkluaXRcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRm9ybUJ1aWxkZXIsIEZvcm1Hcm91cCwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgTUFUX0RJQUxPR19EQVRBIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcclxuaW1wb3J0IHsgVXBsb2FkTWFuYWdtZW50U2VydmljZSB9IGZyb20gJy4uLy4uLy4uLy4uL3NoYXJlZC1zZXJ2aWNlcy91cGxvYWQtbWFuYWdtZW50LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBEaWFsb2dNYW5nbWVudFNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi8uLi9zaGFyZWQtc2VydmljZXMvZGlhbG9nLW1hbmdtZW50LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBEeW5hbWljRm9ybVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi8uLi9zaGFyZWQtc2VydmljZXMvZHluYW1pYy1mb3JtLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBGaWxlTWFuYWdlclNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi8uLi9zaGFyZWQtc2VydmljZXMvZmlsZS1tYW5hZ2VyLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBVc2VyU2VydmljZSB9IGZyb20gJy4uLy4uLy4uLy4uL3NoYXJlZC1zZXJ2aWNlcy91c2VyLnNlcnZpY2UnO1xyXG5pbXBvcnQgKiBhcyBtb21lbnQgZnJvbSAnbW9tZW50JztcclxuaW1wb3J0IHsgZm9ya0pvaW4sIG9mLCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgQ3VzdG9tVG9hc3RyU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL2N1c3RvbS10b2FzdHIvc2VydmljZXMvY3VzdG9tLXRvYXN0ci5zZXJ2aWNlJztcclxuaW1wb3J0IHsgRGF0ZUhlbHBlclNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9oaWpyaS1ncmVnb3JpYW4tZGF0ZXBpY2tlci9zZXJ2aWNlcy9kYXRlLWhlbHBlci5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQWRhcHRlclNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi8uLi9jb3JlL2FkYXB0ZXJzL2FkYXB0ZXIuc2VydmljZSc7XHJcbmltcG9ydCB7IEFwcENvbmZpZ1NlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi8uLi9jb25maWd1cmF0aW9uL2FwcC1jb25maWcuc2VydmljZSc7XHJcbmltcG9ydCB7IEJhc2VEaWFsb2dDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi8uLi9zaGFyZWQvY29tcG9uZW50cy9iYXNlL2Jhc2UtZGlhbG9nLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IERpYWxvZ0FjdGlvblR5cGUgfSBmcm9tICcuLi8uLi8uLi8uLi9zaGFyZWQvY29tcG9uZW50cy9udXhlby1kaWFsb2cvbW9kZWxzL2RpYWxvZy1vcHRpb24ubW9kZWwnO1xyXG5pbXBvcnQgeyB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuXHRzZWxlY3RvcjogJ2FwcC1jcmVhdGUtbW9kYWwnLFxyXG5cdHRlbXBsYXRlVXJsOiAnLi9jcmVhdGUtbW9kYWwuY29tcG9uZW50Lmh0bWwnLFxyXG5cdHN0eWxlVXJsczogWycuL2NyZWF0ZS1tb2RhbC5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDcmVhdGVNb2RhbENvbXBvbmVudFxyXG5cdGV4dGVuZHMgQmFzZURpYWxvZ0NvbXBvbmVudDxDcmVhdGVNb2RhbENvbXBvbmVudCwgYW55LCBhbnk+XHJcblx0aW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveVxyXG57XHJcblx0YWRkaW5nUHJvcGVydGllcyA9IGZhbHNlO1xyXG5cdGZpbGVUeXBlRm9ybTogRm9ybUdyb3VwO1xyXG5cdGR5bmFtaWNGb3JtO1xyXG5cdGR5bmFtaWNEYXRhO1xyXG5cdHNlbGVjdGVkRmlsZTtcclxuXHRmaWxlVHlwZTtcclxuXHRzb3VyY2U7XHJcblx0cGF5bG9hZExpc3QgPSBbXTtcclxuXHRjcmVhdGVXaGVuRmluaXNoTW9kZSA9IGZhbHNlO1xyXG5cdGZpbGVGb3JtU3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XHJcblx0Y291bnRyeUNhdGVnQ29kZVN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xyXG5cdGFnZW5jeUNhdGVnQ29kZVN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xyXG5cdHRlbXBvcmFyeUR5YW5taWNEYXRhO1xyXG5cdHNob3dSZW5kZXJlciA9IGZhbHNlOyAvLyB1c2VkIHRvIGZvcmNlIHJlbmRlcmVyIHRvIGZlZWwgY2hhbmdlcyBpbiBmb3JtcyBhbmQgdmFsdWUgd2hlbiBjaGFuZ2luZyBmaWxlc1xyXG5cdC8vIHVwbG9hZEZpbmlzaFN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xyXG5cdHVzaW5nRXh0cmFGaWVsZHMgPSBmYWxzZTsgLy8gZmxhZ2UgdG8gc3dpdGNoIGJldHdlZW4gc3RhdGljIGZvcm0gdHlwZXNcclxuXHJcblx0ZmlsZUZvcm06IEZvcm1Hcm91cDtcclxuXHRzdGF0aWNGb3JtRmllbGRzO1xyXG5cdGFnZW5jeU5hbWVGaWx0ZXI7XHJcblx0Y291bnRyeU5hbWVGaWx0ZXI7XHJcblx0c2hvd1N0YXRpY0Zvcm0gPSBmYWxzZTtcclxuXHRkaXNhYmxlQ3JlYXRlV2hlbkZpbmlzaEJ0biA9IHRydWU7XHJcblx0Y3JlYXRpbmcgPSBmYWxzZTtcclxuXHRkaXNwbGF5Tm90ZU1lc3NhZ2UgPSB0cnVlO1xyXG5cdG15RW52aXJvbm1lbnQ7XHJcblx0QEhvc3RMaXN0ZW5lcignZG9jdW1lbnQ6a2V5dXAuZW50ZXInLCBbJyRldmVudCddKVxyXG5cdEtleVVwRXZlbnQoZXZlbnQ6IEtleWJvYXJkRXZlbnQpIHtcclxuXHRcdGlmIChcclxuXHRcdFx0dGhpcy5hZGRpbmdQcm9wZXJ0aWVzICYmXHJcblx0XHRcdHRoaXMudXBsb2FkTWFuZ21lbnRTZXJ2aWNlLmZhaWxlZEZpbGVzLmxlbmd0aCA9PT0gMFxyXG5cdFx0KSB7XHJcblx0XHRcdGlmIChcclxuXHRcdFx0XHR0aGlzLnVwbG9hZE1hbmdtZW50U2VydmljZS51cGxvYWRlZEZpbGVzU3RhdHVzLnVwbG9hZEluUHJvZ3Jlc3MgJiZcclxuXHRcdFx0XHQhdGhpcy5kaXNhYmxlQ3JlYXRlV2hlbkZpbmlzaEJ0blxyXG5cdFx0XHQpIHtcclxuXHRcdFx0XHR0aGlzLmNyZWF0ZVdoZW5GaW5pc2goKTtcclxuXHRcdFx0fSBlbHNlIHtcclxuXHRcdFx0XHR0aGlzLmNyZWF0ZURvY3VtZW50KCk7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblx0Y29uc3RydWN0b3IoXHJcblx0XHRASW5qZWN0KE1BVF9ESUFMT0dfREFUQSkgcHVibGljIGRhdGEsXHJcblx0XHRwdWJsaWMgdXBsb2FkTWFuZ21lbnRTZXJ2aWNlOiBVcGxvYWRNYW5hZ21lbnRTZXJ2aWNlLFxyXG5cdFx0cHVibGljIGRpYWxvZ01hbmdtZW50U2VydmljZTogRGlhbG9nTWFuZ21lbnRTZXJ2aWNlLFxyXG5cdFx0cHJpdmF0ZSBmaWxlTWFuZ2VyU2VydmljZTogRmlsZU1hbmFnZXJTZXJ2aWNlLFxyXG5cdFx0cHJpdmF0ZSB0b3N0ZXJTZXJ2aWNlOiBDdXN0b21Ub2FzdHJTZXJ2aWNlLFxyXG5cdFx0cHVibGljIGZvcm1CdWlsZGVyOiBGb3JtQnVpbGRlcixcclxuXHRcdHByaXZhdGUgYWRhcGV0ZXI6IEFkYXB0ZXJTZXJ2aWNlLFxyXG5cdFx0cHJpdmF0ZSBmaWxlTWFuYWdlclNlcnZpY2U6IEZpbGVNYW5hZ2VyU2VydmljZSxcclxuXHRcdHByaXZhdGUgYXBwQ29uZlNlcnZpY2U6IEFwcENvbmZpZ1NlcnZpY2UsXHJcblx0XHRwcml2YXRlIGRhdGVIZWxwZXJTZXJ2aWNlOiBEYXRlSGVscGVyU2VydmljZSxcclxuXHRcdHByaXZhdGUgdXNlclNlcnZpY2U6IFVzZXJTZXJ2aWNlLFxyXG5cdFx0QEluamVjdCgnZW52aXJvbm1lbnQnKSBwcml2YXRlIGVudmlyb25tZW50LFxyXG5cdFx0aW5qZWN0b3I6IEluamVjdG9yLFxyXG5cdFx0cHJpdmF0ZSBkeW5hbWljRm9ybVNlcnZpY2U6IER5bmFtaWNGb3JtU2VydmljZVxyXG5cdCkge1xyXG5cdFx0c3VwZXIoaW5qZWN0b3IpO1xyXG5cdFx0dGhpcy5teUVudmlyb25tZW50ID0gdGhpcy5lbnZpcm9ubWVudDtcclxuXHJcblx0XHR0aGlzLmNyZWF0ZVdoZW5GaW5pc2hNb2RlID0gZmFsc2U7XHJcblx0XHR0aGlzLmFkZGluZ1Byb3BlcnRpZXMgPSB0aGlzLnVwbG9hZE1hbmdtZW50U2VydmljZS5hZGRpbmdQcm9wZXJ0aWVzTW9kZTtcclxuXHRcdHRoaXMuZmlsZVR5cGUgPSB0aGlzLmRpYWxvZ01hbmdtZW50U2VydmljZS5maWxlVHlwZTsgLy8gb2JqZWN0IHRoYXQgd2FzIGNvbnN0cnVjdGVkIGluc2lkZSBzdWJ0eXBlcyBzZXJ2aWNlXHJcblx0XHR0aGlzLnNvdXJjZSA9IHRoaXMuZGlhbG9nTWFuZ21lbnRTZXJ2aWNlLmFkZGluZ0Zyb207XHJcblx0XHR0aGlzLmZpbGVNYW5hZ2VyU2VydmljZVxyXG5cdFx0XHQuZ2V0RmlsZVNjaGVtYXModGhpcy5maWxlVHlwZS50eXBlKVxyXG5cdFx0XHQuc3Vic2NyaWJlKChzY2hlbWFzKSA9PiB7XHJcblx0XHRcdFx0c2NoZW1hcy5tYXAoKGl0ZW0pID0+IHtcclxuXHRcdFx0XHRcdGlmIChpdGVtLm5hbWUgPT09ICdnZW5lcmFsZG9jdW1lbnQnKSB7XHJcblx0XHRcdFx0XHRcdHRoaXMudXNpbmdFeHRyYUZpZWxkcyA9IHRydWU7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fSk7XHJcblx0XHRcdFx0dGhpcy5pbml0aWF0ZmlsZUZvcm0oKTtcclxuXHRcdFx0XHR0aGlzLnVwbG9hZE1hbmdtZW50U2VydmljZS5nZXR0aW5nUHJvcEZyb21Nb2RhbCh7XHJcblx0XHRcdFx0XHRmaWxlVHlwZTogdGhpcy5zb3VyY2UgPT09ICdmaWxlTWFuZ2VyJyA/IHRoaXMuZmlsZVR5cGUgOiB7fSxcclxuXHRcdFx0XHRcdGR5bmFtaWNGb3JtOiB0aGlzLmRpYWxvZ01hbmdtZW50U2VydmljZS5zdG9yZWREeW5hbWljRm9ybSxcclxuXHRcdFx0XHRcdGR5bmFtaWNEYXRhOiB7fSxcclxuXHRcdFx0XHRcdHN0YXRpY0Zvcm1WYWxpZDogdGhpcy51c2luZ0V4dHJhRmllbGRzID8gZmFsc2UgOiB0cnVlLFxyXG5cdFx0XHRcdFx0Z2VuZXJhbFZhbGlkYXRpb25WYWxpZDogdHJ1ZSxcclxuXHRcdFx0XHRcdHVzaW5nRXh0cmFGaWVsZHM6IHRoaXMudXNpbmdFeHRyYUZpZWxkcyxcclxuXHRcdFx0XHRcdHBhdGg6IHRoaXMuZGF0YS5wYXRoXHJcblx0XHRcdFx0fSk7XHJcblx0XHRcdH0pO1xyXG5cdH1cclxuXHJcblx0bmdPbkluaXQoKTogdm9pZCB7XHJcblx0XHRpZiAodGhpcy51cGxvYWRNYW5nbWVudFNlcnZpY2UudXBsb2FkRmluaXNoU3Vic2NyaXB0aW9uKSB7XHJcblx0XHRcdHRoaXMudXBsb2FkTWFuZ21lbnRTZXJ2aWNlLnVwbG9hZEZpbmlzaFN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xyXG5cdFx0fVxyXG5cdFx0dGhpcy51cGxvYWRNYW5nbWVudFNlcnZpY2UudXBsb2FkRmluaXNoU3Vic2NyaXB0aW9uID1cclxuXHRcdFx0dGhpcy51cGxvYWRNYW5nbWVudFNlcnZpY2Uub25VcGxvYWRGaW5pc2guc3Vic2NyaWJlKChyZXMpID0+IHtcclxuXHRcdFx0XHRpZiAoXHJcblx0XHRcdFx0XHR0aGlzLmNyZWF0ZVdoZW5GaW5pc2hNb2RlIHx8XHJcblx0XHRcdFx0XHR0aGlzLnVwbG9hZE1hbmdtZW50U2VydmljZS5mYWlsZWRGaWxlcy5sZW5ndGggPiAwXHJcblx0XHRcdFx0KSB7XHJcblx0XHRcdFx0XHR0aGlzLmNyZWF0ZURvY3VtZW50KCk7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9KTtcclxuXHR9XHJcblxyXG5cdGluaXRpYXRmaWxlRm9ybSgpIHtcclxuXHRcdGlmICh0aGlzLnVzaW5nRXh0cmFGaWVsZHMpIHtcclxuXHRcdFx0dGhpcy5maWxlRm9ybSA9IHRoaXMuZm9ybUJ1aWxkZXIuZ3JvdXAoe1xyXG5cdFx0XHRcdHRpdGxlOiBbJycsIFtWYWxpZGF0b3JzLnJlcXVpcmVkXV0sXHJcblx0XHRcdFx0ZGVzY3JpcHRpb246IFsnJ10sXHJcblx0XHRcdFx0c3ViamVjdDogWycnLCBbVmFsaWRhdG9ycy5yZXF1aXJlZF1dLFxyXG5cdFx0XHRcdGRvY3VtZW50TnVtYmVyOiBbJyddLFxyXG5cdFx0XHRcdGdkb2N1bWVudERhdGU6IFtudWxsLCBbVmFsaWRhdG9ycy5yZXF1aXJlZF1dLFxyXG5cdFx0XHRcdHNlY3JlY3lMZXZlbDogW251bGxdLFxyXG5cdFx0XHRcdGltcG9ydGFuY2VMZXZlbDogW251bGxdLFxyXG5cdFx0XHRcdGRlcGFydG1lbnRDb2RlOiBbJyddLFxyXG5cdFx0XHRcdGFnZW5jeUNhdGVnb3J5Q29kZTogW251bGxdLFxyXG5cdFx0XHRcdGFnZW5jeU5hbWU6IFtudWxsXSxcclxuXHRcdFx0XHRjb3VudHJ5Q2F0ZWdvcnlDb2RlOiBbbnVsbF0sXHJcblx0XHRcdFx0Y291bnRyeU5hbWU6IFtudWxsXSxcclxuXHRcdFx0XHRyZW1hcmtzOiBbJyddXHJcblx0XHRcdH0pO1xyXG5cdFx0fSBlbHNlIHtcclxuXHRcdFx0dGhpcy5maWxlRm9ybSA9IHRoaXMuZm9ybUJ1aWxkZXIuZ3JvdXAoe1xyXG5cdFx0XHRcdHRpdGxlOiBbJycsIFtWYWxpZGF0b3JzLnJlcXVpcmVkXV0sXHJcblx0XHRcdFx0ZGVzY3JpcHRpb246IFsnJ11cclxuXHRcdFx0fSk7XHJcblx0XHR9XHJcblx0XHR0aGlzLnN0YXRpY0Zvcm1GaWVsZHMgPVxyXG5cdFx0XHR0aGlzLmFwcENvbmZTZXJ2aWNlLm15Q29uZmlndXJhdGlvbi5zdGF0aWNGb3JtRmllbGRzO1xyXG5cdH1cclxuXHJcblx0Y3JlYXRlV2hlbkZpbmlzaDogRGlhbG9nQWN0aW9uVHlwZSA9ICgpID0+IHtcclxuXHRcdHRoaXMuY3JlYXRlV2hlbkZpbmlzaE1vZGUgPSB0cnVlO1xyXG5cdFx0cmV0dXJuIHRoaXMubWluaW1pekRpYWxvZygpO1xyXG5cdH07XHJcblxyXG5cdGNsb3NlKCkge1xyXG5cdFx0dGhpcy51cGxvYWRNYW5nbWVudFNlcnZpY2UuR2VuZXJhbEZvcm1WYWxpZGF0aW9uID0gdHJ1ZTtcclxuXHRcdHRoaXMuZmlsZUZvcm1TdWJzY3JpcHRpb24gPyB0aGlzLmZpbGVGb3JtU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCkgOiAnJztcclxuXHRcdHRoaXMuYWRkaW5nUHJvcGVydGllcyA9IGZhbHNlO1xyXG5cdFx0dGhpcy51cGxvYWRNYW5nbWVudFNlcnZpY2UucmVzZXRTdGF0dXMoKTtcclxuXHRcdHN1cGVyLmNsb3NlKCk7XHJcblx0XHRyZXR1cm4gb2YobnVsbCk7XHJcblx0fVxyXG5cclxuXHRzdGFydEFkZGluZ1Byb3BlcnRpZXMgPSAoKSA9PiB7XHJcblx0XHQvL2lmIHN0YXJ0aW5nIGZyb20gZmlsZW1uYWdlciB0aGVuIGkgaGF2ZSBmaXhlZCBmaWxlIHR5cGUgZm9yIGFsbCBhdHRhY2htZXRuIGFuZCBzaW5nbGUgZHluYWltYyBmb3JtICB0eXBlXHJcblx0XHRpZiAodGhpcy5zb3VyY2UgPT09ICdmaWxlTWFuZ2VyJykge1xyXG5cdFx0XHQvLyB0aGlzLmR5bmFtaWNGb3JtU2VydmljZS5nZXREeW5hbWljRm9ybSh0aGlzLmZpbGVUeXBlKS5zdWJzY3JpYmUocmVzID0+IHtcclxuXHJcblx0XHRcdHRoaXMudXBsb2FkTWFuZ21lbnRTZXJ2aWNlLnVwbG9hZGVkRmlsZXNTdGF0dXMudXBsb2FkZWRGaWxlcy5mb3JFYWNoKFxyXG5cdFx0XHRcdChmaWxlKSA9PiB7XHJcblx0XHRcdFx0XHRmaWxlWydmaWxlVHlwZSddID0gdGhpcy5zb3VyY2UgPT09ICdmaWxlTWFuZ2VyJyA/IHRoaXMuZmlsZVR5cGUgOiB7fTtcclxuXHRcdFx0XHRcdGZpbGVbJ2R5bmFtaWNGb3JtJ10gPSB0aGlzLmRpYWxvZ01hbmdtZW50U2VydmljZS5zdG9yZWREeW5hbWljRm9ybTtcclxuXHRcdFx0XHRcdGZpbGVbJ2R5bmFtaWNEYXRhJ10gPSB7fTtcclxuXHRcdFx0XHRcdGZpbGVbJ3N0YXRpY0Zvcm1WYWxpZCddID0gdGhpcy51c2luZ0V4dHJhRmllbGRzID8gZmFsc2UgOiB0cnVlO1xyXG5cdFx0XHRcdFx0ZmlsZVsnc3RhdGljRGF0YSddID0gdGhpcy5zZXRTdGF0aWNEYXRhKFxyXG5cdFx0XHRcdFx0XHRmaWxlLnRpdGxlID8gZmlsZS50aXRsZSA6IGZpbGUubmFtZVxyXG5cdFx0XHRcdFx0KTtcclxuXHRcdFx0XHRcdGZpbGVbJ2dlbmVyYWxWYWxpZGF0aW9uVmFsaWQnXSA9IHRydWU7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHQpO1xyXG5cdFx0XHR0aGlzLnVwbG9hZE1hbmdtZW50U2VydmljZS51cGxvYWRlZEZpbGVzU3RhdHVzLmFsbGZpbGVzLmZvckVhY2goXHJcblx0XHRcdFx0KGZpbGUpID0+IHtcclxuXHRcdFx0XHRcdGZpbGVbJ2ZpbGVUeXBlJ10gPSB0aGlzLnNvdXJjZSA9PT0gJ2ZpbGVNYW5nZXInID8gdGhpcy5maWxlVHlwZSA6IHt9O1xyXG5cdFx0XHRcdFx0ZmlsZVsnZHluYW1pY0Zvcm0nXSA9IHRoaXMuZGlhbG9nTWFuZ21lbnRTZXJ2aWNlLnN0b3JlZER5bmFtaWNGb3JtO1xyXG5cdFx0XHRcdFx0ZmlsZVsnZHluYW1pY0RhdGEnXSA9IHt9O1xyXG5cdFx0XHRcdFx0ZmlsZVsnc3RhdGljRm9ybVZhbGlkJ10gPSB0aGlzLnVzaW5nRXh0cmFGaWVsZHMgPyBmYWxzZSA6IHRydWU7XHJcblx0XHRcdFx0XHRmaWxlWydzdGF0aWNEYXRhJ10gPSB0aGlzLnNldFN0YXRpY0RhdGEoXHJcblx0XHRcdFx0XHRcdGZpbGUudGl0bGUgPyBmaWxlLnRpdGxlIDogZmlsZS5uYW1lXHJcblx0XHRcdFx0XHQpO1xyXG5cdFx0XHRcdFx0ZmlsZVsnZ2VuZXJhbFZhbGlkYXRpb25WYWxpZCddID0gdHJ1ZTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdCk7XHJcblx0XHR9XHJcblx0XHR0aGlzLmFkZGluZ1Byb3BlcnRpZXMgPSB0cnVlO1xyXG5cdFx0dGhpcy51cGxvYWRNYW5nbWVudFNlcnZpY2UuYWRkaW5nUHJvcGVydGllc01vZGUgPSB0cnVlO1xyXG5cdH07XHJcblxyXG5cdHNldFN0YXRpY0RhdGEodGl0bGUpIHtcclxuXHRcdGlmICh0aGlzLnVzaW5nRXh0cmFGaWVsZHMpIHtcclxuXHRcdFx0cmV0dXJuIHtcclxuXHRcdFx0XHR0aXRsZTogdGl0bGUsXHJcblx0XHRcdFx0ZGVzY3JpcHRpb246ICcnLFxyXG5cdFx0XHRcdHN1YmplY3Q6ICcnLFxyXG5cdFx0XHRcdGRvY3VtZW50TnVtYmVyOiAnJyxcclxuXHRcdFx0XHRnZG9jdW1lbnREYXRlOiBudWxsLFxyXG5cdFx0XHRcdHNlY3JlY3lMZXZlbDogdGhpcy5kYXRhLm91dGVyRGVmYXVsdFNlY3JlY3kgfHwgbnVsbCxcclxuXHRcdFx0XHRpbXBvcnRhbmNlTGV2ZWw6IHRoaXMuZGF0YS5vdXRlckRlZmF1bHRJbXBvcnRhbmNlIHx8IG51bGwsXHJcblx0XHRcdFx0ZGVwYXJ0bWVudENvZGU6IHRoaXMudXNlclNlcnZpY2UuZ2V0VXNlckRlcGFydG1lbnRGcm9tUGF0aChcclxuXHRcdFx0XHRcdHRoaXMuZGF0YS5wYXRoXHJcblx0XHRcdFx0KSxcclxuXHRcdFx0XHRhZ2VuY3lDYXRlZ29yeUNvZGU6IG51bGwsXHJcblx0XHRcdFx0YWdlbmN5TmFtZTogbnVsbCxcclxuXHRcdFx0XHRjb3VudHJ5Q2F0ZWdvcnlDb2RlOiBudWxsLFxyXG5cdFx0XHRcdGNvdW50cnlOYW1lOiBudWxsLFxyXG5cdFx0XHRcdHJlbWFya3M6ICcnXHJcblx0XHRcdH07XHJcblx0XHR9IGVsc2Uge1xyXG5cdFx0XHRyZXR1cm4ge1xyXG5cdFx0XHRcdHRpdGxlOiB0aXRsZSxcclxuXHRcdFx0XHRkZXNjcmlwdGlvbjogJydcclxuXHRcdFx0fTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdGNyZWF0ZURvY3VtZW50OiBEaWFsb2dBY3Rpb25UeXBlID0gKCkgPT4ge1xyXG5cdFx0dGhpcy5jcmVhdGluZyA9IHRydWU7XHJcblx0XHR0aGlzLnVwbG9hZE1hbmdtZW50U2VydmljZS5mYWlsZWRGaWxlcyA9IFtdO1xyXG5cdFx0dGhpcy51cGxvYWRNYW5nbWVudFNlcnZpY2UuR2VuZXJhbEZvcm1WYWxpZGF0aW9uID0gdGhpcy5jaGVja1ZhbGlkYXRpb24oKTtcclxuXHRcdGlmICh0aGlzLnVwbG9hZE1hbmdtZW50U2VydmljZS5HZW5lcmFsRm9ybVZhbGlkYXRpb24pIHtcclxuXHRcdFx0bGV0IGFwaUNhbGxzID0gW107XHJcblx0XHRcdGlmIChcclxuXHRcdFx0XHR0aGlzLmRhdGE/LnBhdGguaW5jbHVkZXMoJy9kZWZhdWx0LWRvbWFpbi93b3Jrc3BhY2VzL0RNU1dvcmtzcGFjZXMnKSB8fFxyXG5cdFx0XHRcdHRoaXMuZGF0YT8ucGF0aC5pbmNsdWRlcygnL2RlZmF1bHQtZG9tYWluL1VzZXJXb3Jrc3BhY2VzLycpXHJcblx0XHRcdCkge1xyXG5cdFx0XHRcdHRoaXMuY29uc3RydWN0UGF5TG9hZFRvV29ya1NwYWNlKFxyXG5cdFx0XHRcdFx0dGhpcy51cGxvYWRNYW5nbWVudFNlcnZpY2UudXBsb2FkZWRGaWxlc1N0YXR1cy51cGxvYWRlZEZpbGVzXHJcblx0XHRcdFx0KTtcclxuXHRcdFx0XHR0aGlzLnBheWxvYWRMaXN0LmZvckVhY2goKHBheWxvYWQpID0+IHtcclxuXHRcdFx0XHRcdGFwaUNhbGxzLnB1c2goXHJcblx0XHRcdFx0XHRcdHRoaXMuZmlsZU1hbmdlclNlcnZpY2UuY3JlYXRlRmlsZShcclxuXHRcdFx0XHRcdFx0XHRwYXlsb2FkLFxyXG5cdFx0XHRcdFx0XHRcdHRoaXMuZmlsZU1hbmFnZXJTZXJ2aWNlLnNlbGVjdGVkRm9sZGVySWQsXHJcblx0XHRcdFx0XHRcdFx0J0RNUy5DcmVhdGVEb2N1bWVudEZyb21CbG9iJ1xyXG5cdFx0XHRcdFx0XHQpXHJcblx0XHRcdFx0XHQpO1xyXG5cdFx0XHRcdH0pO1xyXG5cdFx0XHR9IGVsc2Uge1xyXG5cdFx0XHRcdHRoaXMuY29uc3RydWN0UGF5TG9hZChcclxuXHRcdFx0XHRcdHRoaXMudXBsb2FkTWFuZ21lbnRTZXJ2aWNlLnVwbG9hZGVkRmlsZXNTdGF0dXMudXBsb2FkZWRGaWxlc1xyXG5cdFx0XHRcdCk7XHJcblx0XHRcdFx0dGhpcy5wYXlsb2FkTGlzdC5mb3JFYWNoKChwYXlsb2FkKSA9PiB7XHJcblx0XHRcdFx0XHRhcGlDYWxscy5wdXNoKFxyXG5cdFx0XHRcdFx0XHR0aGlzLmZpbGVNYW5nZXJTZXJ2aWNlLmNyZWF0ZUZpbGUoXHJcblx0XHRcdFx0XHRcdFx0cGF5bG9hZCxcclxuXHRcdFx0XHRcdFx0XHR0aGlzLmZpbGVNYW5hZ2VyU2VydmljZS5zZWxlY3RlZEZvbGRlcklkXHJcblx0XHRcdFx0XHRcdClcclxuXHRcdFx0XHRcdCk7XHJcblx0XHRcdFx0fSk7XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdHJldHVybiBmb3JrSm9pbihhcGlDYWxscykucGlwZShcclxuXHRcdFx0XHR0YXAoXHJcblx0XHRcdFx0XHQocmVzcG9uc2UpID0+IHtcclxuXHRcdFx0XHRcdFx0dGhpcy5jcmVhdGluZyA9IGZhbHNlO1xyXG5cdFx0XHRcdFx0XHRyZXNwb25zZS5mb3JFYWNoKChzaW5nbGVSZXMpID0+IHtcclxuXHRcdFx0XHRcdFx0XHRpZiAoc2luZ2xlUmVzWydzdGF0dXMnXSAmJiBzaW5nbGVSZXNbJ3N0YXR1cyddID09PSAnZmFpbGVkJykge1xyXG5cdFx0XHRcdFx0XHRcdFx0dGhpcy51cGxvYWRNYW5nbWVudFNlcnZpY2UuZmFpbGVkRmlsZXMucHVzaChcclxuXHRcdFx0XHRcdFx0XHRcdFx0c2luZ2xlUmVzWydvcmlnaW5GaWxlJ11cclxuXHRcdFx0XHRcdFx0XHRcdCk7XHJcblx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHR9KTtcclxuXHRcdFx0XHRcdFx0aWYgKHRoaXMudXBsb2FkTWFuZ21lbnRTZXJ2aWNlLmZhaWxlZEZpbGVzLmxlbmd0aCA+IDApIHtcclxuXHRcdFx0XHRcdFx0XHR0aGlzLnRvc3RlclNlcnZpY2Uuc2hvdyhcclxuXHRcdFx0XHRcdFx0XHRcdCdlcnJvcicsXHJcblx0XHRcdFx0XHRcdFx0XHQnVE9BU1RFUi5FUlJPUicsXHJcblx0XHRcdFx0XHRcdFx0XHQnVE9BU1RFUi5VUExPQURfRVJST1InXHJcblx0XHRcdFx0XHRcdFx0KTtcclxuXHRcdFx0XHRcdFx0XHR0aGlzLnVwbG9hZE1hbmdtZW50U2VydmljZS51cGxvYWRlZEZpbGVzU3RhdHVzLnVwbG9hZGVkRmlsZXMgPSBbXTtcclxuXHRcdFx0XHRcdFx0XHR0aGlzLnNlbGVjdGVkRmlsZSA9IG51bGw7XHJcblx0XHRcdFx0XHRcdFx0dGhpcy51cGxvYWRNYW5nbWVudFNlcnZpY2UudXBsb2FkZWRGaWxlc1N0YXR1cy5hbGxmaWxlcyA9IFtcclxuXHRcdFx0XHRcdFx0XHRcdC4uLnRoaXMudXBsb2FkTWFuZ21lbnRTZXJ2aWNlLmZhaWxlZEZpbGVzXHJcblx0XHRcdFx0XHRcdFx0XTtcclxuXHRcdFx0XHRcdFx0fSBlbHNlIHtcclxuXHRcdFx0XHRcdFx0XHR0aGlzLmZpbGVNYW5nZXJTZXJ2aWNlLm9uUmVmcmVzaGluZ0ZpbGVNYW5nZXIubmV4dCgpO1xyXG5cdFx0XHRcdFx0XHRcdHRoaXMudG9zdGVyU2VydmljZS5zaG93KFxyXG5cdFx0XHRcdFx0XHRcdFx0J3N1Y2Nlc3MnLFxyXG5cdFx0XHRcdFx0XHRcdFx0J1RPQVNURVIuU1VDQ0VTUycsXHJcblx0XHRcdFx0XHRcdFx0XHQnVE9BU1RFUi5GSUxFX0NSRUFURURfU1VDQ0UnXHJcblx0XHRcdFx0XHRcdFx0KTtcclxuXHRcdFx0XHRcdFx0XHRzdXBlci5jbG9zZShmYWxzZSk7XHJcblx0XHRcdFx0XHRcdFx0dGhpcy51cGxvYWRNYW5nbWVudFNlcnZpY2UucmVzZXRTdGF0dXMoKTtcclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0fSxcclxuXHRcdFx0XHRcdChlcnJvcikgPT4ge1xyXG5cdFx0XHRcdFx0XHR0aGlzLmNyZWF0aW5nID0gZmFsc2U7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0KVxyXG5cdFx0XHQpO1xyXG5cdFx0fSBlbHNlIHtcclxuXHRcdFx0dGhpcy5jcmVhdGluZyA9IGZhbHNlO1xyXG5cdFx0XHRyZXR1cm4gb2YobnVsbCk7XHJcblx0XHR9XHJcblx0fTtcclxuXHJcblx0Y29uc3RydWN0UGF5TG9hZFRvV29ya1NwYWNlKGZpbGVzKSB7XHJcblx0XHR0aGlzLnBheWxvYWRMaXN0ID0gW107XHJcblx0XHRmaWxlcy5tYXAoKGZpbGUpID0+IHtcclxuXHRcdFx0bGV0IHBhcmFtID0ge1xyXG5cdFx0XHRcdGZpbGVpbmRleDogMCxcclxuXHRcdFx0XHRmaWxlTmFtZTogZmlsZS5zdGF0aWNEYXRhLnRpdGxlLFxyXG5cdFx0XHRcdGJhdGNoaWQ6IGZpbGUuYmF0Y2guYmxvYlsndXBsb2FkLWJhdGNoJ10sXHJcblx0XHRcdFx0ZGVzY3JpcHRpb246IHRoaXMuZmlsZUZvcm0uY29udHJvbHMuZGVzY3JpcHRpb24udmFsdWVcclxuXHRcdFx0fTtcclxuXHRcdFx0dGhpcy5wYXlsb2FkTGlzdC5wdXNoKHsgcGFyYW1zOiBwYXJhbSwgb3JpZ2luRmlsZTogZmlsZSB9KTtcclxuXHRcdH0pO1xyXG5cdH1cclxuXHJcblx0dHJ5QWdhaW5DcmVhdGVEb2N1bWVudDogRGlhbG9nQWN0aW9uVHlwZSA9ICgpID0+IHtcclxuXHRcdHRoaXMudXBsb2FkTWFuZ21lbnRTZXJ2aWNlLnVwbG9hZEZpbGVzTWFuZ21lbnQoXHJcblx0XHRcdHRoaXMudXBsb2FkTWFuZ21lbnRTZXJ2aWNlLmZhaWxlZEZpbGVzXHJcblx0XHQpO1xyXG5cdFx0cmV0dXJuIG9mKG51bGwpO1xyXG5cdH07XHJcblxyXG5cdGNvbnN0cnVjdFBheUxvYWQoZmlsZXMpIHtcclxuXHRcdHRoaXMucGF5bG9hZExpc3QgPSBbXTtcclxuXHRcdGZpbGVzLm1hcCgoZmlsZSkgPT4ge1xyXG5cdFx0XHRsZXQgcHJvcHMgPSB0aGlzLmR5bmFtaWNGb3JtU2VydmljZS5jb25zdHJ1Y3REeW5hbWljRm9ybVBheWxvYWQoXHJcblx0XHRcdFx0ZmlsZS5keW5hbWljRGF0YS5kYXRhID8gZmlsZS5keW5hbWljRGF0YS5kYXRhIDoge30sXHJcblx0XHRcdFx0ZmlsZS5keW5hbWljRm9ybVxyXG5cdFx0XHQpO1xyXG5cdFx0XHRsZXQgc3RhdGljRm9ybURhdGEgPSB0aGlzLm1hcHBpbmdTdGF0aWNEYXRhKGZpbGUuc3RhdGljRGF0YSk7XHJcblx0XHRcdGxldCBwYXJhbSA9IHtcclxuXHRcdFx0XHRkb2N1bWVudDoge1xyXG5cdFx0XHRcdFx0dHlwZTogZmlsZS5maWxlVHlwZS50eXBlLFxyXG5cdFx0XHRcdFx0bmFtZTogZmlsZS5zdGF0aWNEYXRhLnRpdGxlLFxyXG5cdFx0XHRcdFx0cHJvcGVydGllczoge1xyXG5cdFx0XHRcdFx0XHQuLi5wcm9wcyxcclxuXHRcdFx0XHRcdFx0Li4uc3RhdGljRm9ybURhdGEsXHJcblx0XHRcdFx0XHRcdCdmaWxlOmNvbnRlbnQnOiB7XHJcblx0XHRcdFx0XHRcdFx0J3VwbG9hZC1iYXRjaCc6IGZpbGUuYmF0Y2guYmxvYlsndXBsb2FkLWJhdGNoJ10sXHJcblx0XHRcdFx0XHRcdFx0J3VwbG9hZC1maWxlSWQnOiBmaWxlLmJhdGNoLmJsb2JbJ3VwbG9hZC1maWxlSWQnXSxcclxuXHRcdFx0XHRcdFx0XHQnbWltZS10eXBlJzogZmlsZS50eXBlXHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH07XHJcblx0XHRcdGlmIChmaWxlLmZpbGVUeXBlLmRvY3VtZW50Q29kZSkge1xyXG5cdFx0XHRcdHBhcmFtWydkb2N1bWVudFR5cGVDb2RlJ10gPSBmaWxlLmZpbGVUeXBlLmRvY3VtZW50Q29kZTtcclxuXHRcdFx0fVxyXG5cdFx0XHR0aGlzLnBheWxvYWRMaXN0LnB1c2goeyBwYXJhbXM6IHBhcmFtLCBvcmlnaW5GaWxlOiBmaWxlIH0pO1xyXG5cdFx0fSk7XHJcblx0fVxyXG5cclxuXHRtYXBwaW5nU3RhdGljRGF0YShkYXRhKSB7XHJcblx0XHRpZiAoZGF0YS5nZG9jdW1lbnREYXRlICYmIGRhdGEuZ2RvY3VtZW50RGF0ZSAhPT0gbnVsbCkge1xyXG5cdFx0XHRtb21lbnQubG9jYWxlKCdlbicpO1xyXG5cdFx0XHRkYXRhWydoZG9jdW1lbnREYXRlJ10gPSB0aGlzLmRhdGVIZWxwZXJTZXJ2aWNlLmdyZWdvcmlhblRvSGlqcmkoXHJcblx0XHRcdFx0ZGF0YS5nZG9jdW1lbnREYXRlLFxyXG5cdFx0XHRcdCdpWVlZWS1pTU0taUREJ1xyXG5cdFx0XHQpO1xyXG5cdFx0XHRkYXRhLmdkb2N1bWVudERhdGUgPVxyXG5cdFx0XHRcdG1vbWVudChkYXRhLmdkb2N1bWVudERhdGUpLmZvcm1hdCgnWVlZWS1NTS1ERFQwMDowMDowMC4wMDAnKSArICdaJztcclxuXHRcdH1cclxuXHRcdHJldHVybiB0aGlzLmFkYXBldGVyLmFkYXB0T3V0KGRhdGEsIHRoaXMuc3RhdGljRm9ybUZpZWxkcyk7XHJcblx0fVxyXG5cclxuXHRzZWxlY3RGaWxlKGZpbGUpIHtcclxuXHRcdGNvbnNvbGUubG9nKCdmaWxlIGluIHNlbGVjdCcsIGZpbGUpO1xyXG5cdFx0dGhpcy5zaG93U3RhdGljRm9ybSA9IGZhbHNlO1xyXG5cdFx0dGhpcy5hZ2VuY3lOYW1lRmlsdGVyID0gdW5kZWZpbmVkO1xyXG5cdFx0dGhpcy5jb3VudHJ5TmFtZUZpbHRlciA9IHVuZGVmaW5lZDtcclxuXHRcdC8vY29uc29sZS5sb2coZmlsZSk7XHJcblx0XHRpZiAoIXRoaXMuYWRkaW5nUHJvcGVydGllcykge1xyXG5cdFx0XHR0aGlzLnN0YXJ0QWRkaW5nUHJvcGVydGllcygpO1xyXG5cdFx0fVxyXG5cdFx0aWYgKHRoaXMuYWRkaW5nUHJvcGVydGllcykge1xyXG5cdFx0XHR0aGlzLnNob3dSZW5kZXJlciA9IGZhbHNlO1xyXG5cdFx0XHQvLyBjaGVjayBpZiBmaWxlIGhhcyBwcm9wZXJ0aWVzIG9mIGFkZGluZyBwcm9wZXJ0aWVzIG9yIG5vdCB0aGVuIGFkZCBpdCB0byBoaW1cclxuXHRcdFx0aWYgKCFmaWxlLmhhc093blByb3BlcnR5KCdmaWxlVHlwZScpKSB7XHJcblx0XHRcdFx0dGhpcy5keW5hbWljRm9ybVNlcnZpY2VcclxuXHRcdFx0XHRcdC5nZXREeW5hbWljRm9ybShcclxuXHRcdFx0XHRcdFx0dGhpcy5maWxlVHlwZS5kb2N1bWVudENvZGVcclxuXHRcdFx0XHRcdFx0XHQ/IHRoaXMuZmlsZVR5cGUuZG9jdW1lbnRDb2RlXHJcblx0XHRcdFx0XHRcdFx0OiB0aGlzLmZpbGVUeXBlLnR5cGVcclxuXHRcdFx0XHRcdClcclxuXHRcdFx0XHRcdC5zdWJzY3JpYmUoKHJlcykgPT4ge1xyXG5cdFx0XHRcdFx0XHRmaWxlWydmaWxlVHlwZSddID1cclxuXHRcdFx0XHRcdFx0XHR0aGlzLnNvdXJjZSA9PT0gJ2ZpbGVNYW5nZXInID8gdGhpcy5maWxlVHlwZSA6IHt9O1xyXG5cdFx0XHRcdFx0XHRmaWxlWydkeW5hbWljRm9ybSddID0gcmVzO1xyXG5cdFx0XHRcdFx0XHRmaWxlWydkeW5hbWljRGF0YSddID0ge307XHJcblx0XHRcdFx0XHRcdGZpbGVbJ3N0YXRpY0Zvcm1WYWxpZCddID0gdGhpcy51c2luZ0V4dHJhRmllbGRzID8gZmFsc2UgOiB0cnVlO1xyXG5cdFx0XHRcdFx0XHRmaWxlWydnZW5lcmFsVmFsaWRhdGlvblZhbGlkJ10gPSB0cnVlO1xyXG5cdFx0XHRcdFx0XHRmaWxlWydzdGF0aWNEYXRhJ10gPSB0aGlzLnNldFN0YXRpY0RhdGEoXHJcblx0XHRcdFx0XHRcdFx0ZmlsZS50aXRsZSA/IGZpbGUudGl0bGUgOiBmaWxlLm5hbWVcclxuXHRcdFx0XHRcdFx0KTtcclxuXHRcdFx0XHRcdFx0dGhpcy5zZWxlY3RlZEZpbGUgPSBmaWxlO1xyXG5cdFx0XHRcdFx0XHRpZiAoIXRoaXMuZmlsZUZvcm0pIHtcclxuXHRcdFx0XHRcdFx0XHR0aGlzLmluaXRpYXRmaWxlRm9ybSgpO1xyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdHRoaXMuZmlsZUZvcm0ucGF0Y2hWYWx1ZSh0aGlzLnNlbGVjdGVkRmlsZVsnc3RhdGljRGF0YSddKTtcclxuXHJcblx0XHRcdFx0XHRcdHRoaXMudGVtcG9yYXJ5RHlhbm1pY0RhdGEgPSB7fTtcclxuXHRcdFx0XHRcdFx0dGhpcy50ZW1wb3JhcnlEeWFubWljRGF0YSA9IHRoaXMuc2VsZWN0ZWRGaWxlLmR5bmFtaWNEYXRhLmRhdGFcclxuXHRcdFx0XHRcdFx0XHQ/IHsgLi4udGhpcy5zZWxlY3RlZEZpbGUuZHluYW1pY0RhdGEuZGF0YSB9XHJcblx0XHRcdFx0XHRcdFx0OiB7fTtcclxuXHRcdFx0XHRcdFx0c2V0VGltZW91dCgoKSA9PiB7XHJcblx0XHRcdFx0XHRcdFx0dGhpcy5zaG93UmVuZGVyZXIgPSB0cnVlO1xyXG5cdFx0XHRcdFx0XHRcdHRoaXMuc2hvd1N0YXRpY0Zvcm0gPSB0cnVlO1xyXG5cdFx0XHRcdFx0XHR9LCAyMDApO1xyXG5cdFx0XHRcdFx0XHQvL2NvbnNvbGUubG9nKGZpbGUpO1xyXG5cdFx0XHRcdFx0XHRpZiAoIXRoaXMuZmlsZUZvcm1TdWJzY3JpcHRpb24pIHtcclxuXHRcdFx0XHRcdFx0XHRzZXRUaW1lb3V0KCgpID0+IHtcclxuXHRcdFx0XHRcdFx0XHRcdHRoaXMuZmlsZUZvcm1TdWJzY3JpcHRpb24gPVxyXG5cdFx0XHRcdFx0XHRcdFx0XHR0aGlzLmZpbGVGb3JtLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUoKHJlcykgPT4ge1xyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdHRoaXMuc2VsZWN0ZWRGaWxlLnN0YXRpY0Zvcm1WYWxpZCA9IHRoaXMuZmlsZUZvcm1cclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdD8gdGhpcy5maWxlRm9ybS52YWxpZFxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0OiBmYWxzZTtcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHR0aGlzLnNlbGVjdGVkRmlsZS5zdGF0aWNEYXRhID0gdGhpcy5maWxlRm9ybVxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0PyB0aGlzLmZpbGVGb3JtLnZhbHVlXHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHQ6IHt9O1xyXG5cdFx0XHRcdFx0XHRcdFx0XHR9KTtcclxuXHJcblx0XHRcdFx0XHRcdFx0XHRpZiAodGhpcy5maWxlRm9ybS5nZXQoJ2FnZW5jeUNhdGVnb3J5Q29kZScpKSB7XHJcblx0XHRcdFx0XHRcdFx0XHRcdHRoaXMuYWdlbmN5Q2F0ZWdDb2RlU3Vic2NyaXB0aW9uID0gdGhpcy5maWxlRm9ybVxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdC5nZXQoJ2FnZW5jeUNhdGVnb3J5Q29kZScpXHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0LnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUoKHJlcykgPT4ge1xyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0dGhpcy5maWxlRm9ybS5nZXQoJ2FnZW5jeU5hbWUnKS5zZXRWYWx1ZShudWxsKTtcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdHRoaXMuYWdlbmN5TmFtZUZpbHRlciA9IHtcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0Y2F0ZWdvcnk6IHJlc1xyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0fTtcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHR9KTtcclxuXHRcdFx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdFx0XHRcdGlmICh0aGlzLmZpbGVGb3JtLmdldCgnY291bnRyeUNhdGVnb3J5Q29kZScpKSB7XHJcblx0XHRcdFx0XHRcdFx0XHRcdHRoaXMuY291bnRyeUNhdGVnQ29kZVN1YnNjcmlwdGlvbiA9IHRoaXMuZmlsZUZvcm1cclxuXHRcdFx0XHRcdFx0XHRcdFx0XHQuZ2V0KCdjb3VudHJ5Q2F0ZWdvcnlDb2RlJylcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHQudmFsdWVDaGFuZ2VzLnN1YnNjcmliZSgocmVzKSA9PiB7XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHR0aGlzLmZpbGVGb3JtLmdldCgnY291bnRyeU5hbWUnKS5zZXRWYWx1ZShudWxsKTtcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdHRoaXMuY291bnRyeU5hbWVGaWx0ZXIgPSB7XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdGNhdGVnb3J5OiByZXNcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdH07XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0fSk7XHJcblx0XHRcdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdFx0fSwgMjAwMCk7XHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdH0pO1xyXG5cdFx0XHR9IGVsc2Uge1xyXG5cdFx0XHRcdHRoaXMuc2VsZWN0ZWRGaWxlID0gZmlsZTtcclxuXHRcdFx0XHRpZiAoIXRoaXMuZmlsZUZvcm0pIHtcclxuXHRcdFx0XHRcdHRoaXMuaW5pdGlhdGZpbGVGb3JtKCk7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdHRoaXMuZmlsZUZvcm0ucGF0Y2hWYWx1ZSh7IC4uLnRoaXMuc2VsZWN0ZWRGaWxlWydzdGF0aWNEYXRhJ10gfSk7XHJcblx0XHRcdFx0aWYgKHRoaXMuc2VsZWN0ZWRGaWxlWydzdGF0aWNEYXRhJ11bJ2FnZW5jeUNhdGVnb3J5Q29kZSddKSB7XHJcblx0XHRcdFx0XHR0aGlzLmFnZW5jeU5hbWVGaWx0ZXIgPSB7XHJcblx0XHRcdFx0XHRcdGNhdGVnb3J5OiB0aGlzLnNlbGVjdGVkRmlsZVsnc3RhdGljRGF0YSddWydhZ2VuY3lDYXRlZ29yeUNvZGUnXVxyXG5cdFx0XHRcdFx0fTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0aWYgKHRoaXMuc2VsZWN0ZWRGaWxlWydzdGF0aWNEYXRhJ11bJ2NvdW50cnlDYXRlZ29yeUNvZGUnXSkge1xyXG5cdFx0XHRcdFx0dGhpcy5jb3VudHJ5TmFtZUZpbHRlciA9IHtcclxuXHRcdFx0XHRcdFx0Y2F0ZWdvcnk6IHRoaXMuc2VsZWN0ZWRGaWxlWydzdGF0aWNEYXRhJ11bJ2NvdW50cnlDYXRlZ29yeUNvZGUnXVxyXG5cdFx0XHRcdFx0fTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0dGhpcy50ZW1wb3JhcnlEeWFubWljRGF0YSA9IHt9O1xyXG5cdFx0XHRcdHRoaXMudGVtcG9yYXJ5RHlhbm1pY0RhdGEgPSB0aGlzLnNlbGVjdGVkRmlsZS5keW5hbWljRGF0YS5kYXRhXHJcblx0XHRcdFx0XHQ/IHRoaXMuc2VsZWN0ZWRGaWxlLmR5bmFtaWNEYXRhLmRhdGFcclxuXHRcdFx0XHRcdDoge307XHJcblx0XHRcdFx0c2V0VGltZW91dCgoKSA9PiB7XHJcblx0XHRcdFx0XHR0aGlzLnNob3dSZW5kZXJlciA9IHRydWU7XHJcblx0XHRcdFx0XHR0aGlzLnNob3dTdGF0aWNGb3JtID0gdHJ1ZTtcclxuXHRcdFx0XHR9LCAyMDApO1xyXG5cdFx0XHRcdGlmICghdGhpcy5maWxlRm9ybVN1YnNjcmlwdGlvbikge1xyXG5cdFx0XHRcdFx0c2V0VGltZW91dCgoKSA9PiB7XHJcblx0XHRcdFx0XHRcdHRoaXMuZmlsZUZvcm1TdWJzY3JpcHRpb24gPSB0aGlzLmZpbGVGb3JtLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUoXHJcblx0XHRcdFx0XHRcdFx0KHJlcykgPT4ge1xyXG5cdFx0XHRcdFx0XHRcdFx0dGhpcy5zZWxlY3RlZEZpbGUuc3RhdGljRm9ybVZhbGlkID0gdGhpcy5maWxlRm9ybVxyXG5cdFx0XHRcdFx0XHRcdFx0XHQ/IHRoaXMuZmlsZUZvcm0udmFsaWRcclxuXHRcdFx0XHRcdFx0XHRcdFx0OiBmYWxzZTtcclxuXHRcdFx0XHRcdFx0XHRcdHRoaXMuc2VsZWN0ZWRGaWxlLnN0YXRpY0RhdGEgPSB0aGlzLmZpbGVGb3JtXHJcblx0XHRcdFx0XHRcdFx0XHRcdD8gdGhpcy5maWxlRm9ybS52YWx1ZVxyXG5cdFx0XHRcdFx0XHRcdFx0XHQ6IHt9O1xyXG5cdFx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdFx0KTtcclxuXHJcblx0XHRcdFx0XHRcdGlmICh0aGlzLmZpbGVGb3JtLmdldCgnYWdlbmN5Q2F0ZWdvcnlDb2RlJykpIHtcclxuXHRcdFx0XHRcdFx0XHR0aGlzLmFnZW5jeUNhdGVnQ29kZVN1YnNjcmlwdGlvbiA9IHRoaXMuZmlsZUZvcm1cclxuXHRcdFx0XHRcdFx0XHRcdC5nZXQoJ2FnZW5jeUNhdGVnb3J5Q29kZScpXHJcblx0XHRcdFx0XHRcdFx0XHQudmFsdWVDaGFuZ2VzLnN1YnNjcmliZSgocmVzKSA9PiB7XHJcblx0XHRcdFx0XHRcdFx0XHRcdHRoaXMuZmlsZUZvcm0uZ2V0KCdhZ2VuY3lOYW1lJykuc2V0VmFsdWUobnVsbCk7XHJcblx0XHRcdFx0XHRcdFx0XHRcdHRoaXMuYWdlbmN5TmFtZUZpbHRlciA9IHtcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRjYXRlZ29yeTogcmVzXHJcblx0XHRcdFx0XHRcdFx0XHRcdH07XHJcblx0XHRcdFx0XHRcdFx0XHR9KTtcclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHRpZiAodGhpcy5maWxlRm9ybS5nZXQoJ2NvdW50cnlDYXRlZ29yeUNvZGUnKSkge1xyXG5cdFx0XHRcdFx0XHRcdHRoaXMuY291bnRyeUNhdGVnQ29kZVN1YnNjcmlwdGlvbiA9IHRoaXMuZmlsZUZvcm1cclxuXHRcdFx0XHRcdFx0XHRcdC5nZXQoJ2NvdW50cnlDYXRlZ29yeUNvZGUnKVxyXG5cdFx0XHRcdFx0XHRcdFx0LnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUoKHJlcykgPT4ge1xyXG5cdFx0XHRcdFx0XHRcdFx0XHR0aGlzLmZpbGVGb3JtLmdldCgnY291bnRyeU5hbWUnKS5zZXRWYWx1ZShudWxsKTtcclxuXHRcdFx0XHRcdFx0XHRcdFx0dGhpcy5jb3VudHJ5TmFtZUZpbHRlciA9IHtcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRjYXRlZ29yeTogcmVzXHJcblx0XHRcdFx0XHRcdFx0XHRcdH07XHJcblx0XHRcdFx0XHRcdFx0XHR9KTtcclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0fSwgMjAwMCk7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHRvbmR5bmFtaWNGb3JtQ2hhbmdlKGR5bmFtaWNEYXRhKSB7XHJcblx0XHRjb25zb2xlLmxvZyhkeW5hbWljRGF0YSk7XHJcblx0XHRpZiAoZHluYW1pY0RhdGEub3JpZ2luYWxFdmVudD8uaXNWYWxpZCkge1xyXG5cdFx0XHR0aGlzLmRpc2FibGVDcmVhdGVXaGVuRmluaXNoQnRuID0gZmFsc2U7XHJcblx0XHR9XHJcblx0XHRpZiAoZHluYW1pY0RhdGEuZGF0YSkge1xyXG5cdFx0XHR0aGlzLnNlbGVjdGVkRmlsZS5keW5hbWljRGF0YSA9IHsgLi4uZHluYW1pY0RhdGEgfTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdG1pbmltaXpEaWFsb2c6IERpYWxvZ0FjdGlvblR5cGUgPSAoKSA9PiB7XHJcblx0XHRzdXBlci5jbG9zZSh0cnVlKTtcclxuXHRcdHJldHVybiBvZihudWxsKTtcclxuXHR9O1xyXG5cclxuXHRyZW1vdmVJdGVtKGl0ZW0sIGxpc3RvZkZpbGVzKSB7XHJcblx0XHRjb25zdCByZW1vdmVJbmRleCA9IGxpc3RvZkZpbGVzLmZpbmRJbmRleChcclxuXHRcdFx0KGZpbGUpID0+IGZpbGUubmFtZSA9PT0gaXRlbS5uYW1lXHJcblx0XHQpO1xyXG5cdFx0bGlzdG9mRmlsZXMuc3BsaWNlKHJlbW92ZUluZGV4LCAxKTtcclxuXHRcdGlmIChpdGVtLm5hbWUgPT09IHRoaXMuc2VsZWN0ZWRGaWxlLm5hbWUpIHtcclxuXHRcdFx0aWYgKFxyXG5cdFx0XHRcdHRoaXMudXBsb2FkTWFuZ21lbnRTZXJ2aWNlLnVwbG9hZGVkRmlsZXNTdGF0dXMudXBsb2FkZWRGaWxlcy5sZW5ndGggPiAwXHJcblx0XHRcdCkge1xyXG5cdFx0XHRcdHRoaXMuc2VsZWN0RmlsZShcclxuXHRcdFx0XHRcdHRoaXMudXBsb2FkTWFuZ21lbnRTZXJ2aWNlLnVwbG9hZGVkRmlsZXNTdGF0dXMudXBsb2FkZWRGaWxlc1swXVxyXG5cdFx0XHRcdCk7XHJcblx0XHRcdH0gZWxzZSBpZiAoXHJcblx0XHRcdFx0dGhpcy51cGxvYWRNYW5nbWVudFNlcnZpY2UudXBsb2FkZWRGaWxlc1N0YXR1cy5hbGxmaWxlcy5sZW5ndGggPiAwXHJcblx0XHRcdCkge1xyXG5cdFx0XHRcdHRoaXMuc2VsZWN0RmlsZShcclxuXHRcdFx0XHRcdHRoaXMudXBsb2FkTWFuZ21lbnRTZXJ2aWNlLnVwbG9hZGVkRmlsZXNTdGF0dXMuYWxsZmlsZXNbMF1cclxuXHRcdFx0XHQpO1xyXG5cdFx0XHR9XHJcblx0XHRcdC8vIHRoaXMuc2VsZWN0ZWRGaWxlID0gbnVsbDtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdEFwcGx5Q2hhbmdlc1RvQWxsOiBEaWFsb2dBY3Rpb25UeXBlID0gKCkgPT4ge1xyXG5cdFx0dGhpcy51cGxvYWRNYW5nbWVudFNlcnZpY2UudXBsb2FkZWRGaWxlc1N0YXR1cy51cGxvYWRlZEZpbGVzLmZvckVhY2goXHJcblx0XHRcdChmaWxlKSA9PiB7XHJcblx0XHRcdFx0bGV0IHRpdGxlID0gZmlsZVsnc3RhdGljRGF0YSddXHJcblx0XHRcdFx0XHQ/IGZpbGVbJ3N0YXRpY0RhdGEnXVsndGl0bGUnXVxyXG5cdFx0XHRcdFx0OiBmaWxlLm5hbWU7XHJcblx0XHRcdFx0ZmlsZVsnZmlsZVR5cGUnXSA9IHRoaXMuc2VsZWN0ZWRGaWxlLmZpbGVUeXBlO1xyXG5cdFx0XHRcdGZpbGVbJ2R5bmFtaWNGb3JtJ10gPSB0aGlzLnNlbGVjdGVkRmlsZS5keW5hbWljRm9ybTtcclxuXHRcdFx0XHRmaWxlWydkeW5hbWljRGF0YSddID0gdGhpcy5zZWxlY3RlZEZpbGUuZHluYW1pY0RhdGE7XHJcblx0XHRcdFx0ZmlsZVsnc3RhdGljRm9ybVZhbGlkJ10gPSB0aGlzLnNlbGVjdGVkRmlsZS5zdGF0aWNGb3JtVmFsaWQ7XHJcblx0XHRcdFx0ZmlsZVsnc3RhdGljRGF0YSddID0geyAuLi50aGlzLmZpbGVGb3JtLnZhbHVlIH07XHJcblx0XHRcdFx0ZmlsZVsnc3RhdGljRGF0YSddWyd0aXRsZSddID0gdGl0bGU7XHJcblx0XHRcdH1cclxuXHRcdCk7XHJcblx0XHR0aGlzLnVwbG9hZE1hbmdtZW50U2VydmljZS51cGxvYWRlZEZpbGVzU3RhdHVzLmFsbGZpbGVzLmZvckVhY2goKGZpbGUpID0+IHtcclxuXHRcdFx0bGV0IHRpdGxlID0gZmlsZVsnc3RhdGljRGF0YSddID8gZmlsZVsnc3RhdGljRGF0YSddWyd0aXRsZSddIDogZmlsZS5uYW1lO1xyXG5cdFx0XHRmaWxlWydmaWxlVHlwZSddID0gdGhpcy5zZWxlY3RlZEZpbGUuZmlsZVR5cGU7XHJcblx0XHRcdGZpbGVbJ2R5bmFtaWNGb3JtJ10gPSB0aGlzLnNlbGVjdGVkRmlsZS5keW5hbWljRm9ybTtcclxuXHRcdFx0ZmlsZVsnZHluYW1pY0RhdGEnXSA9IHRoaXMuc2VsZWN0ZWRGaWxlLmR5bmFtaWNEYXRhO1xyXG5cdFx0XHRmaWxlWydzdGF0aWNGb3JtVmFsaWQnXSA9IHRoaXMuc2VsZWN0ZWRGaWxlLnN0YXRpY0Zvcm1WYWxpZDtcclxuXHRcdFx0ZmlsZVsnc3RhdGljRGF0YSddID0geyAuLi50aGlzLmZpbGVGb3JtLnZhbHVlIH07XHJcblx0XHRcdGZpbGVbJ3N0YXRpY0RhdGEnXVsndGl0bGUnXSA9IHRpdGxlO1xyXG5cdFx0fSk7XHJcblxyXG5cdFx0cmV0dXJuIG9mKG51bGwpO1xyXG5cdH07XHJcblxyXG5cdGNoZWNrVmFsaWRhdGlvbigpIHtcclxuXHRcdGxldCB2YWxpZGF0aW9uID0gdHJ1ZTtcclxuXHRcdHRoaXMudXBsb2FkTWFuZ21lbnRTZXJ2aWNlLnVwbG9hZGVkRmlsZXNTdGF0dXMudXBsb2FkZWRGaWxlcy5mb3JFYWNoKFxyXG5cdFx0XHQoZmlsZSkgPT4ge1xyXG5cdFx0XHRcdGNvbnNvbGUubG9nKCdmaWxlJywgZmlsZSk7XHJcblx0XHRcdFx0aWYgKFxyXG5cdFx0XHRcdFx0IWZpbGUuaGFzT3duUHJvcGVydHkoJ2ZpbGVUeXBlJykgfHxcclxuXHRcdFx0XHRcdGZpbGVbJ3N0YXRpY0Zvcm1WYWxpZCddID09PSBmYWxzZSB8fFxyXG5cdFx0XHRcdFx0ZmlsZS5keW5hbWljRGF0YT8ub3JpZ2luYWxFdmVudD8uaXNWYWxpZCA9PT0gZmFsc2VcclxuXHRcdFx0XHQpIHtcclxuXHRcdFx0XHRcdGZpbGVbJ2dlbmVyYWxWYWxpZGF0aW9uVmFsaWQnXSA9IGZhbHNlO1xyXG5cdFx0XHRcdFx0dmFsaWRhdGlvbiA9IGZhbHNlO1xyXG5cdFx0XHRcdH0gZWxzZSB7XHJcblx0XHRcdFx0XHRmaWxlWydnZW5lcmFsVmFsaWRhdGlvblZhbGlkJ10gPSB0cnVlO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0KTtcclxuXHRcdHRoaXMudXBsb2FkTWFuZ21lbnRTZXJ2aWNlLnVwbG9hZGVkRmlsZXNTdGF0dXMuYWxsZmlsZXMubWFwKChmaWxlKSA9PiB7XHJcblx0XHRcdGlmIChcclxuXHRcdFx0XHRmaWxlWydzdGF0aWNGb3JtVmFsaWQnXSA9PT0gZmFsc2UgfHxcclxuXHRcdFx0XHRmaWxlLmR5bmFtaWNEYXRhPy5vcmlnaW5hbEV2ZW50Py5pc1ZhbGlkID09PSBmYWxzZVxyXG5cdFx0XHQpIHtcclxuXHRcdFx0XHRmaWxlWydnZW5lcmFsVmFsaWRhdGlvblZhbGlkJ10gPSBmYWxzZTtcclxuXHRcdFx0XHR2YWxpZGF0aW9uID0gZmFsc2U7XHJcblx0XHRcdH0gZWxzZSB7XHJcblx0XHRcdFx0ZmlsZVsnZ2VuZXJhbFZhbGlkYXRpb25WYWxpZCddID0gdHJ1ZTtcclxuXHRcdFx0fVxyXG5cdFx0fSk7XHJcblxyXG5cdFx0cmV0dXJuIHZhbGlkYXRpb247XHJcblx0fVxyXG5cclxuXHRuZ09uRGVzdHJveSgpIHtcclxuXHRcdHRoaXMuZmlsZUZvcm1TdWJzY3JpcHRpb24gPyB0aGlzLmZpbGVGb3JtU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCkgOiAnJztcclxuXHRcdHRoaXMuY291bnRyeUNhdGVnQ29kZVN1YnNjcmlwdGlvblxyXG5cdFx0XHQ/IHRoaXMuY291bnRyeUNhdGVnQ29kZVN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpXHJcblx0XHRcdDogJyc7XHJcblx0XHR0aGlzLmFnZW5jeUNhdGVnQ29kZVN1YnNjcmlwdGlvblxyXG5cdFx0XHQ/IHRoaXMuYWdlbmN5Q2F0ZWdDb2RlU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKClcclxuXHRcdFx0OiAnJztcclxuXHR9XHJcbn1cclxuIiwiPG5kZi1udXhlby1kaWFsb2cgZGlhbG9nVGl0bGU9XCJ7eyAnQ1JFQVRFLmNyZWF0ZUZpbGUnIHwgdHJhbnNsYXRlIH19XCI+XHJcblx0PG5nLXRlbXBsYXRlICNjb250ZW50VGVtcGxhdGU+XHJcblx0XHQ8ZGl2IGNsYXNzPVwicmVsYXRpdmUgdy1mdWxsIGgtZnVsbFwiPlxyXG5cdFx0XHQ8ZGl2IGNsYXNzPVwiaW5lci13cmFwcGVyXCIgW25nQ2xhc3NdPVwieyAnZC1mbGV4JzogYWRkaW5nUHJvcGVydGllcyB9XCI+XHJcblx0XHRcdFx0PGRpdlxyXG5cdFx0XHRcdFx0Km5nSWY9XCJhZGRpbmdQcm9wZXJ0aWVzXCJcclxuXHRcdFx0XHRcdGNsYXNzPVwicHJvcGVydGllcy1zZWN0aW9uIHAtMyBvdmVyZmxvdy14LWhpZGRlbiBvdmVyZmxvdy15LWF1dG9cIlxyXG5cdFx0XHRcdD5cclxuXHRcdFx0XHRcdDxkaXZcclxuXHRcdFx0XHRcdFx0Y2xhc3M9XCJcIlxyXG5cdFx0XHRcdFx0XHQqbmdJZj1cInNlbGVjdGVkRmlsZSAmJiBzb3VyY2UgPT09ICdmaWxlTWFuZ2VyJyAmJiBzaG93U3RhdGljRm9ybVwiXHJcblx0XHRcdFx0XHQ+XHJcblx0XHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJtYi01XCI+XHJcblx0XHRcdFx0XHRcdFx0PGRpdiBjbGFzcz1cImxhYmVsLXN0eWxlXCI+XHJcblx0XHRcdFx0XHRcdFx0XHR7eyAnQ1JFQVRFLkZJTEVfVFlQRScgfCB0cmFuc2xhdGUgfX1cclxuXHRcdFx0XHRcdFx0XHQ8L2Rpdj5cclxuXHRcdFx0XHRcdFx0XHQ8ZGl2IGNsYXNzPVwidGV4dC1iYXNlIHRleHQtZ3JheS05MDBcIj5cclxuXHRcdFx0XHRcdFx0XHRcdHt7IGlzQXJhYmljID8gZmlsZVR5cGUuYXJhYmljVGV4dCA6IGZpbGVUeXBlLmVuZ2xpc2hUZXh0IH19XHJcblx0XHRcdFx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdFx0XHRcdDwvZGl2PlxyXG5cdFx0XHRcdFx0XHQ8ZGl2IGNsYXNzPVwiZmlsZS1maWVsZHMgbXQtM1wiIFNldFJ0bD5cclxuXHRcdFx0XHRcdFx0XHQ8Zm9ybSBbZm9ybUdyb3VwXT1cImZpbGVGb3JtXCI+XHJcblx0XHRcdFx0XHRcdFx0XHQ8IS0tIC0tLS0tLS0tLS0tLS0tLS0tb2xkIHN0YXRpYyBmb3JtIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gLS0+XHJcblx0XHRcdFx0XHRcdFx0XHQ8ZGl2PlxyXG5cdFx0XHRcdFx0XHRcdFx0XHQ8ZGl2IGNsYXNzPVwic2luZ2xlLWZpZWxkIG1iLTNcIj5cclxuXHRcdFx0XHRcdFx0XHRcdFx0XHQ8ZGl2IGNsYXNzPVwibGFiZWwtc3R5bGVcIj5cclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdHt7ICdDUkVBVEUuVElUTEUnIHwgdHJhbnNsYXRlXHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHR9fTxzcGFuIGNsYXNzPVwidGV4dC1yZWQtNTAwXCI+Kjwvc3Bhbj5cclxuXHRcdFx0XHRcdFx0XHRcdFx0XHQ8L2Rpdj5cclxuXHRcdFx0XHRcdFx0XHRcdFx0XHQ8aW5wdXRcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdGNsYXNzPVwiZmllbGQtc3R5bGVcIlxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0Zm9ybUNvbnRyb2xOYW1lPVwidGl0bGVcIlxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0cGxhY2Vob2xkZXI9XCIge3sgJ0NSRUFURS5USVRMRScgfCB0cmFuc2xhdGUgfX1cIlxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdC8+XHJcblx0XHRcdFx0XHRcdFx0XHRcdDwvZGl2PlxyXG5cdFx0XHRcdFx0XHRcdFx0XHQ8ZGl2IGNsYXNzPVwic2luZ2xlLWZpZWxkIG1iLTNcIj5cclxuXHRcdFx0XHRcdFx0XHRcdFx0XHQ8ZGl2IGNsYXNzPVwibGFiZWwtc3R5bGVcIj5cclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdHt7ICdDUkVBVEUuREVTQ1JJUFRJT04nIHwgdHJhbnNsYXRlIH19XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0PGlucHV0XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHRjbGFzcz1cImZpZWxkLXN0eWxlXCJcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdGZvcm1Db250cm9sTmFtZT1cImRlc2NyaXB0aW9uXCJcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdHBsYWNlaG9sZGVyPVwiIHt7ICdDUkVBVEUuREVTQ1JJUFRJT04nIHwgdHJhbnNsYXRlIH19XCJcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHQvPlxyXG5cdFx0XHRcdFx0XHRcdFx0XHQ8L2Rpdj5cclxuXHRcdFx0XHRcdFx0XHRcdDwvZGl2PlxyXG5cdFx0XHRcdFx0XHRcdFx0PCEtLSAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIC0tPlxyXG5cclxuXHRcdFx0XHRcdFx0XHRcdDwhLS0tLS0tLS0tLS0tLS0tLS0tIG5ldyBzdGF0aXMgZm9ybSAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLT5cclxuXHRcdFx0XHRcdFx0XHRcdDxkaXYgKm5nSWY9XCJ1c2luZ0V4dHJhRmllbGRzXCI+XHJcblx0XHRcdFx0XHRcdFx0XHRcdDxhcHAtZHluYW1pYy1maWVsZHMtcmVuZGVyZXJcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRbZm9ybV09XCJmaWxlRm9ybVwiXHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0W2FnZW5jeU5hbWVGaWx0ZXJdPVwiYWdlbmN5TmFtZUZpbHRlclwiXHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0W2NvdW50cnlOYW1lRmlsdGVyXT1cImNvdW50cnlOYW1lRmlsdGVyXCJcclxuXHRcdFx0XHRcdFx0XHRcdFx0PjwvYXBwLWR5bmFtaWMtZmllbGRzLXJlbmRlcmVyPlxyXG5cdFx0XHRcdFx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdFx0XHRcdFx0PC9mb3JtPlxyXG5cclxuXHRcdFx0XHRcdFx0XHQ8ZGl2IGNsYXNzPVwiZHluYW1pYy1wYXJ0XCIgKm5nSWY9XCJzaG93UmVuZGVyZXJcIj5cclxuXHRcdFx0XHRcdFx0XHRcdDxhcHAtZHluYW1pYy1mb3JtXHJcblx0XHRcdFx0XHRcdFx0XHRcdFtmb3JtXT1cInNlbGVjdGVkRmlsZS5keW5hbWljRm9ybVwiXHJcblx0XHRcdFx0XHRcdFx0XHRcdFtkYXRhXT1cInRlbXBvcmFyeUR5YW5taWNEYXRhXCJcclxuXHRcdFx0XHRcdFx0XHRcdFx0KGNoYW5nZSk9XCJvbmR5bmFtaWNGb3JtQ2hhbmdlKCRldmVudClcIlxyXG5cdFx0XHRcdFx0XHRcdFx0PjwvYXBwLWR5bmFtaWMtZm9ybT5cclxuXHRcdFx0XHRcdFx0XHQ8L2Rpdj5cclxuXHRcdFx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdFx0XHQ8L2Rpdj5cclxuXHRcdFx0XHRcdDxkaXZcclxuXHRcdFx0XHRcdFx0Y2xhc3M9XCJ3LWZ1bGwgaC1mdWxsIHAtMyBmbGV4IGp1c3RpZnktY2VudGVyIGl0ZW1zLWNlbnRlciB0ZXh0LWxnIHRleHQtZ3JheS05MDBcIlxyXG5cdFx0XHRcdFx0XHQqbmdJZj1cIiFzZWxlY3RlZEZpbGVcIlxyXG5cdFx0XHRcdFx0PlxyXG5cdFx0XHRcdFx0XHR7eyAnQ1JFQVRFLlNFTEVDVF9UT1NUQVJUX0FERElORycgfCB0cmFuc2xhdGUgfX1cclxuXHRcdFx0XHRcdDwvZGl2PlxyXG5cdFx0XHRcdDwvZGl2PlxyXG5cdFx0XHRcdDxkaXZcclxuXHRcdFx0XHRcdGNsYXNzPVwiYXR0YWNobWVudC10YWItYm9keSBvdmVyZmxvdy1oaWRkZW5cIlxyXG5cdFx0XHRcdFx0W25nQ2xhc3NdPVwieyAnYXR0YWNobWVudC1pbmVyLXNtYWxsLWJvZHknOiBhZGRpbmdQcm9wZXJ0aWVzIH1cIlxyXG5cdFx0XHRcdD5cclxuXHRcdFx0XHRcdDxhcHAtYXR0YWNobWVudHNcclxuXHRcdFx0XHRcdFx0W211bHRpcGxlXT1cInRydWVcIlxyXG5cdFx0XHRcdFx0XHQob25TZWxlY3RpbmdJdGVtKT1cInNlbGVjdEZpbGUoJGV2ZW50KVwiXHJcblx0XHRcdFx0XHQ+PC9hcHAtYXR0YWNobWVudHM+XHJcblx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdDwvZGl2PlxyXG5cdFx0XHQ8ZGl2XHJcblx0XHRcdFx0Y2xhc3M9XCJ3LWZ1bGwgdGV4dC1yZWQtNTAwIHRleHQtYmFzZSB0ZXh0LXN0YXJ0IHB4LTNcIlxyXG5cdFx0XHRcdCpuZ0lmPVwiIXVwbG9hZE1hbmdtZW50U2VydmljZS5HZW5lcmFsRm9ybVZhbGlkYXRpb25cIlxyXG5cdFx0XHQ+XHJcblx0XHRcdFx0e3sgJ0NSRUFURS5GSUxMX1JFUVVJUkVEX0ZJRUxEJyB8IHRyYW5zbGF0ZSB9fVxyXG5cdFx0XHQ8L2Rpdj5cclxuXHRcdDwvZGl2PlxyXG5cdDwvbmctdGVtcGxhdGU+XHJcblxyXG5cdDxuZy10ZW1wbGF0ZSAjYWN0aW9uc1RlbXBsYXRlIGxldC1kaWFsb2c9XCJkaWFsb2dcIj5cclxuXHRcdDwhLS0gV0FTX0lOX0ZMRVhfRElWIC0tPlxyXG5cdFx0PGJ1dHRvblxyXG5cdFx0XHQqbmdJZj1cIlxyXG5cdFx0XHRcdCh1cGxvYWRNYW5nbWVudFNlcnZpY2UudXBsb2FkZWRGaWxlc1N0YXR1cy51cGxvYWRJblByb2dyZXNzIHx8XHJcblx0XHRcdFx0XHR1cGxvYWRNYW5nbWVudFNlcnZpY2UudXBsb2FkZWRGaWxlc1N0YXR1cy51cGxvYWRlZEZpbGVzLmxlbmd0aCA+IDApICYmXHJcblx0XHRcdFx0IWFkZGluZ1Byb3BlcnRpZXNcclxuXHRcdFx0XCJcclxuXHRcdFx0KGNsaWNrKT1cImRpYWxvZy5leGVjdXRlQWN0aW9uKHN0YXJ0QWRkaW5nUHJvcGVydGllcylcIlxyXG5cdFx0XHRjbGFzcz1cInN1Ym1pc3Npb24tYnV0dG9uXCJcclxuXHRcdD5cclxuXHRcdFx0e3sgJ0JVVFRPTlMuQUREX1BST1BFUlRJRVMnIHwgdHJhbnNsYXRlIH19XHJcblx0XHQ8L2J1dHRvbj5cclxuXHRcdDxidXR0b25cclxuXHRcdFx0Km5nSWY9XCJcclxuXHRcdFx0XHRhZGRpbmdQcm9wZXJ0aWVzICYmXHJcblx0XHRcdFx0dXBsb2FkTWFuZ21lbnRTZXJ2aWNlLnVwbG9hZGVkRmlsZXNTdGF0dXMudXBsb2FkZWRGaWxlcy5sZW5ndGggK1xyXG5cdFx0XHRcdFx0dXBsb2FkTWFuZ21lbnRTZXJ2aWNlLnVwbG9hZGVkRmlsZXNTdGF0dXMuYWxsZmlsZXMubGVuZ3RoID5cclxuXHRcdFx0XHRcdDFcclxuXHRcdFx0XCJcclxuXHRcdFx0KGNsaWNrKT1cImRpYWxvZy5leGVjdXRlQWN0aW9uKEFwcGx5Q2hhbmdlc1RvQWxsKVwiXHJcblx0XHRcdFtkaXNhYmxlZF09XCIhc2VsZWN0ZWRGaWxlIHx8ICFzZWxlY3RlZEZpbGUuc3RhdGljRm9ybVZhbGlkXCJcclxuXHRcdFx0W25nQ2xhc3NdPVwie1xyXG5cdFx0XHRcdCdvcGFjaXR5LTMwIGN1cnNvci1ub3QtYWxsb3dlZCc6XHJcblx0XHRcdFx0XHQhc2VsZWN0ZWRGaWxlIHx8ICFzZWxlY3RlZEZpbGUuc3RhdGljRm9ybVZhbGlkLFxyXG5cdFx0XHRcdCdjdXJzb3ItcG9pbnRlciBob3Zlcjp0ZXh0LXdoaXRlIGhvdmVyOmJnLWdyYXktOTAwJzogIShcclxuXHRcdFx0XHRcdCFzZWxlY3RlZEZpbGUgfHwgIXNlbGVjdGVkRmlsZS5zdGF0aWNGb3JtVmFsaWRcclxuXHRcdFx0XHQpXHJcblx0XHRcdH1cIlxyXG5cdFx0XHRjbGFzcz1cInN1Ym1pc3Npb24tYnV0dG9uIG14LTJcIlxyXG5cdFx0PlxyXG5cdFx0XHR7eyAnQlVUVE9OUy5BUFBMWV9UT19BTEwnIHwgdHJhbnNsYXRlIH19XHJcblx0XHQ8L2J1dHRvbj5cclxuXHRcdDwhLS0gV0FTX0lOX0ZMRVhfRElWIC0tPlxyXG5cclxuXHRcdDxuZy1jb250YWluZXJcclxuXHRcdFx0Km5nSWY9XCJcclxuXHRcdFx0XHRhZGRpbmdQcm9wZXJ0aWVzICYmXHJcblx0XHRcdFx0IXVwbG9hZE1hbmdtZW50U2VydmljZS51cGxvYWRlZEZpbGVzU3RhdHVzLnVwbG9hZEluUHJvZ3Jlc3MgJiZcclxuXHRcdFx0XHR1cGxvYWRNYW5nbWVudFNlcnZpY2UuZmFpbGVkRmlsZXMubGVuZ3RoID09PSAwXHJcblx0XHRcdFwiXHJcblx0XHQ+XHJcblx0XHRcdDxidXR0b25cclxuXHRcdFx0XHQoY2xpY2spPVwiZGlhbG9nLmV4ZWN1dGVBY3Rpb24oY3JlYXRlRG9jdW1lbnQpXCJcclxuXHRcdFx0XHRjbGFzcz1cInN1Ym1pc3Npb24tYnV0dG9uIHJlbGF0aXZlXCJcclxuXHRcdFx0XHRbZGlzYWJsZWRdPVwiY3JlYXRpbmdcIlxyXG5cdFx0XHQ+XHJcblx0XHRcdFx0PHNwYW4gKm5nSWY9XCIhY3JlYXRpbmc7IGVsc2UgbG9hZGVyXCI+e3tcclxuXHRcdFx0XHRcdCdCVVRUT05TLkNSRUFURScgfCB0cmFuc2xhdGVcclxuXHRcdFx0XHR9fTwvc3Bhbj5cclxuXHRcdFx0PC9idXR0b24+XHJcblx0XHRcdDxuZy10ZW1wbGF0ZSAjbG9hZGVyPlxyXG5cdFx0XHRcdDxtYXQtc3Bpbm5lclxyXG5cdFx0XHRcdFx0W3ZhbHVlXT1cIjkwXCJcclxuXHRcdFx0XHRcdFtzdHJva2VXaWR0aF09XCIzXCJcclxuXHRcdFx0XHRcdG92ZXJsYXk9XCJ0cnVlXCJcclxuXHRcdFx0XHRcdFtkaWFtZXRlcl09XCIyNVwiXHJcblx0XHRcdFx0XHRjb2xvcj1cIndhcm5cIlxyXG5cdFx0XHRcdD5cclxuXHRcdFx0XHQ8L21hdC1zcGlubmVyPlxyXG5cdFx0XHQ8L25nLXRlbXBsYXRlPlxyXG5cdFx0PC9uZy1jb250YWluZXI+XHJcblxyXG5cdFx0PGJ1dHRvblxyXG5cdFx0XHQqbmdJZj1cIlxyXG5cdFx0XHRcdGFkZGluZ1Byb3BlcnRpZXMgJiZcclxuXHRcdFx0XHQhdXBsb2FkTWFuZ21lbnRTZXJ2aWNlLnVwbG9hZGVkRmlsZXNTdGF0dXMudXBsb2FkSW5Qcm9ncmVzcyAmJlxyXG5cdFx0XHRcdHVwbG9hZE1hbmdtZW50U2VydmljZS5mYWlsZWRGaWxlcy5sZW5ndGggPiAwXHJcblx0XHRcdFwiXHJcblx0XHRcdChjbGljayk9XCJkaWFsb2cuZXhlY3V0ZUFjdGlvbih0cnlBZ2FpbkNyZWF0ZURvY3VtZW50KVwiXHJcblx0XHRcdGNsYXNzPVwic3VibWlzc2lvbi1idXR0b25cIlxyXG5cdFx0PlxyXG5cdFx0XHR7eyAnQlVUVE9OUy5UUllfQUdBSU4nIHwgdHJhbnNsYXRlIH19XHJcblx0XHQ8L2J1dHRvbj5cclxuXHJcblx0XHQ8YnV0dG9uXHJcblx0XHRcdFtkaXNhYmxlZF09XCIhZmlsZUZvcm0/LnZhbGlkIHx8IGRpc2FibGVDcmVhdGVXaGVuRmluaXNoQnRuXCJcclxuXHRcdFx0Km5nSWY9XCJcclxuXHRcdFx0XHRhZGRpbmdQcm9wZXJ0aWVzICYmXHJcblx0XHRcdFx0dXBsb2FkTWFuZ21lbnRTZXJ2aWNlLnVwbG9hZGVkRmlsZXNTdGF0dXMudXBsb2FkSW5Qcm9ncmVzc1xyXG5cdFx0XHRcIlxyXG5cdFx0XHQoY2xpY2spPVwiZGlhbG9nLmV4ZWN1dGVBY3Rpb24oY3JlYXRlV2hlbkZpbmlzaClcIlxyXG5cdFx0XHRjbGFzcz1cInN1Ym1pc3Npb24tYnV0dG9uIHctNDRcIlxyXG5cdFx0PlxyXG5cdFx0XHR7eyAnQlVUVE9OUy5DUkVBVEVfV0hFTl9GSU5TSCcgfCB0cmFuc2xhdGUgfX1cclxuXHRcdDwvYnV0dG9uPlxyXG5cclxuXHRcdDwhLS0gV0FTX0lOX0ZMRVhfRElWIC0tPlxyXG5cdFx0PGJ1dHRvblxyXG5cdFx0XHRjbGFzcz1cImNhbmNlbGF0aW9uLWJ1dHRvbiBteC0yXCJcclxuXHRcdFx0KGNsaWNrKT1cImRpYWxvZy5leGVjdXRlQWN0aW9uKG1pbmltaXpEaWFsb2cpXCJcclxuXHRcdFx0Km5nSWY9XCJcclxuXHRcdFx0XHR1cGxvYWRNYW5nbWVudFNlcnZpY2UudXBsb2FkZWRGaWxlc1N0YXR1cy51cGxvYWRJblByb2dyZXNzIHx8XHJcblx0XHRcdFx0dXBsb2FkTWFuZ21lbnRTZXJ2aWNlLnVwbG9hZGVkRmlsZXNTdGF0dXMubnVtYmVyT2ZVcGxvYWRlZEZpbGVzICE9PSAwIHx8XHJcblx0XHRcdFx0YWRkaW5nUHJvcGVydGllc1xyXG5cdFx0XHRcIlxyXG5cdFx0PlxyXG5cdFx0XHR7eyAnQlVUVE9OUy5NSU5JTUlaRUQnIHwgdHJhbnNsYXRlIH19XHJcblx0XHQ8L2J1dHRvbj5cclxuXHRcdDwhLS0gPGJ1dHRvbiBjbGFzcz1cImNhbmNlbGF0aW9uLWJ1dHRvblwiIChjbGljayk9XCIgZGlhbG9nLmV4ZWN1dGVBY3Rpb24oY2xvc2VEaWFsb2cpXCI+XHJcbnt7ICdCVVRUT05TLkNBTkNFTCcgfCB0cmFuc2xhdGUgfX1cclxuPC9idXR0b24+IC0tPlxyXG5cdDwvbmctdGVtcGxhdGU+XHJcbjwvbmRmLW51eGVvLWRpYWxvZz5cclxuIl19
|
|
526
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLW1vZGFsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9udXhlby1kZXZlbG9wbWVudC1mcmFtZXdvcmsvc3JjL2xpYi9jb21wb25lbnRzL2ZpbGUtbWFuZ2VyL2NvbXBvbmVudHMvY3JlYXRlLW1vZGFsL2NyZWF0ZS1tb2RhbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9maWxlLW1hbmdlci9jb21wb25lbnRzL2NyZWF0ZS1tb2RhbC9jcmVhdGUtbW9kYWwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNOLFNBQVMsRUFDVCxZQUFZLEVBQ1osTUFBTSxFQUlOLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBMEIsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDcEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBTTNELE9BQU8sS0FBSyxNQUFNLE1BQU0sUUFBUSxDQUFDO0FBQ2pDLE9BQU8sRUFBRSxRQUFRLEVBQUUsRUFBRSxFQUFnQixNQUFNLE1BQU0sQ0FBQztBQUtsRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwwREFBMEQsQ0FBQztBQUUvRixPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBT3JDLE1BQU0sT0FBTyxvQkFDWixTQUFRLG1CQUFtRDtJQTZDM0QsWUFDaUMsSUFBSSxFQUM3QixxQkFBNkMsRUFDN0MscUJBQTRDLEVBQzNDLGlCQUFxQyxFQUNyQyxhQUFrQyxFQUNuQyxXQUF3QixFQUN2QixRQUF3QixFQUN4QixrQkFBc0MsRUFDdEMsY0FBZ0MsRUFDaEMsaUJBQW9DLEVBQ3BDLFdBQXdCLEVB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QXFNQTs0RkR2S2Esb0JBQW9CO2tCQUxoQyxTQUFTO21CQUFDO29CQUNWLFFBQVEsRUFBRSxrQkFBa0I7b0JBQzVCLFdBQVcsRUFBRSwrQkFBK0I7b0JBQzVDLFNBQVMsRUFBRSxDQUFDLCtCQUErQixDQUFDO2lCQUM1Qzs7MEJBZ0RFLE1BQU07MkJBQUMsZUFBZTs7MEJBV3RCLE1BQU07MkJBQUMsYUFBYTtxR0EzQnRCLFVBQVU7c0JBRFQsWUFBWTt1QkFBQyxzQkFBc0IsRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcblx0Q29tcG9uZW50LFxyXG5cdEhvc3RMaXN0ZW5lcixcclxuXHRJbmplY3QsXHJcblx0SW5qZWN0b3IsXHJcblx0T25EZXN0cm95LFxyXG5cdE9uSW5pdFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBGb3JtQnVpbGRlciwgRm9ybUdyb3VwLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBNQVRfRElBTE9HX0RBVEEgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xyXG5pbXBvcnQgeyBVcGxvYWRNYW5hZ21lbnRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vc2hhcmVkLXNlcnZpY2VzL3VwbG9hZC1tYW5hZ21lbnQuc2VydmljZSc7XHJcbmltcG9ydCB7IERpYWxvZ01hbmdtZW50U2VydmljZSB9IGZyb20gJy4uLy4uLy4uLy4uL3NoYXJlZC1zZXJ2aWNlcy9kaWFsb2ctbWFuZ21lbnQuc2VydmljZSc7XHJcbmltcG9ydCB7IER5bmFtaWNGb3JtU2VydmljZSB9IGZyb20gJy4uLy4uLy4uLy4uL3NoYXJlZC1zZXJ2aWNlcy9keW5hbWljLWZvcm0uc2VydmljZSc7XHJcbmltcG9ydCB7IEZpbGVNYW5hZ2VyU2VydmljZSB9IGZyb20gJy4uLy4uLy4uLy4uL3NoYXJlZC1zZXJ2aWNlcy9maWxlLW1hbmFnZXIuc2VydmljZSc7XHJcbmltcG9ydCB7IFVzZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vc2hhcmVkLXNlcnZpY2VzL3VzZXIuc2VydmljZSc7XHJcbmltcG9ydCAqIGFzIG1vbWVudCBmcm9tICdtb21lbnQnO1xyXG5pbXBvcnQgeyBmb3JrSm9pbiwgb2YsIFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBDdXN0b21Ub2FzdHJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vY3VzdG9tLXRvYXN0ci9zZXJ2aWNlcy9jdXN0b20tdG9hc3RyLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBEYXRlSGVscGVyU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL2hpanJpLWdyZWdvcmlhbi1kYXRlcGlja2VyL3NlcnZpY2VzL2RhdGUtaGVscGVyLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBBZGFwdGVyU2VydmljZSB9IGZyb20gJy4uLy4uLy4uLy4uL2NvcmUvYWRhcHRlcnMvYWRhcHRlci5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQXBwQ29uZmlnU2VydmljZSB9IGZyb20gJy4uLy4uLy4uLy4uL2NvbmZpZ3VyYXRpb24vYXBwLWNvbmZpZy5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQmFzZURpYWxvZ0NvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uLy4uL3NoYXJlZC9jb21wb25lbnRzL2Jhc2UvYmFzZS1kaWFsb2cuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRGlhbG9nQWN0aW9uVHlwZSB9IGZyb20gJy4uLy4uLy4uLy4uL3NoYXJlZC9jb21wb25lbnRzL251eGVvLWRpYWxvZy9tb2RlbHMvZGlhbG9nLW9wdGlvbi5tb2RlbCc7XHJcbmltcG9ydCB7IHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG5cdHNlbGVjdG9yOiAnYXBwLWNyZWF0ZS1tb2RhbCcsXHJcblx0dGVtcGxhdGVVcmw6ICcuL2NyZWF0ZS1tb2RhbC5jb21wb25lbnQuaHRtbCcsXHJcblx0c3R5bGVVcmxzOiBbJy4vY3JlYXRlLW1vZGFsLmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIENyZWF0ZU1vZGFsQ29tcG9uZW50XHJcblx0ZXh0ZW5kcyBCYXNlRGlhbG9nQ29tcG9uZW50PENyZWF0ZU1vZGFsQ29tcG9uZW50LCBhbnksIGFueT5cclxuXHRpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95XHJcbntcclxuXHRhZGRpbmdQcm9wZXJ0aWVzID0gZmFsc2U7XHJcblx0ZmlsZVR5cGVGb3JtOiBGb3JtR3JvdXA7XHJcblx0ZHluYW1pY0Zvcm07XHJcblx0ZHluYW1pY0RhdGE7XHJcblx0c2VsZWN0ZWRGaWxlO1xyXG5cdGZpbGVUeXBlO1xyXG5cdHNvdXJjZTtcclxuXHRwYXlsb2FkTGlzdCA9IFtdO1xyXG5cdGNyZWF0ZVdoZW5GaW5pc2hNb2RlID0gZmFsc2U7XHJcblx0ZmlsZUZvcm1TdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcclxuXHRjb3VudHJ5Q2F0ZWdDb2RlU3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XHJcblx0YWdlbmN5Q2F0ZWdDb2RlU3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XHJcblx0dGVtcG9yYXJ5RHlhbm1pY0RhdGE7XHJcblx0c2hvd1JlbmRlcmVyID0gZmFsc2U7IC8vIHVzZWQgdG8gZm9yY2UgcmVuZGVyZXIgdG8gZmVlbCBjaGFuZ2VzIGluIGZvcm1zIGFuZCB2YWx1ZSB3aGVuIGNoYW5naW5nIGZpbGVzXHJcblx0Ly8gdXBsb2FkRmluaXNoU3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XHJcblx0dXNpbmdFeHRyYUZpZWxkcyA9IGZhbHNlOyAvLyBmbGFnZSB0byBzd2l0Y2ggYmV0d2VlbiBzdGF0aWMgZm9ybSB0eXBlc1xyXG5cclxuXHRmaWxlRm9ybTogRm9ybUdyb3VwO1xyXG5cdHN0YXRpY0Zvcm1GaWVsZHM7XHJcblx0YWdlbmN5TmFtZUZpbHRlcjtcclxuXHRjb3VudHJ5TmFtZUZpbHRlcjtcclxuXHRzaG93U3RhdGljRm9ybSA9IGZhbHNlO1xyXG5cdGRpc2FibGVDcmVhdGVXaGVuRmluaXNoQnRuID0gdHJ1ZTtcclxuXHRjcmVhdGluZyA9IGZhbHNlO1xyXG5cdGRpc3BsYXlOb3RlTWVzc2FnZSA9IHRydWU7XHJcblx0bXlFbnZpcm9ubWVudDtcclxuXHRASG9zdExpc3RlbmVyKCdkb2N1bWVudDprZXl1cC5lbnRlcicsIFsnJGV2ZW50J10pXHJcblx0S2V5VXBFdmVudChldmVudDogS2V5Ym9hcmRFdmVudCkge1xyXG5cdFx0aWYgKFxyXG5cdFx0XHR0aGlzLmFkZGluZ1Byb3BlcnRpZXMgJiZcclxuXHRcdFx0dGhpcy51cGxvYWRNYW5nbWVudFNlcnZpY2UuZmFpbGVkRmlsZXMubGVuZ3RoID09PSAwXHJcblx0XHQpIHtcclxuXHRcdFx0aWYgKFxyXG5cdFx0XHRcdHRoaXMudXBsb2FkTWFuZ21lbnRTZXJ2aWNlLnVwbG9hZGVkRmlsZXNTdGF0dXMudXBsb2FkSW5Qcm9ncmVzcyAmJlxyXG5cdFx0XHRcdCF0aGlzLmRpc2FibGVDcmVhdGVXaGVuRmluaXNoQnRuXHJcblx0XHRcdCkge1xyXG5cdFx0XHRcdHRoaXMuY3JlYXRlV2hlbkZpbmlzaCgpO1xyXG5cdFx0XHR9IGVsc2Uge1xyXG5cdFx0XHRcdHRoaXMuY3JlYXRlRG9jdW1lbnQoKTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHRjb25zdHJ1Y3RvcihcclxuXHRcdEBJbmplY3QoTUFUX0RJQUxPR19EQVRBKSBwdWJsaWMgZGF0YSxcclxuXHRcdHB1YmxpYyB1cGxvYWRNYW5nbWVudFNlcnZpY2U6IFVwbG9hZE1hbmFnbWVudFNlcnZpY2UsXHJcblx0XHRwdWJsaWMgZGlhbG9nTWFuZ21lbnRTZXJ2aWNlOiBEaWFsb2dNYW5nbWVudFNlcnZpY2UsXHJcblx0XHRwcml2YXRlIGZpbGVNYW5nZXJTZXJ2aWNlOiBGaWxlTWFuYWdlclNlcnZpY2UsXHJcblx0XHRwcml2YXRlIHRvc3RlclNlcnZpY2U6IEN1c3RvbVRvYXN0clNlcnZpY2UsXHJcblx0XHRwdWJsaWMgZm9ybUJ1aWxkZXI6IEZvcm1CdWlsZGVyLFxyXG5cdFx0cHJpdmF0ZSBhZGFwZXRlcjogQWRhcHRlclNlcnZpY2UsXHJcblx0XHRwcml2YXRlIGZpbGVNYW5hZ2VyU2VydmljZTogRmlsZU1hbmFnZXJTZXJ2aWNlLFxyXG5cdFx0cHJpdmF0ZSBhcHBDb25mU2VydmljZTogQXBwQ29uZmlnU2VydmljZSxcclxuXHRcdHByaXZhdGUgZGF0ZUhlbHBlclNlcnZpY2U6IERhdGVIZWxwZXJTZXJ2aWNlLFxyXG5cdFx0cHJpdmF0ZSB1c2VyU2VydmljZTogVXNlclNlcnZpY2UsXHJcblx0XHRASW5qZWN0KCdlbnZpcm9ubWVudCcpIHByaXZhdGUgZW52aXJvbm1lbnQsXHJcblx0XHRpbmplY3RvcjogSW5qZWN0b3IsXHJcblx0XHRwcml2YXRlIGR5bmFtaWNGb3JtU2VydmljZTogRHluYW1pY0Zvcm1TZXJ2aWNlXHJcblx0KSB7XHJcblx0XHRzdXBlcihpbmplY3Rvcik7XHJcblx0XHR0aGlzLm15RW52aXJvbm1lbnQgPSB0aGlzLmVudmlyb25tZW50O1xyXG5cclxuXHRcdHRoaXMuY3JlYXRlV2hlbkZpbmlzaE1vZGUgPSBmYWxzZTtcclxuXHRcdHRoaXMuYWRkaW5nUHJvcGVydGllcyA9IHRoaXMudXBsb2FkTWFuZ21lbnRTZXJ2aWNlLmFkZGluZ1Byb3BlcnRpZXNNb2RlO1xyXG5cdFx0dGhpcy5maWxlVHlwZSA9IHRoaXMuZGlhbG9nTWFuZ21lbnRTZXJ2aWNlLmZpbGVUeXBlOyAvLyBvYmplY3QgdGhhdCB3YXMgY29uc3RydWN0ZWQgaW5zaWRlIHN1YnR5cGVzIHNlcnZpY2VcclxuXHRcdHRoaXMuc291cmNlID0gdGhpcy5kaWFsb2dNYW5nbWVudFNlcnZpY2UuYWRkaW5nRnJvbTtcclxuXHRcdHRoaXMuZmlsZU1hbmFnZXJTZXJ2aWNlXHJcblx0XHRcdC5nZXRGaWxlU2NoZW1hcyh0aGlzLmZpbGVUeXBlLnR5cGUpXHJcblx0XHRcdC5zdWJzY3JpYmUoKHNjaGVtYXMpID0+IHtcclxuXHRcdFx0XHRzY2hlbWFzLm1hcCgoaXRlbSkgPT4ge1xyXG5cdFx0XHRcdFx0aWYgKGl0ZW0ubmFtZSA9PT0gJ2dlbmVyYWxkb2N1bWVudCcpIHtcclxuXHRcdFx0XHRcdFx0dGhpcy51c2luZ0V4dHJhRmllbGRzID0gdHJ1ZTtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9KTtcclxuXHRcdFx0XHR0aGlzLmluaXRpYXRmaWxlRm9ybSgpO1xyXG5cdFx0XHRcdHRoaXMudXBsb2FkTWFuZ21lbnRTZXJ2aWNlLmdldHRpbmdQcm9wRnJvbU1vZGFsKHtcclxuXHRcdFx0XHRcdGZpbGVUeXBlOiB0aGlzLnNvdXJjZSA9PT0gJ2ZpbGVNYW5nZXInID8gdGhpcy5maWxlVHlwZSA6IHt9LFxyXG5cdFx0XHRcdFx0ZHluYW1pY0Zvcm06IHRoaXMuZGlhbG9nTWFuZ21lbnRTZXJ2aWNlLnN0b3JlZER5bmFtaWNGb3JtLFxyXG5cdFx0XHRcdFx0ZHluYW1pY0RhdGE6IHt9LFxyXG5cdFx0XHRcdFx0c3RhdGljRm9ybVZhbGlkOiB0aGlzLnVzaW5nRXh0cmFGaWVsZHMgPyBmYWxzZSA6IHRydWUsXHJcblx0XHRcdFx0XHRnZW5lcmFsVmFsaWRhdGlvblZhbGlkOiB0cnVlLFxyXG5cdFx0XHRcdFx0dXNpbmdFeHRyYUZpZWxkczogdGhpcy51c2luZ0V4dHJhRmllbGRzLFxyXG5cdFx0XHRcdFx0cGF0aDogdGhpcy5kYXRhLnBhdGhcclxuXHRcdFx0XHR9KTtcclxuXHRcdFx0fSk7XHJcblx0fVxyXG5cclxuXHRuZ09uSW5pdCgpOiB2b2lkIHtcclxuXHRcdGlmICh0aGlzLnVwbG9hZE1hbmdtZW50U2VydmljZS51cGxvYWRGaW5pc2hTdWJzY3JpcHRpb24pIHtcclxuXHRcdFx0dGhpcy51cGxvYWRNYW5nbWVudFNlcnZpY2UudXBsb2FkRmluaXNoU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XHJcblx0XHR9XHJcblx0XHR0aGlzLnVwbG9hZE1hbmdtZW50U2VydmljZS51cGxvYWRGaW5pc2hTdWJzY3JpcHRpb24gPVxyXG5cdFx0XHR0aGlzLnVwbG9hZE1hbmdtZW50U2VydmljZS5vblVwbG9hZEZpbmlzaC5zdWJzY3JpYmUoKHJlcykgPT4ge1xyXG5cdFx0XHRcdGlmIChcclxuXHRcdFx0XHRcdHRoaXMuY3JlYXRlV2hlbkZpbmlzaE1vZGUgfHxcclxuXHRcdFx0XHRcdHRoaXMudXBsb2FkTWFuZ21lbnRTZXJ2aWNlLmZhaWxlZEZpbGVzLmxlbmd0aCA+IDBcclxuXHRcdFx0XHQpIHtcclxuXHRcdFx0XHRcdHRoaXMuY3JlYXRlRG9jdW1lbnQoKTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH0pO1xyXG5cdH1cclxuXHJcblx0aW5pdGlhdGZpbGVGb3JtKCkge1xyXG5cdFx0aWYgKHRoaXMudXNpbmdFeHRyYUZpZWxkcykge1xyXG5cdFx0XHR0aGlzLmZpbGVGb3JtID0gdGhpcy5mb3JtQnVpbGRlci5ncm91cCh7XHJcblx0XHRcdFx0dGl0bGU6IFsnJywgW1ZhbGlkYXRvcnMucmVxdWlyZWRdXSxcclxuXHRcdFx0XHRkZXNjcmlwdGlvbjogWycnXSxcclxuXHRcdFx0XHRzdWJqZWN0OiBbJycsIFtWYWxpZGF0b3JzLnJlcXVpcmVkXV0sXHJcblx0XHRcdFx0ZG9jdW1lbnROdW1iZXI6IFsnJ10sXHJcblx0XHRcdFx0Z2RvY3VtZW50RGF0ZTogW251bGwsIFtWYWxpZGF0b3JzLnJlcXVpcmVkXV0sXHJcblx0XHRcdFx0c2VjcmVjeUxldmVsOiBbbnVsbF0sXHJcblx0XHRcdFx0aW1wb3J0YW5jZUxldmVsOiBbbnVsbF0sXHJcblx0XHRcdFx0ZGVwYXJ0bWVudENvZGU6IFsnJ10sXHJcblx0XHRcdFx0YWdlbmN5Q2F0ZWdvcnlDb2RlOiBbbnVsbF0sXHJcblx0XHRcdFx0YWdlbmN5TmFtZTogW251bGxdLFxyXG5cdFx0XHRcdGNvdW50cnlDYXRlZ29yeUNvZGU6IFtudWxsXSxcclxuXHRcdFx0XHRjb3VudHJ5TmFtZTogW251bGxdLFxyXG5cdFx0XHRcdHJlbWFya3M6IFsnJ11cclxuXHRcdFx0fSk7XHJcblx0XHR9IGVsc2Uge1xyXG5cdFx0XHR0aGlzLmZpbGVGb3JtID0gdGhpcy5mb3JtQnVpbGRlci5ncm91cCh7XHJcblx0XHRcdFx0dGl0bGU6IFsnJywgW1ZhbGlkYXRvcnMucmVxdWlyZWRdXSxcclxuXHRcdFx0XHRkZXNjcmlwdGlvbjogWycnXVxyXG5cdFx0XHR9KTtcclxuXHRcdH1cclxuXHRcdHRoaXMuc3RhdGljRm9ybUZpZWxkcyA9XHJcblx0XHRcdHRoaXMuYXBwQ29uZlNlcnZpY2UubXlDb25maWd1cmF0aW9uLnN0YXRpY0Zvcm1GaWVsZHM7XHJcblx0fVxyXG5cclxuXHRjcmVhdGVXaGVuRmluaXNoOiBEaWFsb2dBY3Rpb25UeXBlID0gKCkgPT4ge1xyXG5cdFx0dGhpcy5jcmVhdGVXaGVuRmluaXNoTW9kZSA9IHRydWU7XHJcblx0XHRyZXR1cm4gdGhpcy5taW5pbWl6RGlhbG9nKCk7XHJcblx0fTtcclxuXHJcblx0Y2xvc2UoKSB7XHJcblx0XHR0aGlzLnVwbG9hZE1hbmdtZW50U2VydmljZS5HZW5lcmFsRm9ybVZhbGlkYXRpb24gPSB0cnVlO1xyXG5cdFx0dGhpcy5maWxlRm9ybVN1YnNjcmlwdGlvbiA/IHRoaXMuZmlsZUZvcm1TdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKSA6ICcnO1xyXG5cdFx0dGhpcy5hZGRpbmdQcm9wZXJ0aWVzID0gZmFsc2U7XHJcblx0XHR0aGlzLnVwbG9hZE1hbmdtZW50U2VydmljZS5yZXNldFN0YXR1cygpO1xyXG5cdFx0c3VwZXIuY2xvc2UoKTtcclxuXHRcdHJldHVybiBvZihudWxsKTtcclxuXHR9XHJcblxyXG5cdHN0YXJ0QWRkaW5nUHJvcGVydGllcyA9ICgpID0+IHtcclxuXHRcdC8vaWYgc3RhcnRpbmcgZnJvbSBmaWxlbW5hZ2VyIHRoZW4gaSBoYXZlIGZpeGVkIGZpbGUgdHlwZSBmb3IgYWxsIGF0dGFjaG1ldG4gYW5kIHNpbmdsZSBkeW5haW1jIGZvcm0gIHR5cGVcclxuXHRcdGlmICh0aGlzLnNvdXJjZSA9PT0gJ2ZpbGVNYW5nZXInKSB7XHJcblx0XHRcdC8vIHRoaXMuZHluYW1pY0Zvcm1TZXJ2aWNlLmdldER5bmFtaWNGb3JtKHRoaXMuZmlsZVR5cGUpLnN1YnNjcmliZShyZXMgPT4ge1xyXG5cclxuXHRcdFx0dGhpcy51cGxvYWRNYW5nbWVudFNlcnZpY2UudXBsb2FkZWRGaWxlc1N0YXR1cy51cGxvYWRlZEZpbGVzLmZvckVhY2goXHJcblx0XHRcdFx0KGZpbGUpID0+IHtcclxuXHRcdFx0XHRcdGZpbGVbJ2ZpbGVUeXBlJ10gPSB0aGlzLnNvdXJjZSA9PT0gJ2ZpbGVNYW5nZXInID8gdGhpcy5maWxlVHlwZSA6IHt9O1xyXG5cdFx0XHRcdFx0ZmlsZVsnZHluYW1pY0Zvcm0nXSA9IHRoaXMuZGlhbG9nTWFuZ21lbnRTZXJ2aWNlLnN0b3JlZER5bmFtaWNGb3JtO1xyXG5cdFx0XHRcdFx0ZmlsZVsnZHluYW1pY0RhdGEnXSA9IHt9O1xyXG5cdFx0XHRcdFx0ZmlsZVsnc3RhdGljRm9ybVZhbGlkJ10gPSB0aGlzLnVzaW5nRXh0cmFGaWVsZHMgPyBmYWxzZSA6IHRydWU7XHJcblx0XHRcdFx0XHRmaWxlWydzdGF0aWNEYXRhJ10gPSB0aGlzLnNldFN0YXRpY0RhdGEoXHJcblx0XHRcdFx0XHRcdGZpbGUudGl0bGUgPyBmaWxlLnRpdGxlIDogZmlsZS5uYW1lXHJcblx0XHRcdFx0XHQpO1xyXG5cdFx0XHRcdFx0ZmlsZVsnZ2VuZXJhbFZhbGlkYXRpb25WYWxpZCddID0gdHJ1ZTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdCk7XHJcblx0XHRcdHRoaXMudXBsb2FkTWFuZ21lbnRTZXJ2aWNlLnVwbG9hZGVkRmlsZXNTdGF0dXMuYWxsZmlsZXMuZm9yRWFjaChcclxuXHRcdFx0XHQoZmlsZSkgPT4ge1xyXG5cdFx0XHRcdFx0ZmlsZVsnZmlsZVR5cGUnXSA9IHRoaXMuc291cmNlID09PSAnZmlsZU1hbmdlcicgPyB0aGlzLmZpbGVUeXBlIDoge307XHJcblx0XHRcdFx0XHRmaWxlWydkeW5hbWljRm9ybSddID0gdGhpcy5kaWFsb2dNYW5nbWVudFNlcnZpY2Uuc3RvcmVkRHluYW1pY0Zvcm07XHJcblx0XHRcdFx0XHRmaWxlWydkeW5hbWljRGF0YSddID0ge307XHJcblx0XHRcdFx0XHRmaWxlWydzdGF0aWNGb3JtVmFsaWQnXSA9IHRoaXMudXNpbmdFeHRyYUZpZWxkcyA/IGZhbHNlIDogdHJ1ZTtcclxuXHRcdFx0XHRcdGZpbGVbJ3N0YXRpY0RhdGEnXSA9IHRoaXMuc2V0U3RhdGljRGF0YShcclxuXHRcdFx0XHRcdFx0ZmlsZS50aXRsZSA/IGZpbGUudGl0bGUgOiBmaWxlLm5hbWVcclxuXHRcdFx0XHRcdCk7XHJcblx0XHRcdFx0XHRmaWxlWydnZW5lcmFsVmFsaWRhdGlvblZhbGlkJ10gPSB0cnVlO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0KTtcclxuXHRcdH1cclxuXHRcdHRoaXMuYWRkaW5nUHJvcGVydGllcyA9IHRydWU7XHJcblx0XHR0aGlzLnVwbG9hZE1hbmdtZW50U2VydmljZS5hZGRpbmdQcm9wZXJ0aWVzTW9kZSA9IHRydWU7XHJcblx0fTtcclxuXHJcblx0c2V0U3RhdGljRGF0YSh0aXRsZSkge1xyXG5cdFx0aWYgKHRoaXMudXNpbmdFeHRyYUZpZWxkcykge1xyXG5cdFx0XHRyZXR1cm4ge1xyXG5cdFx0XHRcdHRpdGxlOiB0aXRsZSxcclxuXHRcdFx0XHRkZXNjcmlwdGlvbjogJycsXHJcblx0XHRcdFx0c3ViamVjdDogJycsXHJcblx0XHRcdFx0ZG9jdW1lbnROdW1iZXI6ICcnLFxyXG5cdFx0XHRcdGdkb2N1bWVudERhdGU6IG51bGwsXHJcblx0XHRcdFx0c2VjcmVjeUxldmVsOiB0aGlzLmRhdGEub3V0ZXJEZWZhdWx0U2VjcmVjeSB8fCBudWxsLFxyXG5cdFx0XHRcdGltcG9ydGFuY2VMZXZlbDogdGhpcy5kYXRhLm91dGVyRGVmYXVsdEltcG9ydGFuY2UgfHwgbnVsbCxcclxuXHRcdFx0XHRkZXBhcnRtZW50Q29kZTogdGhpcy51c2VyU2VydmljZS5nZXRVc2VyRGVwYXJ0bWVudEZyb21QYXRoKFxyXG5cdFx0XHRcdFx0dGhpcy5kYXRhLnBhdGhcclxuXHRcdFx0XHQpLFxyXG5cdFx0XHRcdGFnZW5jeUNhdGVnb3J5Q29kZTogbnVsbCxcclxuXHRcdFx0XHRhZ2VuY3lOYW1lOiBudWxsLFxyXG5cdFx0XHRcdGNvdW50cnlDYXRlZ29yeUNvZGU6IG51bGwsXHJcblx0XHRcdFx0Y291bnRyeU5hbWU6IG51bGwsXHJcblx0XHRcdFx0cmVtYXJrczogJydcclxuXHRcdFx0fTtcclxuXHRcdH0gZWxzZSB7XHJcblx0XHRcdHJldHVybiB7XHJcblx0XHRcdFx0dGl0bGU6IHRpdGxlLFxyXG5cdFx0XHRcdGRlc2NyaXB0aW9uOiAnJ1xyXG5cdFx0XHR9O1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0Y3JlYXRlRG9jdW1lbnQ6IERpYWxvZ0FjdGlvblR5cGUgPSAoKSA9PiB7XHJcblx0XHR0aGlzLmNyZWF0aW5nID0gdHJ1ZTtcclxuXHRcdHRoaXMudXBsb2FkTWFuZ21lbnRTZXJ2aWNlLmZhaWxlZEZpbGVzID0gW107XHJcblx0XHR0aGlzLnVwbG9hZE1hbmdtZW50U2VydmljZS5HZW5lcmFsRm9ybVZhbGlkYXRpb24gPSB0aGlzLmNoZWNrVmFsaWRhdGlvbigpO1xyXG5cdFx0aWYgKHRoaXMudXBsb2FkTWFuZ21lbnRTZXJ2aWNlLkdlbmVyYWxGb3JtVmFsaWRhdGlvbikge1xyXG5cdFx0XHRsZXQgYXBpQ2FsbHMgPSBbXTtcclxuXHRcdFx0aWYgKFxyXG5cdFx0XHRcdHRoaXMuZGF0YT8ucGF0aC5pbmNsdWRlcygnL2RlZmF1bHQtZG9tYWluL3dvcmtzcGFjZXMvRE1TV29ya3NwYWNlcycpIHx8XHJcblx0XHRcdFx0dGhpcy5kYXRhPy5wYXRoLmluY2x1ZGVzKCcvZGVmYXVsdC1kb21haW4vVXNlcldvcmtzcGFjZXMvJylcclxuXHRcdFx0KSB7XHJcblx0XHRcdFx0dGhpcy5jb25zdHJ1Y3RQYXlMb2FkVG9Xb3JrU3BhY2UoXHJcblx0XHRcdFx0XHR0aGlzLnVwbG9hZE1hbmdtZW50U2VydmljZS51cGxvYWRlZEZpbGVzU3RhdHVzLnVwbG9hZGVkRmlsZXNcclxuXHRcdFx0XHQpO1xyXG5cdFx0XHRcdHRoaXMucGF5bG9hZExpc3QuZm9yRWFjaCgocGF5bG9hZCkgPT4ge1xyXG5cdFx0XHRcdFx0YXBpQ2FsbHMucHVzaChcclxuXHRcdFx0XHRcdFx0dGhpcy5maWxlTWFuZ2VyU2VydmljZS5jcmVhdGVGaWxlKFxyXG5cdFx0XHRcdFx0XHRcdHBheWxvYWQsXHJcblx0XHRcdFx0XHRcdFx0dGhpcy5maWxlTWFuYWdlclNlcnZpY2Uuc2VsZWN0ZWRGb2xkZXJJZCxcclxuXHRcdFx0XHRcdFx0XHQnRE1TLkNyZWF0ZURvY3VtZW50RnJvbUJsb2InXHJcblx0XHRcdFx0XHRcdClcclxuXHRcdFx0XHRcdCk7XHJcblx0XHRcdFx0fSk7XHJcblx0XHRcdH0gZWxzZSB7XHJcblx0XHRcdFx0dGhpcy5jb25zdHJ1Y3RQYXlMb2FkKFxyXG5cdFx0XHRcdFx0dGhpcy51cGxvYWRNYW5nbWVudFNlcnZpY2UudXBsb2FkZWRGaWxlc1N0YXR1cy51cGxvYWRlZEZpbGVzXHJcblx0XHRcdFx0KTtcclxuXHRcdFx0XHR0aGlzLnBheWxvYWRMaXN0LmZvckVhY2goKHBheWxvYWQpID0+IHtcclxuXHRcdFx0XHRcdGFwaUNhbGxzLnB1c2goXHJcblx0XHRcdFx0XHRcdHRoaXMuZmlsZU1hbmdlclNlcnZpY2UuY3JlYXRlRmlsZShcclxuXHRcdFx0XHRcdFx0XHRwYXlsb2FkLFxyXG5cdFx0XHRcdFx0XHRcdHRoaXMuZmlsZU1hbmFnZXJTZXJ2aWNlLnNlbGVjdGVkRm9sZGVySWRcclxuXHRcdFx0XHRcdFx0KVxyXG5cdFx0XHRcdFx0KTtcclxuXHRcdFx0XHR9KTtcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0cmV0dXJuIGZvcmtKb2luKGFwaUNhbGxzKS5waXBlKFxyXG5cdFx0XHRcdHRhcChcclxuXHRcdFx0XHRcdChyZXNwb25zZSkgPT4ge1xyXG5cdFx0XHRcdFx0XHR0aGlzLmNyZWF0aW5nID0gZmFsc2U7XHJcblx0XHRcdFx0XHRcdHJlc3BvbnNlLmZvckVhY2goKHNpbmdsZVJlcykgPT4ge1xyXG5cdFx0XHRcdFx0XHRcdGlmIChzaW5nbGVSZXNbJ3N0YXR1cyddICYmIHNpbmdsZVJlc1snc3RhdHVzJ10gPT09ICdmYWlsZWQnKSB7XHJcblx0XHRcdFx0XHRcdFx0XHR0aGlzLnVwbG9hZE1hbmdtZW50U2VydmljZS5mYWlsZWRGaWxlcy5wdXNoKFxyXG5cdFx0XHRcdFx0XHRcdFx0XHRzaW5nbGVSZXNbJ29yaWdpbkZpbGUnXVxyXG5cdFx0XHRcdFx0XHRcdFx0KTtcclxuXHRcdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdH0pO1xyXG5cdFx0XHRcdFx0XHRpZiAodGhpcy51cGxvYWRNYW5nbWVudFNlcnZpY2UuZmFpbGVkRmlsZXMubGVuZ3RoID4gMCkge1xyXG5cdFx0XHRcdFx0XHRcdHRoaXMudG9zdGVyU2VydmljZS5zaG93KFxyXG5cdFx0XHRcdFx0XHRcdFx0J2Vycm9yJyxcclxuXHRcdFx0XHRcdFx0XHRcdCdUT0FTVEVSLkVSUk9SJyxcclxuXHRcdFx0XHRcdFx0XHRcdCdUT0FTVEVSLlVQTE9BRF9FUlJPUidcclxuXHRcdFx0XHRcdFx0XHQpO1xyXG5cdFx0XHRcdFx0XHRcdHRoaXMudXBsb2FkTWFuZ21lbnRTZXJ2aWNlLnVwbG9hZGVkRmlsZXNTdGF0dXMudXBsb2FkZWRGaWxlcyA9IFtdO1xyXG5cdFx0XHRcdFx0XHRcdHRoaXMuc2VsZWN0ZWRGaWxlID0gbnVsbDtcclxuXHRcdFx0XHRcdFx0XHR0aGlzLnVwbG9hZE1hbmdtZW50U2VydmljZS51cGxvYWRlZEZpbGVzU3RhdHVzLmFsbGZpbGVzID0gW1xyXG5cdFx0XHRcdFx0XHRcdFx0Li4udGhpcy51cGxvYWRNYW5nbWVudFNlcnZpY2UuZmFpbGVkRmlsZXNcclxuXHRcdFx0XHRcdFx0XHRdO1xyXG5cdFx0XHRcdFx0XHR9IGVsc2Uge1xyXG5cdFx0XHRcdFx0XHRcdHRoaXMuZmlsZU1hbmdlclNlcnZpY2Uub25SZWZyZXNoaW5nRmlsZU1hbmdlci5uZXh0KCk7XHJcblx0XHRcdFx0XHRcdFx0dGhpcy50b3N0ZXJTZXJ2aWNlLnNob3coXHJcblx0XHRcdFx0XHRcdFx0XHQnc3VjY2VzcycsXHJcblx0XHRcdFx0XHRcdFx0XHQnVE9BU1RFUi5TVUNDRVNTJyxcclxuXHRcdFx0XHRcdFx0XHRcdCdUT0FTVEVSLkZJTEVfQ1JFQVRFRF9TVUNDRSdcclxuXHRcdFx0XHRcdFx0XHQpO1xyXG5cdFx0XHRcdFx0XHRcdHN1cGVyLmNsb3NlKGZhbHNlKTtcclxuXHRcdFx0XHRcdFx0XHR0aGlzLnVwbG9hZE1hbmdtZW50U2VydmljZS5yZXNldFN0YXR1cygpO1xyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHR9LFxyXG5cdFx0XHRcdFx0KGVycm9yKSA9PiB7XHJcblx0XHRcdFx0XHRcdHRoaXMuY3JlYXRpbmcgPSBmYWxzZTtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHQpXHJcblx0XHRcdCk7XHJcblx0XHR9IGVsc2Uge1xyXG5cdFx0XHR0aGlzLmNyZWF0aW5nID0gZmFsc2U7XHJcblx0XHRcdHJldHVybiBvZihudWxsKTtcclxuXHRcdH1cclxuXHR9O1xyXG5cclxuXHRjb25zdHJ1Y3RQYXlMb2FkVG9Xb3JrU3BhY2UoZmlsZXMpIHtcclxuXHRcdHRoaXMucGF5bG9hZExpc3QgPSBbXTtcclxuXHRcdGZpbGVzLm1hcCgoZmlsZSkgPT4ge1xyXG5cdFx0XHRsZXQgcGFyYW0gPSB7XHJcblx0XHRcdFx0ZmlsZWluZGV4OiAwLFxyXG5cdFx0XHRcdGZpbGVOYW1lOiBmaWxlLnN0YXRpY0RhdGEudGl0bGUsXHJcblx0XHRcdFx0YmF0Y2hpZDogZmlsZS5iYXRjaC5ibG9iWyd1cGxvYWQtYmF0Y2gnXSxcclxuXHRcdFx0XHRkZXNjcmlwdGlvbjogdGhpcy5maWxlRm9ybS5jb250cm9scy5kZXNjcmlwdGlvbi52YWx1ZVxyXG5cdFx0XHR9O1xyXG5cdFx0XHR0aGlzLnBheWxvYWRMaXN0LnB1c2goeyBwYXJhbXM6IHBhcmFtLCBvcmlnaW5GaWxlOiBmaWxlIH0pO1xyXG5cdFx0fSk7XHJcblx0fVxyXG5cclxuXHR0cnlBZ2FpbkNyZWF0ZURvY3VtZW50OiBEaWFsb2dBY3Rpb25UeXBlID0gKCkgPT4ge1xyXG5cdFx0dGhpcy51cGxvYWRNYW5nbWVudFNlcnZpY2UudXBsb2FkRmlsZXNNYW5nbWVudChcclxuXHRcdFx0dGhpcy51cGxvYWRNYW5nbWVudFNlcnZpY2UuZmFpbGVkRmlsZXNcclxuXHRcdCk7XHJcblx0XHRyZXR1cm4gb2YobnVsbCk7XHJcblx0fTtcclxuXHJcblx0Y29uc3RydWN0UGF5TG9hZChmaWxlcykge1xyXG5cdFx0dGhpcy5wYXlsb2FkTGlzdCA9IFtdO1xyXG5cdFx0ZmlsZXMubWFwKChmaWxlKSA9PiB7XHJcblx0XHRcdGxldCBwcm9wcyA9IHRoaXMuZHluYW1pY0Zvcm1TZXJ2aWNlLmNvbnN0cnVjdER5bmFtaWNGb3JtUGF5bG9hZChcclxuXHRcdFx0XHRmaWxlLmR5bmFtaWNEYXRhLmRhdGEgPyBmaWxlLmR5bmFtaWNEYXRhLmRhdGEgOiB7fSxcclxuXHRcdFx0XHRmaWxlLmR5bmFtaWNGb3JtXHJcblx0XHRcdCk7XHJcblx0XHRcdGxldCBzdGF0aWNGb3JtRGF0YSA9IHRoaXMubWFwcGluZ1N0YXRpY0RhdGEoZmlsZS5zdGF0aWNEYXRhKTtcclxuXHRcdFx0bGV0IHBhcmFtID0ge1xyXG5cdFx0XHRcdGRvY3VtZW50OiB7XHJcblx0XHRcdFx0XHR0eXBlOiBmaWxlLmZpbGVUeXBlLnR5cGUsXHJcblx0XHRcdFx0XHRuYW1lOiBmaWxlLnN0YXRpY0RhdGEudGl0bGUsXHJcblx0XHRcdFx0XHRwcm9wZXJ0aWVzOiB7XHJcblx0XHRcdFx0XHRcdC4uLnByb3BzLFxyXG5cdFx0XHRcdFx0XHQuLi5zdGF0aWNGb3JtRGF0YSxcclxuXHRcdFx0XHRcdFx0J2ZpbGU6Y29udGVudCc6IHtcclxuXHRcdFx0XHRcdFx0XHQndXBsb2FkLWJhdGNoJzogZmlsZS5iYXRjaC5ibG9iWyd1cGxvYWQtYmF0Y2gnXSxcclxuXHRcdFx0XHRcdFx0XHQndXBsb2FkLWZpbGVJZCc6IGZpbGUuYmF0Y2guYmxvYlsndXBsb2FkLWZpbGVJZCddLFxyXG5cdFx0XHRcdFx0XHRcdCdtaW1lLXR5cGUnOiBmaWxlLnR5cGVcclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fTtcclxuXHRcdFx0aWYgKGZpbGUuZmlsZVR5cGUuZG9jdW1lbnRDb2RlKSB7XHJcblx0XHRcdFx0cGFyYW1bJ2RvY3VtZW50VHlwZUNvZGUnXSA9IGZpbGUuZmlsZVR5cGUuZG9jdW1lbnRDb2RlO1xyXG5cdFx0XHR9XHJcblx0XHRcdHRoaXMucGF5bG9hZExpc3QucHVzaCh7IHBhcmFtczogcGFyYW0sIG9yaWdpbkZpbGU6IGZpbGUgfSk7XHJcblx0XHR9KTtcclxuXHR9XHJcblxyXG5cdG1hcHBpbmdTdGF0aWNEYXRhKGRhdGEpIHtcclxuXHRcdGlmIChkYXRhLmdkb2N1bWVudERhdGUgJiYgZGF0YS5nZG9jdW1lbnREYXRlICE9PSBudWxsKSB7XHJcblx0XHRcdG1vbWVudC5sb2NhbGUoJ2VuJyk7XHJcblx0XHRcdGRhdGFbJ2hkb2N1bWVudERhdGUnXSA9IHRoaXMuZGF0ZUhlbHBlclNlcnZpY2UuZ3JlZ29yaWFuVG9IaWpyaShcclxuXHRcdFx0XHRkYXRhLmdkb2N1bWVudERhdGUsXHJcblx0XHRcdFx0J2lZWVlZLWlNTS1pREQnXHJcblx0XHRcdCk7XHJcblx0XHRcdGRhdGEuZ2RvY3VtZW50RGF0ZSA9XHJcblx0XHRcdFx0bW9tZW50KGRhdGEuZ2RvY3VtZW50RGF0ZSkuZm9ybWF0KCdZWVlZLU1NLUREVDAwOjAwOjAwLjAwMCcpICsgJ1onO1xyXG5cdFx0fVxyXG5cdFx0cmV0dXJuIHRoaXMuYWRhcGV0ZXIuYWRhcHRPdXQoZGF0YSwgdGhpcy5zdGF0aWNGb3JtRmllbGRzKTtcclxuXHR9XHJcblxyXG5cdHNlbGVjdEZpbGUoZmlsZSkge1xyXG5cdFx0Y29uc29sZS5sb2coJ2ZpbGUgaW4gc2VsZWN0JywgZmlsZSk7XHJcblx0XHR0aGlzLnNob3dTdGF0aWNGb3JtID0gZmFsc2U7XHJcblx0XHR0aGlzLmFnZW5jeU5hbWVGaWx0ZXIgPSB1bmRlZmluZWQ7XHJcblx0XHR0aGlzLmNvdW50cnlOYW1lRmlsdGVyID0gdW5kZWZpbmVkO1xyXG5cdFx0Ly9jb25zb2xlLmxvZyhmaWxlKTtcclxuXHRcdGlmICghdGhpcy5hZGRpbmdQcm9wZXJ0aWVzKSB7XHJcblx0XHRcdHRoaXMuc3RhcnRBZGRpbmdQcm9wZXJ0aWVzKCk7XHJcblx0XHR9XHJcblx0XHRpZiAodGhpcy5hZGRpbmdQcm9wZXJ0aWVzKSB7XHJcblx0XHRcdHRoaXMuc2hvd1JlbmRlcmVyID0gZmFsc2U7XHJcblx0XHRcdC8vIGNoZWNrIGlmIGZpbGUgaGFzIHByb3BlcnRpZXMgb2YgYWRkaW5nIHByb3BlcnRpZXMgb3Igbm90IHRoZW4gYWRkIGl0IHRvIGhpbVxyXG5cdFx0XHRpZiAoIWZpbGUuaGFzT3duUHJvcGVydHkoJ2ZpbGVUeXBlJykpIHtcclxuXHRcdFx0XHR0aGlzLmR5bmFtaWNGb3JtU2VydmljZVxyXG5cdFx0XHRcdFx0LmdldER5bmFtaWNGb3JtKFxyXG5cdFx0XHRcdFx0XHR0aGlzLmZpbGVUeXBlLmRvY3VtZW50Q29kZVxyXG5cdFx0XHRcdFx0XHRcdD8gdGhpcy5maWxlVHlwZS5kb2N1bWVudENvZGVcclxuXHRcdFx0XHRcdFx0XHQ6IHRoaXMuZmlsZVR5cGUudHlwZVxyXG5cdFx0XHRcdFx0KVxyXG5cdFx0XHRcdFx0LnN1YnNjcmliZSgocmVzKSA9PiB7XHJcblx0XHRcdFx0XHRcdGZpbGVbJ2ZpbGVUeXBlJ10gPVxyXG5cdFx0XHRcdFx0XHRcdHRoaXMuc291cmNlID09PSAnZmlsZU1hbmdlcicgPyB0aGlzLmZpbGVUeXBlIDoge307XHJcblx0XHRcdFx0XHRcdGZpbGVbJ2R5bmFtaWNGb3JtJ10gPSByZXM7XHJcblx0XHRcdFx0XHRcdGZpbGVbJ2R5bmFtaWNEYXRhJ10gPSB7fTtcclxuXHRcdFx0XHRcdFx0ZmlsZVsnc3RhdGljRm9ybVZhbGlkJ10gPSB0aGlzLnVzaW5nRXh0cmFGaWVsZHMgPyBmYWxzZSA6IHRydWU7XHJcblx0XHRcdFx0XHRcdGZpbGVbJ2dlbmVyYWxWYWxpZGF0aW9uVmFsaWQnXSA9IHRydWU7XHJcblx0XHRcdFx0XHRcdGZpbGVbJ3N0YXRpY0RhdGEnXSA9IHRoaXMuc2V0U3RhdGljRGF0YShcclxuXHRcdFx0XHRcdFx0XHRmaWxlLnRpdGxlID8gZmlsZS50aXRsZSA6IGZpbGUubmFtZVxyXG5cdFx0XHRcdFx0XHQpO1xyXG5cdFx0XHRcdFx0XHR0aGlzLnNlbGVjdGVkRmlsZSA9IGZpbGU7XHJcblx0XHRcdFx0XHRcdGlmICghdGhpcy5maWxlRm9ybSkge1xyXG5cdFx0XHRcdFx0XHRcdHRoaXMuaW5pdGlhdGZpbGVGb3JtKCk7XHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdFx0dGhpcy5maWxlRm9ybS5wYXRjaFZhbHVlKHRoaXMuc2VsZWN0ZWRGaWxlWydzdGF0aWNEYXRhJ10pO1xyXG5cclxuXHRcdFx0XHRcdFx0dGhpcy50ZW1wb3JhcnlEeWFubWljRGF0YSA9IHt9O1xyXG5cdFx0XHRcdFx0XHR0aGlzLnRlbXBvcmFyeUR5YW5taWNEYXRhID0gdGhpcy5zZWxlY3RlZEZpbGUuZHluYW1pY0RhdGEuZGF0YVxyXG5cdFx0XHRcdFx0XHRcdD8geyAuLi50aGlzLnNlbGVjdGVkRmlsZS5keW5hbWljRGF0YS5kYXRhIH1cclxuXHRcdFx0XHRcdFx0XHQ6IHt9O1xyXG5cdFx0XHRcdFx0XHRzZXRUaW1lb3V0KCgpID0+IHtcclxuXHRcdFx0XHRcdFx0XHR0aGlzLnNob3dSZW5kZXJlciA9IHRydWU7XHJcblx0XHRcdFx0XHRcdFx0dGhpcy5zaG93U3RhdGljRm9ybSA9IHRydWU7XHJcblx0XHRcdFx0XHRcdH0sIDIwMCk7XHJcblx0XHRcdFx0XHRcdC8vY29uc29sZS5sb2coZmlsZSk7XHJcblx0XHRcdFx0XHRcdGlmICghdGhpcy5maWxlRm9ybVN1YnNjcmlwdGlvbikge1xyXG5cdFx0XHRcdFx0XHRcdHNldFRpbWVvdXQoKCkgPT4ge1xyXG5cdFx0XHRcdFx0XHRcdFx0dGhpcy5maWxlRm9ybVN1YnNjcmlwdGlvbiA9XHJcblx0XHRcdFx0XHRcdFx0XHRcdHRoaXMuZmlsZUZvcm0udmFsdWVDaGFuZ2VzLnN1YnNjcmliZSgocmVzKSA9PiB7XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0dGhpcy5zZWxlY3RlZEZpbGUuc3RhdGljRm9ybVZhbGlkID0gdGhpcy5maWxlRm9ybVxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0PyB0aGlzLmZpbGVGb3JtLnZhbGlkXHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHQ6IGZhbHNlO1xyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdHRoaXMuc2VsZWN0ZWRGaWxlLnN0YXRpY0RhdGEgPSB0aGlzLmZpbGVGb3JtXHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHQ/IHRoaXMuZmlsZUZvcm0udmFsdWVcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdDoge307XHJcblx0XHRcdFx0XHRcdFx0XHRcdH0pO1xyXG5cclxuXHRcdFx0XHRcdFx0XHRcdGlmICh0aGlzLmZpbGVGb3JtLmdldCgnYWdlbmN5Q2F0ZWdvcnlDb2RlJykpIHtcclxuXHRcdFx0XHRcdFx0XHRcdFx0dGhpcy5hZ2VuY3lDYXRlZ0NvZGVTdWJzY3JpcHRpb24gPSB0aGlzLmZpbGVGb3JtXHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0LmdldCgnYWdlbmN5Q2F0ZWdvcnlDb2RlJylcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHQudmFsdWVDaGFuZ2VzLnN1YnNjcmliZSgocmVzKSA9PiB7XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHR0aGlzLmZpbGVGb3JtLmdldCgnYWdlbmN5TmFtZScpLnNldFZhbHVlKG51bGwpO1xyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0dGhpcy5hZ2VuY3lOYW1lRmlsdGVyID0ge1xyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRjYXRlZ29yeTogcmVzXHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHR9O1xyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdH0pO1xyXG5cdFx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHRcdFx0aWYgKHRoaXMuZmlsZUZvcm0uZ2V0KCdjb3VudHJ5Q2F0ZWdvcnlDb2RlJykpIHtcclxuXHRcdFx0XHRcdFx0XHRcdFx0dGhpcy5jb3VudHJ5Q2F0ZWdDb2RlU3Vic2NyaXB0aW9uID0gdGhpcy5maWxlRm9ybVxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdC5nZXQoJ2NvdW50cnlDYXRlZ29yeUNvZGUnKVxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdC52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKChyZXMpID0+IHtcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdHRoaXMuZmlsZUZvcm0uZ2V0KCdjb3VudHJ5TmFtZScpLnNldFZhbHVlKG51bGwpO1xyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0dGhpcy5jb3VudHJ5TmFtZUZpbHRlciA9IHtcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0Y2F0ZWdvcnk6IHJlc1xyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0fTtcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHR9KTtcclxuXHRcdFx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdFx0XHR9LCAyMDAwKTtcclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0fSk7XHJcblx0XHRcdH0gZWxzZSB7XHJcblx0XHRcdFx0dGhpcy5zZWxlY3RlZEZpbGUgPSBmaWxlO1xyXG5cdFx0XHRcdGlmICghdGhpcy5maWxlRm9ybSkge1xyXG5cdFx0XHRcdFx0dGhpcy5pbml0aWF0ZmlsZUZvcm0oKTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0dGhpcy5maWxlRm9ybS5wYXRjaFZhbHVlKHsgLi4udGhpcy5zZWxlY3RlZEZpbGVbJ3N0YXRpY0RhdGEnXSB9KTtcclxuXHRcdFx0XHRpZiAodGhpcy5zZWxlY3RlZEZpbGVbJ3N0YXRpY0RhdGEnXVsnYWdlbmN5Q2F0ZWdvcnlDb2RlJ10pIHtcclxuXHRcdFx0XHRcdHRoaXMuYWdlbmN5TmFtZUZpbHRlciA9IHtcclxuXHRcdFx0XHRcdFx0Y2F0ZWdvcnk6IHRoaXMuc2VsZWN0ZWRGaWxlWydzdGF0aWNEYXRhJ11bJ2FnZW5jeUNhdGVnb3J5Q29kZSddXHJcblx0XHRcdFx0XHR9O1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHRpZiAodGhpcy5zZWxlY3RlZEZpbGVbJ3N0YXRpY0RhdGEnXVsnY291bnRyeUNhdGVnb3J5Q29kZSddKSB7XHJcblx0XHRcdFx0XHR0aGlzLmNvdW50cnlOYW1lRmlsdGVyID0ge1xyXG5cdFx0XHRcdFx0XHRjYXRlZ29yeTogdGhpcy5zZWxlY3RlZEZpbGVbJ3N0YXRpY0RhdGEnXVsnY291bnRyeUNhdGVnb3J5Q29kZSddXHJcblx0XHRcdFx0XHR9O1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHR0aGlzLnRlbXBvcmFyeUR5YW5taWNEYXRhID0ge307XHJcblx0XHRcdFx0dGhpcy50ZW1wb3JhcnlEeWFubWljRGF0YSA9IHRoaXMuc2VsZWN0ZWRGaWxlLmR5bmFtaWNEYXRhLmRhdGFcclxuXHRcdFx0XHRcdD8gdGhpcy5zZWxlY3RlZEZpbGUuZHluYW1pY0RhdGEuZGF0YVxyXG5cdFx0XHRcdFx0OiB7fTtcclxuXHRcdFx0XHRzZXRUaW1lb3V0KCgpID0+IHtcclxuXHRcdFx0XHRcdHRoaXMuc2hvd1JlbmRlcmVyID0gdHJ1ZTtcclxuXHRcdFx0XHRcdHRoaXMuc2hvd1N0YXRpY0Zvcm0gPSB0cnVlO1xyXG5cdFx0XHRcdH0sIDIwMCk7XHJcblx0XHRcdFx0aWYgKCF0aGlzLmZpbGVGb3JtU3Vic2NyaXB0aW9uKSB7XHJcblx0XHRcdFx0XHRzZXRUaW1lb3V0KCgpID0+IHtcclxuXHRcdFx0XHRcdFx0dGhpcy5maWxlRm9ybVN1YnNjcmlwdGlvbiA9IHRoaXMuZmlsZUZvcm0udmFsdWVDaGFuZ2VzLnN1YnNjcmliZShcclxuXHRcdFx0XHRcdFx0XHQocmVzKSA9PiB7XHJcblx0XHRcdFx0XHRcdFx0XHR0aGlzLnNlbGVjdGVkRmlsZS5zdGF0aWNGb3JtVmFsaWQgPSB0aGlzLmZpbGVGb3JtXHJcblx0XHRcdFx0XHRcdFx0XHRcdD8gdGhpcy5maWxlRm9ybS52YWxpZFxyXG5cdFx0XHRcdFx0XHRcdFx0XHQ6IGZhbHNlO1xyXG5cdFx0XHRcdFx0XHRcdFx0dGhpcy5zZWxlY3RlZEZpbGUuc3RhdGljRGF0YSA9IHRoaXMuZmlsZUZvcm1cclxuXHRcdFx0XHRcdFx0XHRcdFx0PyB0aGlzLmZpbGVGb3JtLnZhbHVlXHJcblx0XHRcdFx0XHRcdFx0XHRcdDoge307XHJcblx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHQpO1xyXG5cclxuXHRcdFx0XHRcdFx0aWYgKHRoaXMuZmlsZUZvcm0uZ2V0KCdhZ2VuY3lDYXRlZ29yeUNvZGUnKSkge1xyXG5cdFx0XHRcdFx0XHRcdHRoaXMuYWdlbmN5Q2F0ZWdDb2RlU3Vic2NyaXB0aW9uID0gdGhpcy5maWxlRm9ybVxyXG5cdFx0XHRcdFx0XHRcdFx0LmdldCgnYWdlbmN5Q2F0ZWdvcnlDb2RlJylcclxuXHRcdFx0XHRcdFx0XHRcdC52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKChyZXMpID0+IHtcclxuXHRcdFx0XHRcdFx0XHRcdFx0dGhpcy5maWxlRm9ybS5nZXQoJ2FnZW5jeU5hbWUnKS5zZXRWYWx1ZShudWxsKTtcclxuXHRcdFx0XHRcdFx0XHRcdFx0dGhpcy5hZ2VuY3lOYW1lRmlsdGVyID0ge1xyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdGNhdGVnb3J5OiByZXNcclxuXHRcdFx0XHRcdFx0XHRcdFx0fTtcclxuXHRcdFx0XHRcdFx0XHRcdH0pO1xyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdGlmICh0aGlzLmZpbGVGb3JtLmdldCgnY291bnRyeUNhdGVnb3J5Q29kZScpKSB7XHJcblx0XHRcdFx0XHRcdFx0dGhpcy5jb3VudHJ5Q2F0ZWdDb2RlU3Vic2NyaXB0aW9uID0gdGhpcy5maWxlRm9ybVxyXG5cdFx0XHRcdFx0XHRcdFx0LmdldCgnY291bnRyeUNhdGVnb3J5Q29kZScpXHJcblx0XHRcdFx0XHRcdFx0XHQudmFsdWVDaGFuZ2VzLnN1YnNjcmliZSgocmVzKSA9PiB7XHJcblx0XHRcdFx0XHRcdFx0XHRcdHRoaXMuZmlsZUZvcm0uZ2V0KCdjb3VudHJ5TmFtZScpLnNldFZhbHVlKG51bGwpO1xyXG5cdFx0XHRcdFx0XHRcdFx0XHR0aGlzLmNvdW50cnlOYW1lRmlsdGVyID0ge1xyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdGNhdGVnb3J5OiByZXNcclxuXHRcdFx0XHRcdFx0XHRcdFx0fTtcclxuXHRcdFx0XHRcdFx0XHRcdH0pO1xyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHR9LCAyMDAwKTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdG9uZHluYW1pY0Zvcm1DaGFuZ2UoZHluYW1pY0RhdGEpIHtcclxuXHRcdGNvbnNvbGUubG9nKGR5bmFtaWNEYXRhKTtcclxuXHRcdGlmIChkeW5hbWljRGF0YS5vcmlnaW5hbEV2ZW50Py5pc1ZhbGlkKSB7XHJcblx0XHRcdHRoaXMuZGlzYWJsZUNyZWF0ZVdoZW5GaW5pc2hCdG4gPSBmYWxzZTtcclxuXHRcdH1cclxuXHRcdGlmIChkeW5hbWljRGF0YS5kYXRhKSB7XHJcblx0XHRcdHRoaXMuc2VsZWN0ZWRGaWxlLmR5bmFtaWNEYXRhID0geyAuLi5keW5hbWljRGF0YSB9O1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0bWluaW1pekRpYWxvZzogRGlhbG9nQWN0aW9uVHlwZSA9ICgpID0+IHtcclxuXHRcdHN1cGVyLmNsb3NlKHRydWUpO1xyXG5cdFx0cmV0dXJuIG9mKG51bGwpO1xyXG5cdH07XHJcblxyXG5cdHJlbW92ZUl0ZW0oaXRlbSwgbGlzdG9mRmlsZXMpIHtcclxuXHRcdGNvbnN0IHJlbW92ZUluZGV4ID0gbGlzdG9mRmlsZXMuZmluZEluZGV4KFxyXG5cdFx0XHQoZmlsZSkgPT4gZmlsZS5uYW1lID09PSBpdGVtLm5hbWVcclxuXHRcdCk7XHJcblx0XHRsaXN0b2ZGaWxlcy5zcGxpY2UocmVtb3ZlSW5kZXgsIDEpO1xyXG5cdFx0aWYgKGl0ZW0ubmFtZSA9PT0gdGhpcy5zZWxlY3RlZEZpbGUubmFtZSkge1xyXG5cdFx0XHRpZiAoXHJcblx0XHRcdFx0dGhpcy51cGxvYWRNYW5nbWVudFNlcnZpY2UudXBsb2FkZWRGaWxlc1N0YXR1cy51cGxvYWRlZEZpbGVzLmxlbmd0aCA+IDBcclxuXHRcdFx0KSB7XHJcblx0XHRcdFx0dGhpcy5zZWxlY3RGaWxlKFxyXG5cdFx0XHRcdFx0dGhpcy51cGxvYWRNYW5nbWVudFNlcnZpY2UudXBsb2FkZWRGaWxlc1N0YXR1cy51cGxvYWRlZEZpbGVzWzBdXHJcblx0XHRcdFx0KTtcclxuXHRcdFx0fSBlbHNlIGlmIChcclxuXHRcdFx0XHR0aGlzLnVwbG9hZE1hbmdtZW50U2VydmljZS51cGxvYWRlZEZpbGVzU3RhdHVzLmFsbGZpbGVzLmxlbmd0aCA+IDBcclxuXHRcdFx0KSB7XHJcblx0XHRcdFx0dGhpcy5zZWxlY3RGaWxlKFxyXG5cdFx0XHRcdFx0dGhpcy51cGxvYWRNYW5nbWVudFNlcnZpY2UudXBsb2FkZWRGaWxlc1N0YXR1cy5hbGxmaWxlc1swXVxyXG5cdFx0XHRcdCk7XHJcblx0XHRcdH1cclxuXHRcdFx0Ly8gdGhpcy5zZWxlY3RlZEZpbGUgPSBudWxsO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0QXBwbHlDaGFuZ2VzVG9BbGw6IERpYWxvZ0FjdGlvblR5cGUgPSAoKSA9PiB7XHJcblx0XHR0aGlzLnVwbG9hZE1hbmdtZW50U2VydmljZS51cGxvYWRlZEZpbGVzU3RhdHVzLnVwbG9hZGVkRmlsZXMuZm9yRWFjaChcclxuXHRcdFx0KGZpbGUpID0+IHtcclxuXHRcdFx0XHRsZXQgdGl0bGUgPSBmaWxlWydzdGF0aWNEYXRhJ11cclxuXHRcdFx0XHRcdD8gZmlsZVsnc3RhdGljRGF0YSddWyd0aXRsZSddXHJcblx0XHRcdFx0XHQ6IGZpbGUubmFtZTtcclxuXHRcdFx0XHRmaWxlWydmaWxlVHlwZSddID0gdGhpcy5zZWxlY3RlZEZpbGUuZmlsZVR5cGU7XHJcblx0XHRcdFx0ZmlsZVsnZHluYW1pY0Zvcm0nXSA9IHRoaXMuc2VsZWN0ZWRGaWxlLmR5bmFtaWNGb3JtO1xyXG5cdFx0XHRcdGZpbGVbJ2R5bmFtaWNEYXRhJ10gPSB0aGlzLnNlbGVjdGVkRmlsZS5keW5hbWljRGF0YTtcclxuXHRcdFx0XHRmaWxlWydzdGF0aWNGb3JtVmFsaWQnXSA9IHRoaXMuc2VsZWN0ZWRGaWxlLnN0YXRpY0Zvcm1WYWxpZDtcclxuXHRcdFx0XHRmaWxlWydzdGF0aWNEYXRhJ10gPSB7IC4uLnRoaXMuZmlsZUZvcm0udmFsdWUgfTtcclxuXHRcdFx0XHRmaWxlWydzdGF0aWNEYXRhJ11bJ3RpdGxlJ10gPSB0aXRsZTtcclxuXHRcdFx0fVxyXG5cdFx0KTtcclxuXHRcdHRoaXMudXBsb2FkTWFuZ21lbnRTZXJ2aWNlLnVwbG9hZGVkRmlsZXNTdGF0dXMuYWxsZmlsZXMuZm9yRWFjaCgoZmlsZSkgPT4ge1xyXG5cdFx0XHRsZXQgdGl0bGUgPSBmaWxlWydzdGF0aWNEYXRhJ10gPyBmaWxlWydzdGF0aWNEYXRhJ11bJ3RpdGxlJ10gOiBmaWxlLm5hbWU7XHJcblx0XHRcdGZpbGVbJ2ZpbGVUeXBlJ10gPSB0aGlzLnNlbGVjdGVkRmlsZS5maWxlVHlwZTtcclxuXHRcdFx0ZmlsZVsnZHluYW1pY0Zvcm0nXSA9IHRoaXMuc2VsZWN0ZWRGaWxlLmR5bmFtaWNGb3JtO1xyXG5cdFx0XHRmaWxlWydkeW5hbWljRGF0YSddID0gdGhpcy5zZWxlY3RlZEZpbGUuZHluYW1pY0RhdGE7XHJcblx0XHRcdGZpbGVbJ3N0YXRpY0Zvcm1WYWxpZCddID0gdGhpcy5zZWxlY3RlZEZpbGUuc3RhdGljRm9ybVZhbGlkO1xyXG5cdFx0XHRmaWxlWydzdGF0aWNEYXRhJ10gPSB7IC4uLnRoaXMuZmlsZUZvcm0udmFsdWUgfTtcclxuXHRcdFx0ZmlsZVsnc3RhdGljRGF0YSddWyd0aXRsZSddID0gdGl0bGU7XHJcblx0XHR9KTtcclxuXHJcblx0XHRyZXR1cm4gb2YobnVsbCk7XHJcblx0fTtcclxuXHJcblx0Y2hlY2tWYWxpZGF0aW9uKCkge1xyXG5cdFx0bGV0IHZhbGlkYXRpb24gPSB0cnVlO1xyXG5cdFx0dGhpcy51cGxvYWRNYW5nbWVudFNlcnZpY2UudXBsb2FkZWRGaWxlc1N0YXR1cy51cGxvYWRlZEZpbGVzLmZvckVhY2goXHJcblx0XHRcdChmaWxlKSA9PiB7XHJcblx0XHRcdFx0Y29uc29sZS5sb2coJ2ZpbGUnLCBmaWxlKTtcclxuXHRcdFx0XHRpZiAoXHJcblx0XHRcdFx0XHQhZmlsZS5oYXNPd25Qcm9wZXJ0eSgnZmlsZVR5cGUnKSB8fFxyXG5cdFx0XHRcdFx0ZmlsZVsnc3RhdGljRm9ybVZhbGlkJ10gPT09IGZhbHNlIHx8XHJcblx0XHRcdFx0XHRmaWxlLmR5bmFtaWNEYXRhPy5vcmlnaW5hbEV2ZW50Py5pc1ZhbGlkID09PSBmYWxzZVxyXG5cdFx0XHRcdCkge1xyXG5cdFx0XHRcdFx0ZmlsZVsnZ2VuZXJhbFZhbGlkYXRpb25WYWxpZCddID0gZmFsc2U7XHJcblx0XHRcdFx0XHR2YWxpZGF0aW9uID0gZmFsc2U7XHJcblx0XHRcdFx0fSBlbHNlIHtcclxuXHRcdFx0XHRcdGZpbGVbJ2dlbmVyYWxWYWxpZGF0aW9uVmFsaWQnXSA9IHRydWU7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHQpO1xyXG5cdFx0dGhpcy51cGxvYWRNYW5nbWVudFNlcnZpY2UudXBsb2FkZWRGaWxlc1N0YXR1cy5hbGxmaWxlcy5tYXAoKGZpbGUpID0+IHtcclxuXHRcdFx0aWYgKFxyXG5cdFx0XHRcdGZpbGVbJ3N0YXRpY0Zvcm1WYWxpZCddID09PSBmYWxzZSB8fFxyXG5cdFx0XHRcdGZpbGUuZHluYW1pY0RhdGE/Lm9yaWdpbmFsRXZlbnQ/LmlzVmFsaWQgPT09IGZhbHNlXHJcblx0XHRcdCkge1xyXG5cdFx0XHRcdGZpbGVbJ2dlbmVyYWxWYWxpZGF0aW9uVmFsaWQnXSA9IGZhbHNlO1xyXG5cdFx0XHRcdHZhbGlkYXRpb24gPSBmYWxzZTtcclxuXHRcdFx0fSBlbHNlIHtcclxuXHRcdFx0XHRmaWxlWydnZW5lcmFsVmFsaWRhdGlvblZhbGlkJ10gPSB0cnVlO1xyXG5cdFx0XHR9XHJcblx0XHR9KTtcclxuXHJcblx0XHRyZXR1cm4gdmFsaWRhdGlvbjtcclxuXHR9XHJcblxyXG5cdG5nT25EZXN0cm95KCkge1xyXG5cdFx0dGhpcy5maWxlRm9ybVN1YnNjcmlwdGlvbiA/IHRoaXMuZmlsZUZvcm1TdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKSA6ICcnO1xyXG5cdFx0dGhpcy5jb3VudHJ5Q2F0ZWdDb2RlU3Vic2NyaXB0aW9uXHJcblx0XHRcdD8gdGhpcy5jb3VudHJ5Q2F0ZWdDb2RlU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKClcclxuXHRcdFx0OiAnJztcclxuXHRcdHRoaXMuYWdlbmN5Q2F0ZWdDb2RlU3Vic2NyaXB0aW9uXHJcblx0XHRcdD8gdGhpcy5hZ2VuY3lDYXRlZ0NvZGVTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKVxyXG5cdFx0XHQ6ICcnO1xyXG5cdH1cclxufVxyXG4iLCI8bmRmLW51eGVvLWRpYWxvZyBkaWFsb2dUaXRsZT1cInt7ICdDUkVBVEUuY3JlYXRlRmlsZScgfCB0cmFuc2xhdGUgfX1cIj5cclxuXHQ8bmctdGVtcGxhdGUgI2NvbnRlbnRUZW1wbGF0ZT5cclxuXHRcdDxkaXYgY2xhc3M9XCJyZWxhdGl2ZSB3LWZ1bGwgaC1mdWxsXCI+XHJcblx0XHRcdDxkaXYgY2xhc3M9XCJpbmVyLXdyYXBwZXJcIiBbbmdDbGFzc109XCJ7ICdkLWZsZXgnOiBhZGRpbmdQcm9wZXJ0aWVzIH1cIj5cclxuXHRcdFx0XHQ8ZGl2XHJcblx0XHRcdFx0XHQqbmdJZj1cImFkZGluZ1Byb3BlcnRpZXNcIlxyXG5cdFx0XHRcdFx0Y2xhc3M9XCJwcm9wZXJ0aWVzLXNlY3Rpb24gcC0zIG92ZXJmbG93LXgtaGlkZGVuIG92ZXJmbG93LXktYXV0b1wiXHJcblx0XHRcdFx0PlxyXG5cdFx0XHRcdFx0PGRpdlxyXG5cdFx0XHRcdFx0XHRjbGFzcz1cIlwiXHJcblx0XHRcdFx0XHRcdCpuZ0lmPVwic2VsZWN0ZWRGaWxlICYmIHNvdXJjZSA9PT0gJ2ZpbGVNYW5nZXInICYmIHNob3dTdGF0aWNGb3JtXCJcclxuXHRcdFx0XHRcdD5cclxuXHRcdFx0XHRcdFx0PGRpdiBjbGFzcz1cIm1iLTVcIj5cclxuXHRcdFx0XHRcdFx0XHQ8ZGl2IGNsYXNzPVwibGFiZWwtc3R5bGVcIj5cclxuXHRcdFx0XHRcdFx0XHRcdHt7ICdDUkVBVEUuRklMRV9UWVBFJyB8IHRyYW5zbGF0ZSB9fVxyXG5cdFx0XHRcdFx0XHRcdDwvZGl2PlxyXG5cdFx0XHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJ0ZXh0LWJhc2UgdGV4dC1ncmF5LTkwMFwiPlxyXG5cdFx0XHRcdFx0XHRcdFx0e3sgaXNBcmFiaWMgPyBmaWxlVHlwZS5hcmFiaWNUZXh0IDogZmlsZVR5cGUuZW5nbGlzaFRleHQgfX1cclxuXHRcdFx0XHRcdFx0XHQ8L2Rpdj5cclxuXHRcdFx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJmaWxlLWZpZWxkcyBtdC0zXCIgU2V0UnRsPlxyXG5cdFx0XHRcdFx0XHRcdDxmb3JtIFtmb3JtR3JvdXBdPVwiZmlsZUZvcm1cIj5cclxuXHRcdFx0XHRcdFx0XHRcdDwhLS0gLS0tLS0tLS0tLS0tLS0tLS1vbGQgc3RhdGljIGZvcm0gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAtLT5cclxuXHRcdFx0XHRcdFx0XHRcdDxkaXY+XHJcblx0XHRcdFx0XHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJzaW5nbGUtZmllbGQgbWItM1wiPlxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJsYWJlbC1zdHlsZVwiPlxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0e3sgJ0NSRUFURS5USVRMRScgfCB0cmFuc2xhdGVcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdH19PHNwYW4gY2xhc3M9XCJ0ZXh0LXJlZC01MDBcIj4qPC9zcGFuPlxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdDwvZGl2PlxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdDxpbnB1dFxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0Y2xhc3M9XCJmaWVsZC1zdHlsZVwiXHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHRmb3JtQ29udHJvbE5hbWU9XCJ0aXRsZVwiXHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHRwbGFjZWhvbGRlcj1cIiB7eyAnQ1JFQVRFLlRJVExFJyB8IHRyYW5zbGF0ZSB9fVwiXHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0Lz5cclxuXHRcdFx0XHRcdFx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdFx0XHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJzaW5nbGUtZmllbGQgbWItM1wiPlxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJsYWJlbC1zdHlsZVwiPlxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0e3sgJ0NSRUFURS5ERVNDUklQVElPTicgfCB0cmFuc2xhdGUgfX1cclxuXHRcdFx0XHRcdFx0XHRcdFx0XHQ8L2Rpdj5cclxuXHRcdFx0XHRcdFx0XHRcdFx0XHQ8aW5wdXRcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdGNsYXNzPVwiZmllbGQtc3R5bGVcIlxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0Zm9ybUNvbnRyb2xOYW1lPVwiZGVzY3JpcHRpb25cIlxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0cGxhY2Vob2xkZXI9XCIge3sgJ0NSRUFURS5ERVNDUklQVElPTicgfCB0cmFuc2xhdGUgfX1cIlxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdC8+XHJcblx0XHRcdFx0XHRcdFx0XHRcdDwvZGl2PlxyXG5cdFx0XHRcdFx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdFx0XHRcdFx0XHQ8IS0tIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gLS0+XHJcblxyXG5cdFx0XHRcdFx0XHRcdFx0PCEtLS0tLS0tLS0tLS0tLS0tLS0gbmV3IHN0YXRpcyBmb3JtICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tPlxyXG5cdFx0XHRcdFx0XHRcdFx0PGRpdiAqbmdJZj1cInVzaW5nRXh0cmFGaWVsZHNcIj5cclxuXHRcdFx0XHRcdFx0XHRcdFx0PGFwcC1keW5hbWljLWZpZWxkcy1yZW5kZXJlclxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFtmb3JtXT1cImZpbGVGb3JtXCJcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRbYWdlbmN5TmFtZUZpbHRlcl09XCJhZ2VuY3lOYW1lRmlsdGVyXCJcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRbY291bnRyeU5hbWVGaWx0ZXJdPVwiY291bnRyeU5hbWVGaWx0ZXJcIlxyXG5cdFx0XHRcdFx0XHRcdFx0XHQ+PC9hcHAtZHluYW1pYy1maWVsZHMtcmVuZGVyZXI+XHJcblx0XHRcdFx0XHRcdFx0XHQ8L2Rpdj5cclxuXHRcdFx0XHRcdFx0XHQ8L2Zvcm0+XHJcblxyXG5cdFx0XHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJkeW5hbWljLXBhcnRcIiAqbmdJZj1cInNob3dSZW5kZXJlclwiPlxyXG5cdFx0XHRcdFx0XHRcdFx0PGFwcC1keW5hbWljLWZvcm1cclxuXHRcdFx0XHRcdFx0XHRcdFx0W2Zvcm1dPVwic2VsZWN0ZWRGaWxlLmR5bmFtaWNGb3JtXCJcclxuXHRcdFx0XHRcdFx0XHRcdFx0W2RhdGFdPVwidGVtcG9yYXJ5RHlhbm1pY0RhdGFcIlxyXG5cdFx0XHRcdFx0XHRcdFx0XHQoY2hhbmdlKT1cIm9uZHluYW1pY0Zvcm1DaGFuZ2UoJGV2ZW50KVwiXHJcblx0XHRcdFx0XHRcdFx0XHQ+PC9hcHAtZHluYW1pYy1mb3JtPlxyXG5cdFx0XHRcdFx0XHRcdDwvZGl2PlxyXG5cdFx0XHRcdFx0XHQ8L2Rpdj5cclxuXHRcdFx0XHRcdDwvZGl2PlxyXG5cdFx0XHRcdFx0PGRpdlxyXG5cdFx0XHRcdFx0XHRjbGFzcz1cInctZnVsbCBoLWZ1bGwgcC0zIGZsZXgganVzdGlmeS1jZW50ZXIgaXRlbXMtY2VudGVyIHRleHQtbGcgdGV4dC1ncmF5LTkwMFwiXHJcblx0XHRcdFx0XHRcdCpuZ0lmPVwiIXNlbGVjdGVkRmlsZVwiXHJcblx0XHRcdFx0XHQ+XHJcblx0XHRcdFx0XHRcdHt7ICdDUkVBVEUuU0VMRUNUX1RPU1RBUlRfQURESU5HJyB8IHRyYW5zbGF0ZSB9fVxyXG5cdFx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdFx0PGRpdlxyXG5cdFx0XHRcdFx0Y2xhc3M9XCJhdHRhY2htZW50LXRhYi1ib2R5IG92ZXJmbG93LWhpZGRlblwiXHJcblx0XHRcdFx0XHRbbmdDbGFzc109XCJ7ICdhdHRhY2htZW50LWluZXItc21hbGwtYm9keSc6IGFkZGluZ1Byb3BlcnRpZXMgfVwiXHJcblx0XHRcdFx0PlxyXG5cdFx0XHRcdFx0PGFwcC1hdHRhY2htZW50c1xyXG5cdFx0XHRcdFx0XHRbbXVsdGlwbGVdPVwidHJ1ZVwiXHJcblx0XHRcdFx0XHRcdChvblNlbGVjdGluZ0l0ZW0pPVwic2VsZWN0RmlsZSgkZXZlbnQpXCJcclxuXHRcdFx0XHRcdD48L2FwcC1hdHRhY2htZW50cz5cclxuXHRcdFx0XHQ8L2Rpdj5cclxuXHRcdFx0PC9kaXY+XHJcblx0XHRcdDxkaXZcclxuXHRcdFx0XHRjbGFzcz1cInctZnVsbCB0ZXh0LXJlZC01MDAgdGV4dC1iYXNlIHRleHQtc3RhcnQgcHgtM1wiXHJcblx0XHRcdFx0Km5nSWY9XCIhdXBsb2FkTWFuZ21lbnRTZXJ2aWNlLkdlbmVyYWxGb3JtVmFsaWRhdGlvblwiXHJcblx0XHRcdD5cclxuXHRcdFx0XHR7eyAnQ1JFQVRFLkZJTExfUkVRVUlSRURfRklFTEQnIHwgdHJhbnNsYXRlIH19XHJcblx0XHRcdDwvZGl2PlxyXG5cdFx0PC9kaXY+XHJcblx0PC9uZy10ZW1wbGF0ZT5cclxuXHJcblx0PG5nLXRlbXBsYXRlICNhY3Rpb25zVGVtcGxhdGUgbGV0LWRpYWxvZz1cImRpYWxvZ1wiPlxyXG5cdFx0PCEtLSBXQVNfSU5fRkxFWF9ESVYgLS0+XHJcblx0XHQ8YnV0dG9uXHJcblx0XHRcdCpuZ0lmPVwiXHJcblx0XHRcdFx0KHVwbG9hZE1hbmdtZW50U2VydmljZS51cGxvYWRlZEZpbGVzU3RhdHVzLnVwbG9hZEluUHJvZ3Jlc3MgfHxcclxuXHRcdFx0XHRcdHVwbG9hZE1hbmdtZW50U2VydmljZS51cGxvYWRlZEZpbGVzU3RhdHVzLnVwbG9hZGVkRmlsZXMubGVuZ3RoID4gMCkgJiZcclxuXHRcdFx0XHQhYWRkaW5nUHJvcGVydGllc1xyXG5cdFx0XHRcIlxyXG5cdFx0XHQoY2xpY2spPVwiZGlhbG9nLmV4ZWN1dGVBY3Rpb24oc3RhcnRBZGRpbmdQcm9wZXJ0aWVzKVwiXHJcblx0XHRcdGNsYXNzPVwic3VibWlzc2lvbi1idXR0b25cIlxyXG5cdFx0PlxyXG5cdFx0XHR7eyAnQlVUVE9OUy5BRERfUFJPUEVSVElFUycgfCB0cmFuc2xhdGUgfX1cclxuXHRcdDwvYnV0dG9uPlxyXG5cdFx0PGJ1dHRvblxyXG5cdFx0XHQqbmdJZj1cIlxyXG5cdFx0XHRcdGFkZGluZ1Byb3BlcnRpZXMgJiZcclxuXHRcdFx0XHR1cGxvYWRNYW5nbWVudFNlcnZpY2UudXBsb2FkZWRGaWxlc1N0YXR1cy51cGxvYWRlZEZpbGVzLmxlbmd0aCArXHJcblx0XHRcdFx0XHR1cGxvYWRNYW5nbWVudFNlcnZpY2UudXBsb2FkZWRGaWxlc1N0YXR1cy5hbGxmaWxlcy5sZW5ndGggPlxyXG5cdFx0XHRcdFx0MVxyXG5cdFx0XHRcIlxyXG5cdFx0XHQoY2xpY2spPVwiZGlhbG9nLmV4ZWN1dGVBY3Rpb24oQXBwbHlDaGFuZ2VzVG9BbGwpXCJcclxuXHRcdFx0W2Rpc2FibGVkXT1cIiFzZWxlY3RlZEZpbGUgfHwgIXNlbGVjdGVkRmlsZS5zdGF0aWNGb3JtVmFsaWRcIlxyXG5cdFx0XHRbbmdDbGFzc109XCJ7XHJcblx0XHRcdFx0J29wYWNpdHktMzAgY3Vyc29yLW5vdC1hbGxvd2VkJzpcclxuXHRcdFx0XHRcdCFzZWxlY3RlZEZpbGUgfHwgIXNlbGVjdGVkRmlsZS5zdGF0aWNGb3JtVmFsaWQsXHJcblx0XHRcdFx0J2N1cnNvci1wb2ludGVyIGhvdmVyOnRleHQtd2hpdGUgaG92ZXI6YmctZ3JheS05MDAnOiAhKFxyXG5cdFx0XHRcdFx0IXNlbGVjdGVkRmlsZSB8fCAhc2VsZWN0ZWRGaWxlLnN0YXRpY0Zvcm1WYWxpZFxyXG5cdFx0XHRcdClcclxuXHRcdFx0fVwiXHJcblx0XHRcdGNsYXNzPVwic3VibWlzc2lvbi1idXR0b24gbXgtMlwiXHJcblx0XHQ+XHJcblx0XHRcdHt7ICdCVVRUT05TLkFQUExZX1RPX0FMTCcgfCB0cmFuc2xhdGUgfX1cclxuXHRcdDwvYnV0dG9uPlxyXG5cdFx0PCEtLSBXQVNfSU5fRkxFWF9ESVYgLS0+XHJcblxyXG5cdFx0PG5nLWNvbnRhaW5lclxyXG5cdFx0XHQqbmdJZj1cIlxyXG5cdFx0XHRcdGFkZGluZ1Byb3BlcnRpZXMgJiZcclxuXHRcdFx0XHQhdXBsb2FkTWFuZ21lbnRTZXJ2aWNlLnVwbG9hZGVkRmlsZXNTdGF0dXMudXBsb2FkSW5Qcm9ncmVzcyAmJlxyXG5cdFx0XHRcdHVwbG9hZE1hbmdtZW50U2VydmljZS5mYWlsZWRGaWxlcy5sZW5ndGggPT09IDBcclxuXHRcdFx0XCJcclxuXHRcdD5cclxuXHRcdFx0PGJ1dHRvblxyXG5cdFx0XHRcdChjbGljayk9XCJkaWFsb2cuZXhlY3V0ZUFjdGlvbihjcmVhdGVEb2N1bWVudClcIlxyXG5cdFx0XHRcdGNsYXNzPVwic3VibWlzc2lvbi1idXR0b24gcmVsYXRpdmVcIlxyXG5cdFx0XHRcdFtkaXNhYmxlZF09XCJjcmVhdGluZ1wiXHJcblx0XHRcdD5cclxuXHRcdFx0XHQ8c3BhbiAqbmdJZj1cIiFjcmVhdGluZzsgZWxzZSBsb2FkZXJcIj57e1xyXG5cdFx0XHRcdFx0J0JVVFRPTlMuQ1JFQVRFJyB8IHRyYW5zbGF0ZVxyXG5cdFx0XHRcdH19PC9zcGFuPlxyXG5cdFx0XHQ8L2J1dHRvbj5cclxuXHRcdFx0PG5nLXRlbXBsYXRlICNsb2FkZXI+XHJcblx0XHRcdFx0PG1hdC1zcGlubmVyXHJcblx0XHRcdFx0XHRbdmFsdWVdPVwiOTBcIlxyXG5cdFx0XHRcdFx0W3N0cm9rZVdpZHRoXT1cIjNcIlxyXG5cdFx0XHRcdFx0b3ZlcmxheT1cInRydWVcIlxyXG5cdFx0XHRcdFx0W2RpYW1ldGVyXT1cIjI1XCJcclxuXHRcdFx0XHRcdGNvbG9yPVwid2FyblwiXHJcblx0XHRcdFx0PlxyXG5cdFx0XHRcdDwvbWF0LXNwaW5uZXI+XHJcblx0XHRcdDwvbmctdGVtcGxhdGU+XHJcblx0XHQ8L25nLWNvbnRhaW5lcj5cclxuXHJcblx0XHQ8YnV0dG9uXHJcblx0XHRcdCpuZ0lmPVwiXHJcblx0XHRcdFx0YWRkaW5nUHJvcGVydGllcyAmJlxyXG5cdFx0XHRcdCF1cGxvYWRNYW5nbWVudFNlcnZpY2UudXBsb2FkZWRGaWxlc1N0YXR1cy51cGxvYWRJblByb2dyZXNzICYmXHJcblx0XHRcdFx0dXBsb2FkTWFuZ21lbnRTZXJ2aWNlLmZhaWxlZEZpbGVzLmxlbmd0aCA+IDBcclxuXHRcdFx0XCJcclxuXHRcdFx0KGNsaWNrKT1cImRpYWxvZy5leGVjdXRlQWN0aW9uKHRyeUFnYWluQ3JlYXRlRG9jdW1lbnQpXCJcclxuXHRcdFx0Y2xhc3M9XCJzdWJtaXNzaW9uLWJ1dHRvblwiXHJcblx0XHQ+XHJcblx0XHRcdHt7ICdCVVRUT05TLlRSWV9BR0FJTicgfCB0cmFuc2xhdGUgfX1cclxuXHRcdDwvYnV0dG9uPlxyXG5cclxuXHRcdDxidXR0b25cclxuXHRcdFx0W2Rpc2FibGVkXT1cIiFmaWxlRm9ybT8udmFsaWQgfHwgZGlzYWJsZUNyZWF0ZVdoZW5GaW5pc2hCdG5cIlxyXG5cdFx0XHQqbmdJZj1cIlxyXG5cdFx0XHRcdGFkZGluZ1Byb3BlcnRpZXMgJiZcclxuXHRcdFx0XHR1cGxvYWRNYW5nbWVudFNlcnZpY2UudXBsb2FkZWRGaWxlc1N0YXR1cy51cGxvYWRJblByb2dyZXNzXHJcblx0XHRcdFwiXHJcblx0XHRcdChjbGljayk9XCJkaWFsb2cuZXhlY3V0ZUFjdGlvbihjcmVhdGVXaGVuRmluaXNoKVwiXHJcblx0XHRcdGNsYXNzPVwic3VibWlzc2lvbi1idXR0b24gdy00NFwiXHJcblx0XHQ+XHJcblx0XHRcdHt7ICdCVVRUT05TLkNSRUFURV9XSEVOX0ZJTlNIJyB8IHRyYW5zbGF0ZSB9fVxyXG5cdFx0PC9idXR0b24+XHJcblxyXG5cdFx0PCEtLSBXQVNfSU5fRkxFWF9ESVYgLS0+XHJcblx0XHQ8YnV0dG9uXHJcblx0XHRcdGNsYXNzPVwiY2FuY2VsYXRpb24tYnV0dG9uIG14LTJcIlxyXG5cdFx0XHQoY2xpY2spPVwiZGlhbG9nLmV4ZWN1dGVBY3Rpb24obWluaW1pekRpYWxvZylcIlxyXG5cdFx0XHQqbmdJZj1cIlxyXG5cdFx0XHRcdHVwbG9hZE1hbmdtZW50U2VydmljZS51cGxvYWRlZEZpbGVzU3RhdHVzLnVwbG9hZEluUHJvZ3Jlc3MgfHxcclxuXHRcdFx0XHR1cGxvYWRNYW5nbWVudFNlcnZpY2UudXBsb2FkZWRGaWxlc1N0YXR1cy5udW1iZXJPZlVwbG9hZGVkRmlsZXMgIT09IDAgfHxcclxuXHRcdFx0XHRhZGRpbmdQcm9wZXJ0aWVzXHJcblx0XHRcdFwiXHJcblx0XHQ+XHJcblx0XHRcdHt7ICdCVVRUT05TLk1JTklNSVpFRCcgfCB0cmFuc2xhdGUgfX1cclxuXHRcdDwvYnV0dG9uPlxyXG5cdFx0PCEtLSA8YnV0dG9uIGNsYXNzPVwiY2FuY2VsYXRpb24tYnV0dG9uXCIgKGNsaWNrKT1cIiBkaWFsb2cuZXhlY3V0ZUFjdGlvbihjbG9zZURpYWxvZylcIj5cclxue3sgJ0JVVFRPTlMuQ0FOQ0VMJyB8IHRyYW5zbGF0ZSB9fVxyXG48L2J1dHRvbj4gLS0+XHJcblx0PC9uZy10ZW1wbGF0ZT5cclxuPC9uZGYtbnV4ZW8tZGlhbG9nPlxyXG4iXX0=
|
package/esm2015/lib/components/file-manger/components/creation-type/creation-type.component.js
CHANGED
|
@@ -25,4 +25,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
25
25
|
styleUrls: ['./creation-type.component.scss']
|
|
26
26
|
}]
|
|
27
27
|
}], ctorParameters: function () { return [{ type: i1.MatDialogRef }, { type: i0.Injector }]; } });
|
|
28
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRpb24tdHlwZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9maWxlLW1hbmdlci9jb21wb25lbnRzL2NyZWF0aW9uLXR5cGUvY3JlYXRpb24tdHlwZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9maWxlLW1hbmdlci9jb21wb25lbnRzL2NyZWF0aW9uLXR5cGUvY3JlYXRpb24tdHlwZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFvQixNQUFNLGVBQWUsQ0FBQztBQUc1RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwwREFBMEQsQ0FBQztBQUUvRixPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7OztBQU0xQixNQUFNLE9BQU8scUJBQ1osU0FBUSxtQkFBb0Q7SUFHNUQsWUFDUSxTQUE4QyxFQUNyRCxRQUFrQjtRQUVsQixLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7UUFIVCxjQUFTLEdBQVQsU0FBUyxDQUFxQztRQVF0RCxnQkFBVyxHQUFxQixDQUFDLElBQUksRUFBRSxFQUFFO1lBQ3hDLE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2pCLENBQUMsQ0FBQztJQU5GLENBQUM7SUFFRCxRQUFRLEtBQVUsQ0FBQzs7bUhBWFAscUJBQXFCO3VHQUFyQixxQkFBcUIsZ0ZDWGxDLDhsQkFvQkE7NEZEVGEscUJBQXFCO2tCQUxqQyxTQUFTO21CQUFDO29CQUNWLFFBQVEsRUFBRSxtQkFBbUI7b0JBQzdCLFdBQVcsRUFBRSxnQ0FBZ0M7b0JBQzdDLFNBQVMsRUFBRSxDQUFDLGdDQUFnQyxDQUFDO2lCQUM3QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5qZWN0b3IsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBNYXREaWFsb2dSZWYgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xyXG5pbXBvcnQgeyB0YWtlLCB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IEJhc2VEaWFsb2dDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi8uLi9zaGFyZWQvY29tcG9uZW50cy9iYXNlL2Jhc2UtZGlhbG9nLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IERpYWxvZ0FjdGlvblR5cGUgfSBmcm9tICcuLi8uLi8uLi8uLi9zaGFyZWQvY29tcG9uZW50cy9udXhlby1kaWFsb2cvbW9kZWxzL2RpYWxvZy1vcHRpb24ubW9kZWwnO1xyXG5pbXBvcnQgeyBvZiB9IGZyb20gJ3J4anMnO1xyXG5AQ29tcG9uZW50KHtcclxuXHRzZWxlY3RvcjogJ2FwcC1jcmVhdGlvbi10eXBlJyxcclxuXHR0ZW1wbGF0ZVVybDogJy4vY3JlYXRpb24tdHlwZS5jb21wb25lbnQuaHRtbCcsXHJcblx0c3R5bGVVcmxzOiBbJy4vY3JlYXRpb24tdHlwZS5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDcmVhdGlvblR5cGVDb21wb25lbnRcclxuXHRleHRlbmRzIEJhc2VEaWFsb2dDb21wb25lbnQ8Q3JlYXRpb25UeXBlQ29tcG9uZW50LCBhbnksIGFueT5cclxuXHRpbXBsZW1lbnRzIE9uSW5pdFxyXG57XHJcblx0Y29uc3RydWN0b3IoXHJcblx0XHRwdWJsaWMgZGlhbG9nUmVmOiBNYXREaWFsb2dSZWY8Q3JlYXRpb25UeXBlQ29tcG9uZW50PixcclxuXHRcdGluamVjdG9yOiBJbmplY3RvclxyXG5cdCkge1xyXG5cdFx0c3VwZXIoaW5qZWN0b3IpO1xyXG5cdH1cclxuXHJcblx0bmdPbkluaXQoKTogdm9pZCB7fVxyXG5cclxuXHRjbG9zZURpYWxvZzogRGlhbG9nQWN0aW9uVHlwZSA9ICh0eXBlKSA9PiB7XHJcblx0XHRyZXR1cm4gb2YodHlwZSk7XHJcblx0fTtcclxufVxyXG4iLCI8bmRmLW51eGVvLWRpYWxvZ1xyXG5cdGRpYWxvZ1RpdGxlPVwie3sgJ0NSRUFURS5DSE9PU0VfVFlQRScgfCB0cmFuc2xhdGUgfX1cIlxyXG5cdHBhbmVsQ2xhc3M9XCJjcmVhdGlvbi10eXBlLWRpYWxvZ1wiXHJcbj5cclxuXHQ8bmctdGVtcGxhdGUgI2FjdGlvbnNUZW1wbGF0ZSBsZXQtZGlhbG9nPVwiZGlhbG9nXCI+XHJcblx0XHQ8YnV0dG9uXHJcblx0XHRcdGNsYXNzPVwic3VibWlzc2lvbi1idXR0b25cIlxyXG5cdFx0XHQoY2xpY2spPVwiZGlhbG9nLmV4ZWN1dGVBY3Rpb24oY2xvc2VEaWFsb2csIFsnc2NhbiddKVwiXHJcblx0XHQ+XHJcblx0XHRcdHt7ICdDUkVBVEUuU0NBTicgfCB0cmFuc2xhdGUgfX1cclxuXHRcdDwvYnV0dG9uPlxyXG5cclxuXHRcdDxidXR0b25cclxuXHRcdFx0Y2xhc3M9XCJzdWJtaXNzaW9uLWJ1dHRvblwiXHJcblx0XHRcdChjbGljayk9XCJkaWFsb2cuZXhlY3V0ZUFjdGlvbihjbG9zZURpYWxvZywgWyd1cGxvYWQnXSlcIlxyXG5cdFx0PlxyXG5cdFx0XHR7eyAnQ1JFQVRFLlVQTE9BRCcgfCB0cmFuc2xhdGUgfX1cclxuXHRcdDwvYnV0dG9uPlxyXG5cdDwvbmctdGVtcGxhdGU+XHJcbjwvbmRmLW51eGVvLWRpYWxvZz5cclxuIl19
|
|
@@ -100,4 +100,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
100
100
|
}], selectedItems: [{
|
|
101
101
|
type: Input
|
|
102
102
|
}] } });
|
|
103
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
103
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVsZXRlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9udXhlby1kZXZlbG9wbWVudC1mcmFtZXdvcmsvc3JjL2xpYi9jb21wb25lbnRzL2ZpbGUtbWFuZ2VyL2NvbXBvbmVudHMvZGVsZXRlL2RlbGV0ZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9maWxlLW1hbmdlci9jb21wb25lbnRzL2RlbGV0ZS9kZWxldGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNOLFNBQVMsRUFDVCxZQUFZLEVBRVosS0FBSyxFQUVMLE1BQU0sRUFDTixTQUFTLEVBRVQsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBR3JELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5REFBeUQsQ0FBQztBQUd6RixPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDckMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG1EQUFtRCxDQUFDOzs7Ozs7QUFNbEYsTUFBTSxPQUFPLGVBQWdCLFNBQVEsYUFBYTtJQXFDakQsZUFBZTtJQUNmLFlBQ1Msa0JBQXNDLEVBQ3BDLG1CQUF3QyxFQUMzQyxrQkFBc0MsRUFDN0MsUUFBa0I7UUFFbEIsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBTFIsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFvQjtRQUNwQyx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXFCO1FBQzNDLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBb0I7UUF0QjlDLGtCQUFhLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUV4QyxZQUFPLEdBQUcsSUFBSSxZQUFZLEVBQU8s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TixhQUFhO3NCQURaLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG5cdENvbXBvbmVudCxcclxuXHRFdmVudEVtaXR0ZXIsXHJcblx0VGVtcGxhdGVSZWYsXHJcblx0SW5wdXQsXHJcblx0T25Jbml0LFxyXG5cdE91dHB1dCxcclxuXHRWaWV3Q2hpbGQsXHJcblx0SW5qZWN0b3JcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRmlsZU1hbmFnZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vc2hhcmVkLXNlcnZpY2VzL2ZpbGUtbWFuYWdlci5zZXJ2aWNlJztcclxuaW1wb3J0IHsgRHhGb3JtQ29tcG9uZW50IH0gZnJvbSAnZGV2ZXh0cmVtZS1hbmd1bGFyJztcclxuaW1wb3J0IHsgQ3VzdG9tVG9hc3RyU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL2N1c3RvbS10b2FzdHIvc2VydmljZXMvY3VzdG9tLXRvYXN0ci5zZXJ2aWNlJztcclxuaW1wb3J0IHsgRGlhbG9nT3B0aW9ucyB9IGZyb20gJy4uLy4uLy4uLy4uL3NoYXJlZC9jb21wb25lbnRzL251eGVvLWRpYWxvZy9tb2RlbHMvZGlhbG9nLW9wdGlvbi5tb2RlbCc7XHJcbmltcG9ydCB7IE5kZk51eGVvRGlhbG9nIH0gZnJvbSAnLi4vLi4vLi4vLi4vc2hhcmVkL2NvbXBvbmVudHMvbnV4ZW8tZGlhbG9nL251eGVvLmRpYWxvZyc7XHJcbmltcG9ydCB7IE51eGVvRGlhbG9nU2VydmljZSB9IGZyb20gJy4uLy4uLy4uLy4uL3NoYXJlZC9jb21wb25lbnRzL251eGVvLWRpYWxvZy9zZXJ2aWNlcy9udXhlby1kaWFsb2cuc2VydmljZSc7XHJcbmltcG9ydCB7IERpYWxvZ0FjdGlvblR5cGUgfSBmcm9tICcuLi8uLi8uLi8uLi9zaGFyZWQvY29tcG9uZW50cy9udXhlby1kaWFsb2cvbW9kZWxzL2RpYWxvZy1vcHRpb24ubW9kZWwnO1xyXG5pbXBvcnQgeyB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IEJhc2VDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi8uLi9zaGFyZWQvY29tcG9uZW50cy9iYXNlL2Jhc2UuY29tcG9uZW50JztcclxuQENvbXBvbmVudCh7XHJcblx0c2VsZWN0b3I6ICdhcHAtZGVsZXRlJyxcclxuXHR0ZW1wbGF0ZVVybDogJy4vZGVsZXRlLmNvbXBvbmVudC5odG1sJyxcclxuXHRzdHlsZVVybHM6IFsnLi9kZWxldGUuY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgRGVsZXRlQ29tcG9uZW50IGV4dGVuZHMgQmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcblx0QFZpZXdDaGlsZChEeEZvcm1Db21wb25lbnQsIHsgc3RhdGljOiBmYWxzZSB9KSBmb3JtOiBEeEZvcm1Db21wb25lbnQ7XHJcblx0QFZpZXdDaGlsZCgnY29udGVudFRlbXBsYXRlJykgY29udGVudFRlbXBsYXRlITogVGVtcGxhdGVSZWY8YW55PjtcclxuXHRAVmlld0NoaWxkKCdhY3Rpb25zVGVtcGxhdGUnKSBhY3Rpb25zVGVtcGxhdGUhOiBUZW1wbGF0ZVJlZjxhbnk+O1xyXG5cdEBJbnB1dCgpXHJcblx0c2V0IHZpc2libGUodmFsdWU6IGFueSkge1xyXG5cdFx0aWYgKHRoaXMuX3Zpc2libGUgPT09IHZhbHVlKSB7XHJcblx0XHRcdHJldHVybjtcclxuXHRcdH1cclxuXHRcdGlmICh2YWx1ZSkge1xyXG5cdFx0XHR0aGlzLm9wZW5EaWFsb2coKTtcclxuXHRcdH1cclxuXHRcdHRoaXMuX3Zpc2libGUgPSB2YWx1ZTtcclxuXHRcdHRoaXMudmlzaWJsZUNoYW5nZS5lbWl0KHRoaXMuX3Zpc2libGUpO1xyXG5cdH1cclxuXHRnZXQgdmlzaWJsZSgpIHtcclxuXHRcdHJldHVybiB0aGlzLl92aXNpYmxlO1xyXG5cdH1cclxuXHRAT3V0cHV0KClcclxuXHR2aXNpYmxlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XHJcblx0QE91dHB1dCgpXHJcblx0cmVmcmVzaCA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG5cdEBJbnB1dCgpXHJcblx0cnRsRW5hYmxlZCA9IGZhbHNlO1xyXG5cdEBJbnB1dCgpXHJcblx0c2VsZWN0ZWRJdGVtOiBhbnk7XHJcblx0Ly8gQElucHV0KClcclxuXHQvLyByb290Rm9sZGVyOiBhbnk7XHJcblx0Ly8gQElucHV0KClcclxuXHQvLyByb290RW50cmllczogYW55O1xyXG5cdEBJbnB1dCgpXHJcblx0c2VsZWN0ZWRJdGVtczogYW55O1xyXG5cdC8vIEBJbnB1dCgpXHJcblx0Ly8gZGlyZWN0b3J5OiBhbnk7XHJcblx0Ly8gZm9ybURhdGE6IGFueSA9IHt9O1xyXG5cdC8vIGRpc2FibGUgPSB0cnVlO1xyXG5cdF92aXNpYmxlID0gZmFsc2U7XHJcblx0Ly8gY3VycmVudEl0ZW07XHJcblx0Y29uc3RydWN0b3IoXHJcblx0XHRwcml2YXRlIGZpbGVNYW5hZ2VyU2VydmljZTogRmlsZU1hbmFnZXJTZXJ2aWNlLFxyXG5cdFx0cHJvdGVjdGVkIGN1c3RvbVRvYXN0clNlcnZpY2U6IEN1c3RvbVRvYXN0clNlcnZpY2UsXHJcblx0XHRwdWJsaWMgbnV4ZW9EaWFsb2dTZXJ2aWNlOiBOdXhlb0RpYWxvZ1NlcnZpY2UsXHJcblx0XHRpbmplY3RvcjogSW5qZWN0b3JcclxuXHQpIHtcclxuXHRcdHN1cGVyKGluamVjdG9yKTtcclxuXHR9XHJcblxyXG5cdG5nT25Jbml0KCk6IHZvaWQge31cclxuXHJcblx0b3BlbkRpYWxvZygpOiB2b2lkIHtcclxuXHRcdGNvbnN0IG9wdGlvbnM6IERpYWxvZ09wdGlvbnMgPSB7XHJcblx0XHRcdGNvbXBvbmVudDogTmRmTnV4ZW9EaWFsb2csXHJcblx0XHRcdHBhbmVsQ2xhc3M6ICdwb3BVcFBhcmVudCcsXHJcblx0XHRcdGNvbmZpZzoge1xyXG5cdFx0XHRcdHRpdGxlOiB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgnRklMRV9NQU5BR0VSLkRFTEVURScpLFxyXG5cdFx0XHRcdGNvbnRlbnRUZW1wbGF0ZTogdGhpcy5jb250ZW50VGVtcGxhdGUsXHJcblx0XHRcdFx0YWN0aW9uc1RlbXBsYXRlOiB0aGlzLmFjdGlvbnNUZW1wbGF0ZVxyXG5cdFx0XHR9XHJcblx0XHR9O1xyXG5cdFx0dGhpcy5udXhlb0RpYWxvZ1NlcnZpY2VcclxuXHRcdFx0Lm9wZW4ob3B0aW9ucylcclxuXHRcdFx0LmFmdGVyQ2xvc2VkKClcclxuXHRcdFx0LnN1YnNjcmliZSgocmVzKSA9PiB7XHJcblx0XHRcdFx0dGhpcy5jYW5jZWwoKTtcclxuXHRcdFx0fSk7XHJcblx0fVxyXG5cclxuXHRjYW5jZWwoKSB7XHJcblx0XHR0aGlzLnZpc2libGUgPSBmYWxzZTtcclxuXHR9XHJcblxyXG5cdGRlbGV0ZUZvbGRlcjogRGlhbG9nQWN0aW9uVHlwZSA9IChhbnN3ZXIpID0+IHtcclxuXHRcdHJldHVybiB0aGlzLmZpbGVNYW5hZ2VyU2VydmljZS5kZWxldGVGb2xkZXIodGhpcy5zZWxlY3RlZEl0ZW1zKS5waXBlKFxyXG5cdFx0XHR0YXAoXHJcblx0XHRcdFx0KHJlcykgPT4ge1xyXG5cdFx0XHRcdFx0dGhpcy52aXNpYmxlID0gYW5zd2VyO1xyXG5cdFx0XHRcdFx0dGhpcy5yZWZyZXNoLm5leHQoKTtcclxuXHRcdFx0XHRcdHRoaXMuY3VzdG9tVG9hc3RyU2VydmljZS5zaG93KFxyXG5cdFx0XHRcdFx0XHQnc3VjY2VzcycsXHJcblx0XHRcdFx0XHRcdCdUT0FTVEVSLlNVQ0NFU1MnLFxyXG5cdFx0XHRcdFx0XHQnVE9BU1RFUi5ET0NVTUVOVF9ERUxFVEVEJ1xyXG5cdFx0XHRcdFx0KTtcclxuXHRcdFx0XHR9LFxyXG5cdFx0XHRcdChlcnIpID0+IHtcclxuXHRcdFx0XHRcdHRoaXMudmlzaWJsZSA9IHRydWU7XHJcblx0XHRcdFx0XHR0aGlzLmN1c3RvbVRvYXN0clNlcnZpY2Uuc2hvdyhcclxuXHRcdFx0XHRcdFx0J2Vycm9yJyxcclxuXHRcdFx0XHRcdFx0J1RPQVNURVIuRVJST1InLFxyXG5cdFx0XHRcdFx0XHQnVE9BU1RFUi5ET0NVTUVOVF9ERUxFVEVEX0VSUk9SJ1xyXG5cdFx0XHRcdFx0KTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdClcclxuXHRcdCk7XHJcblx0fTtcclxufVxyXG4iLCI8bmctdGVtcGxhdGUgI2NvbnRlbnRUZW1wbGF0ZT5cclxuXHQ8ZGl2PlxyXG5cdFx0PGRpdiBjbGFzcz1cImQtZmxleCBweC04IG1iLTUgLW10LTggaC0yMFwiPlxyXG5cdFx0XHQ8aW1nIGNsYXNzPVwidy0xNCBoLTE0XCIgc3JjPVwiYXNzZXRzL2ltYWdlcy90aHVtYm5haWxzL3dhcm5pbmcucG5nXCIgLz5cclxuXHRcdFx0PGRpdiBjbGFzcz1cInB4LTMgbXQtM1wiPlxyXG5cdFx0XHRcdDxzcGFuIGNsYXNzPVwidGV4dC14bCBmb250LW1lZGl1bVwiPnt7XHJcblx0XHRcdFx0XHQnY29uZmlybURpYWxvZy5jb25maXJtJyB8IHRyYW5zbGF0ZVxyXG5cdFx0XHRcdH19PC9zcGFuPlxyXG5cdFx0XHRcdDxkaXYgY2xhc3M9XCJ0ZXh0LWxnIHRleHQtc2Vjb25kYXJ5IHRleHQtYmFzZSBtdC0yXCI+XHJcblx0XHRcdFx0XHR7eyAnY29uZmlybURpYWxvZy5EZWxldGVfSXRlbScgfCB0cmFuc2xhdGUgfX0ge3sgaXRlbXNTZWxlY3RlZCB9fSA/XHJcblx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdDwvZGl2PlxyXG5cdFx0PC9kaXY+XHJcblx0PC9kaXY+XHJcbjwvbmctdGVtcGxhdGU+XHJcblxyXG48bmctdGVtcGxhdGUgI2FjdGlvbnNUZW1wbGF0ZSBsZXQtZGlhbG9nPVwiZGlhbG9nXCI+XHJcblx0PGJ1dHRvblxyXG5cdFx0W2Rpc2FibGVkXT1cImRpc2FibGVcIlxyXG5cdFx0Y2xhc3M9XCJzdWJtaXNzaW9uLWJ1dHRvbiBweC01XCJcclxuXHRcdChjbGljayk9XCJkaWFsb2cuZXhlY3V0ZUFjdGlvbihkZWxldGVGb2xkZXIsIFtmYWxzZV0pXCJcclxuXHQ+XHJcblx0XHR7eyAnQlVUVE9OUy5EZWxldGUnIHwgdHJhbnNsYXRlIH19XHJcblx0PC9idXR0b24+XHJcbjwvbmctdGVtcGxhdGU+XHJcbiJdfQ==
|
package/esm2015/lib/components/file-manger/components/folder-modal/folder-modal.component.js
CHANGED
|
@@ -128,4 +128,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
128
128
|
type: HostListener,
|
|
129
129
|
args: ['document:keyup.enter', ['$event']]
|
|
130
130
|
}] } });
|
|
131
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9sZGVyLW1vZGFsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL251eGVvLWRldmVsb3BtZW50LWZyYW1ld29yay9zcmMvbGliL2NvbXBvbmVudHMvZmlsZS1tYW5nZXIvY29tcG9uZW50cy9mb2xkZXItbW9kYWwvZm9sZGVyLW1vZGFsLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL251eGVvLWRldmVsb3BtZW50LWZyYW1ld29yay9zcmMvbGliL2NvbXBvbmVudHMvZmlsZS1tYW5nZXIvY29tcG9uZW50cy9mb2xkZXItbW9kYWwvZm9sZGVyLW1vZGFsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTixTQUFTLEVBQ1QsWUFBWSxFQUNaLE1BQU0sRUFJTixTQUFTLEVBQ1QsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFnQixlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUd6RSxPQUFPLEVBQUUsT0FBTyxFQUFnQixNQUFNLE1BQU0sQ0FBQztBQUk3QyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwwREFBMEQsQ0FBQztBQUUvRixPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7Ozs7Ozs7OztBQU9yQyxNQUFNLE9BQU8sb0JBQ1osU0FBUSxtQkFBbUQ7SUFtQzNELFlBQ2lDLElBQUksRUFDNUIsU0FBNkMsRUFDN0MsaUJBQXFDLEVBQ3JDLGtCQUFzQyxFQUN0QyxhQUFrQyxFQUMxQyxRQUFrQjtRQUVsQixLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7UUFQZ0IsU0FBSSxHQUFKLElBQUksQ0FBQTtRQUM1QixjQUFTLEdBQVQsU0FBUyxDQUFvQztRQUM3QyxzQkFBaUIsR0FBakIsaUJBQWlCLENBQW9CO1FBQ3JDLHVCQUFrQixHQUFsQixrQkFBa0Is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QjtvQkFDNUIsV0FBVyxFQUFFLCtCQUErQjtvQkFDNUMsU0FBUyxFQUFFLENBQUMsK0JBQStCLENBQUM7aUJBQzVDOzswQkFzQ0UsTUFBTTsyQkFBQyxlQUFlO2tNQVpDLFVBQVU7c0JBQWxDLFNBQVM7dUJBQUMsWUFBWTtnQkFFdkIsVUFBVTtzQkFEVCxZQUFZO3VCQUFDLHNCQUFzQixFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuXHRBZnRlclZpZXdJbml0LFxyXG5cdENvbXBvbmVudCxcclxuXHRIb3N0TGlzdGVuZXIsXHJcblx0SW5qZWN0LFxyXG5cdEluamVjdG9yLFxyXG5cdE9uRGVzdHJveSxcclxuXHRPbkluaXQsXHJcblx0Vmlld0NoaWxkXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZvcm1CdWlsZGVyLCBGb3JtR3JvdXAsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IE1hdERpYWxvZ1JlZiwgTUFUX0RJQUxPR19EQVRBIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcclxuaW1wb3J0IHsgRHluYW1pY0Zvcm1TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vc2hhcmVkLXNlcnZpY2VzL2R5bmFtaWMtZm9ybS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgRmlsZU1hbmFnZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vc2hhcmVkLXNlcnZpY2VzL2ZpbGUtbWFuYWdlci5zZXJ2aWNlJztcclxuaW1wb3J0IHsgU3ViamVjdCwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgVHJhbnNsYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vY29yZS9zZXJ2aWNlcy90cmFuc2xhdGlvbi90cmFuc2xhdGlvbi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQ3VzdG9tVG9hc3RyU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL2N1c3RvbS10b2FzdHIvc2VydmljZXMvY3VzdG9tLXRvYXN0ci5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQmFzZURpYWxvZ0NvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uLy4uL3NoYXJlZC9jb21wb25lbnRzL2Jhc2UvYmFzZS1kaWFsb2cuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRGlhbG9nQWN0aW9uVHlwZSB9IGZyb20gJy4uLy4uLy4uLy4uL3NoYXJlZC9jb21wb25lbnRzL251eGVvLWRpYWxvZy9tb2RlbHMvZGlhbG9nLW9wdGlvbi5tb2RlbCc7XHJcbmltcG9ydCB7IHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG5cdHNlbGVjdG9yOiAnYXBwLWZvbGRlci1tb2RhbCcsXHJcblx0dGVtcGxhdGVVcmw6ICcuL2ZvbGRlci1tb2RhbC5jb21wb25lbnQuaHRtbCcsXHJcblx0c3R5bGVVcmxzOiBbJy4vZm9sZGVyLW1vZGFsLmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIEZvbGRlck1vZGFsQ29tcG9uZW50XHJcblx0ZXh0ZW5kcyBCYXNlRGlhbG9nQ29tcG9uZW50PEZvbGRlck1vZGFsQ29tcG9uZW50LCBhbnksIGFueT5cclxuXHRpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95XHJcbntcclxuXHRmb2xkZXJUeXBlO1xyXG5cdGR5bmFtaWNGb3JtO1xyXG5cdHRlbXBvcmFyeUR5YW5taWNEYXRhID0ge307XHJcblx0c2hvd1JlbmRlcmVyID0gZmFsc2U7XHJcblx0ZHluYW1pY0RhdGEgPSB7XHJcblx0XHR2YWxpZDogZmFsc2VcclxuXHR9O1xyXG5cdHN0YXRpY0Zvcm0gPSB7XHJcblx0XHR0aXRsZTogJycsXHJcblx0XHRkZXNjcmlwdGlvbjogJydcclxuXHRcdC8vIGRlcGFydG1lbnQ6JydcclxuXHR9O1xyXG5cclxuXHRmaWx0ZXIgPSB7fTtcclxuXHRmaWx0ZXIyID0ge307XHJcblx0cGFyZW50SWQgPSAnMic7XHJcblx0Y2hpbGRJZDtcclxuXHR0ZXN0aW5nRm9ybTogRm9ybUdyb3VwO1xyXG5cdHByaXZhdGUgX3Vuc3Vic2NyaWJlQWxsOiBTdWJqZWN0PGFueT4gPSBuZXcgU3ViamVjdDxhbnk+KCk7XHJcblx0aXNEbXNGb2xkZXIgPSBmYWxzZTtcclxuXHRjcmVhdGluZyA9IGZhbHNlO1xyXG5cdEBWaWV3Q2hpbGQoJ2ZvbGRlckZvcm0nKSBmb2xkZXJGb3JtOiBGb3JtR3JvdXA7XHJcblx0QEhvc3RMaXN0ZW5lcignZG9jdW1lbnQ6a2V5dXAuZW50ZXInLCBbJyRldmVudCddKVxyXG5cdEtleVVwRXZlbnQoZXZlbnQ6IEtleWJvYXJkRXZlbnQpIHtcclxuXHRcdGlmIChcclxuXHRcdFx0dGhpcy5keW5hbWljRGF0YS52YWxpZCAmJlxyXG5cdFx0XHQhdGhpcy5mb2xkZXJGb3JtLmludmFsaWQgJiZcclxuXHRcdFx0dGhpcy5zdGF0aWNGb3JtLnRpdGxlICE9ICcuLidcclxuXHRcdCkge1xyXG5cdFx0XHR0aGlzLmNyZWF0ZURvY3VtZW50KCk7XHJcblx0XHR9XHJcblx0fVxyXG5cdGNvbnN0cnVjdG9yKFxyXG5cdFx0QEluamVjdChNQVRfRElBTE9HX0RBVEEpIHB1YmxpYyBkYXRhLFxyXG5cdFx0cHJpdmF0ZSBkaWFsb2dSZWY6IE1hdERpYWxvZ1JlZjxGb2xkZXJNb2RhbENvbXBvbmVudD4sXHJcblx0XHRwcml2YXRlIGZpbGVNYW5nZXJTZXJ2aWNlOiBGaWxlTWFuYWdlclNlcnZpY2UsXHJcblx0XHRwcml2YXRlIGR5bmFtaWNGb3JtU2VydmljZTogRHluYW1pY0Zvcm1TZXJ2aWNlLFxyXG5cdFx0cHJpdmF0ZSB0b3N0ZXJTZXJ2aWNlOiBDdXN0b21Ub2FzdHJTZXJ2aWNlLFxyXG5cdFx0aW5qZWN0b3I6IEluamVjdG9yXHJcblx0KSB7XHJcblx0XHRzdXBlcihpbmplY3Rvcik7XHJcblx0fVxyXG5cclxuXHRuZ09uSW5pdCgpOiB2b2lkIHtcclxuXHRcdHRoaXMuZm9sZGVyVHlwZSA9IHRoaXMuZGF0YS5mb2xkZXJUeXBlO1xyXG5cdFx0dGhpcy5keW5hbWljRm9ybSA9IHRoaXMuZGF0YS5keW5hbWljRm9ybTtcclxuXHRcdHRoaXMuZmlsZU1hbmdlclNlcnZpY2VcclxuXHRcdFx0LmdldEZpbGVTY2hlbWFzKHRoaXMuZm9sZGVyVHlwZS50eXBlKVxyXG5cdFx0XHQuc3Vic2NyaWJlKChzY2hlbWFzKSA9PiB7XHJcblx0XHRcdFx0c2NoZW1hcy5tYXAoKGl0ZW0pID0+IHtcclxuXHRcdFx0XHRcdGlmIChpdGVtLm5hbWUgPT09ICdkbXNmb2xkZXInKSB7XHJcblx0XHRcdFx0XHRcdHRoaXMuaXNEbXNGb2xkZXIgPSB0cnVlO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH0pO1xyXG5cdFx0XHR9KTtcclxuXHR9XHJcblx0bmdBZnRlclZpZXdJbml0KCkge1xyXG5cdFx0dGhpcy5zaG93UmVuZGVyZXIgPSB0cnVlO1xyXG5cdH1cclxuXHJcblx0bmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcblx0XHR0aGlzLl91bnN1YnNjcmliZUFsbC5uZXh0KCk7XHJcblx0XHR0aGlzLl91bnN1YnNjcmliZUFsbC5jb21wbGV0ZSgpO1xyXG5cdH1cclxuXHRvbmR5bmFtaWNGb3JtQ2hhbmdlKGR5bmFtaWNEYXRhKSB7XHJcblx0XHRpZiAoZHluYW1pY0RhdGEuZGF0YSkge1xyXG5cdFx0XHRjb25zb2xlLmxvZyhkeW5hbWljRGF0YS5kYXRhKTtcclxuXHRcdFx0dGhpcy5keW5hbWljRGF0YSA9IHsgLi4uZHluYW1pY0RhdGEgfTtcclxuXHRcdH1cclxuXHR9XHJcblx0Y2xvc2VEaWFsb2coKSB7XHJcblx0XHR0aGlzLmRpYWxvZ1JlZi5jbG9zZShmYWxzZSk7XHJcblx0fVxyXG5cclxuXHRjcmVhdGVEb2N1bWVudDogRGlhbG9nQWN0aW9uVHlwZSA9ICgpID0+IHtcclxuXHRcdHRoaXMuY3JlYXRpbmcgPSB0cnVlO1xyXG5cdFx0bGV0IHBhcmFtcyA9IHRoaXMuY29uc3RydWN0UGF5TG9hZChcclxuXHRcdFx0dGhpcy5keW5hbWljRGF0YVsnZGF0YSddLFxyXG5cdFx0XHR0aGlzLnN0YXRpY0Zvcm1cclxuXHRcdCk7XHJcblx0XHRyZXR1cm4gdGhpcy5maWxlTWFuZ2VyU2VydmljZVxyXG5cdFx0XHQuY3JlYXRlRm9sZGVyKHBhcmFtcywgdGhpcy5maWxlTWFuZ2VyU2VydmljZS5zZWxlY3RlZEZvbGRlcklkKVxyXG5cclxuXHRcdFx0LnBpcGUoXHJcblx0XHRcdFx0dGFwKChyZXMpID0+IHtcclxuXHRcdFx0XHRcdC8vY29uc29sZS5sb2cocmVzKTtcclxuXHRcdFx0XHRcdHRoaXMuY3JlYXRpbmcgPSBmYWxzZTtcclxuXHRcdFx0XHRcdHRoaXMuZmlsZU1hbmdlclNlcnZpY2Uub25SZWZyZXNoaW5nRmlsZU1hbmdlci5uZXh0KCk7XHJcblx0XHRcdFx0XHR0aGlzLnRvc3RlclNlcnZpY2Uuc2hvdyhcclxuXHRcdFx0XHRcdFx0J3N1Y2Nlc3MnLFxyXG5cdFx0XHRcdFx0XHQnVE9BU1RFUi5TVUNDRVNTJyxcclxuXHRcdFx0XHRcdFx0J1RPQVNURVIuRk9MREVSX0NSRUFURURfU1VDQ0UnXHJcblx0XHRcdFx0XHQpO1xyXG5cdFx0XHRcdFx0dGhpcy5jbG9zZURpYWxvZygpO1xyXG5cdFx0XHRcdH0pXHJcblx0XHRcdCk7XHJcblx0fTtcclxuXHJcblx0Y29uc3RydWN0UGF5TG9hZChkeW5hbWljVmFsdWVzLCBzdGF0aWNGb3JtKSB7XHJcblx0XHQvLyBsZXQgcHJvcHMgPSB0aGlzLmNvbnN0cnVjdER5bmFtaWNGb3JtUGF5bG9hZChkeW5hbWljVmFsdWVzKTtcclxuXHRcdGxldCBwcm9wcyA9IHRoaXMuZHluYW1pY0Zvcm1TZXJ2aWNlLmNvbnN0cnVjdER5bmFtaWNGb3JtUGF5bG9hZChcclxuXHRcdFx0ZHluYW1pY1ZhbHVlcyxcclxuXHRcdFx0dGhpcy5keW5hbWljRm9ybVxyXG5cdFx0KTtcclxuXHRcdGxldCBwYXJhbSA9IHtcclxuXHRcdFx0ZG9jdW1lbnQ6IHtcclxuXHRcdFx0XHR0eXBlOiB0aGlzLmZvbGRlclR5cGUudHlwZSxcclxuXHRcdFx0XHRuYW1lOiBzdGF0aWNGb3JtLnRpdGxlLFxyXG5cdFx0XHRcdHByb3BlcnRpZXM6IHtcclxuXHRcdFx0XHRcdC4uLnByb3BzLFxyXG5cdFx0XHRcdFx0J2RjOmRlc2NyaXB0aW9uJzogc3RhdGljRm9ybS5kZXNjcmlwdGlvbixcclxuXHRcdFx0XHRcdCdkYzp0aXRsZSc6IHN0YXRpY0Zvcm0udGl0bGVcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH07XHJcblx0XHRpZiAodGhpcy5mb2xkZXJUeXBlLmRvY3VtZW50Q29kZSAmJiB0aGlzLmlzRG1zRm9sZGVyKSB7XHJcblx0XHRcdHBhcmFtWydkb2N1bWVudFR5cGVDb2RlJ10gPSB0aGlzLmZvbGRlclR5cGUuZG9jdW1lbnRDb2RlO1xyXG5cdFx0XHRwYXJhbVsnZG9jdW1lbnQnXVsncHJvcGVydGllcyddWydkbXNmb2xkZXI6ZG9jdW1lbnRUeXBlQ29kZSddID1cclxuXHRcdFx0XHR0aGlzLmZvbGRlclR5cGUuZG9jdW1lbnRDb2RlO1xyXG5cdFx0fVxyXG5cdFx0cmV0dXJuIHBhcmFtO1xyXG5cdH1cclxuXHJcblx0Y2hhbmdpbmcoZGF0YSkge1xyXG5cdFx0Ly9jb25zb2xlLmxvZyhkYXRhKTtcclxuXHR9XHJcbn1cclxuIiwiPG5kZi1udXhlby1kaWFsb2dcclxuXHRkaWFsb2dUaXRsZT1cInt7ICdDUkVBVEUuY3JlYXRlRm9sZGVyJyB8IHRyYW5zbGF0ZSB9fVwiXHJcblx0cGFuZWxDbGFzcz1cImNyZWF0ZS1mb2xkZXItbW9kYWxcIlxyXG4+XHJcblx0PG5nLXRlbXBsYXRlICNjb250ZW50VGVtcGxhdGU+XHJcblx0XHQ8ZGl2IGNsYXNzPVwiZm9sZGVyLXdyYXBwZXJcIiBTZXRSdGw+XHJcblx0XHRcdDxkaXYgY2xhc3M9XCJtYi01XCI+XHJcblx0XHRcdFx0PGRpdiBjbGFzcz1cImxhYmVsLXN0eWxlXCI+XHJcblx0XHRcdFx0XHR7eyAnRk9MREVSUy5UWVBFJyB8IHRyYW5zbGF0ZSB9fVxyXG5cdFx0XHRcdDwvZGl2PlxyXG5cdFx0XHRcdDxkaXYgY2xhc3M9XCJ0ZXh0LWJhc2UgdGV4dC1ncmF5LTkwMFwiPlxyXG5cdFx0XHRcdFx0e3sgaXNBcmFiaWMgPyBmb2xkZXJUeXBlLmFyYWJpY1RleHQgOiBmb2xkZXJUeXBlLmVuZ2xpc2hUZXh0IH19XHJcblx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdDwvZGl2PlxyXG5cdFx0XHQ8Zm9ybSAjZm9sZGVyRm9ybT1cIm5nRm9ybVwiPlxyXG5cdFx0XHRcdDxkaXYgY2xhc3M9XCJtYi0zXCI+XHJcblx0XHRcdFx0XHQ8ZGl2IGNsYXNzPVwibGFiZWwtc3R5bGVcIj5cclxuXHRcdFx0XHRcdFx0e3sgJ0ZPTERFUlMuVElUTEUnIHwgdHJhbnNsYXRlIH19XHJcblx0XHRcdFx0XHQ8L2Rpdj5cclxuXHRcdFx0XHRcdDxpbnB1dFxyXG5cdFx0XHRcdFx0XHRjbGFzcz1cImZpZWxkLXN0eWxlXCJcclxuXHRcdFx0XHRcdFx0W25nQ2xhc3NdPVwieyAnYm9yZGVyLXJlZC01MDAnOiBzdGF0aWNGb3JtLnRpdGxlID09PSAnLi4nIH1cIlxyXG5cdFx0XHRcdFx0XHRyZXF1aXJlZFxyXG5cdFx0XHRcdFx0XHRbKG5nTW9kZWwpXT1cInN0YXRpY0Zvcm0udGl0bGVcIlxyXG5cdFx0XHRcdFx0XHRpZD1cImZvbGRlclRpdGxlXCJcclxuXHRcdFx0XHRcdFx0bmFtZT1cImZvbGRlclRpdGxlXCJcclxuXHRcdFx0XHRcdC8+XHJcblx0XHRcdFx0XHQ8ZGl2IGNsYXNzPVwidGV4dC1yZWQtNTAwIHRleHQtYmFzZVwiICpuZ0lmPVwic3RhdGljRm9ybS50aXRsZSA9PT0gJy4uJ1wiPlxyXG5cdFx0XHRcdFx0XHRJbnZhbGlkIEZvbGRlciBUaXRsZVxyXG5cdFx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdFx0PGRpdiBjbGFzcz1cIm1iLTNcIj5cclxuXHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJsYWJlbC1zdHlsZVwiPlxyXG5cdFx0XHRcdFx0XHR7eyAnRk9MREVSUy5ERVNDUklQVElPTicgfCB0cmFuc2xhdGUgfX1cclxuXHRcdFx0XHRcdDwvZGl2PlxyXG5cdFx0XHRcdFx0PGlucHV0XHJcblx0XHRcdFx0XHRcdGNsYXNzPVwiZmllbGQtc3R5bGVcIlxyXG5cdFx0XHRcdFx0XHRbKG5nTW9kZWwpXT1cInN0YXRpY0Zvcm0uZGVzY3JpcHRpb25cIlxyXG5cdFx0XHRcdFx0XHRpZD1cImZvbGRlckRlc2NyaXB0aW9uXCJcclxuXHRcdFx0XHRcdFx0bmFtZT1cImZvbGRlckRlc2NyaXB0aW9uXCJcclxuXHRcdFx0XHRcdC8+XHJcblx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdDwvZm9ybT5cclxuXHJcblx0XHRcdDxkaXYgY2xhc3M9XCJkeW5hbWljLXBhcnQgLW14LTRcIiAqbmdJZj1cImR5bmFtaWNGb3JtICYmIHNob3dSZW5kZXJlclwiPlxyXG5cdFx0XHRcdDxhcHAtZHluYW1pYy1mb3JtXHJcblx0XHRcdFx0XHRbZm9ybV09XCJkeW5hbWljRm9ybVwiXHJcblx0XHRcdFx0XHRbZGF0YV09XCJ0ZW1wb3JhcnlEeWFubWljRGF0YVwiXHJcblx0XHRcdFx0XHQoY2hhbmdlKT1cIm9uZHluYW1pY0Zvcm1DaGFuZ2UoJGV2ZW50KVwiXHJcblx0XHRcdFx0PjwvYXBwLWR5bmFtaWMtZm9ybT5cclxuXHRcdFx0PC9kaXY+XHJcblx0XHQ8L2Rpdj5cclxuXHQ8L25nLXRlbXBsYXRlPlxyXG5cclxuXHQ8bmctdGVtcGxhdGUgI2FjdGlvbnNUZW1wbGF0ZSBsZXQtZGlhbG9nPVwiZGlhbG9nXCI+XHJcblx0XHQ8YnV0dG9uXHJcblx0XHRcdFtuZ0NsYXNzXT1cIntcclxuXHRcdFx0XHQnb3BhY2l0eS0zMCBjdXJzb3Itbm90LWFsbG93ZWQnOlxyXG5cdFx0XHRcdFx0IWR5bmFtaWNEYXRhLnZhbGlkIHx8IGZvbGRlckZvcm0uaW52YWxpZCB8fCBzdGF0aWNGb3JtLnRpdGxlID09PSAnLi4nXHJcblx0XHRcdH1cIlxyXG5cdFx0XHRjbGFzcz1cInN1Ym1pc3Npb24tYnV0dG9uIHctNDRcIlxyXG5cdFx0XHQoY2xpY2spPVwiZGlhbG9nLmV4ZWN1dGVBY3Rpb24oY3JlYXRlRG9jdW1lbnQpXCJcclxuXHRcdD5cclxuXHRcdFx0e3sgJ0JVVFRPTlMuQ1JFQVRFJyB8IHRyYW5zbGF0ZSB9fVxyXG5cdFx0PC9idXR0b24+XHJcblx0PC9uZy10ZW1wbGF0ZT5cclxuPC9uZGYtbnV4ZW8tZGlhbG9nPlxyXG4iXX0=
|
|
131
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9sZGVyLW1vZGFsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9udXhlby1kZXZlbG9wbWVudC1mcmFtZXdvcmsvc3JjL2xpYi9jb21wb25lbnRzL2ZpbGUtbWFuZ2VyL2NvbXBvbmVudHMvZm9sZGVyLW1vZGFsL2ZvbGRlci1tb2RhbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9maWxlLW1hbmdlci9jb21wb25lbnRzL2ZvbGRlci1tb2RhbC9mb2xkZXItbW9kYWwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVOLFNBQVMsRUFDVCxZQUFZLEVBQ1osTUFBTSxFQUlOLFNBQVMsRUFDVCxNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQWdCLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBR3pFLE9BQU8sRUFBRSxPQUFPLEVBQWdCLE1BQU0sTUFBTSxDQUFDO0FBSTdDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBEQUEwRCxDQUFDO0FBRS9GLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7Ozs7Ozs7O0FBT3JDLE1BQU0sT0FBTyxvQkFDWixTQUFRLG1CQUFtRDtJQW1DM0QsWUFDaUMsSUFBSSxFQUM1QixTQUE2QyxFQUM3QyxpQkFBcUMsRUFDckMsa0JBQXNDLEVBQ3RDLGFBQWtDLEVBQzFDLFFBQWtCO1FBRWxCLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQztRQVBnQixTQUFJLEdBQUosSUFBSSxDQUFBO1FBQzVCLGNBQVMsR0FBVCxTQUFTLENBQW9DO1FBQzdDLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBb0I7UUFDckMsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFvQjtRQUN0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QUFXLEVBQUUsK0JBQStCO29CQUM1QyxTQUFTLEVBQUUsQ0FBQywrQkFBK0IsQ0FBQztpQkFDNUM7OzBCQXNDRSxNQUFNOzJCQUFDLGVBQWU7a01BWkMsVUFBVTtzQkFBbEMsU0FBUzt1QkFBQyxZQUFZO2dCQUV2QixVQUFVO3NCQURULFlBQVk7dUJBQUMsc0JBQXNCLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG5cdEFmdGVyVmlld0luaXQsXHJcblx0Q29tcG9uZW50LFxyXG5cdEhvc3RMaXN0ZW5lcixcclxuXHRJbmplY3QsXHJcblx0SW5qZWN0b3IsXHJcblx0T25EZXN0cm95LFxyXG5cdE9uSW5pdCxcclxuXHRWaWV3Q2hpbGRcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRm9ybUJ1aWxkZXIsIEZvcm1Hcm91cCwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgTWF0RGlhbG9nUmVmLCBNQVRfRElBTE9HX0RBVEEgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xyXG5pbXBvcnQgeyBEeW5hbWljRm9ybVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi8uLi9zaGFyZWQtc2VydmljZXMvZHluYW1pYy1mb3JtLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBGaWxlTWFuYWdlclNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi8uLi9zaGFyZWQtc2VydmljZXMvZmlsZS1tYW5hZ2VyLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBTdWJqZWN0LCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBUcmFuc2xhdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi8uLi9jb3JlL3NlcnZpY2VzL3RyYW5zbGF0aW9uL3RyYW5zbGF0aW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBDdXN0b21Ub2FzdHJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vY3VzdG9tLXRvYXN0ci9zZXJ2aWNlcy9jdXN0b20tdG9hc3RyLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBCYXNlRGlhbG9nQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vLi4vc2hhcmVkL2NvbXBvbmVudHMvYmFzZS9iYXNlLWRpYWxvZy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBEaWFsb2dBY3Rpb25UeXBlIH0gZnJvbSAnLi4vLi4vLi4vLi4vc2hhcmVkL2NvbXBvbmVudHMvbnV4ZW8tZGlhbG9nL21vZGVscy9kaWFsb2ctb3B0aW9uLm1vZGVsJztcclxuaW1wb3J0IHsgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcblx0c2VsZWN0b3I6ICdhcHAtZm9sZGVyLW1vZGFsJyxcclxuXHR0ZW1wbGF0ZVVybDogJy4vZm9sZGVyLW1vZGFsLmNvbXBvbmVudC5odG1sJyxcclxuXHRzdHlsZVVybHM6IFsnLi9mb2xkZXItbW9kYWwuY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgRm9sZGVyTW9kYWxDb21wb25lbnRcclxuXHRleHRlbmRzIEJhc2VEaWFsb2dDb21wb25lbnQ8Rm9sZGVyTW9kYWxDb21wb25lbnQsIGFueSwgYW55PlxyXG5cdGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3lcclxue1xyXG5cdGZvbGRlclR5cGU7XHJcblx0ZHluYW1pY0Zvcm07XHJcblx0dGVtcG9yYXJ5RHlhbm1pY0RhdGEgPSB7fTtcclxuXHRzaG93UmVuZGVyZXIgPSBmYWxzZTtcclxuXHRkeW5hbWljRGF0YSA9IHtcclxuXHRcdHZhbGlkOiBmYWxzZVxyXG5cdH07XHJcblx0c3RhdGljRm9ybSA9IHtcclxuXHRcdHRpdGxlOiAnJyxcclxuXHRcdGRlc2NyaXB0aW9uOiAnJ1xyXG5cdFx0Ly8gZGVwYXJ0bWVudDonJ1xyXG5cdH07XHJcblxyXG5cdGZpbHRlciA9IHt9O1xyXG5cdGZpbHRlcjIgPSB7fTtcclxuXHRwYXJlbnRJZCA9ICcyJztcclxuXHRjaGlsZElkO1xyXG5cdHRlc3RpbmdGb3JtOiBGb3JtR3JvdXA7XHJcblx0cHJpdmF0ZSBfdW5zdWJzY3JpYmVBbGw6IFN1YmplY3Q8YW55PiA9IG5ldyBTdWJqZWN0PGFueT4oKTtcclxuXHRpc0Rtc0ZvbGRlciA9IGZhbHNlO1xyXG5cdGNyZWF0aW5nID0gZmFsc2U7XHJcblx0QFZpZXdDaGlsZCgnZm9sZGVyRm9ybScpIGZvbGRlckZvcm06IEZvcm1Hcm91cDtcclxuXHRASG9zdExpc3RlbmVyKCdkb2N1bWVudDprZXl1cC5lbnRlcicsIFsnJGV2ZW50J10pXHJcblx0S2V5VXBFdmVudChldmVudDogS2V5Ym9hcmRFdmVudCkge1xyXG5cdFx0aWYgKFxyXG5cdFx0XHR0aGlzLmR5bmFtaWNEYXRhLnZhbGlkICYmXHJcblx0XHRcdCF0aGlzLmZvbGRlckZvcm0uaW52YWxpZCAmJlxyXG5cdFx0XHR0aGlzLnN0YXRpY0Zvcm0udGl0bGUgIT0gJy4uJ1xyXG5cdFx0KSB7XHJcblx0XHRcdHRoaXMuY3JlYXRlRG9jdW1lbnQoKTtcclxuXHRcdH1cclxuXHR9XHJcblx0Y29uc3RydWN0b3IoXHJcblx0XHRASW5qZWN0KE1BVF9ESUFMT0dfREFUQSkgcHVibGljIGRhdGEsXHJcblx0XHRwcml2YXRlIGRpYWxvZ1JlZjogTWF0RGlhbG9nUmVmPEZvbGRlck1vZGFsQ29tcG9uZW50PixcclxuXHRcdHByaXZhdGUgZmlsZU1hbmdlclNlcnZpY2U6IEZpbGVNYW5hZ2VyU2VydmljZSxcclxuXHRcdHByaXZhdGUgZHluYW1pY0Zvcm1TZXJ2aWNlOiBEeW5hbWljRm9ybVNlcnZpY2UsXHJcblx0XHRwcml2YXRlIHRvc3RlclNlcnZpY2U6IEN1c3RvbVRvYXN0clNlcnZpY2UsXHJcblx0XHRpbmplY3RvcjogSW5qZWN0b3JcclxuXHQpIHtcclxuXHRcdHN1cGVyKGluamVjdG9yKTtcclxuXHR9XHJcblxyXG5cdG5nT25Jbml0KCk6IHZvaWQge1xyXG5cdFx0dGhpcy5mb2xkZXJUeXBlID0gdGhpcy5kYXRhLmZvbGRlclR5cGU7XHJcblx0XHR0aGlzLmR5bmFtaWNGb3JtID0gdGhpcy5kYXRhLmR5bmFtaWNGb3JtO1xyXG5cdFx0dGhpcy5maWxlTWFuZ2VyU2VydmljZVxyXG5cdFx0XHQuZ2V0RmlsZVNjaGVtYXModGhpcy5mb2xkZXJUeXBlLnR5cGUpXHJcblx0XHRcdC5zdWJzY3JpYmUoKHNjaGVtYXMpID0+IHtcclxuXHRcdFx0XHRzY2hlbWFzLm1hcCgoaXRlbSkgPT4ge1xyXG5cdFx0XHRcdFx0aWYgKGl0ZW0ubmFtZSA9PT0gJ2Rtc2ZvbGRlcicpIHtcclxuXHRcdFx0XHRcdFx0dGhpcy5pc0Rtc0ZvbGRlciA9IHRydWU7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fSk7XHJcblx0XHRcdH0pO1xyXG5cdH1cclxuXHRuZ0FmdGVyVmlld0luaXQoKSB7XHJcblx0XHR0aGlzLnNob3dSZW5kZXJlciA9IHRydWU7XHJcblx0fVxyXG5cclxuXHRuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuXHRcdHRoaXMuX3Vuc3Vic2NyaWJlQWxsLm5leHQoKTtcclxuXHRcdHRoaXMuX3Vuc3Vic2NyaWJlQWxsLmNvbXBsZXRlKCk7XHJcblx0fVxyXG5cdG9uZHluYW1pY0Zvcm1DaGFuZ2UoZHluYW1pY0RhdGEpIHtcclxuXHRcdGlmIChkeW5hbWljRGF0YS5kYXRhKSB7XHJcblx0XHRcdGNvbnNvbGUubG9nKGR5bmFtaWNEYXRhLmRhdGEpO1xyXG5cdFx0XHR0aGlzLmR5bmFtaWNEYXRhID0geyAuLi5keW5hbWljRGF0YSB9O1xyXG5cdFx0fVxyXG5cdH1cclxuXHRjbG9zZURpYWxvZygpIHtcclxuXHRcdHRoaXMuZGlhbG9nUmVmLmNsb3NlKGZhbHNlKTtcclxuXHR9XHJcblxyXG5cdGNyZWF0ZURvY3VtZW50OiBEaWFsb2dBY3Rpb25UeXBlID0gKCkgPT4ge1xyXG5cdFx0dGhpcy5jcmVhdGluZyA9IHRydWU7XHJcblx0XHRsZXQgcGFyYW1zID0gdGhpcy5jb25zdHJ1Y3RQYXlMb2FkKFxyXG5cdFx0XHR0aGlzLmR5bmFtaWNEYXRhWydkYXRhJ10sXHJcblx0XHRcdHRoaXMuc3RhdGljRm9ybVxyXG5cdFx0KTtcclxuXHRcdHJldHVybiB0aGlzLmZpbGVNYW5nZXJTZXJ2aWNlXHJcblx0XHRcdC5jcmVhdGVGb2xkZXIocGFyYW1zLCB0aGlzLmZpbGVNYW5nZXJTZXJ2aWNlLnNlbGVjdGVkRm9sZGVySWQpXHJcblxyXG5cdFx0XHQucGlwZShcclxuXHRcdFx0XHR0YXAoKHJlcykgPT4ge1xyXG5cdFx0XHRcdFx0Ly9jb25zb2xlLmxvZyhyZXMpO1xyXG5cdFx0XHRcdFx0dGhpcy5jcmVhdGluZyA9IGZhbHNlO1xyXG5cdFx0XHRcdFx0dGhpcy5maWxlTWFuZ2VyU2VydmljZS5vblJlZnJlc2hpbmdGaWxlTWFuZ2VyLm5leHQoKTtcclxuXHRcdFx0XHRcdHRoaXMudG9zdGVyU2VydmljZS5zaG93KFxyXG5cdFx0XHRcdFx0XHQnc3VjY2VzcycsXHJcblx0XHRcdFx0XHRcdCdUT0FTVEVSLlNVQ0NFU1MnLFxyXG5cdFx0XHRcdFx0XHQnVE9BU1RFUi5GT0xERVJfQ1JFQVRFRF9TVUNDRSdcclxuXHRcdFx0XHRcdCk7XHJcblx0XHRcdFx0XHR0aGlzLmNsb3NlRGlhbG9nKCk7XHJcblx0XHRcdFx0fSlcclxuXHRcdFx0KTtcclxuXHR9O1xyXG5cclxuXHRjb25zdHJ1Y3RQYXlMb2FkKGR5bmFtaWNWYWx1ZXMsIHN0YXRpY0Zvcm0pIHtcclxuXHRcdC8vIGxldCBwcm9wcyA9IHRoaXMuY29uc3RydWN0RHluYW1pY0Zvcm1QYXlsb2FkKGR5bmFtaWNWYWx1ZXMpO1xyXG5cdFx0bGV0IHByb3BzID0gdGhpcy5keW5hbWljRm9ybVNlcnZpY2UuY29uc3RydWN0RHluYW1pY0Zvcm1QYXlsb2FkKFxyXG5cdFx0XHRkeW5hbWljVmFsdWVzLFxyXG5cdFx0XHR0aGlzLmR5bmFtaWNGb3JtXHJcblx0XHQpO1xyXG5cdFx0bGV0IHBhcmFtID0ge1xyXG5cdFx0XHRkb2N1bWVudDoge1xyXG5cdFx0XHRcdHR5cGU6IHRoaXMuZm9sZGVyVHlwZS50eXBlLFxyXG5cdFx0XHRcdG5hbWU6IHN0YXRpY0Zvcm0udGl0bGUsXHJcblx0XHRcdFx0cHJvcGVydGllczoge1xyXG5cdFx0XHRcdFx0Li4ucHJvcHMsXHJcblx0XHRcdFx0XHQnZGM6ZGVzY3JpcHRpb24nOiBzdGF0aWNGb3JtLmRlc2NyaXB0aW9uLFxyXG5cdFx0XHRcdFx0J2RjOnRpdGxlJzogc3RhdGljRm9ybS50aXRsZVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fTtcclxuXHRcdGlmICh0aGlzLmZvbGRlclR5cGUuZG9jdW1lbnRDb2RlICYmIHRoaXMuaXNEbXNGb2xkZXIpIHtcclxuXHRcdFx0cGFyYW1bJ2RvY3VtZW50VHlwZUNvZGUnXSA9IHRoaXMuZm9sZGVyVHlwZS5kb2N1bWVudENvZGU7XHJcblx0XHRcdHBhcmFtWydkb2N1bWVudCddWydwcm9wZXJ0aWVzJ11bJ2Rtc2ZvbGRlcjpkb2N1bWVudFR5cGVDb2RlJ10gPVxyXG5cdFx0XHRcdHRoaXMuZm9sZGVyVHlwZS5kb2N1bWVudENvZGU7XHJcblx0XHR9XHJcblx0XHRyZXR1cm4gcGFyYW07XHJcblx0fVxyXG5cclxuXHRjaGFuZ2luZyhkYXRhKSB7XHJcblx0XHQvL2NvbnNvbGUubG9nKGRhdGEpO1xyXG5cdH1cclxufVxyXG4iLCI8bmRmLW51eGVvLWRpYWxvZ1xyXG5cdGRpYWxvZ1RpdGxlPVwie3sgJ0NSRUFURS5jcmVhdGVGb2xkZXInIHwgdHJhbnNsYXRlIH19XCJcclxuXHRwYW5lbENsYXNzPVwiY3JlYXRlLWZvbGRlci1tb2RhbFwiXHJcbj5cclxuXHQ8bmctdGVtcGxhdGUgI2NvbnRlbnRUZW1wbGF0ZT5cclxuXHRcdDxkaXYgY2xhc3M9XCJmb2xkZXItd3JhcHBlclwiIFNldFJ0bD5cclxuXHRcdFx0PGRpdiBjbGFzcz1cIm1iLTVcIj5cclxuXHRcdFx0XHQ8ZGl2IGNsYXNzPVwibGFiZWwtc3R5bGVcIj5cclxuXHRcdFx0XHRcdHt7ICdGT0xERVJTLlRZUEUnIHwgdHJhbnNsYXRlIH19XHJcblx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdFx0PGRpdiBjbGFzcz1cInRleHQtYmFzZSB0ZXh0LWdyYXktOTAwXCI+XHJcblx0XHRcdFx0XHR7eyBpc0FyYWJpYyA/IGZvbGRlclR5cGUuYXJhYmljVGV4dCA6IGZvbGRlclR5cGUuZW5nbGlzaFRleHQgfX1cclxuXHRcdFx0XHQ8L2Rpdj5cclxuXHRcdFx0PC9kaXY+XHJcblx0XHRcdDxmb3JtICNmb2xkZXJGb3JtPVwibmdGb3JtXCI+XHJcblx0XHRcdFx0PGRpdiBjbGFzcz1cIm1iLTNcIj5cclxuXHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJsYWJlbC1zdHlsZVwiPlxyXG5cdFx0XHRcdFx0XHR7eyAnRk9MREVSUy5USVRMRScgfCB0cmFuc2xhdGUgfX1cclxuXHRcdFx0XHRcdDwvZGl2PlxyXG5cdFx0XHRcdFx0PGlucHV0XHJcblx0XHRcdFx0XHRcdGNsYXNzPVwiZmllbGQtc3R5bGVcIlxyXG5cdFx0XHRcdFx0XHRbbmdDbGFzc109XCJ7ICdib3JkZXItcmVkLTUwMCc6IHN0YXRpY0Zvcm0udGl0bGUgPT09ICcuLicgfVwiXHJcblx0XHRcdFx0XHRcdHJlcXVpcmVkXHJcblx0XHRcdFx0XHRcdFsobmdNb2RlbCldPVwic3RhdGljRm9ybS50aXRsZVwiXHJcblx0XHRcdFx0XHRcdGlkPVwiZm9sZGVyVGl0bGVcIlxyXG5cdFx0XHRcdFx0XHRuYW1lPVwiZm9sZGVyVGl0bGVcIlxyXG5cdFx0XHRcdFx0Lz5cclxuXHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJ0ZXh0LXJlZC01MDAgdGV4dC1iYXNlXCIgKm5nSWY9XCJzdGF0aWNGb3JtLnRpdGxlID09PSAnLi4nXCI+XHJcblx0XHRcdFx0XHRcdEludmFsaWQgRm9sZGVyIFRpdGxlXHJcblx0XHRcdFx0XHQ8L2Rpdj5cclxuXHRcdFx0XHQ8L2Rpdj5cclxuXHRcdFx0XHQ8ZGl2IGNsYXNzPVwibWItM1wiPlxyXG5cdFx0XHRcdFx0PGRpdiBjbGFzcz1cImxhYmVsLXN0eWxlXCI+XHJcblx0XHRcdFx0XHRcdHt7ICdGT0xERVJTLkRFU0NSSVBUSU9OJyB8IHRyYW5zbGF0ZSB9fVxyXG5cdFx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdFx0XHQ8aW5wdXRcclxuXHRcdFx0XHRcdFx0Y2xhc3M9XCJmaWVsZC1zdHlsZVwiXHJcblx0XHRcdFx0XHRcdFsobmdNb2RlbCldPVwic3RhdGljRm9ybS5kZXNjcmlwdGlvblwiXHJcblx0XHRcdFx0XHRcdGlkPVwiZm9sZGVyRGVzY3JpcHRpb25cIlxyXG5cdFx0XHRcdFx0XHRuYW1lPVwiZm9sZGVyRGVzY3JpcHRpb25cIlxyXG5cdFx0XHRcdFx0Lz5cclxuXHRcdFx0XHQ8L2Rpdj5cclxuXHRcdFx0PC9mb3JtPlxyXG5cclxuXHRcdFx0PGRpdiBjbGFzcz1cImR5bmFtaWMtcGFydCAtbXgtNFwiICpuZ0lmPVwiZHluYW1pY0Zvcm0gJiYgc2hvd1JlbmRlcmVyXCI+XHJcblx0XHRcdFx0PGFwcC1keW5hbWljLWZvcm1cclxuXHRcdFx0XHRcdFtmb3JtXT1cImR5bmFtaWNGb3JtXCJcclxuXHRcdFx0XHRcdFtkYXRhXT1cInRlbXBvcmFyeUR5YW5taWNEYXRhXCJcclxuXHRcdFx0XHRcdChjaGFuZ2UpPVwib25keW5hbWljRm9ybUNoYW5nZSgkZXZlbnQpXCJcclxuXHRcdFx0XHQ+PC9hcHAtZHluYW1pYy1mb3JtPlxyXG5cdFx0XHQ8L2Rpdj5cclxuXHRcdDwvZGl2PlxyXG5cdDwvbmctdGVtcGxhdGU+XHJcblxyXG5cdDxuZy10ZW1wbGF0ZSAjYWN0aW9uc1RlbXBsYXRlIGxldC1kaWFsb2c9XCJkaWFsb2dcIj5cclxuXHRcdDxidXR0b25cclxuXHRcdFx0W25nQ2xhc3NdPVwie1xyXG5cdFx0XHRcdCdvcGFjaXR5LTMwIGN1cnNvci1ub3QtYWxsb3dlZCc6XHJcblx0XHRcdFx0XHQhZHluYW1pY0RhdGEudmFsaWQgfHwgZm9sZGVyRm9ybS5pbnZhbGlkIHx8IHN0YXRpY0Zvcm0udGl0bGUgPT09ICcuLidcclxuXHRcdFx0fVwiXHJcblx0XHRcdGNsYXNzPVwic3VibWlzc2lvbi1idXR0b24gdy00NFwiXHJcblx0XHRcdChjbGljayk9XCJkaWFsb2cuZXhlY3V0ZUFjdGlvbihjcmVhdGVEb2N1bWVudClcIlxyXG5cdFx0PlxyXG5cdFx0XHR7eyAnQlVUVE9OUy5DUkVBVEUnIHwgdHJhbnNsYXRlIH19XHJcblx0XHQ8L2J1dHRvbj5cclxuXHQ8L25nLXRlbXBsYXRlPlxyXG48L25kZi1udXhlby1kaWFsb2c+XHJcbiJdfQ==
|