nuxeo-development-framework 3.7.7 → 3.7.8-dms-mep
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 +1567 -1185
- package/bundles/nuxeo-development-framework.umd.js.map +1 -1
- package/esm2015/lib/Core/adapters/adapter.service.js +4 -4
- package/esm2015/lib/Core/core.module.js +5 -5
- package/esm2015/lib/Core/services/callApi/call-api.service.js +4 -4
- package/esm2015/lib/Core/services/extension/component-register.service.js +4 -4
- package/esm2015/lib/Core/services/extension/extension-loader.service.js +4 -4
- package/esm2015/lib/Core/services/extension/extension.service.js +4 -4
- package/esm2015/lib/Core/services/initialization/initialization.service.js +4 -4
- package/esm2015/lib/Core/services/localStorag/local-storag.service.js +4 -4
- package/esm2015/lib/Core/services/nuxeo/nuxeo.service.js +4 -4
- package/esm2015/lib/Core/services/roles/roles.service.js +4 -4
- package/esm2015/lib/Core/services/translation/translate-loader.service.js +4 -4
- package/esm2015/lib/Core/services/translation/translation.service.js +4 -4
- package/esm2015/lib/Core/services/user/user-preferences.service.js +4 -4
- package/esm2015/lib/Core/utilities/moment-date-adapter.js +4 -4
- package/esm2015/lib/Core/utilities/utility.service.js +4 -4
- package/esm2015/lib/components/activities-log/activities-log/activities-log.component.js +4 -4
- package/esm2015/lib/components/activities-log/activities-log/activities-log.service.js +4 -4
- package/esm2015/lib/components/activities-log/activities-log.module.js +5 -5
- package/esm2015/lib/components/activity/activity/activity.component.js +4 -4
- package/esm2015/lib/components/activity/activity.module.js +5 -5
- package/esm2015/lib/components/attachment-item/attachment-item/attachment-item.component.js +4 -4
- package/esm2015/lib/components/attachment-item/attachment-item.module.js +5 -5
- package/esm2015/lib/components/attachment-modal/attachment-modal.module.js +5 -5
- package/esm2015/lib/components/attachment-modal/attachments/attachments.component.js +4 -4
- package/esm2015/lib/components/avatar/avatar/avatar.component.js +4 -4
- package/esm2015/lib/components/avatar/avatar.module.js +5 -5
- package/esm2015/lib/components/card/card.component.js +4 -4
- package/esm2015/lib/components/card/card.module.js +5 -5
- package/esm2015/lib/components/comments/comments.module.js +5 -5
- package/esm2015/lib/components/comments/components/comment-item/comment-item.component.js +4 -4
- package/esm2015/lib/components/comments/components/comments-dashlet/comments-dashlet.component.js +4 -4
- package/esm2015/lib/components/comments/components/comments-list/comments-list.component.js +4 -4
- package/esm2015/lib/components/comments/components/edit-delete-modal/edit-delete-modal.component.js +4 -4
- package/esm2015/lib/components/comments/services/comment-api.service.js +4 -4
- package/esm2015/lib/components/confirm-caller/confirm-caller.dialog.js +4 -4
- package/esm2015/lib/components/confirm-caller/confirm-caller.module.js +5 -5
- package/esm2015/lib/components/confirm-caller/confirm-dialog/confirm-dialog.component.js +4 -4
- package/esm2015/lib/components/confirmation-dialog/confirmation-dialog/confirmation-dialog.component.js +4 -4
- package/esm2015/lib/components/confirmation-dialog/confirmation-dialog.module.js +5 -5
- package/esm2015/lib/components/correspondence-relation/components/correspondence-relation/correspondence-relation.component.js +4 -4
- package/esm2015/lib/components/correspondence-relation/components/correspondence-relation-create-form/correspondence-relation-create-form.component.js +4 -4
- package/esm2015/lib/components/correspondence-relation/components/correspondence-relation-list/correspondence-relation-list.component.js +4 -4
- package/esm2015/lib/components/correspondence-relation/components/correspondence-relation-reply/correspondence-relation-reply.component.js +4 -4
- package/esm2015/lib/components/correspondence-relation/components/versions/versions.component.js +4 -4
- package/esm2015/lib/components/correspondence-relation/correspondence-relation.module.js +5 -5
- package/esm2015/lib/components/correspondence-relation/services/correspondence-realation.service.js +4 -4
- package/esm2015/lib/components/correspondence-relation/services/viewer-files.service.js +4 -4
- package/esm2015/lib/components/create-entity/create-entity/create-entity.component.js +4 -4
- package/esm2015/lib/components/create-entity/create-entity.module.js +5 -5
- package/esm2015/lib/components/cts-tags/components/correspondence-tags/correspondence-tags.component.js +4 -4
- package/esm2015/lib/components/cts-tags/cts-tags.module.js +5 -5
- package/esm2015/lib/components/cts-tags/services/tags-api.service.js +4 -4
- package/esm2015/lib/components/custom-toastr/components/custom-toastr/custom-toastr.component.js +4 -4
- package/esm2015/lib/components/custom-toastr/custom-toastr.module.js +5 -5
- package/esm2015/lib/components/custom-toastr/services/custom-toastr.service.js +4 -4
- package/esm2015/lib/components/display-suitable-icon/display-suitable-icon/display-suitable-icon.component.js +4 -4
- package/esm2015/lib/components/display-suitable-icon/display-suitable-icon/icon.service.js +4 -4
- package/esm2015/lib/components/display-suitable-icon/display-suitable-icon.module.js +5 -5
- package/esm2015/lib/components/documents/components/attachments-list/attachments-list.component.js +4 -4
- package/esm2015/lib/components/documents/components/attachments-page-provider/attachments-page-provider.component.js +4 -4
- package/esm2015/lib/components/documents/components/document-list/documents-list.component.js +4 -4
- package/esm2015/lib/components/documents/components/document-scan/document-scan.component.js +4 -4
- package/esm2015/lib/components/documents/components/document-scan/document-scan.service.js +4 -4
- package/esm2015/lib/components/documents/components/document-upload/document-upload.component.js +4 -4
- package/esm2015/lib/components/documents/components/documents/documents.component.js +4 -4
- package/esm2015/lib/components/documents/documents.module.js +5 -5
- package/esm2015/lib/components/documents/services/document-templates.service.js +4 -4
- package/esm2015/lib/components/documents/services/documents.service.js +4 -4
- package/esm2015/lib/components/dynamic-chart/dynamic-chart/dynamic-chart.component.js +4 -4
- package/esm2015/lib/components/dynamic-chart/dynamic-chart.module.js +5 -5
- package/esm2015/lib/components/dynamic-chart/dynamic-single-chart/dynamic-single-chart.component.js +4 -4
- package/esm2015/lib/components/dynamic-chart/services/chart-data.service.js +4 -4
- package/esm2015/lib/components/dynamic-fields-renderer/dynamic-fields-renderer/dynamic-fields-renderer.component.js +43 -17
- package/esm2015/lib/components/dynamic-fields-renderer/dynamic-fields-renderer.module.js +12 -8
- package/esm2015/lib/components/dynamic-filter/dynamic-filter/dynamic-filter.component.js +4 -4
- package/esm2015/lib/components/dynamic-filter/dynamic-filter.module.js +5 -5
- package/esm2015/lib/components/dynamic-form/components/department-form/department-form.component.js +4 -4
- package/esm2015/lib/components/dynamic-form/components/dynamic-form/dynamic-form.component.js +4 -4
- package/esm2015/lib/components/dynamic-form/components/dynamic-form/fields.adapter.js +4 -4
- package/esm2015/lib/components/dynamic-form/components/dynamic-form/form-builder.service.js +4 -4
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-boolitem/dynamic-form-boolitem.component.js +4 -4
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-builder/dynamic-form-builder.component.js +4 -4
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-checkbox-item/dynamic-form-checkbox-item.component.js +4 -4
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-dateitem/dynamic-form-dateitem.component.js +4 -4
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-dateitem/owlDateTimeIntl.js +4 -4
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-department/dynamic-form-department.component.js +4 -4
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-department/services/department-api.service.js +4 -4
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-department/services/department-management.service.js +4 -4
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-field/dynamic-form-field.component.js +4 -4
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-hijri-dateitem/dynamic-form-hijri-dateitem.component.js +4 -4
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-item-dispatcher/dynamic-form-item-dispatcher.component.js +4 -4
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-mapitem/dynamic-form-mapitem.component.js +4 -4
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-options/dynamic-form-options.component.js +4 -4
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-select-tag/dynamic-form-select-tag.component.js +4 -4
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-select-user-filter/dynamic-form-select-user-filter.component.js +4 -4
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-select-users/dynamic-form-select-users.component.js +4 -4
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-select-users/services/user-api.service.js +4 -4
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-selectitem/dynamic-form-selectitem.component.js +4 -4
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-slide-toggleitem/dynamic-form-slide-toggleitem.component.js +4 -4
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-textarea/dynamic-form-textarea.component.js +4 -4
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-textitem/dynamic-form-textitem.component.js +4 -4
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-treeview-select/dropdown-treeview-select-i18n.js +4 -4
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-treeview-select/dropdown-treeview-select.component.js +4 -4
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-viewer/dynamic-form-viewer.component.js +4 -4
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-vocabulary-item/dynamic-form-vocabulary-item.component.js +4 -4
- package/esm2015/lib/components/dynamic-form/components/form-wrappers/date-wrapper/date-wrapper.component.js +4 -4
- package/esm2015/lib/components/dynamic-form/components/form-wrappers/toggle-wrapper/toggle-wrapper.component.js +4 -4
- package/esm2015/lib/components/dynamic-form/components/form-wrappers/user-selector-wrapper/user-selector-wrapper.component.js +4 -4
- package/esm2015/lib/components/dynamic-form/components/form-wrappers/vocabulary-wrapper/vocabulary-wrapper.component.js +4 -4
- package/esm2015/lib/components/dynamic-form/directives/dynamic-form-content-proxy.directive.js +4 -4
- package/esm2015/lib/components/dynamic-form/dynamic-form.module.js +5 -5
- package/esm2015/lib/components/dynamic-form/services/card-item-types.service.js +4 -4
- package/esm2015/lib/components/dynamic-form/services/dynamic-form-update.service.js +4 -4
- package/esm2015/lib/components/dynamic-search/dynamic-search/dynamic-search.component.js +4 -4
- package/esm2015/lib/components/dynamic-search/dynamic-search.module.js +5 -5
- package/esm2015/lib/components/dynamic-table/dynamic-table/dynamic-table.component.js +4 -4
- package/esm2015/lib/components/dynamic-table/dynamic-table.module.js +5 -5
- package/esm2015/lib/components/dynamic-table/services/dynamic-table.service.js +4 -4
- package/esm2015/lib/components/dynamic-tabs/dynamic-tabs/dynamic-tabs.component.js +4 -4
- package/esm2015/lib/components/dynamic-tabs/dynamic-tabs.module.js +5 -5
- package/esm2015/lib/components/dynamic-view/boolean-viewer/boolean-viewer.component.js +4 -4
- package/esm2015/lib/components/dynamic-view/custom-document-viewer/custom-document-viewer.component.js +4 -4
- package/esm2015/lib/components/dynamic-view/custom-pp-viewer/custom-pp-viewer.component.js +4 -4
- package/esm2015/lib/components/dynamic-view/cutome-voc-viewer/cutome-voc-viewer.component.js +4 -4
- package/esm2015/lib/components/dynamic-view/data-viewer/data-viewer.component.js +4 -4
- package/esm2015/lib/components/dynamic-view/date-viewer/date-viewer.component.js +4 -4
- package/esm2015/lib/components/dynamic-view/department-viewer/department-viewer.component.js +4 -4
- package/esm2015/lib/components/dynamic-view/dropdown-viewer/dropdown-viewer.component.js +4 -4
- package/esm2015/lib/components/dynamic-view/dynamic-view.module.js +5 -5
- package/esm2015/lib/components/dynamic-view/dynamic-viewe.service.js +4 -4
- package/esm2015/lib/components/dynamic-view/list-viewer/list-viewer.component.js +4 -4
- package/esm2015/lib/components/file-manger/components/add-to-collection/add-to-collection.component.js +4 -4
- package/esm2015/lib/components/file-manger/components/clipboard/clipboard.component.js +4 -4
- package/esm2015/lib/components/file-manger/components/copy/copy.component.js +4 -4
- package/esm2015/lib/components/file-manger/components/create-directory/create-directory.component.js +4 -4
- package/esm2015/lib/components/file-manger/components/create-modal/create-modal.component.js +105 -29
- package/esm2015/lib/components/file-manger/components/creation-type/creation-type.component.js +4 -4
- package/esm2015/lib/components/file-manger/components/delete/delete.component.js +4 -4
- package/esm2015/lib/components/file-manger/components/folder-modal/folder-modal.component.js +4 -4
- package/esm2015/lib/components/file-manger/components/loan-request/loan-request.component.js +4 -4
- package/esm2015/lib/components/file-manger/components/move/move.component.js +4 -4
- package/esm2015/lib/components/file-manger/components/publish-dialog/publish-dialog.component.js +4 -4
- package/esm2015/lib/components/file-manger/components/rename/rename.component.js +4 -4
- package/esm2015/lib/components/file-manger/components/scan-modal/scan-modal.component.js +4 -4
- package/esm2015/lib/components/file-manger/components/share-dialog/share-dialog.component.js +4 -4
- package/esm2015/lib/components/file-manger/components/sidepanel/sidepanel.component.js +4 -4
- package/esm2015/lib/components/file-manger/components/template-modal/template-modal.component.js +4 -4
- package/esm2015/lib/components/file-manger/components/transfer-doc/transfer-doc.component.js +4 -4
- package/esm2015/lib/components/file-manger/components/update-modal/update-modal.component.js +4 -4
- package/esm2015/lib/components/file-manger/file-manager.abstract.js +4 -4
- package/esm2015/lib/components/file-manger/file-manger.module.js +5 -5
- package/esm2015/lib/components/filter/filter/filter.component.js +4 -4
- package/esm2015/lib/components/filter/filter.module.js +5 -5
- package/esm2015/lib/components/hijri-gregorian-datepicker/hijri-gregorian-datepicker/gregorian-datepicker/gregorian-datepicker.component.js +4 -4
- package/esm2015/lib/components/hijri-gregorian-datepicker/hijri-gregorian-datepicker/hijri-datepicker/hijri-datepicker.component.js +4 -4
- package/esm2015/lib/components/hijri-gregorian-datepicker/hijri-gregorian-datepicker/hijri-gregorian-datepicker.component.js +4 -4
- package/esm2015/lib/components/hijri-gregorian-datepicker/hijri-gregorian-datepicker/provide-parent-form.directive.js +4 -4
- package/esm2015/lib/components/hijri-gregorian-datepicker/ngx-hijri-gregorian-datepicker.module.js +5 -5
- package/esm2015/lib/components/hijri-gregorian-datepicker/services/date-formatter.service.js +4 -4
- package/esm2015/lib/components/hijri-gregorian-datepicker/services/date-helper.service.js +4 -4
- package/esm2015/lib/components/hijri-gregorian-datepicker/utils/CustomNgbDateParserFormatter.js +4 -4
- package/esm2015/lib/components/hijri-gregorian-datepicker/utils/IslamicI18n.js +4 -4
- package/esm2015/lib/components/latest-activity/components/activity-line/activity-line.component.js +4 -4
- package/esm2015/lib/components/latest-activity/components/latest-activity/latest-activity.component.js +4 -4
- package/esm2015/lib/components/latest-activity/components/single-activity/single-activity.component.js +4 -4
- package/esm2015/lib/components/latest-activity/latest-activity.module.js +5 -5
- package/esm2015/lib/components/latest-activity/services/activity-log.service.js +4 -4
- package/esm2015/lib/components/mutiple-dynamic-form-viewer/multiple-dynamic-form-viewer/multiple-dynamic-form-viewer.component.js +4 -4
- package/esm2015/lib/components/mutiple-dynamic-form-viewer/mutiple-dynamic-form-viewer.module.js +5 -5
- package/esm2015/lib/components/notifications/components/notification-item/notification-item.component.js +4 -4
- package/esm2015/lib/components/notifications/components/notification-options/notification-options.component.js +4 -4
- package/esm2015/lib/components/notifications/components/notification-toast/notification-toast.component.js +4 -4
- package/esm2015/lib/components/notifications/components/notifications-button/notifications-button.component.js +4 -9
- package/esm2015/lib/components/notifications/components/notifications-list/notifications-list.component.js +11 -38
- package/esm2015/lib/components/notifications/notifications.module.js +8 -12
- package/esm2015/lib/components/notifications/notifications.service.js +5 -68
- package/esm2015/lib/components/pagination/pagination/pagination.component.js +4 -4
- package/esm2015/lib/components/pagination/pagination.module.js +5 -5
- package/esm2015/lib/components/pdf-tron/pdf-tron.module.js +5 -5
- package/esm2015/lib/components/pdf-tron/pdftron/pdftron.component.js +5 -5
- package/esm2015/lib/components/pdf-tron/pdftron/pdftron.service.js +4 -4
- package/esm2015/lib/components/permissions/add-permissions-dialog/add-permissions-dialog.component.js +4 -4
- package/esm2015/lib/components/permissions/permission.service.js +4 -4
- package/esm2015/lib/components/permissions/permissions/permissions.component.js +4 -4
- package/esm2015/lib/components/permissions/permissions-template/permissions-template.component.js +4 -4
- package/esm2015/lib/components/permissions/permissions.module.js +5 -5
- package/esm2015/lib/components/select/select/select.component.js +4 -4
- package/esm2015/lib/components/select/select.module.js +10 -8
- package/esm2015/lib/components/select-users-by-department/select-users-by-department.module.js +5 -5
- package/esm2015/lib/components/select-users-by-department/select-users-by-departments/department-management.service.js +4 -4
- package/esm2015/lib/components/select-users-by-department/select-users-by-departments/select-users-by-departments.component.js +4 -4
- package/esm2015/lib/components/table/dynamic-column/dynamic-column.component.js +4 -4
- package/esm2015/lib/components/table/table/table.component.js +4 -4
- package/esm2015/lib/components/table/table.module.js +5 -5
- package/esm2015/lib/components/user/user/user.component.js +4 -4
- package/esm2015/lib/components/user/user.module.js +5 -5
- package/esm2015/lib/components/users-card/users-card.component.js +4 -4
- package/esm2015/lib/components/users-card/users-card.module.js +5 -5
- package/esm2015/lib/components/viewer-log/components/viewer-log/viewer-log.component.js +4 -4
- package/esm2015/lib/components/viewer-log/viewer-log.module.js +5 -5
- package/esm2015/lib/components/vocabulary/services/vocabulary-api.service.js +13 -13
- package/esm2015/lib/components/vocabulary/translated-vocabulary-select/translated-vocabulary-select.component.js +207 -0
- package/esm2015/lib/components/vocabulary/vocabulary/vocabulary.component.js +4 -4
- package/esm2015/lib/components/vocabulary/vocabulary.module.js +17 -10
- package/esm2015/lib/configuration/app-config.service.js +4 -4
- package/esm2015/lib/directive/app-has-role/app-has-role.directive.js +4 -4
- package/esm2015/lib/directive/clickOutSide/click-outside.directive.js +4 -4
- package/esm2015/lib/directive/directive.module.js +5 -5
- package/esm2015/lib/directive/drag-and-drop/drag-and-drop.directive.js +4 -4
- package/esm2015/lib/directive/permissions/evaluators.service.js +4 -4
- package/esm2015/lib/directive/permissions/permissions.directive.js +4 -4
- package/esm2015/lib/directive/rtl/set-dir-rtl.directive.js +4 -4
- package/esm2015/lib/directive/rtl/set-rtl.directive.js +4 -4
- package/esm2015/lib/nuxeo-development-framework.component.js +4 -4
- package/esm2015/lib/nuxeo-development-framework.module.js +5 -5
- package/esm2015/lib/nuxeo-development-framework.service.js +4 -4
- package/esm2015/lib/pipes/file-size.pipe.js +4 -4
- package/esm2015/lib/pipes/hijri-date.pipe.js +4 -4
- package/esm2015/lib/pipes/localized-date.pipe.js +4 -4
- package/esm2015/lib/pipes/multi-value.pipe.js +4 -4
- package/esm2015/lib/pipes/pipes.module.js +5 -5
- package/esm2015/lib/pipes/secure-html.pipe.js +4 -4
- package/esm2015/lib/pipes/secure.pipe.js +4 -4
- package/esm2015/lib/pipes/time-ago.pipe.js +4 -4
- package/esm2015/lib/shared/components/button/button.component.js +4 -4
- package/esm2015/lib/shared/components/item-list/item-list.component.js +4 -4
- package/esm2015/lib/shared/components/no-data/no-data.component.js +4 -4
- package/esm2015/lib/shared/components/read-more/read-more.component.js +4 -4
- package/esm2015/lib/shared/components/search-autocomplete/search-autocomplete.component.js +4 -4
- package/esm2015/lib/shared/components/spinner/spinner.component.js +4 -4
- package/esm2015/lib/shared/components/user-card/user-card.component.js +4 -4
- package/esm2015/lib/shared/libraryShared.module.js +5 -5
- package/esm2015/lib/shared-services/dialog-mangment.service.js +4 -4
- package/esm2015/lib/shared-services/dynamic-form.service.js +4 -4
- package/esm2015/lib/shared-services/file-manager.adapter.js +4 -4
- package/esm2015/lib/shared-services/file-manager.service.js +39 -45
- package/esm2015/lib/shared-services/global-admin.service.js +4 -4
- package/esm2015/lib/shared-services/global-pdftron.service.js +4 -4
- package/esm2015/lib/shared-services/mainfolder.service.js +4 -4
- package/esm2015/lib/shared-services/publishing-document.service.js +4 -4
- package/esm2015/lib/shared-services/recently-viewed.service.js +4 -4
- package/esm2015/lib/shared-services/shared-docs.service.js +4 -4
- package/esm2015/lib/shared-services/shared-services.module.js +5 -5
- package/esm2015/lib/shared-services/upload-file.service.js +4 -4
- package/esm2015/lib/shared-services/upload-managment.service.js +4 -4
- package/esm2015/lib/shared-services/user.service.js +4 -4
- package/esm2015/public-api.js +2 -1
- package/fesm2015/nuxeo-development-framework.js +1203 -998
- package/fesm2015/nuxeo-development-framework.js.map +1 -1
- package/lib/components/dynamic-fields-renderer/dynamic-fields-renderer/dynamic-fields-renderer.component.d.ts +11 -2
- package/lib/components/dynamic-fields-renderer/dynamic-fields-renderer.module.d.ts +2 -1
- package/lib/components/file-manger/components/create-modal/create-modal.component.d.ts +19 -36
- package/lib/components/notifications/components/notifications-button/notifications-button.component.d.ts +1 -2
- package/lib/components/notifications/components/notifications-list/notifications-list.component.d.ts +1 -7
- package/lib/components/notifications/notifications.module.d.ts +1 -2
- package/lib/components/notifications/notifications.service.d.ts +0 -15
- package/lib/components/select/select.module.d.ts +1 -1
- package/lib/components/vocabulary/services/vocabulary-api.service.d.ts +1 -1
- package/lib/components/vocabulary/translated-vocabulary-select/translated-vocabulary-select.component.d.ts +80 -0
- package/lib/components/vocabulary/vocabulary.module.d.ts +6 -4
- package/lib/shared-services/file-manager.service.d.ts +15 -12
- package/package.json +1 -1
- package/public-api.d.ts +1 -0
|
@@ -37,20 +37,6 @@ export class NotificationsService {
|
|
|
37
37
|
this.profile = { id: this.nuxeoService.nuxeoClient.user.id };
|
|
38
38
|
this.systemLang = "";
|
|
39
39
|
this.loading = false;
|
|
40
|
-
this.selectedFilterType = {
|
|
41
|
-
name: 'all',
|
|
42
|
-
id: 'all'
|
|
43
|
-
};
|
|
44
|
-
this.isReaded = false;
|
|
45
|
-
this.showFilters = false;
|
|
46
|
-
this.types = [
|
|
47
|
-
{ name: 'all', id: 'all' },
|
|
48
|
-
{ name: 'correspondence', id: 'correspondence' },
|
|
49
|
-
{ name: 'assignment', id: 'assignment' },
|
|
50
|
-
{ name: 'workspace', id: 'corrWorkspace' },
|
|
51
|
-
{ name: 'approvals', id: 'approval' }
|
|
52
|
-
];
|
|
53
|
-
this.storedNotifications = []; // to store all notification in it so when filtering not losing all data
|
|
54
40
|
if (this.profile.id) {
|
|
55
41
|
this.getCount().subscribe(() => {
|
|
56
42
|
this.connect();
|
|
@@ -76,16 +62,10 @@ export class NotificationsService {
|
|
|
76
62
|
}
|
|
77
63
|
reset() {
|
|
78
64
|
this._notifications = [];
|
|
79
|
-
this.storedNotifications = [];
|
|
80
65
|
this._notificationsCount = 0;
|
|
81
66
|
}
|
|
82
67
|
resetNotifications() {
|
|
83
68
|
this._notifications = [];
|
|
84
|
-
this.storedNotifications = [];
|
|
85
|
-
}
|
|
86
|
-
resetFilterParams() {
|
|
87
|
-
this.selectedFilterType = { name: 'all', id: 'all' };
|
|
88
|
-
this.isReaded = false;
|
|
89
69
|
}
|
|
90
70
|
fetchNotifications() {
|
|
91
71
|
this.loading = true;
|
|
@@ -101,13 +81,7 @@ export class NotificationsService {
|
|
|
101
81
|
}).pipe(map((notifications) => {
|
|
102
82
|
this.loading = false;
|
|
103
83
|
if (notifications.items) {
|
|
104
|
-
|
|
105
|
-
this.storedNotifications = this.storedNotifications.concat(notifications.items);
|
|
106
|
-
this._notifications = this._notifications.concat(this.filterNotifications(notifications.items));
|
|
107
|
-
}
|
|
108
|
-
else {
|
|
109
|
-
this._notifications = this._notifications.concat(notifications.items);
|
|
110
|
-
}
|
|
84
|
+
this._notifications = this._notifications.concat(notifications.items);
|
|
111
85
|
return notifications;
|
|
112
86
|
}
|
|
113
87
|
else {
|
|
@@ -116,44 +90,10 @@ export class NotificationsService {
|
|
|
116
90
|
}
|
|
117
91
|
}), catchError(() => {
|
|
118
92
|
this._notifications = [];
|
|
119
|
-
this.storedNotifications = [];
|
|
120
93
|
this.loading = false;
|
|
121
94
|
return [];
|
|
122
95
|
}));
|
|
123
96
|
}
|
|
124
|
-
// filter notifcations in front end according to the selected filters
|
|
125
|
-
filterNotifications(notifications) {
|
|
126
|
-
let filteredNotifications = [];
|
|
127
|
-
if (this.selectedFilterType.name === 'all') {
|
|
128
|
-
if (this.isReaded) {
|
|
129
|
-
// find readed notifications on all types of notifications
|
|
130
|
-
return this.findReadOrUnReadedNotification('READ', notifications);
|
|
131
|
-
}
|
|
132
|
-
else {
|
|
133
|
-
// find un readed notifications on all types of notifications
|
|
134
|
-
return this.findReadOrUnReadedNotification('UN_READ', notifications);
|
|
135
|
-
}
|
|
136
|
-
}
|
|
137
|
-
else {
|
|
138
|
-
let requiredState = this.isReaded ? 'READ' : 'UN_READ';
|
|
139
|
-
notifications.map(notification => {
|
|
140
|
-
if (notification.sourceType === this.selectedFilterType.id && notification.status === requiredState) {
|
|
141
|
-
filteredNotifications.push(notification);
|
|
142
|
-
}
|
|
143
|
-
});
|
|
144
|
-
return filteredNotifications;
|
|
145
|
-
}
|
|
146
|
-
}
|
|
147
|
-
// find a notification according to its state READ or UN_READ
|
|
148
|
-
findReadOrUnReadedNotification(state, notifications) {
|
|
149
|
-
let statedNotifications = [];
|
|
150
|
-
notifications.map(notification => {
|
|
151
|
-
if (notification.status === state) {
|
|
152
|
-
statedNotifications.push(notification);
|
|
153
|
-
}
|
|
154
|
-
});
|
|
155
|
-
return statedNotifications;
|
|
156
|
-
}
|
|
157
97
|
resetCount() {
|
|
158
98
|
this._notificationsCount = 0;
|
|
159
99
|
}
|
|
@@ -343,16 +283,13 @@ export class NotificationsService {
|
|
|
343
283
|
myCachable = this.intializationService.decriptFormating(myCachable);
|
|
344
284
|
return myCachable['access_token'];
|
|
345
285
|
}
|
|
346
|
-
setNotifications(notifications) {
|
|
347
|
-
this._notifications = notifications;
|
|
348
|
-
}
|
|
349
286
|
}
|
|
350
|
-
NotificationsService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
351
|
-
NotificationsService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
352
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
287
|
+
NotificationsService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: NotificationsService, deps: [{ token: i1.HttpClient }, { token: i2.Router }, { token: i3.NuxeoService }, { token: i4.KeycloakService }, { token: i5.CookieService }, { token: i6.LocalStoragService }, { token: i7.InitializationService }, { token: i8.TranslationService }, { token: "environment" }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
288
|
+
NotificationsService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: NotificationsService });
|
|
289
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: NotificationsService, decorators: [{
|
|
353
290
|
type: Injectable
|
|
354
291
|
}], ctorParameters: function () { return [{ type: i1.HttpClient }, { type: i2.Router }, { type: i3.NuxeoService }, { type: i4.KeycloakService }, { type: i5.CookieService }, { type: i6.LocalStoragService }, { type: i7.InitializationService }, { type: i8.TranslationService }, { type: undefined, decorators: [{
|
|
355
292
|
type: Inject,
|
|
356
293
|
args: ["environment"]
|
|
357
294
|
}] }]; } });
|
|
358
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9ucy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9ub3RpZmljYXRpb25zL25vdGlmaWNhdGlvbnMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQ0EsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBR2pFLE9BQU8sRUFBRSxJQUFJLEVBQWMsRUFBRSxFQUFFLGFBQWEsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMzRCxPQUFPLEVBQUUsVUFBVSxFQUFFLEdBQUcsRUFBRSxhQUFhLEVBQUUsUUFBUSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDMUUsT0FBTyxLQUFLLE1BQU0sTUFBTSxlQUFlLENBQUM7QUFFeEMsT0FBTyxLQUFLLEtBQUssTUFBTSxpQkFBaUIsQ0FBQzs7Ozs7Ozs7OztBQU96QyxNQUFNLE9BQU8sb0JBQW9CO0lBdUMvQixZQUNVLElBQWdCLEVBQ2pCLE1BQWMsRUFDZCxZQUEwQixFQUN6QixRQUF5QixFQUN6QixhQUE2QixFQUM3QixXQUFnQyxFQUNoQyxvQkFBNEMsRUFDNUMsa0JBQXNDLEVBQ2YsV0FBVztRQVJsQyxTQUFJLEdBQUosSUFBSSxDQUFZO1FBQ2pCLFdBQU0sR0FBTixNQUFNLENBQVE7UUFDZCxpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUN6QixhQUFRLEdBQVIsUUFBUSxDQUFpQjtRQUN6QixrQkFBYSxHQUFiLGFBQWEsQ0FBZ0I7UUFDN0IsZ0JBQVcsR0FBWCxXQUFXLENBQXFCO1FBQ2hDLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBd0I7UUFDNUMsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFvQjtRQUNmLGdCQUFXLEdBQVgsV0FBVyxDQUFBO1FBL0M1QyxnQkFBVyxHQUFHLElBQUks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QUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUNqQixNQUFNLEdBQUcsQ0FBQztRQUNaLENBQUMsQ0FBQyxDQUNILENBQUM7SUFDSixDQUFDO0lBRUQsV0FBVztRQUNULElBQUksVUFBVSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQ3hELFVBQVUsR0FBSSxJQUFJLENBQUMsb0JBQW9CLENBQUMsZ0JBQWdCLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDdkUsT0FBTyxVQUFVLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDbEMsQ0FBQztJQUVELGdCQUFnQixDQUFDLGFBQWE7UUFDNUIsSUFBSSxDQUFDLGNBQWMsR0FBRyxhQUFhLENBQUM7SUFDdEMsQ0FBQzs7aUhBM1dVLG9CQUFvQixtUUFnRHJCLGFBQWE7cUhBaERaLG9CQUFvQjsyRkFBcEIsb0JBQW9CO2tCQURoQyxVQUFVOzswQkFpRE4sTUFBTTsyQkFBQyxhQUFhIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gXCJAYW5ndWxhci9jb21tb24vaHR0cFwiO1xyXG5pbXBvcnQgeyBFdmVudEVtaXR0ZXIsIEluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gXCJAYW5ndWxhci9yb3V0ZXJcIjtcclxuaW1wb3J0IHsgS2V5Y2xvYWtTZXJ2aWNlIH0gZnJvbSBcImtleWNsb2FrLWFuZ3VsYXJcIjtcclxuaW1wb3J0IHsgZnJvbSwgT2JzZXJ2YWJsZSwgb2YsIFJlcGxheVN1YmplY3QgfSBmcm9tIFwicnhqc1wiO1xyXG5pbXBvcnQgeyBjYXRjaEVycm9yLCBtYXAsIHB1Ymxpc2hSZXBsYXksIHJlZkNvdW50IH0gZnJvbSBcInJ4anMvb3BlcmF0b3JzXCI7XHJcbmltcG9ydCAqIGFzIFNvY2tKUyBmcm9tIFwic29ja2pzLWNsaWVudFwiO1xyXG5pbXBvcnQgeyBOdXhlb1NlcnZpY2UgfSBmcm9tIFwiLi4vLi4vQ29yZS9zZXJ2aWNlcy9udXhlby9udXhlby5zZXJ2aWNlXCI7XHJcbmltcG9ydCAqIGFzIFN0b21wIGZyb20gXCJ3ZWJzdG9tcC1jbGllbnRcIjtcclxuaW1wb3J0IHsgVHJhbnNsYXRpb25TZXJ2aWNlIH0gZnJvbSBcIi4uLy4uL0NvcmUvc2VydmljZXMvdHJhbnNsYXRpb24vdHJhbnNsYXRpb24uc2VydmljZVwiO1xyXG5pbXBvcnQgeyBMb2NhbFN0b3JhZ1NlcnZpY2UgfSBmcm9tIFwiLi4vLi4vQ29yZS9zZXJ2aWNlcy9sb2NhbFN0b3JhZy9sb2NhbC1zdG9yYWcuc2VydmljZVwiO1xyXG5pbXBvcnQgeyBJbml0aWFsaXphdGlvblNlcnZpY2UgfSBmcm9tIFwiLi4vLi4vQ29yZS9zZXJ2aWNlcy9pbml0aWFsaXphdGlvbi9pbml0aWFsaXphdGlvbi5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IENvb2tpZVNlcnZpY2UgfSBmcm9tICduZ3gtY29va2llLXNlcnZpY2UnXHJcblxyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBOb3RpZmljYXRpb25zU2VydmljZSB7XHJcbiAgc3RvbXBDbGllbnQgPSBudWxsO1xyXG4gIHN1YnNjcmliZXIgPSBudWxsO1xyXG4gIGNvbm5lY3Rpb246IFByb21pc2U8YW55PjtcclxuICBjb25uZWN0ZWRQcm9taXNlOiBhbnkgPSBudWxsO1xyXG4gIGxpc3RlbmVyT2JzZXJ2ZXI6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gIHVwZGF0ZTogUmVwbGF5U3ViamVjdDxhbnk+ID0gbmV3IFJlcGxheVN1YmplY3QoMSk7XHJcbiAgYWxyZWFkeUNvbm5lY3RlZE9uY2UgPSBmYWxzZTtcclxuICBwYWdlU2l6ZSA9IDE1O1xyXG5cclxuICBwcml2YXRlIHN1YnNjcmlwdGlvbjogU3RvbXAuU3Vic2NyaXB0aW9uO1xyXG5cclxuICBwcml2YXRlIF9ub3RpZmljYXRpb25zID0gW107XHJcbiAgZ2V0IG5vdGlmaWNhdGlvbnMoKTogYW55IHtcclxuICAgIHJldHVybiB0aGlzLl9ub3RpZmljYXRpb25zO1xyXG4gIH1cclxuICBwcml2YXRlIF9ub3RpZmljYXRpb25zQ291bnQgPSAwO1xyXG4gIGdldCBub3RpZmljYXRpb25zQ291bnQoKTogbnVtYmVyIHtcclxuICAgIHJldHVybiB0aGlzLl9ub3RpZmljYXRpb25zQ291bnQ7XHJcbiAgfVxyXG4gIGJhc2UgPSBcIlwiO1xyXG4gIHByb2ZpbGUgPSB7IGlkOiB0aGlzLm51eGVvU2VydmljZS5udXhlb0NsaWVudC51c2VyLmlkIH07XHJcbiAgc3lzdGVtTGFuZyA9IFwiXCI7XHJcbiAgbGFuZ0NoYW5nZWQ6IGJvb2xlYW47XHJcbiAgbG9hZGluZyA9IGZhbHNlO1xyXG4gIHNlbGVjdGVkRmlsdGVyVHlwZSA9IHtcclxuICAgIG5hbWU6ICdhbGwnLFxyXG4gICAgaWQgOiAnYWxsJ1xyXG4gIH07XHJcbiAgaXNSZWFkZWQgPSBmYWxzZTtcclxuICBzaG93RmlsdGVycyA9IGZhbHNlO1xyXG4gIHR5cGVzID0gW1xyXG4gICAgeyBuYW1lOiAnYWxsJywgaWQgOiAnYWxsJyB9LFxyXG4gICAgeyBuYW1lOiAnY29ycmVzcG9uZGVuY2UnLCBpZCA6ICdjb3JyZXNwb25kZW5jZScgfSxcclxuICAgIHsgbmFtZTogJ2Fzc2lnbm1lbnQnLCBpZCA6ICdhc3NpZ25tZW50JyB9LFxyXG4gICAgeyBuYW1lOiAnd29ya3NwYWNlJywgaWQgOiAnY29ycldvcmtzcGFjZScgfSxcclxuICAgIHsgbmFtZTogJ2FwcHJvdmFscycsIGlkIDogJ2FwcHJvdmFsJyB9XHJcbiAgXVxyXG4gIHN0b3JlZE5vdGlmaWNhdGlvbnMgPSBbXSA7IC8vIHRvIHN0b3JlIGFsbCBub3RpZmljYXRpb24gaW4gaXQgc28gd2hlbiBmaWx0ZXJpbmcgbm90IGxvc2luZyBhbGwgZGF0YVxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50LFxyXG4gICAgcHVibGljIHJvdXRlcjogUm91dGVyLFxyXG4gICAgcHVibGljIG51eGVvU2VydmljZTogTnV4ZW9TZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBrZXljbG9hazogS2V5Y2xvYWtTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBjb29raWVTZXJ2aWNlIDogQ29va2llU2VydmljZSxcclxuICAgIHByaXZhdGUgbG9jYWxTdG9yYWcgOiBMb2NhbFN0b3JhZ1NlcnZpY2UsXHJcbiAgICBwcml2YXRlIGludGlhbGl6YXRpb25TZXJ2aWNlIDogSW5pdGlhbGl6YXRpb25TZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSB0cmFuc2xhdGlvblNlcnZpY2U6IFRyYW5zbGF0aW9uU2VydmljZSxcclxuICAgIEBJbmplY3QoXCJlbnZpcm9ubWVudFwiKSBwcml2YXRlIGVudmlyb25tZW50XHJcbiAgKSB7XHJcbiAgICBpZiAodGhpcy5wcm9maWxlLmlkKSB7XHJcbiAgICAgIHRoaXMuZ2V0Q291bnQoKS5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgIHRoaXMuY29ubmVjdCgpO1xyXG4gICAgICAgIHRoaXMuc3Vic2NyaWJlKCk7XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gICAgdGhpcy50cmFuc2xhdGlvblNlcnZpY2UuaXNBcmFiaWMuc3Vic2NyaWJlKChyZXMpID0+IHtcclxuICAgICAgdGhpcy5yZXNldE5vdGlmaWNhdGlvbnMoKTtcclxuICAgIH0pO1xyXG4gIH1cclxuICBnZXRDb3VudCgpIHtcclxuICAgIHJldHVybiB0aGlzLmRvQ291bnROZXcodGhpcy5wcm9maWxlLmlkKS5waXBlKFxyXG4gICAgICBtYXAoKGRhdGEpID0+IHtcclxuICAgICAgICB0aGlzLl9ub3RpZmljYXRpb25zQ291bnQgPSBkYXRhO1xyXG4gICAgICAgIHRoaXMudXBkYXRlLm5leHQoKTtcclxuICAgICAgICByZXR1cm4gZGF0YTtcclxuICAgICAgfSlcclxuICAgICk7XHJcbiAgfVxyXG4gIHJlc2V0KCkge1xyXG4gICAgdGhpcy5fbm90aWZpY2F0aW9ucyA9IFtdO1xyXG4gICAgdGhpcy5zdG9yZWROb3RpZmljYXRpb25zID0gW107XHJcbiAgICB0aGlzLl9ub3RpZmljYXRpb25zQ291bnQgPSAwO1xyXG4gIH1cclxuICByZXNldE5vdGlmaWNhdGlvbnMoKSB7XHJcbiAgICB0aGlzLl9ub3RpZmljYXRpb25zID0gW107XHJcbiAgICB0aGlzLnN0b3JlZE5vdGlmaWNhdGlvbnMgPSBbXTtcclxuICB9XHJcbiAgcmVzZXRGaWx0ZXJQYXJhbXMoKXtcclxuICAgIHRoaXMuc2VsZWN0ZWRGaWx0ZXJUeXBlID0geyBuYW1lOiAnYWxsJywgaWQgOiAnYWxsJyB9O1xyXG4gICAgdGhpcy5pc1JlYWRlZCA9IGZhbHNlXHJcbiAgfVxyXG5cclxuICBmZXRjaE5vdGlmaWNhdGlvbnMoKSB7XHJcbiAgICB0aGlzLmxvYWRpbmcgPSB0cnVlO1xyXG4gICAgcmV0dXJuIHRoaXMuZ2V0Tm90aWZpY2F0aW9ucyh0aGlzLnByb2ZpbGUuaWQsIHtcclxuICAgICAgcGFnZTpcclxuICAgICAgICB0aGlzLl9ub3RpZmljYXRpb25zLmxlbmd0aCA+IDBcclxuICAgICAgICAgID8gTWF0aC5jZWlsKHRoaXMuX25vdGlmaWNhdGlvbnMubGVuZ3RoIC8gdGhpcy5wYWdlU2l6ZSlcclxuICAgICAgICAgIDogMCxcclxuICAgICAgc2l6ZTogdGhpcy5wYWdlU2l6ZSxcclxuICAgICAgcGFnZWQ6IHRydWUsXHJcbiAgICAgIHNvcnQ6IFwic2VuZERhdGUsZGVzY1wiLFxyXG4gICAgICBzb3J0ZWQ6IHRydWUsXHJcbiAgICAgIGxhbmc6IHRoaXMudHJhbnNsYXRpb25TZXJ2aWNlLnVzZXJMYW5nLnRvVXBwZXJDYXNlKCksXHJcbiAgICB9KS5waXBlKFxyXG4gICAgICBtYXAoKG5vdGlmaWNhdGlvbnM6IGFueSkgPT4ge1xyXG4gICAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgIGlmIChub3RpZmljYXRpb25zLml0ZW1zKSB7XHJcbiAgICAgICAgICBpZih0aGlzLnNob3dGaWx0ZXJzKXtcclxuICAgICAgICAgICAgdGhpcy5zdG9yZWROb3RpZmljYXRpb25zID0gdGhpcy5zdG9yZWROb3RpZmljYXRpb25zLmNvbmNhdChub3RpZmljYXRpb25zLml0ZW1zKTtcclxuICAgICAgICAgICAgdGhpcy5fbm90aWZpY2F0aW9ucyA9IHRoaXMuX25vdGlmaWNhdGlvbnMuY29uY2F0KHRoaXMuZmlsdGVyTm90aWZpY2F0aW9ucyhub3RpZmljYXRpb25zLml0ZW1zKSk7XHJcbiAgICAgICAgICB9ZWxzZXtcclxuICAgICAgICAgICAgdGhpcy5fbm90aWZpY2F0aW9ucyA9IHRoaXMuX25vdGlmaWNhdGlvbnMuY29uY2F0KG5vdGlmaWNhdGlvbnMuaXRlbXMpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgcmV0dXJuIG5vdGlmaWNhdGlvbnM7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHRoaXMuX25vdGlmaWNhdGlvbnMgPSBbXTtcclxuICAgICAgICAgIHJldHVybiBbXTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pLFxyXG4gICAgICBjYXRjaEVycm9yKCgpID0+IHtcclxuICAgICAgICB0aGlzLl9ub3RpZmljYXRpb25zID0gW107XHJcbiAgICAgICAgdGhpcy5zdG9yZWROb3RpZmljYXRpb25zID0gW107XHJcbiAgICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgcmV0dXJuIFtdO1xyXG4gICAgICB9KVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIC8vIGZpbHRlciBub3RpZmNhdGlvbnMgaW4gZnJvbnQgZW5kIGFjY29yZGluZyB0byB0aGUgc2VsZWN0ZWQgZmlsdGVyc1xyXG4gIGZpbHRlck5vdGlmaWNhdGlvbnMobm90aWZpY2F0aW9ucyl7XHJcbiAgICBsZXQgZmlsdGVyZWROb3RpZmljYXRpb25zID0gW107XHJcbiAgICBpZih0aGlzLnNlbGVjdGVkRmlsdGVyVHlwZS5uYW1lID09PSAnYWxsJyl7XHJcbiAgICAgIGlmKHRoaXMuaXNSZWFkZWQpe1xyXG4gICAgICAgIC8vIGZpbmQgcmVhZGVkIG5vdGlmaWNhdGlvbnMgb24gYWxsIHR5cGVzIG9mIG5vdGlmaWNhdGlvbnNcclxuICAgICAgICByZXR1cm4gdGhpcy5maW5kUmVhZE9yVW5SZWFkZWROb3RpZmljYXRpb24oJ1JFQUQnICwgbm90aWZpY2F0aW9ucylcclxuICAgICAgfWVsc2V7XHJcbiAgICAgICAgLy8gZmluZCB1biByZWFkZWQgbm90aWZpY2F0aW9ucyBvbiBhbGwgdHlwZXMgb2Ygbm90aWZpY2F0aW9uc1xyXG4gICAgICAgIHJldHVybiB0aGlzLmZpbmRSZWFkT3JVblJlYWRlZE5vdGlmaWNhdGlvbignVU5fUkVBRCcgLCBub3RpZmljYXRpb25zKVxyXG4gICAgICB9XHJcbiAgICB9ZWxzZXtcclxuICAgICAgbGV0IHJlcXVpcmVkU3RhdGUgPSB0aGlzLmlzUmVhZGVkID8gJ1JFQUQnIDogJ1VOX1JFQUQnO1xyXG4gICAgICBub3RpZmljYXRpb25zLm1hcChub3RpZmljYXRpb24gPT4ge1xyXG4gICAgICAgIGlmKG5vdGlmaWNhdGlvbi5zb3VyY2VUeXBlID09PSB0aGlzLnNlbGVjdGVkRmlsdGVyVHlwZS5pZCAmJiBub3RpZmljYXRpb24uc3RhdHVzID09PSByZXF1aXJlZFN0YXRlKXtcclxuICAgICAgICAgIGZpbHRlcmVkTm90aWZpY2F0aW9ucy5wdXNoKG5vdGlmaWNhdGlvbilcclxuICAgICAgICB9XHJcbiAgICAgIH0pXHJcbiAgICAgIHJldHVybiBmaWx0ZXJlZE5vdGlmaWNhdGlvbnNcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vIGZpbmQgYSBub3RpZmljYXRpb24gYWNjb3JkaW5nIHRvIGl0cyBzdGF0ZSBSRUFEIG9yIFVOX1JFQURcclxuICBmaW5kUmVhZE9yVW5SZWFkZWROb3RpZmljYXRpb24oc3RhdGUgLCBub3RpZmljYXRpb25zKXtcclxuICAgIGxldCBzdGF0ZWROb3RpZmljYXRpb25zID0gW107XHJcbiAgICBub3RpZmljYXRpb25zLm1hcChub3RpZmljYXRpb24gPT4ge1xyXG4gICAgICBpZihub3RpZmljYXRpb24uc3RhdHVzID09PSBzdGF0ZSl7XHJcbiAgICAgICAgc3RhdGVkTm90aWZpY2F0aW9ucy5wdXNoKG5vdGlmaWNhdGlvbilcclxuICAgICAgfVxyXG4gICAgfSlcclxuICAgIHJldHVybiBzdGF0ZWROb3RpZmljYXRpb25zO1xyXG4gIH1cclxuICByZXNldENvdW50KCkge1xyXG4gICAgdGhpcy5fbm90aWZpY2F0aW9uc0NvdW50ID0gMDtcclxuICB9XHJcbiAgbWFya0FsbEFzUmVhZCgpIHtcclxuICAgIHRoaXMuZG9NYXJrQWxsQXNSZWFkKHRoaXMucHJvZmlsZS5pZCkuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgdGhpcy5fbm90aWZpY2F0aW9ucy5mb3JFYWNoKChpdGVtKSA9PiAoaXRlbS5zdGF0dXMgPSBcIlJFQURcIikpO1xyXG4gICAgfSk7XHJcbiAgfVxyXG4gIHVwZGF0ZVN0YXR1cyhub3RpZmljYXRpb24sIG9uT3BlbiA9IGZhbHNlKSB7XHJcbiAgICBjb25zdCBib29sID1cclxuICAgICAgbm90aWZpY2F0aW9uLnN0YXR1cyA9PT0gXCJVTl9SRUFEXCIgfHxcclxuICAgICAgbm90aWZpY2F0aW9uLnN0YXR1cyA9PT0gXCJORVdcIiB8fFxyXG4gICAgICBvbk9wZW47XHJcbiAgICBpZiAoYm9vbCkge1xyXG4gICAgICB0aGlzLmRvTWFya0FzUmVhZChub3RpZmljYXRpb24uaWQpLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgbm90aWZpY2F0aW9uLnN0YXR1cyA9IFwiUkVBRFwiO1xyXG4gICAgICAgIHRoaXMuZ2V0Q291bnQoKS5zdWJzY3JpYmUoKCkgPT4ge30pO1xyXG4gICAgICB9KTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuZG9NYXJrQXNVbnJlYWQobm90aWZpY2F0aW9uLmlkKS5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgIG5vdGlmaWNhdGlvbi5zdGF0dXMgPSBcIlVOX1JFQURcIjtcclxuICAgICAgICB0aGlzLmdldENvdW50KCkuc3Vic2NyaWJlKCgpID0+IHt9KTtcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIGRlbGV0ZU5vdGlmaWNhdGlvbihub3RpZmljYXRpb24pIHtcclxuICAgIHRoaXMuZG9EZWxldGVOb3RpZmljYXRpb24obm90aWZpY2F0aW9uLmlkKS5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICB0aGlzLl9ub3RpZmljYXRpb25zLmZpbHRlcigoaXRlbSwgaW5kZXgpID0+IHtcclxuICAgICAgICBpZiAoaXRlbS5pZCA9PT0gbm90aWZpY2F0aW9uLmlkKSB7XHJcbiAgICAgICAgICB0aGlzLl9ub3RpZmljYXRpb25zLnNwbGljZShpbmRleCwgMSk7XHJcbiAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgICAgdGhpcy51cGRhdGUubmV4dCgpO1xyXG4gICAgfSk7XHJcbiAgfVxyXG4gIGdldE5vdGlmaWNhdGlvbnModXNlcklkLCBxdWVyeVBhcmFtcyA9IHt9KSB7XHJcbiAgICBjb25zdCBlbmRwb2ludCA9IGAke3RoaXMuZW52aXJvbm1lbnQubm90aWZpY2F0aW9uc30vYXBpL3N5c3RlbS1ub3RpZmljYXRpb25zL2FsbC8ke3VzZXJJZH1gO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cFxyXG4gICAgICAuZ2V0PGFueT4oZW5kcG9pbnQsIHsgb2JzZXJ2ZTogXCJyZXNwb25zZVwiLCBwYXJhbXM6IHF1ZXJ5UGFyYW1zIH0pXHJcbiAgICAgIC5waXBlKFxyXG4gICAgICAgIG1hcCgocmVzcCkgPT4gKHtcclxuICAgICAgICAgIHRvdGFsQ291bnQ6IHJlc3AuaGVhZGVycy5nZXQoXCJ4LXRvdGFsLWNvdW50XCIpLFxyXG4gICAgICAgICAgaXRlbXM6IHJlc3AuYm9keS5tYXAoKGl0ZW0pID0+IGl0ZW0pLFxyXG4gICAgICAgIH0pKSxcclxuICAgICAgICBjYXRjaEVycm9yKHRoaXMuaGFuZGxlRXJyb3IoXCJnZXROb3RpZmljYXRpb25zXCIsIFtdKSksXHJcbiAgICAgICAgcHVibGlzaFJlcGxheSgxKSxcclxuICAgICAgICByZWZDb3VudCgpXHJcbiAgICAgICk7XHJcbiAgfVxyXG4gIGRvQ291bnROZXcodXNlcklkLCBxdWVyeVBhcmFtcyA9IHt9KSB7XHJcbiAgICBjb25zdCBlbmRwb2ludCA9IGAke3RoaXMuZW52aXJvbm1lbnQubm90aWZpY2F0aW9uc30vYXBpL3N5c3RlbS1ub3RpZmljYXRpb25zL2NvdW50TmV3LyR7dXNlcklkfWA7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwXHJcbiAgICAgIC5nZXQ8YW55PihlbmRwb2ludCwgeyBwYXJhbXM6IHF1ZXJ5UGFyYW1zIH0pXHJcbiAgICAgIC5waXBlKGNhdGNoRXJyb3IodGhpcy5oYW5kbGVFcnJvcihcImNvdW50TmV3XCIsIFtdKSkpO1xyXG4gIH1cclxuICBkb1Jlc2V0Q291bnROZXcodXNlcklkLCBxdWVyeVBhcmFtcyA9IHt9KSB7XHJcbiAgICBjb25zdCBlbmRwb2ludCA9IGAke3RoaXMuZW52aXJvbm1lbnQubm90aWZpY2F0aW9uc30vYXBpL3N5c3RlbS1ub3RpZmljYXRpb25zL3Jlc2V0Q291bnQvJHt1c2VySWR9YDtcclxuICAgIHJldHVybiB0aGlzLmh0dHBcclxuICAgICAgLnB1dDxhbnk+KGVuZHBvaW50LCB7IHBhcmFtczogcXVlcnlQYXJhbXMgfSlcclxuICAgICAgLnBpcGUoY2F0Y2hFcnJvcih0aGlzLmhhbmRsZUVycm9yKFwicmVzZXRDb3VudE5ld1wiLCBbXSkpKTtcclxuICB9XHJcbiAgZG9Db3VudFVucmVhZCh1c2VySWQsIHF1ZXJ5UGFyYW1zID0ge30pIHtcclxuICAgIGNvbnN0IGVuZHBvaW50ID0gYCR7dGhpcy5lbnZpcm9ubWVudC5ub3RpZmljYXRpb25zfS9hcGkvc3lzdGVtLW5vdGlmaWNhdGlvbnMvY291bnRVblJlYWQvJHt1c2VySWR9YDtcclxuICAgIHJldHVybiB0aGlzLmh0dHBcclxuICAgICAgLmdldDxhbnk+KGVuZHBvaW50LCB7IHBhcmFtczogcXVlcnlQYXJhbXMgfSlcclxuICAgICAgLnBpcGUoY2F0Y2hFcnJvcih0aGlzLmhhbmRsZUVycm9yKFwiY291bnRVbnJlYWRcIiwgW10pKSk7XHJcbiAgfVxyXG4gIGRvTWFya0FsbEFzUmVhZCh1c2VySWQsIHF1ZXJ5UGFyYW1zID0ge30pIHtcclxuICAgIGNvbnN0IGVuZHBvaW50ID0gYCR7dGhpcy5lbnZpcm9ubWVudC5ub3RpZmljYXRpb25zfS9hcGkvc3lzdGVtLW5vdGlmaWNhdGlvbnMvbWFya0FsbEFzUmVhZC8ke3VzZXJJZH1gO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cFxyXG4gICAgICAucHV0PGFueT4oZW5kcG9pbnQsIHsgcGFyYW1zOiBxdWVyeVBhcmFtcyB9KVxyXG4gICAgICAucGlwZShjYXRjaEVycm9yKHRoaXMuaGFuZGxlRXJyb3IoXCJtYXJrQWxsQXNSZWFkXCIsIFtdKSkpO1xyXG4gIH1cclxuICBkb01hcmtBc1JlYWQobm90aWZpY2F0aW9uSWQsIHF1ZXJ5UGFyYW1zID0ge30pIHtcclxuICAgIGNvbnN0IGVuZHBvaW50ID0gYCR7dGhpcy5lbnZpcm9ubWVudC5ub3RpZmljYXRpb25zfS9hcGkvc3lzdGVtLW5vdGlmaWNhdGlvbnMvbWFya0FzUmVhZC8ke25vdGlmaWNhdGlvbklkfWA7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwXHJcbiAgICAgIC5wdXQ8YW55PihlbmRwb2ludCwgeyBwYXJhbXM6IHF1ZXJ5UGFyYW1zIH0pXHJcbiAgICAgIC5waXBlKGNhdGNoRXJyb3IodGhpcy5oYW5kbGVFcnJvcihcIm1hcmtBc1JlYWRcIiwgW10pKSk7XHJcbiAgfVxyXG4gIGRvTWFya0FzVW5yZWFkKG5vdGlmaWNhdGlvbklkLCBxdWVyeVBhcmFtcyA9IHt9KSB7XHJcbiAgICBjb25zdCBlbmRwb2ludCA9IGAke3RoaXMuZW52aXJvbm1lbnQubm90aWZpY2F0aW9uc30vYXBpL3N5c3RlbS1ub3RpZmljYXRpb25zL21hcmtBc1VuUmVhZC8ke25vdGlmaWNhdGlvbklkfWA7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwXHJcbiAgICAgIC5wdXQ8YW55PihlbmRwb2ludCwgeyBwYXJhbXM6IHF1ZXJ5UGFyYW1zIH0pXHJcbiAgICAgIC5waXBlKGNhdGNoRXJyb3IodGhpcy5oYW5kbGVFcnJvcihcIm1hcmtBc1VucmVhZFwiLCBbXSkpKTtcclxuICB9XHJcbiAgZG9EZWxldGVOb3RpZmljYXRpb24obm90aWZpY2F0aW9uSWQsIHF1ZXJ5UGFyYW1zID0ge30pIHtcclxuICAgIGNvbnN0IGVuZHBvaW50ID0gYCR7dGhpcy5lbnZpcm9ubWVudC5ub3RpZmljYXRpb25zfS9hcGkvc3lzdGVtLW5vdGlmaWNhdGlvbnMvJHtub3RpZmljYXRpb25JZH1gO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cFxyXG4gICAgICAuZGVsZXRlPGFueT4oZW5kcG9pbnQsIHsgcGFyYW1zOiBxdWVyeVBhcmFtcyB9KVxyXG4gICAgICAucGlwZShjYXRjaEVycm9yKHRoaXMuaGFuZGxlRXJyb3IoXCJkZWxldGVOb3RpZmljYXRpb25cIiwgW10pKSk7XHJcbiAgfVxyXG4gIHByaXZhdGUgaGFuZGxlRXJyb3I8VD4ob3BlcmF0aW9uID0gXCJvcGVyYXRpb25cIiwgcmVzdWx0PzogVCkge1xyXG4gICAgcmV0dXJuIChlcnJvcjogYW55KTogT2JzZXJ2YWJsZTxUPiA9PiB7XHJcbiAgICAgIC8vIFRPRE86IHNlbmQgdGhlIGVycm9yIHRvIHJlbW90ZSBsb2dnaW5nIGluZnJhc3RydWN0dXJlXHJcbiAgICAgIGNvbnNvbGUuZXJyb3IoZXJyb3IpOyAvLyBsb2cgdG8gY29uc29sZSBpbnN0ZWFkXHJcblxyXG4gICAgICAvLyBUT0RPOiBiZXR0ZXIgam9iIG9mIHRyYW5zZm9ybWluZyBlcnJvciBmb3IgdXNlciBjb25zdW1wdGlvblxyXG4gICAgICBjb25zb2xlLmxvZyhgJHtvcGVyYXRpb259IGZhaWxlZDogJHtlcnJvci5tZXNzYWdlfWApO1xyXG5cclxuICAgICAgLy8gTGV0IHRoZSBhcHAga2VlcCBydW5uaW5nIGJ5IHJldHVybmluZyBhbiBlbXB0eSByZXN1bHQuXHJcbiAgICAgIHJlc3VsdFtcInN0YXR1c1wiXSA9IGVycm9yLnN0YXR1cztcclxuICAgICAgaWYgKGVycm9yLmVycm9yLmhhc093blByb3BlcnR5KFwibWVzc2FnZVwiKSkge1xyXG4gICAgICAgIHJlc3VsdFtcIm1lc3NhZ2VcIl0gPSBlcnJvci5lcnJvci5tZXNzYWdlO1xyXG4gICAgICAgIHJlc3VsdFtcInR5cGVcIl0gPSBlcnJvci5lcnJvci50eXBlO1xyXG4gICAgICB9XHJcblxyXG4gICAgICByZXR1cm4gb2YocmVzdWx0IGFzIFQpO1xyXG4gICAgfTtcclxuICB9XHJcbiAgYXN5bmMgY29ubmVjdCgpIHtcclxuICAgIGlmICh0aGlzLmNvbm5lY3RlZFByb21pc2UgPT09IG51bGwpIHtcclxuICAgICAgdGhpcy5jb25uZWN0aW9uID0gdGhpcy5jcmVhdGVDb25uZWN0aW9uKCk7XHJcbiAgICB9XHJcbiAgICAvLyBidWlsZGluZyBhYnNvbHV0ZSBwYXRoIHNvIHRoYXQgd2Vic29ja2V0IGRvZXNuJ3QgZmFpbCB3aGVuIGRlcGxveWluZyB3aXRoIGEgY29udGV4dCBwYXRoXHJcbiAgICBsZXQgdXJsO1xyXG4gICAgdXJsID0gYCR7dGhpcy5lbnZpcm9ubWVudC5ub3RpZmljYXRpb25zfS93ZWJzb2NrZXQvZWtoYWFgOyAvL3VybFxyXG4gICAgY29uc3Qgc29ja2V0ID0gbmV3IFNvY2tKUyh1cmwpO1xyXG4gICAgdGhpcy5zdG9tcENsaWVudCA9IFN0b21wLm92ZXIoc29ja2V0KTtcclxuICAgIGNvbnN0IGhlYWRlcnMgPSB7XHJcbiAgICAgIC8vIFVwZ3JhZGU6ICd3ZWJzb2NrZXQnLFxyXG4gICAgICAvLyBDb25uZWN0aW9uOiAnVXBncmFkZScsXHJcbiAgICAgIHRva2VuOiB0aGlzLmVudmlyb25tZW50LmxvZ2luTWV0aG9kID09PSAnbnV4ZW8nID8gdGhpcy5nZXRDYWNoYWJsZSgpOiBgJHthd2FpdCB0aGlzLmtleWNsb2FrLmdldFRva2VuKCl9YCxcclxuICAgIH07XHJcbiAgICBpZiAoIXRoaXMuYWxyZWFkeUNvbm5lY3RlZE9uY2UpIHtcclxuICAgICAgdGhpcy5zdG9tcENsaWVudC5jb25uZWN0KGhlYWRlcnMsICgpID0+IHtcclxuICAgICAgICB0aGlzLmFscmVhZHlDb25uZWN0ZWRPbmNlID0gdHJ1ZTtcclxuICAgICAgICB0aGlzLmNvbm5lY3RlZFByb21pc2UoXCJzdWNjZXNzXCIpO1xyXG4gICAgICAgIHRoaXMuY29ubmVjdGVkUHJvbWlzZSA9IG51bGw7XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZGlzY29ubmVjdCgpIHtcclxuICAgIGlmICh0aGlzLnN0b21wQ2xpZW50ICE9PSBudWxsICYmIHRoaXMuYWxyZWFkeUNvbm5lY3RlZE9uY2UpIHtcclxuICAgICAgdGhpcy5zdG9tcENsaWVudC5kaXNjb25uZWN0KCk7XHJcbiAgICAgIHRoaXMuc3RvbXBDbGllbnQgPSBudWxsO1xyXG4gICAgICBpZiAodGhpcy5zdWJzY3JpcHRpb24pIHtcclxuICAgICAgICB0aGlzLnN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xyXG4gICAgICAgIHRoaXMuc3Vic2NyaXB0aW9uID0gbnVsbDtcclxuICAgICAgfVxyXG4gICAgICB0aGlzLmFscmVhZHlDb25uZWN0ZWRPbmNlID0gZmFsc2U7XHJcbiAgICB9IGVsc2UgaWYgKHRoaXMuY29ubmVjdGVkUHJvbWlzZSkge1xyXG4gICAgICB0aGlzLmNvbm5lY3Rpb24udGhlbigoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5kaXNjb25uZWN0KCk7XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgc3Vic2NyaWJlKCkge1xyXG4gICAgaWYgKHRoaXMuY29ubmVjdGlvbikge1xyXG4gICAgICB0aGlzLmNvbm5lY3Rpb24udGhlbigoKSA9PiB7XHJcbiAgICAgICAgaWYgKHRoaXMuc3RvbXBDbGllbnQpIHtcclxuICAgICAgICAgIHRoaXMuc3Vic2NyaWJlciA9IHRoaXMuc3RvbXBDbGllbnQuc3Vic2NyaWJlKFxyXG4gICAgICAgICAgICBcIi91c2VyL3RvcGljL25vdGlmaWNhdGlvblwiLFxyXG4gICAgICAgICAgICAoZGF0YSkgPT4ge1xyXG4gICAgICAgICAgICAgIGNvbnN0IG5vdGlmaWNhdGlvbiA9IEpTT04ucGFyc2UoZGF0YS5ib2R5KTtcclxuICAgICAgICAgICAgICB0aGlzLl9ub3RpZmljYXRpb25zLnVuc2hpZnQobm90aWZpY2F0aW9uKTtcclxuICAgICAgICAgICAgICB0aGlzLmdldENvdW50KCkuc3Vic2NyaWJlKCgpID0+IHt9KTtcclxuICAgICAgICAgICAgICB0aGlzLmxpc3RlbmVyT2JzZXJ2ZXIuZW1pdChub3RpZmljYXRpb24pO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICApO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICB1bnN1YnNjcmliZSgpIHtcclxuICAgIGlmICh0aGlzLnN1YnNjcmliZXIgIT09IG51bGwpIHtcclxuICAgICAgdGhpcy5zdWJzY3JpYmVyLnVuc3Vic2NyaWJlKCk7XHJcbiAgICB9XHJcbiAgICB0aGlzLmRpc2Nvbm5lY3QoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgY3JlYXRlQ29ubmVjdGlvbigpOiBQcm9taXNlPGFueT4ge1xyXG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+ICh0aGlzLmNvbm5lY3RlZFByb21pc2UgPSByZXNvbHZlKSk7XHJcbiAgfVxyXG5cclxuICB0ZXN0Tm90aWZpY2F0aW9uKCk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICByZXR1cm4gZnJvbShcclxuICAgICAgdGhpcy5udXhlb1NlcnZpY2UubnV4ZW9DbGllbnRcclxuICAgICAgICAub3BlcmF0aW9uKFwiU3lzdGVtLk5vdGlmaWNhdGlvblwiLCB7XHJcbiAgICAgICAgICB1cmw6IGAke3RoaXMuZW52aXJvbm1lbnQubnV4ZW99JHt0aGlzLmVudmlyb25tZW50LmN1c3RvbUF1dG9tYXRpb259YCxcclxuICAgICAgICB9KVxyXG4gICAgICAgIC5wYXJhbXMoe1xyXG4gICAgICAgICAgYXBwbGljYXRpb25LZXk6IFwiY3RzblwiLFxyXG4gICAgICAgICAgbm90aWZpY2F0aW9uS2V5OiBcIk5vdGlmaWNhdGlvbldoZW5PdXRnb2luZ0NvcnJlc3BvbmRuZWNlQXBwcm92ZVwiLFxyXG4gICAgICAgICAgYXBpRGF0YTpcclxuICAgICAgICAgICAgJ3tcImlkXCI6IFwiYTdlZDYyOWUtYzhlYS00ZTg0LThiODMtMzI5MDA5NTE1ODc4XCIsXCJzY2hlbWFcIjogXCJDb3JyZXNwb25kZW5jZVwifScsXHJcbiAgICAgICAgICBkYXRhOiBcInt9XCIsXHJcbiAgICAgICAgICBncm91cHNJZDogW10sXHJcbiAgICAgICAgICB1c2Vyc0lkOiBbXCJjdHNfc2VjXCJdLFxyXG4gICAgICAgIH0pXHJcbiAgICAgICAgLmlucHV0KFwiYTdlZDYyOWUtYzhlYS00ZTg0LThiODMtMzI5MDA5NTE1ODc4XCIpXHJcbiAgICAgICAgLmV4ZWN1dGUoKVxyXG4gICAgKS5waXBlKFxyXG4gICAgICBjYXRjaEVycm9yKChlcnIpID0+IHtcclxuICAgICAgICBjb25zb2xlLmxvZyhlcnIpO1xyXG4gICAgICAgIHRocm93IGVycjtcclxuICAgICAgfSlcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBnZXRDYWNoYWJsZSgpe1xyXG4gICAgbGV0IG15Q2FjaGFibGUgPSB0aGlzLmNvb2tpZVNlcnZpY2UuZ2V0KCdDTVNfQ0FDSEFCTEUnKTtcclxuICAgIG15Q2FjaGFibGUgPSAgdGhpcy5pbnRpYWxpemF0aW9uU2VydmljZS5kZWNyaXB0Rm9ybWF0aW5nKG15Q2FjaGFibGUpO1xyXG4gIHJldHVybiBteUNhY2hhYmxlWydhY2Nlc3NfdG9rZW4nXTtcclxuICB9XHJcblxyXG4gIHNldE5vdGlmaWNhdGlvbnMobm90aWZpY2F0aW9ucyl7XHJcbiAgICB0aGlzLl9ub3RpZmljYXRpb25zID0gbm90aWZpY2F0aW9ucztcclxuICB9XHJcbn1cclxuIl19
|
|
295
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9ucy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9ub3RpZmljYXRpb25zL25vdGlmaWNhdGlvbnMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQ0EsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBR2pFLE9BQU8sRUFBRSxJQUFJLEVBQWMsRUFBRSxFQUFFLGFBQWEsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMzRCxPQUFPLEVBQUUsVUFBVSxFQUFFLEdBQUcsRUFBRSxhQUFhLEVBQUUsUUFBUSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDMUUsT0FBTyxLQUFLLE1BQU0sTUFBTSxlQUFlLENBQUM7QUFFeEMsT0FBTyxLQUFLLEtBQUssTUFBTSxpQkFBaUIsQ0FBQzs7Ozs7Ozs7OztBQU96QyxNQUFNLE9BQU8sb0JBQW9CO0lBeUIvQixZQUNVLElBQWdCLEVBQ2pCLE1BQWMsRUFDZCxZQUEwQixFQUN6QixRQUF5QixFQUN6QixhQUE2QixFQUM3QixXQUFnQyxFQUNoQyxvQkFBNEMsRUFDNUMsa0JBQXNDLEVBQ2YsV0FBVztRQVJsQyxTQUFJLEdBQUosSUFBSSxDQUFZO1FBQ2pCLFdBQU0sR0FBTixNQUFNLENBQVE7UUFDZCxpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUN6QixhQUFRLEdBQVIsUUFBUSxDQUFpQjtRQUN6QixrQkFBYSxHQUFiLGFBQWEsQ0FBZ0I7UUFDN0IsZ0JBQVcsR0FBWCxXQUFXLENBQXFCO1FBQ2hDLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBd0I7UUFDNUMsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFvQjtRQUNmLGdCQUFXLEdBQVgsV0FBVyxDQUFBO1FBakM1QyxnQkFBVyxHQUFHLElBQUks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Q1osQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxVQUFVLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDeEQsVUFBVSxHQUFJLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxnQkFBZ0IsQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUN2RSxPQUFPLFVBQVUsQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUNsQyxDQUFDOztrSEEzU1Usb0JBQW9CLG1RQWtDckIsYUFBYTtzSEFsQ1osb0JBQW9COzRGQUFwQixvQkFBb0I7a0JBRGhDLFVBQVU7OzBCQW1DTixNQUFNOzJCQUFDLGFBQWEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vbi9odHRwXCI7XHJcbmltcG9ydCB7IEV2ZW50RW1pdHRlciwgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSBcIkBhbmd1bGFyL3JvdXRlclwiO1xyXG5pbXBvcnQgeyBLZXljbG9ha1NlcnZpY2UgfSBmcm9tIFwia2V5Y2xvYWstYW5ndWxhclwiO1xyXG5pbXBvcnQgeyBmcm9tLCBPYnNlcnZhYmxlLCBvZiwgUmVwbGF5U3ViamVjdCB9IGZyb20gXCJyeGpzXCI7XHJcbmltcG9ydCB7IGNhdGNoRXJyb3IsIG1hcCwgcHVibGlzaFJlcGxheSwgcmVmQ291bnQgfSBmcm9tIFwicnhqcy9vcGVyYXRvcnNcIjtcclxuaW1wb3J0ICogYXMgU29ja0pTIGZyb20gXCJzb2NranMtY2xpZW50XCI7XHJcbmltcG9ydCB7IE51eGVvU2VydmljZSB9IGZyb20gXCIuLi8uLi9Db3JlL3NlcnZpY2VzL251eGVvL251eGVvLnNlcnZpY2VcIjtcclxuaW1wb3J0ICogYXMgU3RvbXAgZnJvbSBcIndlYnN0b21wLWNsaWVudFwiO1xyXG5pbXBvcnQgeyBUcmFuc2xhdGlvblNlcnZpY2UgfSBmcm9tIFwiLi4vLi4vQ29yZS9zZXJ2aWNlcy90cmFuc2xhdGlvbi90cmFuc2xhdGlvbi5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IExvY2FsU3RvcmFnU2VydmljZSB9IGZyb20gXCIuLi8uLi9Db3JlL3NlcnZpY2VzL2xvY2FsU3RvcmFnL2xvY2FsLXN0b3JhZy5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IEluaXRpYWxpemF0aW9uU2VydmljZSB9IGZyb20gXCIuLi8uLi9Db3JlL3NlcnZpY2VzL2luaXRpYWxpemF0aW9uL2luaXRpYWxpemF0aW9uLnNlcnZpY2VcIjtcclxuaW1wb3J0IHsgQ29va2llU2VydmljZSB9IGZyb20gJ25neC1jb29raWUtc2VydmljZSdcclxuXHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGNsYXNzIE5vdGlmaWNhdGlvbnNTZXJ2aWNlIHtcclxuICBzdG9tcENsaWVudCA9IG51bGw7XHJcbiAgc3Vic2NyaWJlciA9IG51bGw7XHJcbiAgY29ubmVjdGlvbjogUHJvbWlzZTxhbnk+O1xyXG4gIGNvbm5lY3RlZFByb21pc2U6IGFueSA9IG51bGw7XHJcbiAgbGlzdGVuZXJPYnNlcnZlcjogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgdXBkYXRlOiBSZXBsYXlTdWJqZWN0PGFueT4gPSBuZXcgUmVwbGF5U3ViamVjdCgxKTtcclxuICBhbHJlYWR5Q29ubmVjdGVkT25jZSA9IGZhbHNlO1xyXG4gIHBhZ2VTaXplID0gMTU7XHJcblxyXG4gIHByaXZhdGUgc3Vic2NyaXB0aW9uOiBTdG9tcC5TdWJzY3JpcHRpb247XHJcblxyXG4gIHByaXZhdGUgX25vdGlmaWNhdGlvbnMgPSBbXTtcclxuICBnZXQgbm90aWZpY2F0aW9ucygpOiBhbnkge1xyXG4gICAgcmV0dXJuIHRoaXMuX25vdGlmaWNhdGlvbnM7XHJcbiAgfVxyXG4gIHByaXZhdGUgX25vdGlmaWNhdGlvbnNDb3VudCA9IDA7XHJcbiAgZ2V0IG5vdGlmaWNhdGlvbnNDb3VudCgpOiBudW1iZXIge1xyXG4gICAgcmV0dXJuIHRoaXMuX25vdGlmaWNhdGlvbnNDb3VudDtcclxuICB9XHJcbiAgYmFzZSA9IFwiXCI7XHJcbiAgcHJvZmlsZSA9IHsgaWQ6IHRoaXMubnV4ZW9TZXJ2aWNlLm51eGVvQ2xpZW50LnVzZXIuaWQgfTtcclxuICBzeXN0ZW1MYW5nID0gXCJcIjtcclxuICBsYW5nQ2hhbmdlZDogYm9vbGVhbjtcclxuICBsb2FkaW5nID0gZmFsc2U7XHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIGh0dHA6IEh0dHBDbGllbnQsXHJcbiAgICBwdWJsaWMgcm91dGVyOiBSb3V0ZXIsXHJcbiAgICBwdWJsaWMgbnV4ZW9TZXJ2aWNlOiBOdXhlb1NlcnZpY2UsXHJcbiAgICBwcml2YXRlIGtleWNsb2FrOiBLZXljbG9ha1NlcnZpY2UsXHJcbiAgICBwcml2YXRlIGNvb2tpZVNlcnZpY2UgOiBDb29raWVTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBsb2NhbFN0b3JhZyA6IExvY2FsU3RvcmFnU2VydmljZSxcclxuICAgIHByaXZhdGUgaW50aWFsaXphdGlvblNlcnZpY2UgOiBJbml0aWFsaXphdGlvblNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHRyYW5zbGF0aW9uU2VydmljZTogVHJhbnNsYXRpb25TZXJ2aWNlLFxyXG4gICAgQEluamVjdChcImVudmlyb25tZW50XCIpIHByaXZhdGUgZW52aXJvbm1lbnRcclxuICApIHtcclxuICAgIGlmICh0aGlzLnByb2ZpbGUuaWQpIHtcclxuICAgICAgdGhpcy5nZXRDb3VudCgpLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5jb25uZWN0KCk7XHJcbiAgICAgICAgdGhpcy5zdWJzY3JpYmUoKTtcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgICB0aGlzLnRyYW5zbGF0aW9uU2VydmljZS5pc0FyYWJpYy5zdWJzY3JpYmUoKHJlcykgPT4ge1xyXG4gICAgICB0aGlzLnJlc2V0Tm90aWZpY2F0aW9ucygpO1xyXG4gICAgfSk7XHJcbiAgfVxyXG4gIGdldENvdW50KCkge1xyXG4gICAgcmV0dXJuIHRoaXMuZG9Db3VudE5ldyh0aGlzLnByb2ZpbGUuaWQpLnBpcGUoXHJcbiAgICAgIG1hcCgoZGF0YSkgPT4ge1xyXG4gICAgICAgIHRoaXMuX25vdGlmaWNhdGlvbnNDb3VudCA9IGRhdGE7XHJcbiAgICAgICAgdGhpcy51cGRhdGUubmV4dCgpO1xyXG4gICAgICAgIHJldHVybiBkYXRhO1xyXG4gICAgICB9KVxyXG4gICAgKTtcclxuICB9XHJcbiAgcmVzZXQoKSB7XHJcbiAgICB0aGlzLl9ub3RpZmljYXRpb25zID0gW107XHJcbiAgICB0aGlzLl9ub3RpZmljYXRpb25zQ291bnQgPSAwO1xyXG4gIH1cclxuICByZXNldE5vdGlmaWNhdGlvbnMoKSB7XHJcbiAgICB0aGlzLl9ub3RpZmljYXRpb25zID0gW107XHJcbiAgfVxyXG4gIGZldGNoTm90aWZpY2F0aW9ucygpIHtcclxuICAgIHRoaXMubG9hZGluZyA9IHRydWU7XHJcbiAgICByZXR1cm4gdGhpcy5nZXROb3RpZmljYXRpb25zKHRoaXMucHJvZmlsZS5pZCwge1xyXG4gICAgICBwYWdlOlxyXG4gICAgICAgIHRoaXMuX25vdGlmaWNhdGlvbnMubGVuZ3RoID4gMFxyXG4gICAgICAgICAgPyBNYXRoLmNlaWwodGhpcy5fbm90aWZpY2F0aW9ucy5sZW5ndGggLyB0aGlzLnBhZ2VTaXplKVxyXG4gICAgICAgICAgOiAwLFxyXG4gICAgICBzaXplOiB0aGlzLnBhZ2VTaXplLFxyXG4gICAgICBwYWdlZDogdHJ1ZSxcclxuICAgICAgc29ydDogXCJzZW5kRGF0ZSxkZXNjXCIsXHJcbiAgICAgIHNvcnRlZDogdHJ1ZSxcclxuICAgICAgbGFuZzogdGhpcy50cmFuc2xhdGlvblNlcnZpY2UudXNlckxhbmcudG9VcHBlckNhc2UoKSxcclxuICAgIH0pLnBpcGUoXHJcbiAgICAgIG1hcCgobm90aWZpY2F0aW9uczogYW55KSA9PiB7XHJcbiAgICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgaWYgKG5vdGlmaWNhdGlvbnMuaXRlbXMpIHtcclxuICAgICAgICAgIHRoaXMuX25vdGlmaWNhdGlvbnMgPSB0aGlzLl9ub3RpZmljYXRpb25zLmNvbmNhdChub3RpZmljYXRpb25zLml0ZW1zKTtcclxuICAgICAgICAgIHJldHVybiBub3RpZmljYXRpb25zO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICB0aGlzLl9ub3RpZmljYXRpb25zID0gW107XHJcbiAgICAgICAgICByZXR1cm4gW107XHJcbiAgICAgICAgfVxyXG4gICAgICB9KSxcclxuICAgICAgY2F0Y2hFcnJvcigoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5fbm90aWZpY2F0aW9ucyA9IFtdO1xyXG4gICAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgIHJldHVybiBbXTtcclxuICAgICAgfSlcclxuICAgICk7XHJcbiAgfVxyXG4gIHJlc2V0Q291bnQoKSB7XHJcbiAgICB0aGlzLl9ub3RpZmljYXRpb25zQ291bnQgPSAwO1xyXG4gIH1cclxuICBtYXJrQWxsQXNSZWFkKCkge1xyXG4gICAgdGhpcy5kb01hcmtBbGxBc1JlYWQodGhpcy5wcm9maWxlLmlkKS5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICB0aGlzLl9ub3RpZmljYXRpb25zLmZvckVhY2goKGl0ZW0pID0+IChpdGVtLnN0YXR1cyA9IFwiUkVBRFwiKSk7XHJcbiAgICB9KTtcclxuICB9XHJcbiAgdXBkYXRlU3RhdHVzKG5vdGlmaWNhdGlvbiwgb25PcGVuID0gZmFsc2UpIHtcclxuICAgIGNvbnN0IGJvb2wgPVxyXG4gICAgICBub3RpZmljYXRpb24uc3RhdHVzID09PSBcIlVOX1JFQURcIiB8fFxyXG4gICAgICBub3RpZmljYXRpb24uc3RhdHVzID09PSBcIk5FV1wiIHx8XHJcbiAgICAgIG9uT3BlbjtcclxuICAgIGlmIChib29sKSB7XHJcbiAgICAgIHRoaXMuZG9NYXJrQXNSZWFkKG5vdGlmaWNhdGlvbi5pZCkuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgICBub3RpZmljYXRpb24uc3RhdHVzID0gXCJSRUFEXCI7XHJcbiAgICAgICAgdGhpcy5nZXRDb3VudCgpLnN1YnNjcmliZSgoKSA9PiB7fSk7XHJcbiAgICAgIH0pO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5kb01hcmtBc1VucmVhZChub3RpZmljYXRpb24uaWQpLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgbm90aWZpY2F0aW9uLnN0YXR1cyA9IFwiVU5fUkVBRFwiO1xyXG4gICAgICAgIHRoaXMuZ2V0Q291bnQoKS5zdWJzY3JpYmUoKCkgPT4ge30pO1xyXG4gICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcbiAgZGVsZXRlTm90aWZpY2F0aW9uKG5vdGlmaWNhdGlvbikge1xyXG4gICAgdGhpcy5kb0RlbGV0ZU5vdGlmaWNhdGlvbihub3RpZmljYXRpb24uaWQpLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgIHRoaXMuX25vdGlmaWNhdGlvbnMuZmlsdGVyKChpdGVtLCBpbmRleCkgPT4ge1xyXG4gICAgICAgIGlmIChpdGVtLmlkID09PSBub3RpZmljYXRpb24uaWQpIHtcclxuICAgICAgICAgIHRoaXMuX25vdGlmaWNhdGlvbnMuc3BsaWNlKGluZGV4LCAxKTtcclxuICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgICB0aGlzLnVwZGF0ZS5uZXh0KCk7XHJcbiAgICB9KTtcclxuICB9XHJcbiAgZ2V0Tm90aWZpY2F0aW9ucyh1c2VySWQsIHF1ZXJ5UGFyYW1zID0ge30pIHtcclxuICAgIGNvbnN0IGVuZHBvaW50ID0gYCR7dGhpcy5lbnZpcm9ubWVudC5ub3RpZmljYXRpb25zfS9hcGkvc3lzdGVtLW5vdGlmaWNhdGlvbnMvYWxsLyR7dXNlcklkfWA7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwXHJcbiAgICAgIC5nZXQ8YW55PihlbmRwb2ludCwgeyBvYnNlcnZlOiBcInJlc3BvbnNlXCIsIHBhcmFtczogcXVlcnlQYXJhbXMgfSlcclxuICAgICAgLnBpcGUoXHJcbiAgICAgICAgbWFwKChyZXNwKSA9PiAoe1xyXG4gICAgICAgICAgdG90YWxDb3VudDogcmVzcC5oZWFkZXJzLmdldChcIngtdG90YWwtY291bnRcIiksXHJcbiAgICAgICAgICBpdGVtczogcmVzcC5ib2R5Lm1hcCgoaXRlbSkgPT4gaXRlbSksXHJcbiAgICAgICAgfSkpLFxyXG4gICAgICAgIGNhdGNoRXJyb3IodGhpcy5oYW5kbGVFcnJvcihcImdldE5vdGlmaWNhdGlvbnNcIiwgW10pKSxcclxuICAgICAgICBwdWJsaXNoUmVwbGF5KDEpLFxyXG4gICAgICAgIHJlZkNvdW50KClcclxuICAgICAgKTtcclxuICB9XHJcbiAgZG9Db3VudE5ldyh1c2VySWQsIHF1ZXJ5UGFyYW1zID0ge30pIHtcclxuICAgIGNvbnN0IGVuZHBvaW50ID0gYCR7dGhpcy5lbnZpcm9ubWVudC5ub3RpZmljYXRpb25zfS9hcGkvc3lzdGVtLW5vdGlmaWNhdGlvbnMvY291bnROZXcvJHt1c2VySWR9YDtcclxuICAgIHJldHVybiB0aGlzLmh0dHBcclxuICAgICAgLmdldDxhbnk+KGVuZHBvaW50LCB7IHBhcmFtczogcXVlcnlQYXJhbXMgfSlcclxuICAgICAgLnBpcGUoY2F0Y2hFcnJvcih0aGlzLmhhbmRsZUVycm9yKFwiY291bnROZXdcIiwgW10pKSk7XHJcbiAgfVxyXG4gIGRvUmVzZXRDb3VudE5ldyh1c2VySWQsIHF1ZXJ5UGFyYW1zID0ge30pIHtcclxuICAgIGNvbnN0IGVuZHBvaW50ID0gYCR7dGhpcy5lbnZpcm9ubWVudC5ub3RpZmljYXRpb25zfS9hcGkvc3lzdGVtLW5vdGlmaWNhdGlvbnMvcmVzZXRDb3VudC8ke3VzZXJJZH1gO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cFxyXG4gICAgICAucHV0PGFueT4oZW5kcG9pbnQsIHsgcGFyYW1zOiBxdWVyeVBhcmFtcyB9KVxyXG4gICAgICAucGlwZShjYXRjaEVycm9yKHRoaXMuaGFuZGxlRXJyb3IoXCJyZXNldENvdW50TmV3XCIsIFtdKSkpO1xyXG4gIH1cclxuICBkb0NvdW50VW5yZWFkKHVzZXJJZCwgcXVlcnlQYXJhbXMgPSB7fSkge1xyXG4gICAgY29uc3QgZW5kcG9pbnQgPSBgJHt0aGlzLmVudmlyb25tZW50Lm5vdGlmaWNhdGlvbnN9L2FwaS9zeXN0ZW0tbm90aWZpY2F0aW9ucy9jb3VudFVuUmVhZC8ke3VzZXJJZH1gO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cFxyXG4gICAgICAuZ2V0PGFueT4oZW5kcG9pbnQsIHsgcGFyYW1zOiBxdWVyeVBhcmFtcyB9KVxyXG4gICAgICAucGlwZShjYXRjaEVycm9yKHRoaXMuaGFuZGxlRXJyb3IoXCJjb3VudFVucmVhZFwiLCBbXSkpKTtcclxuICB9XHJcbiAgZG9NYXJrQWxsQXNSZWFkKHVzZXJJZCwgcXVlcnlQYXJhbXMgPSB7fSkge1xyXG4gICAgY29uc3QgZW5kcG9pbnQgPSBgJHt0aGlzLmVudmlyb25tZW50Lm5vdGlmaWNhdGlvbnN9L2FwaS9zeXN0ZW0tbm90aWZpY2F0aW9ucy9tYXJrQWxsQXNSZWFkLyR7dXNlcklkfWA7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwXHJcbiAgICAgIC5wdXQ8YW55PihlbmRwb2ludCwgeyBwYXJhbXM6IHF1ZXJ5UGFyYW1zIH0pXHJcbiAgICAgIC5waXBlKGNhdGNoRXJyb3IodGhpcy5oYW5kbGVFcnJvcihcIm1hcmtBbGxBc1JlYWRcIiwgW10pKSk7XHJcbiAgfVxyXG4gIGRvTWFya0FzUmVhZChub3RpZmljYXRpb25JZCwgcXVlcnlQYXJhbXMgPSB7fSkge1xyXG4gICAgY29uc3QgZW5kcG9pbnQgPSBgJHt0aGlzLmVudmlyb25tZW50Lm5vdGlmaWNhdGlvbnN9L2FwaS9zeXN0ZW0tbm90aWZpY2F0aW9ucy9tYXJrQXNSZWFkLyR7bm90aWZpY2F0aW9uSWR9YDtcclxuICAgIHJldHVybiB0aGlzLmh0dHBcclxuICAgICAgLnB1dDxhbnk+KGVuZHBvaW50LCB7IHBhcmFtczogcXVlcnlQYXJhbXMgfSlcclxuICAgICAgLnBpcGUoY2F0Y2hFcnJvcih0aGlzLmhhbmRsZUVycm9yKFwibWFya0FzUmVhZFwiLCBbXSkpKTtcclxuICB9XHJcbiAgZG9NYXJrQXNVbnJlYWQobm90aWZpY2F0aW9uSWQsIHF1ZXJ5UGFyYW1zID0ge30pIHtcclxuICAgIGNvbnN0IGVuZHBvaW50ID0gYCR7dGhpcy5lbnZpcm9ubWVudC5ub3RpZmljYXRpb25zfS9hcGkvc3lzdGVtLW5vdGlmaWNhdGlvbnMvbWFya0FzVW5SZWFkLyR7bm90aWZpY2F0aW9uSWR9YDtcclxuICAgIHJldHVybiB0aGlzLmh0dHBcclxuICAgICAgLnB1dDxhbnk+KGVuZHBvaW50LCB7IHBhcmFtczogcXVlcnlQYXJhbXMgfSlcclxuICAgICAgLnBpcGUoY2F0Y2hFcnJvcih0aGlzLmhhbmRsZUVycm9yKFwibWFya0FzVW5yZWFkXCIsIFtdKSkpO1xyXG4gIH1cclxuICBkb0RlbGV0ZU5vdGlmaWNhdGlvbihub3RpZmljYXRpb25JZCwgcXVlcnlQYXJhbXMgPSB7fSkge1xyXG4gICAgY29uc3QgZW5kcG9pbnQgPSBgJHt0aGlzLmVudmlyb25tZW50Lm5vdGlmaWNhdGlvbnN9L2FwaS9zeXN0ZW0tbm90aWZpY2F0aW9ucy8ke25vdGlmaWNhdGlvbklkfWA7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwXHJcbiAgICAgIC5kZWxldGU8YW55PihlbmRwb2ludCwgeyBwYXJhbXM6IHF1ZXJ5UGFyYW1zIH0pXHJcbiAgICAgIC5waXBlKGNhdGNoRXJyb3IodGhpcy5oYW5kbGVFcnJvcihcImRlbGV0ZU5vdGlmaWNhdGlvblwiLCBbXSkpKTtcclxuICB9XHJcbiAgcHJpdmF0ZSBoYW5kbGVFcnJvcjxUPihvcGVyYXRpb24gPSBcIm9wZXJhdGlvblwiLCByZXN1bHQ/OiBUKSB7XHJcbiAgICByZXR1cm4gKGVycm9yOiBhbnkpOiBPYnNlcnZhYmxlPFQ+ID0+IHtcclxuICAgICAgLy8gVE9ETzogc2VuZCB0aGUgZXJyb3IgdG8gcmVtb3RlIGxvZ2dpbmcgaW5mcmFzdHJ1Y3R1cmVcclxuICAgICAgY29uc29sZS5lcnJvcihlcnJvcik7IC8vIGxvZyB0byBjb25zb2xlIGluc3RlYWRcclxuXHJcbiAgICAgIC8vIFRPRE86IGJldHRlciBqb2Igb2YgdHJhbnNmb3JtaW5nIGVycm9yIGZvciB1c2VyIGNvbnN1bXB0aW9uXHJcbiAgICAgIGNvbnNvbGUubG9nKGAke29wZXJhdGlvbn0gZmFpbGVkOiAke2Vycm9yLm1lc3NhZ2V9YCk7XHJcblxyXG4gICAgICAvLyBMZXQgdGhlIGFwcCBrZWVwIHJ1bm5pbmcgYnkgcmV0dXJuaW5nIGFuIGVtcHR5IHJlc3VsdC5cclxuICAgICAgcmVzdWx0W1wic3RhdHVzXCJdID0gZXJyb3Iuc3RhdHVzO1xyXG4gICAgICBpZiAoZXJyb3IuZXJyb3IuaGFzT3duUHJvcGVydHkoXCJtZXNzYWdlXCIpKSB7XHJcbiAgICAgICAgcmVzdWx0W1wibWVzc2FnZVwiXSA9IGVycm9yLmVycm9yLm1lc3NhZ2U7XHJcbiAgICAgICAgcmVzdWx0W1widHlwZVwiXSA9IGVycm9yLmVycm9yLnR5cGU7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHJldHVybiBvZihyZXN1bHQgYXMgVCk7XHJcbiAgICB9O1xyXG4gIH1cclxuICBhc3luYyBjb25uZWN0KCkge1xyXG4gICAgaWYgKHRoaXMuY29ubmVjdGVkUHJvbWlzZSA9PT0gbnVsbCkge1xyXG4gICAgICB0aGlzLmNvbm5lY3Rpb24gPSB0aGlzLmNyZWF0ZUNvbm5lY3Rpb24oKTtcclxuICAgIH1cclxuICAgIC8vIGJ1aWxkaW5nIGFic29sdXRlIHBhdGggc28gdGhhdCB3ZWJzb2NrZXQgZG9lc24ndCBmYWlsIHdoZW4gZGVwbG95aW5nIHdpdGggYSBjb250ZXh0IHBhdGhcclxuICAgIGxldCB1cmw7XHJcbiAgICB1cmwgPSBgJHt0aGlzLmVudmlyb25tZW50Lm5vdGlmaWNhdGlvbnN9L3dlYnNvY2tldC9la2hhYWA7IC8vdXJsXHJcbiAgICBjb25zdCBzb2NrZXQgPSBuZXcgU29ja0pTKHVybCk7XHJcbiAgICB0aGlzLnN0b21wQ2xpZW50ID0gU3RvbXAub3Zlcihzb2NrZXQpO1xyXG4gICAgY29uc3QgaGVhZGVycyA9IHtcclxuICAgICAgLy8gVXBncmFkZTogJ3dlYnNvY2tldCcsXHJcbiAgICAgIC8vIENvbm5lY3Rpb246ICdVcGdyYWRlJyxcclxuICAgICAgdG9rZW46IHRoaXMuZW52aXJvbm1lbnQubG9naW5NZXRob2QgPT09ICdudXhlbycgPyB0aGlzLmdldENhY2hhYmxlKCk6IGAke2F3YWl0IHRoaXMua2V5Y2xvYWsuZ2V0VG9rZW4oKX1gLFxyXG4gICAgfTtcclxuICAgIGlmICghdGhpcy5hbHJlYWR5Q29ubmVjdGVkT25jZSkge1xyXG4gICAgICB0aGlzLnN0b21wQ2xpZW50LmNvbm5lY3QoaGVhZGVycywgKCkgPT4ge1xyXG4gICAgICAgIHRoaXMuYWxyZWFkeUNvbm5lY3RlZE9uY2UgPSB0cnVlO1xyXG4gICAgICAgIHRoaXMuY29ubmVjdGVkUHJvbWlzZShcInN1Y2Nlc3NcIik7XHJcbiAgICAgICAgdGhpcy5jb25uZWN0ZWRQcm9taXNlID0gbnVsbDtcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBkaXNjb25uZWN0KCkge1xyXG4gICAgaWYgKHRoaXMuc3RvbXBDbGllbnQgIT09IG51bGwgJiYgdGhpcy5hbHJlYWR5Q29ubmVjdGVkT25jZSkge1xyXG4gICAgICB0aGlzLnN0b21wQ2xpZW50LmRpc2Nvbm5lY3QoKTtcclxuICAgICAgdGhpcy5zdG9tcENsaWVudCA9IG51bGw7XHJcbiAgICAgIGlmICh0aGlzLnN1YnNjcmlwdGlvbikge1xyXG4gICAgICAgIHRoaXMuc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XHJcbiAgICAgICAgdGhpcy5zdWJzY3JpcHRpb24gPSBudWxsO1xyXG4gICAgICB9XHJcbiAgICAgIHRoaXMuYWxyZWFkeUNvbm5lY3RlZE9uY2UgPSBmYWxzZTtcclxuICAgIH0gZWxzZSBpZiAodGhpcy5jb25uZWN0ZWRQcm9taXNlKSB7XHJcbiAgICAgIHRoaXMuY29ubmVjdGlvbi50aGVuKCgpID0+IHtcclxuICAgICAgICB0aGlzLmRpc2Nvbm5lY3QoKTtcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzdWJzY3JpYmUoKSB7XHJcbiAgICBpZiAodGhpcy5jb25uZWN0aW9uKSB7XHJcbiAgICAgIHRoaXMuY29ubmVjdGlvbi50aGVuKCgpID0+IHtcclxuICAgICAgICBpZiAodGhpcy5zdG9tcENsaWVudCkge1xyXG4gICAgICAgICAgdGhpcy5zdWJzY3JpYmVyID0gdGhpcy5zdG9tcENsaWVudC5zdWJzY3JpYmUoXHJcbiAgICAgICAgICAgIFwiL3VzZXIvdG9waWMvbm90aWZpY2F0aW9uXCIsXHJcbiAgICAgICAgICAgIChkYXRhKSA9PiB7XHJcbiAgICAgICAgICAgICAgY29uc3Qgbm90aWZpY2F0aW9uID0gSlNPTi5wYXJzZShkYXRhLmJvZHkpO1xyXG4gICAgICAgICAgICAgIHRoaXMuX25vdGlmaWNhdGlvbnMudW5zaGlmdChub3RpZmljYXRpb24pO1xyXG4gICAgICAgICAgICAgIHRoaXMuZ2V0Q291bnQoKS5zdWJzY3JpYmUoKCkgPT4ge30pO1xyXG4gICAgICAgICAgICAgIHRoaXMubGlzdGVuZXJPYnNlcnZlci5lbWl0KG5vdGlmaWNhdGlvbik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHVuc3Vic2NyaWJlKCkge1xyXG4gICAgaWYgKHRoaXMuc3Vic2NyaWJlciAhPT0gbnVsbCkge1xyXG4gICAgICB0aGlzLnN1YnNjcmliZXIudW5zdWJzY3JpYmUoKTtcclxuICAgIH1cclxuICAgIHRoaXMuZGlzY29ubmVjdCgpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBjcmVhdGVDb25uZWN0aW9uKCk6IFByb21pc2U8YW55PiB7XHJcbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4gKHRoaXMuY29ubmVjdGVkUHJvbWlzZSA9IHJlc29sdmUpKTtcclxuICB9XHJcblxyXG4gIHRlc3ROb3RpZmljYXRpb24oKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIHJldHVybiBmcm9tKFxyXG4gICAgICB0aGlzLm51eGVvU2VydmljZS5udXhlb0NsaWVudFxyXG4gICAgICAgIC5vcGVyYXRpb24oXCJTeXN0ZW0uTm90aWZpY2F0aW9uXCIsIHtcclxuICAgICAgICAgIHVybDogYCR7dGhpcy5lbnZpcm9ubWVudC5udXhlb30ke3RoaXMuZW52aXJvbm1lbnQuY3VzdG9tQXV0b21hdGlvbn1gLFxyXG4gICAgICAgIH0pXHJcbiAgICAgICAgLnBhcmFtcyh7XHJcbiAgICAgICAgICBhcHBsaWNhdGlvbktleTogXCJjdHNuXCIsXHJcbiAgICAgICAgICBub3RpZmljYXRpb25LZXk6IFwiTm90aWZpY2F0aW9uV2hlbk91dGdvaW5nQ29ycmVzcG9uZG5lY2VBcHByb3ZlXCIsXHJcbiAgICAgICAgICBhcGlEYXRhOlxyXG4gICAgICAgICAgICAne1wiaWRcIjogXCJhN2VkNjI5ZS1jOGVhLTRlODQtOGI4My0zMjkwMDk1MTU4NzhcIixcInNjaGVtYVwiOiBcIkNvcnJlc3BvbmRlbmNlXCJ9JyxcclxuICAgICAgICAgIGRhdGE6IFwie31cIixcclxuICAgICAgICAgIGdyb3Vwc0lkOiBbXSxcclxuICAgICAgICAgIHVzZXJzSWQ6IFtcImN0c19zZWNcIl0sXHJcbiAgICAgICAgfSlcclxuICAgICAgICAuaW5wdXQoXCJhN2VkNjI5ZS1jOGVhLTRlODQtOGI4My0zMjkwMDk1MTU4NzhcIilcclxuICAgICAgICAuZXhlY3V0ZSgpXHJcbiAgICApLnBpcGUoXHJcbiAgICAgIGNhdGNoRXJyb3IoKGVycikgPT4ge1xyXG4gICAgICAgIGNvbnNvbGUubG9nKGVycik7XHJcbiAgICAgICAgdGhyb3cgZXJyO1xyXG4gICAgICB9KVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIGdldENhY2hhYmxlKCl7XHJcbiAgICBsZXQgbXlDYWNoYWJsZSA9IHRoaXMuY29va2llU2VydmljZS5nZXQoJ0NNU19DQUNIQUJMRScpO1xyXG4gICAgbXlDYWNoYWJsZSA9ICB0aGlzLmludGlhbGl6YXRpb25TZXJ2aWNlLmRlY3JpcHRGb3JtYXRpbmcobXlDYWNoYWJsZSk7XHJcbiAgcmV0dXJuIG15Q2FjaGFibGVbJ2FjY2Vzc190b2tlbiddO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -102,9 +102,9 @@ export class PaginationComponent {
|
|
|
102
102
|
return pages;
|
|
103
103
|
}
|
|
104
104
|
}
|
|
105
|
-
PaginationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
106
|
-
PaginationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.
|
|
107
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
105
|
+
PaginationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: PaginationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
106
|
+
PaginationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: PaginationComponent, selector: "cts-pagination", inputs: { size: "size", count: "count", page: "page" }, outputs: { change: "change" }, ngImport: i0, template: "<ul class=\"pagination\" SetRtl *ngIf=\"pages.length > 1\">\r\n <li class=\"rotat-icon\" [class.disabled]=\"!canPrevious()\">\r\n <a\r\n role=\"button\"\r\n aria-label=\"go to previous page\"\r\n href=\"javascript:void(0)\"\r\n (click)=\"prevPage()\"\r\n >\r\n <i class=\"bi bi-caret-left\"></i>\r\n </a>\r\n </li>\r\n <li\r\n role=\"button\"\r\n [attr.aria-label]=\"'page ' + pg.number\"\r\n class=\"pages\"\r\n *ngFor=\"let pg of pages\"\r\n [class.active]=\"pg.number === page\"\r\n >\r\n <a href=\"javascript:void(0)\" (click)=\"selectPage(pg.number)\">\r\n {{ pg.text }}\r\n </a>\r\n </li>\r\n <li class=\"rotat-icon\" [class.disabled]=\"!canNext()\">\r\n <a\r\n role=\"button\"\r\n aria-label=\"go to next page\"\r\n href=\"javascript:void(0)\"\r\n (click)=\"nextPage()\"\r\n >\r\n <i class=\"bi bi-caret-right\"></i>\r\n </a>\r\n </li>\r\n</ul>\r\n", styles: [".pagination{padding:0;margin:0;display:inline-block;list-style:none}.pagination li{padding:0;margin:0;display:inline-block;list-style:none}.pagination li a{height:22px;min-width:24px;line-height:22px;padding:0 6px;border-radius:5px;margin:6px 3px;text-align:center;vertical-align:top;color:#0000008a;text-decoration:none;vertical-align:bottom}.pagination li a i{font-size:20px;line-height:20px;padding:0 3px}.pagination li.disabled a{color:#00000042!important;background-color:transparent!important;cursor:not-allowed}.pagination li.active{background-color:#9e9e9e33;font-weight:bold}.pagination.rtl .rotat-icon{transform:rotate(180deg)}\n"], directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.SetRtlDirective, selector: "[SetRtl]" }, { type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], encapsulation: i0.ViewEncapsulation.None });
|
|
107
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: PaginationComponent, decorators: [{
|
|
108
108
|
type: Component,
|
|
109
109
|
args: [{
|
|
110
110
|
selector: 'cts-pagination',
|
|
@@ -121,4 +121,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.4", ngImpor
|
|
|
121
121
|
}], change: [{
|
|
122
122
|
type: Output
|
|
123
123
|
}] } });
|
|
124
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
124
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5hdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9udXhlby1kZXZlbG9wbWVudC1mcmFtZXdvcmsvc3JjL2xpYi9jb21wb25lbnRzL3BhZ2luYXRpb24vcGFnaW5hdGlvbi9wYWdpbmF0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL251eGVvLWRldmVsb3BtZW50LWZyYW1ld29yay9zcmMvbGliL2NvbXBvbmVudHMvcGFnaW5hdGlvbi9wYWdpbmF0aW9uL3BhZ2luYXRpb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7OztBQUVsRzs7Ozs7Ozs7Ozs7Ozs7R0FjRztBQU9ILE1BQU0sT0FBTyxtQkFBbUI7SUFFOUI7UUF5Q0EseUJBQXlCO1FBQ2YsV0FBTSxHQUFzQixJQUFJLFlBQVksRUFBRSxDQUFDO1FBRXpELFdBQU0sR0FBVyxDQUFDLENBQUM7UUFDbkIsVUFBSyxHQUFXLENBQUMsQ0FBQztRQUNsQixVQUFLLEdBQVcsQ0FBQyxDQUFDO0lBOUNGLENBQUM7SUFFakIsUUFBUTtJQUNSLENBQUM7SUFFRCxnQkFBZ0I7SUFDaEIsSUFDSSxJQUFJLENBQUMsR0FBVztRQUNsQixJQUFJLENBQUMsS0FBSyxHQUFHLEdBQUcsQ0FBQztRQUNqQixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUNoQyxDQUFDO0lBRUQsSUFBSSxJQUFJO1FBQ04sT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3BCLENBQUM7SUFFRCwwQkFBMEI7SUFDMUIsSUFDSSxLQUFLLENBQUMsR0FBVztRQUNuQixJQUFJLENBQUMsTUFBTSxHQUFH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LENBQUMsVUFBVSxDQUFDO2FBQzNCO1NBQ0Y7UUFFRCxLQUFLLElBQUksR0FBRyxHQUFHLFNBQVMsRUFBRSxHQUFHLElBQUksT0FBTyxFQUFFLEdBQUcsRUFBRSxFQUFFO1lBQy9DLEtBQUssQ0FBQyxJQUFJLENBQUM7Z0JBQ1QsTUFBTSxFQUFFLEdBQUc7Z0JBQ1gsSUFBSSxFQUFnQixHQUFJO2FBQ3pCLENBQUMsQ0FBQztTQUNKO1FBRUQsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDOztpSEEzR1UsbUJBQW1CO3FHQUFuQixtQkFBbUIsNklDdkJoQyw4N0JBaUNBOzRGRFZhLG1CQUFtQjtrQkFOL0IsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsZ0JBQWdCO29CQUMxQixXQUFXLEVBQUUsNkJBQTZCO29CQUMxQyxTQUFTLEVBQUUsQ0FBQyw2QkFBNkIsQ0FBQztvQkFDMUMsYUFBYSxFQUFHLGlCQUFpQixDQUFDLElBQUk7aUJBQ3ZDOzBFQVVLLElBQUk7c0JBRFAsS0FBSztnQkFZRixLQUFLO3NCQURSLEtBQUs7Z0JBV0YsSUFBSTtzQkFEUCxLQUFLO2dCQWVJLE1BQU07c0JBQWYsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG4vKipcclxuICogeW91IGNhbiB1c2UgdGhpcyBjb21wb25lbnQgZm9yIGFueSBwYWdpbmF0aW9uXHJcbiAqXHJcbiAqICFbU2NyZWVuc2hvdC0xXSguLi9zY3JlZW5zaG90cy9wYWdpbmF0aW9uLnBuZylcclxuICogQHRpdGxlXHJcbiAqIFBhZ2luYXRpb25cclxuICpcclxuICogQGV4YW1wbGVcclxuICogPGN0cy1wYWdpbmF0aW9uXHJcbiAqICAgIFtwYWdlXT1cInBhZ2VOdW1iZXJcIlxyXG4gKiAgICAoY2hhbmdlKT1cIlBhZ2luYXRpb25DaGFuZ2UoJGV2ZW50KVwiXHJcbiAqICAgIFtzaXplXT1cIlBhZ2VTaXplXCJcclxuICogICAgW2NvdW50XT1cInRvdGFsUmVjb3Jkc1wiPlxyXG4gKiA8L2N0cy1wYWdpbmF0aW9uPlxyXG4gKi9cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdjdHMtcGFnaW5hdGlvbicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3BhZ2luYXRpb24uY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3BhZ2luYXRpb24uY29tcG9uZW50LnNjc3MnXSxcclxuICBlbmNhcHN1bGF0aW9uIDogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxyXG59KVxyXG5leHBvcnQgY2xhc3MgUGFnaW5hdGlvbkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcblxyXG4gIGNvbnN0cnVjdG9yKCkgeyB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gIH1cclxuXHJcbiAgLyoqIFBhZ2UgU2l6ZSAqL1xyXG4gIEBJbnB1dCgpXHJcbiAgc2V0IHNpemUodmFsOiBudW1iZXIpIHtcclxuICAgIHRoaXMuX3NpemUgPSB2YWw7XHJcbiAgICB0aGlzLnBhZ2VzID0gdGhpcy5jYWxjUGFnZXMoKTtcclxuICB9XHJcblxyXG4gIGdldCBzaXplKCk6IG51bWJlciB7XHJcbiAgICByZXR1cm4gdGhpcy5fc2l6ZTtcclxuICB9XHJcblxyXG4gIC8qKiBUb3RhbCByZWNvcmRzIGNvdW50ICovXHJcbiAgQElucHV0KClcclxuICBzZXQgY291bnQodmFsOiBudW1iZXIpIHtcclxuICAgIHRoaXMuX2NvdW50ID0gdmFsO1xyXG4gICAgdGhpcy5wYWdlcyA9IHRoaXMuY2FsY1BhZ2VzKCk7XHJcbiAgfVxyXG5cclxuICBnZXQgY291bnQoKTogbnVtYmVyIHtcclxuICAgIHJldHVybiB0aGlzLl9jb3VudDtcclxuICB9XHJcbiAvKiogUGFnZSBOdW1iZXIgKi9cclxuICBASW5wdXQoKVxyXG4gIHNldCBwYWdlKHZhbDogbnVtYmVyKSB7XHJcbiAgICB0aGlzLl9wYWdlID0gdmFsO1xyXG4gICAgdGhpcy5wYWdlcyA9IHRoaXMuY2FsY1BhZ2VzKCk7XHJcbiAgfVxyXG5cclxuICBnZXQgcGFnZSgpOiBudW1iZXIge1xyXG4gICAgcmV0dXJuIHRoaXMuX3BhZ2U7XHJcbiAgfVxyXG4gLyoqIFBhZ2VzIENvdW50ICovXHJcbiAgZ2V0IHRvdGFsUGFnZXMoKTogbnVtYmVyIHtcclxuICAgIGNvbnN0IGNvdW50ID0gdGhpcy5zaXplIDwgMSA/IDEgOiBNYXRoLmNlaWwodGhpcy5jb3VudCAvIHRoaXMuc2l6ZSk7XHJcbiAgICByZXR1cm4gTWF0aC5tYXgoY291bnQgfHwgMCwgMSk7XHJcbiAgfVxyXG4gIC8qKiBQYWdlIGNoYW5nZWQgZXZlbnQgKi9cclxuICBAT3V0cHV0KCkgY2hhbmdlOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcbiAgX2NvdW50OiBudW1iZXIgPSAwO1xyXG4gIF9wYWdlOiBudW1iZXIgPSAxO1xyXG4gIF9zaXplOiBudW1iZXIgPSAwO1xyXG4gIHBhZ2VzOiBhbnk7XHJcblxyXG4gIGNhblByZXZpb3VzKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMucGFnZSA+IDE7XHJcbiAgfVxyXG5cclxuICBjYW5OZXh0KCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMucGFnZSA8IHRoaXMudG90YWxQYWdlcztcclxuICB9XHJcblxyXG4gIHByZXZQYWdlKCk6IHZvaWQge1xyXG4gICAgdGhpcy5zZWxlY3RQYWdlKHRoaXMucGFnZSAtIDEpO1xyXG4gIH1cclxuXHJcbiAgbmV4dFBhZ2UoKTogdm9pZCB7XHJcbiAgICB0aGlzLnNlbGVjdFBhZ2UodGhpcy5wYWdlICsgMSk7XHJcbiAgfVxyXG5cclxuICBzZWxlY3RQYWdlKHBhZ2U6IG51bWJlcik6IHZvaWQge1xyXG4gICAgaWYgKHBhZ2UgPiAwICYmIHBhZ2UgPD0gdGhpcy50b3RhbFBhZ2VzICYmIHBhZ2UgIT09IHRoaXMucGFnZSkge1xyXG4gICAgICB0aGlzLnBhZ2UgPSBwYWdlO1xyXG5cclxuICAgICAgdGhpcy5jaGFuZ2UuZW1pdChcclxuICAgICAgICBwYWdlXHJcbiAgICAgICk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBjYWxjUGFnZXMocGFnZT86IG51bWJlcik6IGFueVtdIHtcclxuICAgIGNvbnN0IHBhZ2VzID0gW107XHJcbiAgICBsZXQgc3RhcnRQYWdlID0gMTtcclxuICAgIGxldCBlbmRQYWdlID0gdGhpcy50b3RhbFBhZ2VzO1xyXG4gICAgY29uc3QgbWF4U2l6ZSA9IDU7XHJcbiAgICBjb25zdCBpc01heFNpemVkID0gbWF4U2l6ZSA8IHRoaXMudG90YWxQYWdlcztcclxuXHJcbiAgICBwYWdlID0gcGFnZSB8fCB0aGlzLnBhZ2U7XHJcblxyXG4gICAgaWYgKGlzTWF4U2l6ZWQpIHtcclxuICAgICAgc3RhcnRQYWdlID0gcGFnZSAtIE1hdGguZmxvb3IobWF4U2l6ZSAvIDIpO1xyXG4gICAgICBlbmRQYWdlID0gcGFnZSArIE1hdGguZmxvb3IobWF4U2l6ZSAvIDIpO1xyXG5cclxuICAgICAgaWYgKHN0YXJ0UGFnZSA8IDEpIHtcclxuICAgICAgICBzdGFydFBhZ2UgPSAxO1xyXG4gICAgICAgIGVuZFBhZ2UgPSBNYXRoLm1pbihzdGFydFBhZ2UgKyBtYXhTaXplIC0gMSwgdGhpcy50b3RhbFBhZ2VzKTtcclxuICAgICAgfSBlbHNlIGlmIChlbmRQYWdlID4gdGhpcy50b3RhbFBhZ2VzKSB7XHJcbiAgICAgICAgc3RhcnRQYWdlID0gTWF0aC5tYXgodGhpcy50b3RhbFBhZ2VzIC0gbWF4U2l6ZSArIDEsIDEpO1xyXG4gICAgICAgIGVuZFBhZ2UgPSB0aGlzLnRvdGFsUGFnZXM7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBmb3IgKGxldCBudW0gPSBzdGFydFBhZ2U7IG51bSA8PSBlbmRQYWdlOyBudW0rKykge1xyXG4gICAgICBwYWdlcy5wdXNoKHtcclxuICAgICAgICBudW1iZXI6IG51bSxcclxuICAgICAgICB0ZXh0OiA8c3RyaW5nPig8YW55Pm51bSlcclxuICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIHBhZ2VzO1xyXG4gIH1cclxufVxyXG4iLCI8dWwgY2xhc3M9XCJwYWdpbmF0aW9uXCIgU2V0UnRsICpuZ0lmPVwicGFnZXMubGVuZ3RoID4gMVwiPlxyXG4gIDxsaSBjbGFzcz1cInJvdGF0LWljb25cIiBbY2xhc3MuZGlzYWJsZWRdPVwiIWNhblByZXZpb3VzKClcIj5cclxuICAgIDxhXHJcbiAgICAgIHJvbGU9XCJidXR0b25cIlxyXG4gICAgICBhcmlhLWxhYmVsPVwiZ28gdG8gcHJldmlvdXMgcGFnZVwiXHJcbiAgICAgIGhyZWY9XCJqYXZhc2NyaXB0OnZvaWQoMClcIlxyXG4gICAgICAoY2xpY2spPVwicHJldlBhZ2UoKVwiXHJcbiAgICA+XHJcbiAgICAgIDxpIGNsYXNzPVwiYmkgYmktY2FyZXQtbGVmdFwiPjwvaT5cclxuICAgIDwvYT5cclxuICA8L2xpPlxyXG4gIDxsaVxyXG4gICAgcm9sZT1cImJ1dHRvblwiXHJcbiAgICBbYXR0ci5hcmlhLWxhYmVsXT1cIidwYWdlICcgKyBwZy5udW1iZXJcIlxyXG4gICAgY2xhc3M9XCJwYWdlc1wiXHJcbiAgICAqbmdGb3I9XCJsZXQgcGcgb2YgcGFnZXNcIlxyXG4gICAgW2NsYXNzLmFjdGl2ZV09XCJwZy5udW1iZXIgPT09IHBhZ2VcIlxyXG4gID5cclxuICAgIDxhIGhyZWY9XCJqYXZhc2NyaXB0OnZvaWQoMClcIiAoY2xpY2spPVwic2VsZWN0UGFnZShwZy5udW1iZXIpXCI+XHJcbiAgICAgIHt7IHBnLnRleHQgfX1cclxuICAgIDwvYT5cclxuICA8L2xpPlxyXG4gIDxsaSBjbGFzcz1cInJvdGF0LWljb25cIiBbY2xhc3MuZGlzYWJsZWRdPVwiIWNhbk5leHQoKVwiPlxyXG4gICAgPGFcclxuICAgICAgcm9sZT1cImJ1dHRvblwiXHJcbiAgICAgIGFyaWEtbGFiZWw9XCJnbyB0byBuZXh0IHBhZ2VcIlxyXG4gICAgICBocmVmPVwiamF2YXNjcmlwdDp2b2lkKDApXCJcclxuICAgICAgKGNsaWNrKT1cIm5leHRQYWdlKClcIlxyXG4gICAgPlxyXG4gICAgICA8aSBjbGFzcz1cImJpIGJpLWNhcmV0LXJpZ2h0XCI+PC9pPlxyXG4gICAgPC9hPlxyXG4gIDwvbGk+XHJcbjwvdWw+XHJcbiJdfQ==
|
|
@@ -9,14 +9,14 @@ import * as i0 from "@angular/core";
|
|
|
9
9
|
*/
|
|
10
10
|
export class PaginationModule {
|
|
11
11
|
}
|
|
12
|
-
PaginationModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
13
|
-
PaginationModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.
|
|
12
|
+
PaginationModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: PaginationModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
13
|
+
PaginationModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: PaginationModule, declarations: [PaginationComponent], imports: [CommonModule,
|
|
14
14
|
DirectiveModule], exports: [PaginationComponent] });
|
|
15
|
-
PaginationModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.
|
|
15
|
+
PaginationModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: PaginationModule, imports: [[
|
|
16
16
|
CommonModule,
|
|
17
17
|
DirectiveModule
|
|
18
18
|
]] });
|
|
19
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
19
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: PaginationModule, decorators: [{
|
|
20
20
|
type: NgModule,
|
|
21
21
|
args: [{
|
|
22
22
|
declarations: [PaginationComponent],
|
|
@@ -29,4 +29,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.4", ngImpor
|
|
|
29
29
|
]
|
|
30
30
|
}]
|
|
31
31
|
}] });
|
|
32
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5hdGlvbi5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9udXhlby1kZXZlbG9wbWVudC1mcmFtZXdvcmsvc3JjL2xpYi9jb21wb25lbnRzL3BhZ2luYXRpb24vcGFnaW5hdGlvbi5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDeEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGtDQUFrQyxDQUFDOztBQUduRTs7O0dBR0c7QUFXSCxNQUFNLE9BQU8sZ0JBQWdCOzs4R0FBaEIsZ0JBQWdCOytHQUFoQixnQkFBZ0IsaUJBVFosbUJBQW1CLGFBRWhDLFlBQVk7UUFDWixlQUFlLGFBR2YsbUJBQW1COytHQUdWLGdCQUFnQixZQVJsQjtZQUNQLFlBQVk7WUFDWixlQUFlO1NBQ2hCOzRGQUtVLGdCQUFnQjtrQkFWNUIsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQztvQkFDbkMsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osZUFBZTtxQkFDaEI7b0JBQ0QsT0FBTyxFQUFDO3dCQUNOLG1CQUFtQjtxQkFDcEI7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBQYWdpbmF0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi9wYWdpbmF0aW9uL3BhZ2luYXRpb24uY29tcG9uZW50JztcclxuaW1wb3J0IHsgRGlyZWN0aXZlTW9kdWxlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2RpcmVjdGl2ZS5tb2R1bGUnO1xyXG5cclxuXHJcbi8qKlxyXG4gKiBAdGl0bGVcclxuICogUGFnaW5hdGlvbiBNb2R1bGVcclxuICovXHJcbkBOZ01vZHVsZSh7XHJcbiAgZGVjbGFyYXRpb25zOiBbUGFnaW5hdGlvbkNvbXBvbmVudF0sXHJcbiAgaW1wb3J0czogW1xyXG4gICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgRGlyZWN0aXZlTW9kdWxlXHJcbiAgXSxcclxuICBleHBvcnRzOltcclxuICAgIFBhZ2luYXRpb25Db21wb25lbnRcclxuICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBQYWdpbmF0aW9uTW9kdWxlIHsgfVxyXG4iXX0=
|
|
@@ -4,12 +4,12 @@ import { PdftronComponent } from './pdftron/pdftron.component';
|
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
5
5
|
export class PdfTronModule {
|
|
6
6
|
}
|
|
7
|
-
PdfTronModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
8
|
-
PdfTronModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.
|
|
9
|
-
PdfTronModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.
|
|
7
|
+
PdfTronModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: PdfTronModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
8
|
+
PdfTronModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: PdfTronModule, declarations: [PdftronComponent], imports: [CommonModule], exports: [PdftronComponent] });
|
|
9
|
+
PdfTronModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: PdfTronModule, imports: [[
|
|
10
10
|
CommonModule
|
|
11
11
|
]] });
|
|
12
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
12
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: PdfTronModule, decorators: [{
|
|
13
13
|
type: NgModule,
|
|
14
14
|
args: [{
|
|
15
15
|
declarations: [PdftronComponent],
|
|
@@ -21,4 +21,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.4", ngImpor
|
|
|
21
21
|
]
|
|
22
22
|
}]
|
|
23
23
|
}] });
|
|
24
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGRmLXRyb24ubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9wZGYtdHJvbi9wZGYtdHJvbi5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7O0FBYS9ELE1BQU0sT0FBTyxhQUFhOzsyR0FBYixhQUFhOzRHQUFiLGFBQWEsaUJBUlQsZ0JBQWdCLGFBRTdCLFlBQVksYUFHWixnQkFBZ0I7NEdBR1AsYUFBYSxZQVBmO1lBQ1AsWUFBWTtTQUNiOzRGQUtVLGFBQWE7a0JBVHpCLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFLENBQUMsZ0JBQWdCLENBQUM7b0JBQ2hDLE9BQU8sRUFBRTt3QkFDUCxZQUFZO3FCQUNiO29CQUNELE9BQU8sRUFBQzt3QkFDTixnQkFBZ0I7cUJBQ2pCO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgUGRmdHJvbkNvbXBvbmVudCB9IGZyb20gJy4vcGRmdHJvbi9wZGZ0cm9uLmNvbXBvbmVudCc7XHJcblxyXG5cclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgZGVjbGFyYXRpb25zOiBbUGRmdHJvbkNvbXBvbmVudF0sXHJcbiAgaW1wb3J0czogW1xyXG4gICAgQ29tbW9uTW9kdWxlXHJcbiAgXSxcclxuICBleHBvcnRzOltcclxuICAgIFBkZnRyb25Db21wb25lbnRcclxuICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBQZGZUcm9uTW9kdWxlIHsgfVxyXG4iXX0=
|