@hmcts/media-viewer 2.8.2 → 2.9.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +0 -1
- package/assets/images/icon-page.svg +52 -0
- package/assets/sass/comment.scss +1 -1
- package/assets/sass/outline-attachment.scss +6 -1
- package/assets/sass/participants-list.scss +1 -1
- package/assets/sass/rectangle.scss +1 -4
- package/assets/sass/toolbar/main-toolbar.scss +8 -8
- package/assets/sass/toolbar/redaction-toolbar.scss +10 -0
- package/bundles/hmcts-media-viewer.umd.js +3392 -10778
- package/bundles/hmcts-media-viewer.umd.js.map +1 -1
- package/bundles/hmcts-media-viewer.umd.min.js +1 -16
- package/bundles/hmcts-media-viewer.umd.min.js.map +1 -1
- package/esm2015/hmcts-media-viewer.js +20 -24
- package/esm2015/lib/annotations/annotation-set/annotation-create/box-highlight-create/box-highlight-create.component.js +24 -103
- package/esm2015/lib/annotations/annotation-set/annotation-create/highlight-create/highlight-create.directive.js +14 -111
- package/esm2015/lib/annotations/annotation-set/annotation-create/highlight-create/highlight-create.service.js +4 -49
- package/esm2015/lib/annotations/annotation-set/annotation-set.component.js +2 -51
- package/esm2015/lib/annotations/annotation-set/annotation-set.model.js +2 -15
- package/esm2015/lib/annotations/annotation-set/annotation-view/annotation-view.component.js +4 -74
- package/esm2015/lib/annotations/annotation-set/annotation-view/annotation.model.js +2 -29
- package/esm2015/lib/annotations/annotation-set/annotation-view/rectangle/rectangle.component.js +5 -114
- package/esm2015/lib/annotations/annotation-set/annotation-view/rectangle/rectangle.model.js +2 -21
- package/esm2015/lib/annotations/annotation-set/ctx-toolbar/ctx-toolbar.component.js +8 -85
- package/esm2015/lib/annotations/annotation-set/metadata-layer/metadata-layer.component.js +9 -105
- package/esm2015/lib/annotations/annotations.module.js +1 -5
- package/esm2015/lib/annotations/comment-set/comment/comment.component.js +4 -152
- package/esm2015/lib/annotations/comment-set/comment/comment.model.js +2 -27
- package/esm2015/lib/annotations/comment-set/comment/comment.service.js +3 -53
- package/esm2015/lib/annotations/comment-set/comment/text-highlight/text-highlight.directive.js +1 -37
- package/esm2015/lib/annotations/comment-set/comment/textarea-auto-expand/textarea-auto-expand.directive.js +1 -25
- package/esm2015/lib/annotations/comment-set/comment-navigate/comments-navigate.component.js +5 -63
- package/esm2015/lib/annotations/comment-set/comment-set-header/comment-filter/comment-filter.component.js +10 -76
- package/esm2015/lib/annotations/comment-set/comment-set-header/comment-search/comment-search.component.js +5 -53
- package/esm2015/lib/annotations/comment-set/comment-set-header/comment-set-header.component.js +6 -63
- package/esm2015/lib/annotations/comment-set/comment-set-render.service.js +5 -73
- package/esm2015/lib/annotations/comment-set/comment-set.component.js +11 -154
- package/esm2015/lib/annotations/comments-summary/comments-summary.component.js +8 -111
- package/esm2015/lib/annotations/models/api-persisted.model.js +2 -25
- package/esm2015/lib/annotations/models/event-select.model.js +2 -17
- package/esm2015/lib/annotations/models/tags.model.js +2 -19
- package/esm2015/lib/annotations/models/user.model.js +2 -17
- package/esm2015/lib/annotations/pipes/date/date.pipe.js +1 -12
- package/esm2015/lib/annotations/pipes/filter/filter.pipe.js +3 -17
- package/esm2015/lib/annotations/pipes/unsnake/unsnake.pipe.js +1 -9
- package/esm2015/lib/annotations/services/annotation-api/annotation-api.service.js +6 -93
- package/esm2015/lib/annotations/services/bookmarks-api/bookmarks-api.service.js +6 -69
- package/esm2015/lib/annotations/services/tags/tags.services.js +6 -54
- package/esm2015/lib/annotations/tags/tags.component.js +4 -50
- package/esm2015/lib/bookmark/components/bookmark-icons.component.js +2 -29
- package/esm2015/lib/icp/confirm-exit/confirm-action-dialog.component.js +2 -22
- package/esm2015/lib/icp/icp-follower.service.js +4 -63
- package/esm2015/lib/icp/icp-presenter.service.js +6 -69
- package/esm2015/lib/icp/icp-session-api.service.js +2 -26
- package/esm2015/lib/icp/icp-update.service.js +18 -92
- package/esm2015/lib/icp/icp.events.js +15 -0
- package/esm2015/lib/icp/icp.interfaces.js +2 -51
- package/esm2015/lib/icp/icp.service.js +18 -155
- package/esm2015/lib/icp/participants-list/participants-list.component.js +3 -43
- package/esm2015/lib/icp/socket.service.js +92 -86
- package/esm2015/lib/media-viewer.component.js +24 -196
- package/esm2015/lib/media-viewer.module.js +3 -7
- package/esm2015/lib/print.service.js +2 -18
- package/esm2015/lib/redaction/components/redaction.component.js +13 -127
- package/esm2015/lib/redaction/services/redaction-api.service.js +6 -75
- package/esm2015/lib/redaction/services/redaction.model.js +2 -19
- package/esm2015/lib/shared/gov-uk-date/gov-uk-date.component.js +2 -14
- package/esm2015/lib/shared/gov-uk-error-message/gov-uk-error-message.component.js +3 -14
- package/esm2015/lib/shared/gov-uk-fieldset/gov-uk-fieldset.component.js +2 -17
- package/esm2015/lib/shared/gov-uk-label/gov-uk-label.component.js +3 -12
- package/esm2015/lib/shared/shared.module.js +1 -5
- package/esm2015/lib/shared/util/helpers/html-templates.helper.js +1 -10
- package/esm2015/lib/shared/util/services/number.helper.service.js +4 -14
- package/esm2015/lib/store/actions/annotation.actions.js +1 -140
- package/esm2015/lib/store/actions/bookmark.actions.js +1 -150
- package/esm2015/lib/store/actions/document.actions.js +1 -130
- package/esm2015/lib/store/actions/icp.actions.js +1 -80
- package/esm2015/lib/store/actions/redaction.actions.js +1 -155
- package/esm2015/lib/store/actions/tag.actions.js +1 -30
- package/esm2015/lib/store/bookmarks-store-utils.js +17 -69
- package/esm2015/lib/store/effects/annotation.effects.js +16 -90
- package/esm2015/lib/store/effects/bookmarks.effects.js +12 -127
- package/esm2015/lib/store/effects/document.effects.js +16 -97
- package/esm2015/lib/store/effects/icp.effects.js +5 -63
- package/esm2015/lib/store/effects/index.js +1 -6
- package/esm2015/lib/store/effects/redaction.effects.js +26 -137
- package/esm2015/lib/store/models/bookmarks.interface.js +2 -57
- package/esm2015/lib/store/models/filters.interface.js +2 -17
- package/esm2015/lib/store/reducers/annotations.reducer.js +14 -129
- package/esm2015/lib/store/reducers/bookmarks.reducer.js +12 -99
- package/esm2015/lib/store/reducers/document.reducer.js +10 -129
- package/esm2015/lib/store/reducers/icp.reducer.js +6 -47
- package/esm2015/lib/store/reducers/redaction.reducer.js +7 -73
- package/esm2015/lib/store/reducers/reducers.js +7 -31
- package/esm2015/lib/store/reducers/tags.reducer.js +12 -102
- package/esm2015/lib/store/selectors/annotation.selectors.js +29 -118
- package/esm2015/lib/store/selectors/bookmark.selectors.js +12 -51
- package/esm2015/lib/store/selectors/document.selectors.js +5 -26
- package/esm2015/lib/store/selectors/icp.selectors.js +9 -38
- package/esm2015/lib/store/selectors/redaction.selectors.js +10 -45
- package/esm2015/lib/store/selectors/tag.selectors.js +6 -28
- package/esm2015/lib/store/store-utils.js +26 -156
- package/esm2015/lib/toolbar/icp-event.service.js +13 -48
- package/esm2015/lib/toolbar/icp-toolbar/icp-toolbar.component.js +4 -56
- package/esm2015/lib/toolbar/main-toolbar/main-toolbar.component.js +10 -177
- package/esm2015/lib/toolbar/redaction-toolbar/redaction-toolbar.component.js +9 -59
- package/esm2015/lib/toolbar/search-bar/search-bar.component.js +11 -85
- package/esm2015/lib/toolbar/toolbar-button-visibility.service.js +2 -46
- package/esm2015/lib/toolbar/toolbar-event.service.js +17 -174
- package/esm2015/lib/toolbar/toolbar.module.js +1 -5
- package/esm2015/lib/viewers/convertible-content-viewer/convertible-content-viewer.component.js +5 -75
- package/esm2015/lib/viewers/convertible-content-viewer/document-conversion-api.service.js +3 -34
- package/esm2015/lib/viewers/grab-n-drag.directive.js +1 -38
- package/esm2015/lib/viewers/image-viewer/image-viewer.component.js +29 -196
- package/esm2015/lib/viewers/multimedia-player/multimedia-player.component.js +3 -55
- package/esm2015/lib/viewers/pdf-viewer/pdf-js/pdf-js-wrapper.js +61 -240
- package/esm2015/lib/viewers/pdf-viewer/pdf-js/pdf-js-wrapper.provider.js +2 -40
- package/esm2015/lib/viewers/pdf-viewer/pdf-viewer.component.js +34 -302
- package/esm2015/lib/viewers/pdf-viewer/side-bar/bookmarks/bookmarks.component.js +12 -107
- package/esm2015/lib/viewers/pdf-viewer/side-bar/bookmarks/bookmarks.interfaces.js +2 -39
- package/esm2015/lib/viewers/pdf-viewer/side-bar/outline-item/outline-item.component.js +16 -25
- package/esm2015/lib/viewers/pdf-viewer/side-bar/outline-item/outline.model.js +2 -31
- package/esm2015/lib/viewers/pdf-viewer/side-bar/side-bar.component.js +16 -73
- package/esm2015/lib/viewers/rotation-persist/rotation-api.service.js +2 -35
- package/esm2015/lib/viewers/rotation-persist/rotation-persist.directive.js +8 -87
- package/esm2015/lib/viewers/rotation-persist/rotation.model.js +2 -15
- package/esm2015/lib/viewers/unsupported-viewer/unsupported-viewer.component.js +4 -60
- package/esm2015/lib/viewers/viewer-event.service.js +2 -41
- package/esm2015/lib/viewers/viewer-exception.model.js +7 -32
- package/esm2015/lib/viewers/viewer-util.service.js +2 -20
- package/esm2015/public_api.js +28 -32
- package/fesm2015/hmcts-media-viewer.js +1566 -8060
- package/fesm2015/hmcts-media-viewer.js.map +1 -1
- package/hmcts-media-viewer-v2.9.2.tgz +0 -0
- package/hmcts-media-viewer.d.ts +19 -18
- package/hmcts-media-viewer.d.ts.map +1 -0
- package/hmcts-media-viewer.metadata.json +1 -1
- package/lib/annotations/annotation-set/annotation-create/box-highlight-create/box-highlight-create.component.d.ts +7 -3
- package/lib/annotations/annotation-set/annotation-create/box-highlight-create/box-highlight-create.component.d.ts.map +1 -0
- package/lib/annotations/annotation-set/annotation-create/box-highlight-create/box-highlight-create.component.ngfactory.d.ts.map +1 -0
- package/lib/annotations/annotation-set/annotation-create/highlight-create/highlight-create.directive.d.ts +1 -0
- package/lib/annotations/annotation-set/annotation-create/highlight-create/highlight-create.directive.d.ts.map +1 -0
- package/lib/annotations/annotation-set/annotation-create/highlight-create/highlight-create.directive.ngfactory.d.ts.map +1 -0
- package/lib/annotations/annotation-set/annotation-create/highlight-create/highlight-create.service.d.ts +1 -0
- package/lib/annotations/annotation-set/annotation-create/highlight-create/highlight-create.service.d.ts.map +1 -0
- package/lib/annotations/annotation-set/annotation-create/highlight-create/highlight-create.service.ngfactory.d.ts.map +1 -0
- package/lib/annotations/annotation-set/annotation-set.component.d.ts +1 -0
- package/lib/annotations/annotation-set/annotation-set.component.d.ts.map +1 -0
- package/lib/annotations/annotation-set/annotation-set.component.ngfactory.d.ts.map +1 -0
- package/lib/annotations/annotation-set/annotation-set.model.d.ts +1 -0
- package/lib/annotations/annotation-set/annotation-set.model.d.ts.map +1 -0
- package/lib/annotations/annotation-set/annotation-view/annotation-view.component.d.ts +4 -3
- package/lib/annotations/annotation-set/annotation-view/annotation-view.component.d.ts.map +1 -0
- package/lib/annotations/annotation-set/annotation-view/annotation-view.component.ngfactory.d.ts.map +1 -0
- package/lib/annotations/annotation-set/annotation-view/annotation.model.d.ts +1 -0
- package/lib/annotations/annotation-set/annotation-view/annotation.model.d.ts.map +1 -0
- package/lib/annotations/annotation-set/annotation-view/rectangle/rectangle.component.d.ts +5 -2
- package/lib/annotations/annotation-set/annotation-view/rectangle/rectangle.component.d.ts.map +1 -0
- package/lib/annotations/annotation-set/annotation-view/rectangle/rectangle.component.ngfactory.d.ts.map +1 -0
- package/lib/annotations/annotation-set/annotation-view/rectangle/rectangle.model.d.ts +1 -0
- package/lib/annotations/annotation-set/annotation-view/rectangle/rectangle.model.d.ts.map +1 -0
- package/lib/annotations/annotation-set/ctx-toolbar/ctx-toolbar.component.d.ts +3 -1
- package/lib/annotations/annotation-set/ctx-toolbar/ctx-toolbar.component.d.ts.map +1 -0
- package/lib/annotations/annotation-set/ctx-toolbar/ctx-toolbar.component.ngfactory.d.ts.map +1 -0
- package/lib/annotations/annotation-set/metadata-layer/metadata-layer.component.d.ts +1 -0
- package/lib/annotations/annotation-set/metadata-layer/metadata-layer.component.d.ts.map +1 -0
- package/lib/annotations/annotation-set/metadata-layer/metadata-layer.component.ngfactory.d.ts.map +1 -0
- package/lib/annotations/annotations.module.d.ts +1 -0
- package/lib/annotations/annotations.module.d.ts.map +1 -0
- package/lib/annotations/annotations.module.ngfactory.d.ts.map +1 -0
- package/lib/annotations/comment-set/comment/comment.component.d.ts +7 -5
- package/lib/annotations/comment-set/comment/comment.component.d.ts.map +1 -0
- package/lib/annotations/comment-set/comment/comment.component.ngfactory.d.ts.map +1 -0
- package/lib/annotations/comment-set/comment/comment.model.d.ts +1 -0
- package/lib/annotations/comment-set/comment/comment.model.d.ts.map +1 -0
- package/lib/annotations/comment-set/comment/comment.service.d.ts +1 -0
- package/lib/annotations/comment-set/comment/comment.service.d.ts.map +1 -0
- package/lib/annotations/comment-set/comment/comment.service.ngfactory.d.ts.map +1 -0
- package/lib/annotations/comment-set/comment/text-highlight/text-highlight.directive.d.ts +1 -0
- package/lib/annotations/comment-set/comment/text-highlight/text-highlight.directive.d.ts.map +1 -0
- package/lib/annotations/comment-set/comment/text-highlight/text-highlight.directive.ngfactory.d.ts.map +1 -0
- package/lib/annotations/comment-set/comment/textarea-auto-expand/textarea-auto-expand.directive.d.ts +1 -0
- package/lib/annotations/comment-set/comment/textarea-auto-expand/textarea-auto-expand.directive.d.ts.map +1 -0
- package/lib/annotations/comment-set/comment/textarea-auto-expand/textarea-auto-expand.directive.ngfactory.d.ts.map +1 -0
- package/lib/annotations/comment-set/comment-navigate/comments-navigate.component.d.ts +1 -0
- package/lib/annotations/comment-set/comment-navigate/comments-navigate.component.d.ts.map +1 -0
- package/lib/annotations/comment-set/comment-navigate/comments-navigate.component.ngfactory.d.ts.map +1 -0
- package/lib/annotations/comment-set/comment-set-header/comment-filter/comment-filter.component.d.ts +1 -0
- package/lib/annotations/comment-set/comment-set-header/comment-filter/comment-filter.component.d.ts.map +1 -0
- package/lib/annotations/comment-set/comment-set-header/comment-filter/comment-filter.component.ngfactory.d.ts.map +1 -0
- package/lib/annotations/comment-set/comment-set-header/comment-search/comment-search.component.d.ts +1 -0
- package/lib/annotations/comment-set/comment-set-header/comment-search/comment-search.component.d.ts.map +1 -0
- package/lib/annotations/comment-set/comment-set-header/comment-search/comment-search.component.ngfactory.d.ts.map +1 -0
- package/lib/annotations/comment-set/comment-set-header/comment-set-header.component.d.ts +1 -0
- package/lib/annotations/comment-set/comment-set-header/comment-set-header.component.d.ts.map +1 -0
- package/lib/annotations/comment-set/comment-set-header/comment-set-header.component.ngfactory.d.ts.map +1 -0
- package/lib/annotations/comment-set/comment-set-render.service.d.ts +1 -0
- package/lib/annotations/comment-set/comment-set-render.service.d.ts.map +1 -0
- package/lib/annotations/comment-set/comment-set-render.service.ngfactory.d.ts.map +1 -0
- package/lib/annotations/comment-set/comment-set.component.d.ts +1 -0
- package/lib/annotations/comment-set/comment-set.component.d.ts.map +1 -0
- package/lib/annotations/comment-set/comment-set.component.ngfactory.d.ts.map +1 -0
- package/lib/annotations/comments-summary/comments-summary.component.d.ts +1 -1
- package/lib/annotations/comments-summary/comments-summary.component.d.ts.map +1 -0
- package/lib/annotations/comments-summary/comments-summary.component.ngfactory.d.ts.map +1 -0
- package/lib/annotations/models/api-persisted.model.d.ts +1 -0
- package/lib/annotations/models/api-persisted.model.d.ts.map +1 -0
- package/lib/annotations/models/event-select.model.d.ts +1 -0
- package/lib/annotations/models/event-select.model.d.ts.map +1 -0
- package/lib/annotations/models/tags.model.d.ts +1 -0
- package/lib/annotations/models/tags.model.d.ts.map +1 -0
- package/lib/annotations/models/user.model.d.ts +1 -0
- package/lib/annotations/models/user.model.d.ts.map +1 -0
- package/lib/annotations/pipes/date/date.pipe.d.ts +2 -1
- package/lib/annotations/pipes/date/date.pipe.d.ts.map +1 -0
- package/lib/annotations/pipes/date/date.pipe.ngfactory.d.ts.map +1 -0
- package/lib/annotations/pipes/filter/filter.pipe.d.ts +1 -0
- package/lib/annotations/pipes/filter/filter.pipe.d.ts.map +1 -0
- package/lib/annotations/pipes/filter/filter.pipe.ngfactory.d.ts.map +1 -0
- package/lib/annotations/pipes/unsnake/unsnake.pipe.d.ts +1 -0
- package/lib/annotations/pipes/unsnake/unsnake.pipe.d.ts.map +1 -0
- package/lib/annotations/pipes/unsnake/unsnake.pipe.ngfactory.d.ts.map +1 -0
- package/lib/annotations/services/annotation-api/annotation-api.service.d.ts +3 -2
- package/lib/annotations/services/annotation-api/annotation-api.service.d.ts.map +1 -0
- package/lib/annotations/services/annotation-api/annotation-api.service.ngfactory.d.ts.map +1 -0
- package/lib/annotations/services/bookmarks-api/bookmarks-api.service.d.ts +1 -0
- package/lib/annotations/services/bookmarks-api/bookmarks-api.service.d.ts.map +1 -0
- package/lib/annotations/services/bookmarks-api/bookmarks-api.service.ngfactory.d.ts.map +1 -0
- package/lib/annotations/services/tags/tags.services.d.ts +1 -0
- package/lib/annotations/services/tags/tags.services.d.ts.map +1 -0
- package/lib/annotations/services/tags/tags.services.ngfactory.d.ts.map +1 -0
- package/lib/annotations/tags/tags.component.d.ts +3 -2
- package/lib/annotations/tags/tags.component.d.ts.map +1 -0
- package/lib/annotations/tags/tags.component.ngfactory.d.ts.map +1 -0
- package/lib/bookmark/components/bookmark-icons.component.d.ts +1 -0
- package/lib/bookmark/components/bookmark-icons.component.d.ts.map +1 -0
- package/lib/bookmark/components/bookmark-icons.component.ngfactory.d.ts.map +1 -0
- package/lib/icp/confirm-exit/confirm-action-dialog.component.d.ts +1 -0
- package/lib/icp/confirm-exit/confirm-action-dialog.component.d.ts.map +1 -0
- package/lib/icp/confirm-exit/confirm-action-dialog.component.ngfactory.d.ts.map +1 -0
- package/lib/icp/icp-follower.service.d.ts +1 -0
- package/lib/icp/icp-follower.service.d.ts.map +1 -0
- package/lib/icp/icp-follower.service.ngfactory.d.ts.map +1 -0
- package/lib/icp/icp-presenter.service.d.ts +1 -0
- package/lib/icp/icp-presenter.service.d.ts.map +1 -0
- package/lib/icp/icp-presenter.service.ngfactory.d.ts.map +1 -0
- package/lib/icp/icp-session-api.service.d.ts +1 -0
- package/lib/icp/icp-session-api.service.d.ts.map +1 -0
- package/lib/icp/icp-session-api.service.ngfactory.d.ts.map +1 -0
- package/lib/icp/icp-update.service.d.ts +1 -9
- package/lib/icp/icp-update.service.d.ts.map +1 -0
- package/lib/icp/icp-update.service.ngfactory.d.ts.map +1 -0
- package/lib/icp/icp.events.d.ts +14 -0
- package/lib/icp/icp.events.d.ts.map +1 -0
- package/lib/icp/icp.interfaces.d.ts +2 -0
- package/lib/icp/icp.interfaces.d.ts.map +1 -0
- package/lib/icp/icp.service.d.ts +1 -0
- package/lib/icp/icp.service.d.ts.map +1 -0
- package/lib/icp/icp.service.ngfactory.d.ts.map +1 -0
- package/lib/icp/participants-list/participants-list.component.d.ts +1 -0
- package/lib/icp/participants-list/participants-list.component.d.ts.map +1 -0
- package/lib/icp/participants-list/participants-list.component.ngfactory.d.ts.map +1 -0
- package/lib/icp/socket.service.d.ts +14 -4
- package/lib/icp/socket.service.d.ts.map +1 -0
- package/lib/icp/socket.service.ngfactory.d.ts.map +1 -0
- package/lib/media-viewer.component.d.ts +1 -0
- package/lib/media-viewer.component.d.ts.map +1 -0
- package/lib/media-viewer.component.ngfactory.d.ts.map +1 -0
- package/lib/media-viewer.module.d.ts +1 -0
- package/lib/media-viewer.module.d.ts.map +1 -0
- package/lib/media-viewer.module.ngfactory.d.ts.map +1 -0
- package/lib/print.service.d.ts +1 -0
- package/lib/print.service.d.ts.map +1 -0
- package/lib/print.service.ngfactory.d.ts.map +1 -0
- package/lib/redaction/components/redaction.component.d.ts +1 -0
- package/lib/redaction/components/redaction.component.d.ts.map +1 -0
- package/lib/redaction/components/redaction.component.ngfactory.d.ts.map +1 -0
- package/lib/redaction/services/redaction-api.service.d.ts +1 -0
- package/lib/redaction/services/redaction-api.service.d.ts.map +1 -0
- package/lib/redaction/services/redaction-api.service.ngfactory.d.ts.map +1 -0
- package/lib/redaction/services/redaction.model.d.ts +1 -0
- package/lib/redaction/services/redaction.model.d.ts.map +1 -0
- package/lib/shared/gov-uk-date/gov-uk-date.component.d.ts +1 -0
- package/lib/shared/gov-uk-date/gov-uk-date.component.d.ts.map +1 -0
- package/lib/shared/gov-uk-date/gov-uk-date.component.ngfactory.d.ts.map +1 -0
- package/lib/shared/gov-uk-error-message/gov-uk-error-message.component.d.ts +1 -0
- package/lib/shared/gov-uk-error-message/gov-uk-error-message.component.d.ts.map +1 -0
- package/lib/shared/gov-uk-error-message/gov-uk-error-message.component.ngfactory.d.ts.map +1 -0
- package/lib/shared/gov-uk-fieldset/gov-uk-fieldset.component.d.ts +1 -0
- package/lib/shared/gov-uk-fieldset/gov-uk-fieldset.component.d.ts.map +1 -0
- package/lib/shared/gov-uk-fieldset/gov-uk-fieldset.component.ngfactory.d.ts.map +1 -0
- package/lib/shared/gov-uk-label/gov-uk-label.component.d.ts +1 -0
- package/lib/shared/gov-uk-label/gov-uk-label.component.d.ts.map +1 -0
- package/lib/shared/gov-uk-label/gov-uk-label.component.ngfactory.d.ts.map +1 -0
- package/lib/shared/shared.module.d.ts +1 -0
- package/lib/shared/shared.module.d.ts.map +1 -0
- package/lib/shared/shared.module.ngfactory.d.ts.map +1 -0
- package/lib/shared/util/helpers/html-templates.helper.d.ts +1 -0
- package/lib/shared/util/helpers/html-templates.helper.d.ts.map +1 -0
- package/lib/shared/util/services/number.helper.service.d.ts +1 -0
- package/lib/shared/util/services/number.helper.service.d.ts.map +1 -0
- package/lib/shared/util/services/number.helper.service.ngfactory.d.ts.map +1 -0
- package/lib/store/actions/annotation.actions.d.ts +1 -0
- package/lib/store/actions/annotation.actions.d.ts.map +1 -0
- package/lib/store/actions/bookmark.actions.d.ts +1 -0
- package/lib/store/actions/bookmark.actions.d.ts.map +1 -0
- package/lib/store/actions/document.actions.d.ts +1 -0
- package/lib/store/actions/document.actions.d.ts.map +1 -0
- package/lib/store/actions/icp.actions.d.ts +1 -0
- package/lib/store/actions/icp.actions.d.ts.map +1 -0
- package/lib/store/actions/redaction.actions.d.ts +1 -0
- package/lib/store/actions/redaction.actions.d.ts.map +1 -0
- package/lib/store/actions/tag.actions.d.ts +1 -0
- package/lib/store/actions/tag.actions.d.ts.map +1 -0
- package/lib/store/bookmarks-store-utils.d.ts +1 -0
- package/lib/store/bookmarks-store-utils.d.ts.map +1 -0
- package/lib/store/effects/annotation.effects.d.ts +1 -0
- package/lib/store/effects/annotation.effects.d.ts.map +1 -0
- package/lib/store/effects/annotation.effects.ngfactory.d.ts.map +1 -0
- package/lib/store/effects/bookmarks.effects.d.ts +1 -0
- package/lib/store/effects/bookmarks.effects.d.ts.map +1 -0
- package/lib/store/effects/bookmarks.effects.ngfactory.d.ts.map +1 -0
- package/lib/store/effects/document.effects.d.ts +1 -0
- package/lib/store/effects/document.effects.d.ts.map +1 -0
- package/lib/store/effects/document.effects.ngfactory.d.ts.map +1 -0
- package/lib/store/effects/icp.effects.d.ts +1 -0
- package/lib/store/effects/icp.effects.d.ts.map +1 -0
- package/lib/store/effects/icp.effects.ngfactory.d.ts.map +1 -0
- package/lib/store/effects/index.d.ts +1 -0
- package/lib/store/effects/index.d.ts.map +1 -0
- package/lib/store/effects/redaction.effects.d.ts +1 -0
- package/lib/store/effects/redaction.effects.d.ts.map +1 -0
- package/lib/store/effects/redaction.effects.ngfactory.d.ts.map +1 -0
- package/lib/store/models/bookmarks.interface.d.ts +1 -0
- package/lib/store/models/bookmarks.interface.d.ts.map +1 -0
- package/lib/store/models/filters.interface.d.ts +1 -0
- package/lib/store/models/filters.interface.d.ts.map +1 -0
- package/lib/store/reducers/annotations.reducer.d.ts +1 -0
- package/lib/store/reducers/annotations.reducer.d.ts.map +1 -0
- package/lib/store/reducers/bookmarks.reducer.d.ts +1 -0
- package/lib/store/reducers/bookmarks.reducer.d.ts.map +1 -0
- package/lib/store/reducers/document.reducer.d.ts +1 -0
- package/lib/store/reducers/document.reducer.d.ts.map +1 -0
- package/lib/store/reducers/icp.reducer.d.ts +1 -0
- package/lib/store/reducers/icp.reducer.d.ts.map +1 -0
- package/lib/store/reducers/redaction.reducer.d.ts +1 -0
- package/lib/store/reducers/redaction.reducer.d.ts.map +1 -0
- package/lib/store/reducers/reducers.d.ts +2 -1
- package/lib/store/reducers/reducers.d.ts.map +1 -0
- package/lib/store/reducers/tags.reducer.d.ts +1 -0
- package/lib/store/reducers/tags.reducer.d.ts.map +1 -0
- package/lib/store/selectors/annotation.selectors.d.ts +54 -15
- package/lib/store/selectors/annotation.selectors.d.ts.map +1 -0
- package/lib/store/selectors/bookmark.selectors.d.ts +18 -7
- package/lib/store/selectors/bookmark.selectors.d.ts.map +1 -0
- package/lib/store/selectors/document.selectors.d.ts +15 -9
- package/lib/store/selectors/document.selectors.d.ts.map +1 -0
- package/lib/store/selectors/icp.selectors.d.ts +9 -8
- package/lib/store/selectors/icp.selectors.d.ts.map +1 -0
- package/lib/store/selectors/redaction.selectors.d.ts +18 -7
- package/lib/store/selectors/redaction.selectors.d.ts.map +1 -0
- package/lib/store/selectors/tag.selectors.d.ts +16 -6
- package/lib/store/selectors/tag.selectors.d.ts.map +1 -0
- package/lib/store/store-utils.d.ts +1 -0
- package/lib/store/store-utils.d.ts.map +1 -0
- package/lib/toolbar/icp-event.service.d.ts +1 -0
- package/lib/toolbar/icp-event.service.d.ts.map +1 -0
- package/lib/toolbar/icp-toolbar/icp-toolbar.component.d.ts +1 -0
- package/lib/toolbar/icp-toolbar/icp-toolbar.component.d.ts.map +1 -0
- package/lib/toolbar/icp-toolbar/icp-toolbar.component.ngfactory.d.ts.map +1 -0
- package/lib/toolbar/main-toolbar/main-toolbar.component.d.ts +1 -0
- package/lib/toolbar/main-toolbar/main-toolbar.component.d.ts.map +1 -0
- package/lib/toolbar/main-toolbar/main-toolbar.component.ngfactory.d.ts.map +1 -0
- package/lib/toolbar/redaction-toolbar/redaction-toolbar.component.d.ts +2 -0
- package/lib/toolbar/redaction-toolbar/redaction-toolbar.component.d.ts.map +1 -0
- package/lib/toolbar/redaction-toolbar/redaction-toolbar.component.ngfactory.d.ts.map +1 -0
- package/lib/toolbar/search-bar/search-bar.component.d.ts +2 -0
- package/lib/toolbar/search-bar/search-bar.component.d.ts.map +1 -0
- package/lib/toolbar/search-bar/search-bar.component.ngfactory.d.ts.map +1 -0
- package/lib/toolbar/toolbar-button-visibility.service.d.ts +1 -0
- package/lib/toolbar/toolbar-button-visibility.service.d.ts.map +1 -0
- package/lib/toolbar/toolbar-button-visibility.service.ngfactory.d.ts.map +1 -0
- package/lib/toolbar/toolbar-event.service.d.ts +3 -0
- package/lib/toolbar/toolbar-event.service.d.ts.map +1 -0
- package/lib/toolbar/toolbar-event.service.ngfactory.d.ts.map +1 -0
- package/lib/toolbar/toolbar.module.d.ts +1 -0
- package/lib/toolbar/toolbar.module.d.ts.map +1 -0
- package/lib/toolbar/toolbar.module.ngfactory.d.ts.map +1 -0
- package/lib/viewers/convertible-content-viewer/convertible-content-viewer.component.d.ts +1 -0
- package/lib/viewers/convertible-content-viewer/convertible-content-viewer.component.d.ts.map +1 -0
- package/lib/viewers/convertible-content-viewer/convertible-content-viewer.component.ngfactory.d.ts.map +1 -0
- package/lib/viewers/convertible-content-viewer/document-conversion-api.service.d.ts +1 -0
- package/lib/viewers/convertible-content-viewer/document-conversion-api.service.d.ts.map +1 -0
- package/lib/viewers/convertible-content-viewer/document-conversion-api.service.ngfactory.d.ts.map +1 -0
- package/lib/viewers/grab-n-drag.directive.d.ts +1 -0
- package/lib/viewers/grab-n-drag.directive.d.ts.map +1 -0
- package/lib/viewers/grab-n-drag.directive.ngfactory.d.ts.map +1 -0
- package/lib/viewers/image-viewer/image-viewer.component.d.ts +5 -1
- package/lib/viewers/image-viewer/image-viewer.component.d.ts.map +1 -0
- package/lib/viewers/image-viewer/image-viewer.component.ngfactory.d.ts.map +1 -0
- package/lib/viewers/multimedia-player/multimedia-player.component.d.ts +1 -0
- package/lib/viewers/multimedia-player/multimedia-player.component.d.ts.map +1 -0
- package/lib/viewers/multimedia-player/multimedia-player.component.ngfactory.d.ts.map +1 -0
- package/lib/viewers/pdf-viewer/pdf-js/pdf-js-wrapper.d.ts +5 -0
- package/lib/viewers/pdf-viewer/pdf-js/pdf-js-wrapper.d.ts.map +1 -0
- package/lib/viewers/pdf-viewer/pdf-js/pdf-js-wrapper.provider.d.ts +1 -0
- package/lib/viewers/pdf-viewer/pdf-js/pdf-js-wrapper.provider.d.ts.map +1 -0
- package/lib/viewers/pdf-viewer/pdf-js/pdf-js-wrapper.provider.ngfactory.d.ts.map +1 -0
- package/lib/viewers/pdf-viewer/pdf-viewer.component.d.ts +6 -2
- package/lib/viewers/pdf-viewer/pdf-viewer.component.d.ts.map +1 -0
- package/lib/viewers/pdf-viewer/pdf-viewer.component.ngfactory.d.ts.map +1 -0
- package/lib/viewers/pdf-viewer/side-bar/bookmarks/bookmarks.component.d.ts +2 -1
- package/lib/viewers/pdf-viewer/side-bar/bookmarks/bookmarks.component.d.ts.map +1 -0
- package/lib/viewers/pdf-viewer/side-bar/bookmarks/bookmarks.component.ngfactory.d.ts.map +1 -0
- package/lib/viewers/pdf-viewer/side-bar/bookmarks/bookmarks.interfaces.d.ts +1 -0
- package/lib/viewers/pdf-viewer/side-bar/bookmarks/bookmarks.interfaces.d.ts.map +1 -0
- package/lib/viewers/pdf-viewer/side-bar/outline-item/outline-item.component.d.ts +7 -0
- package/lib/viewers/pdf-viewer/side-bar/outline-item/outline-item.component.d.ts.map +1 -0
- package/lib/viewers/pdf-viewer/side-bar/outline-item/outline-item.component.ngfactory.d.ts.map +1 -0
- package/lib/viewers/pdf-viewer/side-bar/outline-item/outline.model.d.ts +3 -1
- package/lib/viewers/pdf-viewer/side-bar/outline-item/outline.model.d.ts.map +1 -0
- package/lib/viewers/pdf-viewer/side-bar/side-bar.component.d.ts +4 -0
- package/lib/viewers/pdf-viewer/side-bar/side-bar.component.d.ts.map +1 -0
- package/lib/viewers/pdf-viewer/side-bar/side-bar.component.ngfactory.d.ts.map +1 -0
- package/lib/viewers/rotation-persist/rotation-api.service.d.ts +1 -0
- package/lib/viewers/rotation-persist/rotation-api.service.d.ts.map +1 -0
- package/lib/viewers/rotation-persist/rotation-api.service.ngfactory.d.ts.map +1 -0
- package/lib/viewers/rotation-persist/rotation-persist.directive.d.ts +1 -0
- package/lib/viewers/rotation-persist/rotation-persist.directive.d.ts.map +1 -0
- package/lib/viewers/rotation-persist/rotation-persist.directive.ngfactory.d.ts.map +1 -0
- package/lib/viewers/rotation-persist/rotation.model.d.ts +1 -0
- package/lib/viewers/rotation-persist/rotation.model.d.ts.map +1 -0
- package/lib/viewers/unsupported-viewer/unsupported-viewer.component.d.ts +1 -0
- package/lib/viewers/unsupported-viewer/unsupported-viewer.component.d.ts.map +1 -0
- package/lib/viewers/unsupported-viewer/unsupported-viewer.component.ngfactory.d.ts.map +1 -0
- package/lib/viewers/viewer-event.service.d.ts +1 -0
- package/lib/viewers/viewer-event.service.d.ts.map +1 -0
- package/lib/viewers/viewer-event.service.ngfactory.d.ts.map +1 -0
- package/lib/viewers/viewer-exception.model.d.ts +1 -0
- package/lib/viewers/viewer-exception.model.d.ts.map +1 -0
- package/lib/viewers/viewer-util.service.d.ts +1 -0
- package/lib/viewers/viewer-util.service.d.ts.map +1 -0
- package/lib/viewers/viewer-util.service.ngfactory.d.ts.map +1 -0
- package/package.json +16 -17
- package/public_api.d.ts +1 -0
- package/public_api.d.ts.map +1 -0
- package/esm5/hmcts-media-viewer.js +0 -67
- package/esm5/lib/annotations/annotation-set/annotation-create/box-highlight-create/box-highlight-create.component.js +0 -215
- package/esm5/lib/annotations/annotation-set/annotation-create/highlight-create/highlight-create.directive.js +0 -236
- package/esm5/lib/annotations/annotation-set/annotation-create/highlight-create/highlight-create.service.js +0 -125
- package/esm5/lib/annotations/annotation-set/annotation-set.component.js +0 -109
- package/esm5/lib/annotations/annotation-set/annotation-set.model.js +0 -15
- package/esm5/lib/annotations/annotation-set/annotation-view/annotation-view.component.js +0 -177
- package/esm5/lib/annotations/annotation-set/annotation-view/annotation.model.js +0 -29
- package/esm5/lib/annotations/annotation-set/annotation-view/rectangle/rectangle.component.js +0 -250
- package/esm5/lib/annotations/annotation-set/annotation-view/rectangle/rectangle.model.js +0 -21
- package/esm5/lib/annotations/annotation-set/ctx-toolbar/ctx-toolbar.component.js +0 -216
- package/esm5/lib/annotations/annotation-set/metadata-layer/metadata-layer.component.js +0 -200
- package/esm5/lib/annotations/annotations.module.js +0 -109
- package/esm5/lib/annotations/comment-set/comment/comment.component.js +0 -353
- package/esm5/lib/annotations/comment-set/comment/comment.model.js +0 -27
- package/esm5/lib/annotations/comment-set/comment/comment.service.js +0 -125
- package/esm5/lib/annotations/comment-set/comment/text-highlight/text-highlight.directive.js +0 -98
- package/esm5/lib/annotations/comment-set/comment/textarea-auto-expand/textarea-auto-expand.directive.js +0 -63
- package/esm5/lib/annotations/comment-set/comment-navigate/comments-navigate.component.js +0 -174
- package/esm5/lib/annotations/comment-set/comment-set-header/comment-filter/comment-filter.component.js +0 -145
- package/esm5/lib/annotations/comment-set/comment-set-header/comment-search/comment-search.component.js +0 -117
- package/esm5/lib/annotations/comment-set/comment-set-header/comment-set-header.component.js +0 -131
- package/esm5/lib/annotations/comment-set/comment-set-render.service.js +0 -177
- package/esm5/lib/annotations/comment-set/comment-set.component.js +0 -295
- package/esm5/lib/annotations/comments-summary/comments-summary.component.js +0 -239
- package/esm5/lib/annotations/models/api-persisted.model.js +0 -25
- package/esm5/lib/annotations/models/event-select.model.js +0 -17
- package/esm5/lib/annotations/models/tags.model.js +0 -19
- package/esm5/lib/annotations/models/user.model.js +0 -17
- package/esm5/lib/annotations/pipes/date/date.pipe.js +0 -48
- package/esm5/lib/annotations/pipes/filter/filter.pipe.js +0 -52
- package/esm5/lib/annotations/pipes/unsnake/unsnake.pipe.js +0 -28
- package/esm5/lib/annotations/services/annotation-api/annotation-api.service.js +0 -188
- package/esm5/lib/annotations/services/bookmarks-api/bookmarks-api.service.js +0 -132
- package/esm5/lib/annotations/services/tags/tags.services.js +0 -102
- package/esm5/lib/annotations/tags/tags.component.js +0 -112
- package/esm5/lib/bookmark/components/bookmark-icons.component.js +0 -55
- package/esm5/lib/icp/confirm-exit/confirm-action-dialog.component.js +0 -50
- package/esm5/lib/icp/icp-follower.service.js +0 -135
- package/esm5/lib/icp/icp-presenter.service.js +0 -135
- package/esm5/lib/icp/icp-session-api.service.js +0 -49
- package/esm5/lib/icp/icp-update.service.js +0 -165
- package/esm5/lib/icp/icp.interfaces.js +0 -51
- package/esm5/lib/icp/icp.service.js +0 -261
- package/esm5/lib/icp/participants-list/participants-list.component.js +0 -77
- package/esm5/lib/icp/socket.service.js +0 -142
- package/esm5/lib/media-viewer.component.js +0 -424
- package/esm5/lib/media-viewer.module.js +0 -110
- package/esm5/lib/print.service.js +0 -53
- package/esm5/lib/redaction/components/redaction.component.js +0 -247
- package/esm5/lib/redaction/services/redaction-api.service.js +0 -133
- package/esm5/lib/redaction/services/redaction.model.js +0 -19
- package/esm5/lib/shared/gov-uk-date/gov-uk-date.component.js +0 -37
- package/esm5/lib/shared/gov-uk-error-message/gov-uk-error-message.component.js +0 -36
- package/esm5/lib/shared/gov-uk-fieldset/gov-uk-fieldset.component.js +0 -49
- package/esm5/lib/shared/gov-uk-label/gov-uk-label.component.js +0 -33
- package/esm5/lib/shared/shared.module.js +0 -42
- package/esm5/lib/shared/util/helpers/html-templates.helper.js +0 -36
- package/esm5/lib/shared/util/services/number.helper.service.js +0 -39
- package/esm5/lib/store/actions/annotation.actions.js +0 -226
- package/esm5/lib/store/actions/bookmark.actions.js +0 -242
- package/esm5/lib/store/actions/document.actions.js +0 -210
- package/esm5/lib/store/actions/icp.actions.js +0 -130
- package/esm5/lib/store/actions/redaction.actions.js +0 -255
- package/esm5/lib/store/actions/tag.actions.js +0 -50
- package/esm5/lib/store/bookmarks-store-utils.js +0 -110
- package/esm5/lib/store/effects/annotation.effects.js +0 -128
- package/esm5/lib/store/effects/bookmarks.effects.js +0 -193
- package/esm5/lib/store/effects/document.effects.js +0 -138
- package/esm5/lib/store/effects/icp.effects.js +0 -97
- package/esm5/lib/store/effects/index.js +0 -12
- package/esm5/lib/store/effects/redaction.effects.js +0 -190
- package/esm5/lib/store/models/bookmarks.interface.js +0 -57
- package/esm5/lib/store/models/filters.interface.js +0 -17
- package/esm5/lib/store/reducers/annotations.reducer.js +0 -231
- package/esm5/lib/store/reducers/bookmarks.reducer.js +0 -170
- package/esm5/lib/store/reducers/document.reducer.js +0 -222
- package/esm5/lib/store/reducers/icp.reducer.js +0 -83
- package/esm5/lib/store/reducers/redaction.reducer.js +0 -134
- package/esm5/lib/store/reducers/reducers.js +0 -47
- package/esm5/lib/store/reducers/tags.reducer.js +0 -159
- package/esm5/lib/store/selectors/annotation.selectors.js +0 -175
- package/esm5/lib/store/selectors/bookmark.selectors.js +0 -78
- package/esm5/lib/store/selectors/document.selectors.js +0 -37
- package/esm5/lib/store/selectors/icp.selectors.js +0 -47
- package/esm5/lib/store/selectors/redaction.selectors.js +0 -65
- package/esm5/lib/store/selectors/tag.selectors.js +0 -40
- package/esm5/lib/store/store-utils.js +0 -296
- package/esm5/lib/toolbar/icp-event.service.js +0 -65
- package/esm5/lib/toolbar/icp-toolbar/icp-toolbar.component.js +0 -112
- package/esm5/lib/toolbar/main-toolbar/main-toolbar.component.js +0 -408
- package/esm5/lib/toolbar/redaction-toolbar/redaction-toolbar.component.js +0 -130
- package/esm5/lib/toolbar/search-bar/search-bar.component.js +0 -226
- package/esm5/lib/toolbar/toolbar-button-visibility.service.js +0 -146
- package/esm5/lib/toolbar/toolbar-event.service.js +0 -416
- package/esm5/lib/toolbar/toolbar.module.js +0 -50
- package/esm5/lib/viewers/convertible-content-viewer/convertible-content-viewer.component.js +0 -168
- package/esm5/lib/viewers/convertible-content-viewer/document-conversion-api.service.js +0 -57
- package/esm5/lib/viewers/grab-n-drag.directive.js +0 -98
- package/esm5/lib/viewers/image-viewer/image-viewer.component.js +0 -402
- package/esm5/lib/viewers/multimedia-player/multimedia-player.component.js +0 -125
- package/esm5/lib/viewers/pdf-viewer/pdf-js/pdf-js-wrapper.js +0 -446
- package/esm5/lib/viewers/pdf-viewer/pdf-js/pdf-js-wrapper.provider.js +0 -87
- package/esm5/lib/viewers/pdf-viewer/pdf-viewer.component.js +0 -582
- package/esm5/lib/viewers/pdf-viewer/side-bar/bookmarks/bookmarks.component.js +0 -251
- package/esm5/lib/viewers/pdf-viewer/side-bar/bookmarks/bookmarks.interfaces.js +0 -39
- package/esm5/lib/viewers/pdf-viewer/side-bar/outline-item/outline-item.component.js +0 -62
- package/esm5/lib/viewers/pdf-viewer/side-bar/outline-item/outline.model.js +0 -31
- package/esm5/lib/viewers/pdf-viewer/side-bar/side-bar.component.js +0 -146
- package/esm5/lib/viewers/rotation-persist/rotation-api.service.js +0 -68
- package/esm5/lib/viewers/rotation-persist/rotation-persist.directive.js +0 -163
- package/esm5/lib/viewers/rotation-persist/rotation.model.js +0 -15
- package/esm5/lib/viewers/unsupported-viewer/unsupported-viewer.component.js +0 -120
- package/esm5/lib/viewers/viewer-event.service.js +0 -86
- package/esm5/lib/viewers/viewer-exception.model.js +0 -36
- package/esm5/lib/viewers/viewer-util.service.js +0 -44
- package/esm5/public_api.js +0 -35
- package/fesm5/hmcts-media-viewer.js +0 -14160
- package/fesm5/hmcts-media-viewer.js.map +0 -1
- package/hmcts-media-viewer-v2.8.2.tgz +0 -0
|
@@ -1,35 +1,18 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @fileoverview added by tsickle
|
|
3
|
-
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
4
|
-
*/
|
|
5
1
|
import { __awaiter } from "tslib";
|
|
6
2
|
import * as pdfjsLib from 'pdfjs-dist';
|
|
7
3
|
import 'pdfjs-dist/build/pdf.worker';
|
|
8
4
|
pdfjsLib.GlobalWorkerOptions.workerSrc = '/assets/build/pdf.worker.min.js';
|
|
9
|
-
/**
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
FindState[FindState
|
|
17
|
-
FindState[FindState
|
|
18
|
-
FindState
|
|
19
|
-
FindState[FindState.PENDING] = 'PENDING';
|
|
5
|
+
/**
|
|
6
|
+
* Values of the state field returned by the find events
|
|
7
|
+
*/
|
|
8
|
+
var FindState;
|
|
9
|
+
(function (FindState) {
|
|
10
|
+
FindState[FindState["FOUND"] = 0] = "FOUND";
|
|
11
|
+
FindState[FindState["NOT_FOUND"] = 1] = "NOT_FOUND";
|
|
12
|
+
FindState[FindState["WRAPPED"] = 2] = "WRAPPED";
|
|
13
|
+
FindState[FindState["PENDING"] = 3] = "PENDING";
|
|
14
|
+
})(FindState || (FindState = {}));
|
|
20
15
|
export class PdfJsWrapper {
|
|
21
|
-
/**
|
|
22
|
-
* @param {?} pdfViewer
|
|
23
|
-
* @param {?} downloadManager
|
|
24
|
-
* @param {?} toolbarEvents
|
|
25
|
-
* @param {?} documentLoadInit
|
|
26
|
-
* @param {?} documentLoadProgress
|
|
27
|
-
* @param {?} documentLoaded
|
|
28
|
-
* @param {?} outlineLoaded
|
|
29
|
-
* @param {?} documentLoadFailed
|
|
30
|
-
* @param {?} pageRendered
|
|
31
|
-
* @param {?} positionUpdated
|
|
32
|
-
*/
|
|
33
16
|
constructor(pdfViewer, downloadManager, toolbarEvents, documentLoadInit, documentLoadProgress, documentLoaded, outlineLoaded, documentLoadFailed, pageRendered, positionUpdated) {
|
|
34
17
|
this.pdfViewer = pdfViewer;
|
|
35
18
|
this.downloadManager = downloadManager;
|
|
@@ -41,70 +24,25 @@ export class PdfJsWrapper {
|
|
|
41
24
|
this.documentLoadFailed = documentLoadFailed;
|
|
42
25
|
this.pageRendered = pageRendered;
|
|
43
26
|
this.positionUpdated = positionUpdated;
|
|
44
|
-
this.pdfViewer.eventBus.on('updateviewarea', (
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
e =>
|
|
49
|
-
this.pdfViewer.eventBus.on('
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
*/
|
|
53
|
-
e => this.toolbarEvents.setCurrentPageInputValueSubject.next(e.pageNumber)));
|
|
54
|
-
this.pdfViewer.eventBus.on('pagesinit', (/**
|
|
55
|
-
* @return {?}
|
|
56
|
-
*/
|
|
57
|
-
() => this.pdfViewer.currentScaleValue = '1'));
|
|
58
|
-
this.pdfViewer.eventBus.on('pagerendered', (/**
|
|
59
|
-
* @param {?} e
|
|
60
|
-
* @return {?}
|
|
61
|
-
*/
|
|
62
|
-
e => { })); // not used left for future convenience
|
|
63
|
-
this.pdfViewer.eventBus.on('pagesloaded', (/**
|
|
64
|
-
* @param {?} e
|
|
65
|
-
* @return {?}
|
|
66
|
-
*/
|
|
67
|
-
(e) => this.emitDocumentInfo(e)));
|
|
68
|
-
this.pdfViewer.eventBus.on('scalechanging', (/**
|
|
69
|
-
* @param {?} e
|
|
70
|
-
* @return {?}
|
|
71
|
-
*/
|
|
72
|
-
(e) => this.emitDocumentInfo(e)));
|
|
73
|
-
this.pdfViewer.eventBus.on('rotationchanging', (/**
|
|
74
|
-
* @param {?} e
|
|
75
|
-
* @return {?}
|
|
76
|
-
*/
|
|
77
|
-
(e) => this.emitDocumentInfo(e)));
|
|
78
|
-
this.pdfViewer.eventBus.on('updatefindcontrolstate', (/**
|
|
79
|
-
* @param {?} event
|
|
80
|
-
* @return {?}
|
|
81
|
-
*/
|
|
82
|
-
event => {
|
|
27
|
+
this.pdfViewer.eventBus.on('updateviewarea', e => positionUpdated.next(e));
|
|
28
|
+
this.pdfViewer.eventBus.on('pagechanging', e => this.toolbarEvents.setCurrentPageInputValueSubject.next(e.pageNumber));
|
|
29
|
+
this.pdfViewer.eventBus.on('pagesinit', () => this.pdfViewer.currentScaleValue = '1');
|
|
30
|
+
this.pdfViewer.eventBus.on('pagerendered', e => { }); // not used left for future convenience
|
|
31
|
+
this.pdfViewer.eventBus.on('pagesloaded', (e) => this.emitDocumentInfo(e));
|
|
32
|
+
this.pdfViewer.eventBus.on('scalechanging', (e) => this.emitDocumentInfo(e));
|
|
33
|
+
this.pdfViewer.eventBus.on('rotationchanging', (e) => this.emitDocumentInfo(e));
|
|
34
|
+
this.pdfViewer.eventBus.on('updatefindcontrolstate', event => {
|
|
83
35
|
if (event.state !== FindState.PENDING) {
|
|
84
36
|
this.toolbarEvents.searchResultsCountSubject.next(event.matchesCount);
|
|
85
37
|
}
|
|
86
|
-
})
|
|
87
|
-
this.pdfViewer.eventBus.on('updatefindmatchescount',
|
|
88
|
-
* @param {?} event
|
|
89
|
-
* @return {?}
|
|
90
|
-
*/
|
|
91
|
-
event => {
|
|
38
|
+
});
|
|
39
|
+
this.pdfViewer.eventBus.on('updatefindmatchescount', event => {
|
|
92
40
|
this.toolbarEvents.searchResultsCountSubject.next(event.matchesCount);
|
|
93
|
-
})
|
|
41
|
+
});
|
|
94
42
|
this.zoomValue = 1;
|
|
95
43
|
}
|
|
96
|
-
/**
|
|
97
|
-
* @private
|
|
98
|
-
* @param {?} e
|
|
99
|
-
* @return {?}
|
|
100
|
-
*/
|
|
101
44
|
emitDocumentInfo(e) {
|
|
102
|
-
|
|
103
|
-
const allPages = [...this.pdfViewer._pages].map((/**
|
|
104
|
-
* @param {?} page
|
|
105
|
-
* @return {?}
|
|
106
|
-
*/
|
|
107
|
-
page => {
|
|
45
|
+
const allPages = [...this.pdfViewer._pages].map(page => {
|
|
108
46
|
return {
|
|
109
47
|
div: page.div,
|
|
110
48
|
scale: page.scale,
|
|
@@ -112,40 +50,26 @@ export class PdfJsWrapper {
|
|
|
112
50
|
id: page.id,
|
|
113
51
|
viewportScale: page.viewport.scale
|
|
114
52
|
};
|
|
115
|
-
})
|
|
53
|
+
});
|
|
116
54
|
this.pageRendered.next(allPages);
|
|
117
55
|
}
|
|
118
|
-
/**
|
|
119
|
-
* @param {?} documentUrl
|
|
120
|
-
* @return {?}
|
|
121
|
-
*/
|
|
122
56
|
loadDocument(documentUrl) {
|
|
123
57
|
return __awaiter(this, void 0, void 0, function* () {
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
url: documentUrl,
|
|
127
|
-
cMapUrl: 'assets/minified/cmaps',
|
|
128
|
-
cMapPacked: true,
|
|
129
|
-
withCredentials: true
|
|
130
|
-
});
|
|
131
|
-
loadingTask.onProgress = (/**
|
|
132
|
-
* @param {?} __0
|
|
133
|
-
* @return {?}
|
|
134
|
-
*/
|
|
135
|
-
({ loaded, total }) => {
|
|
58
|
+
const loadingTask = this.createLoadingTask(documentUrl);
|
|
59
|
+
loadingTask.onProgress = ({ loaded, total }) => {
|
|
136
60
|
this.documentLoadProgress.next({ loaded, total });
|
|
137
|
-
}
|
|
61
|
+
};
|
|
138
62
|
this.documentLoadInit.next(documentUrl);
|
|
139
63
|
try {
|
|
140
|
-
/** @type {?} */
|
|
141
64
|
const pdfDocument = yield loadingTask.promise;
|
|
142
65
|
this.documentLoaded.next(pdfDocument);
|
|
143
66
|
this.toolbarEvents.pageCountSubject.next(pdfDocument.numPages);
|
|
144
67
|
this.pdfViewer.setDocument(pdfDocument);
|
|
145
68
|
this.pdfViewer.linkService.setDocument(pdfDocument, null);
|
|
146
|
-
|
|
69
|
+
const outline = yield pdfDocument.getOutline();
|
|
70
|
+
yield this.setOutlinePageNumbers(pdfDocument, outline);
|
|
71
|
+
this.documentOutline = outline;
|
|
147
72
|
this.outlineLoaded.next(this.documentOutline);
|
|
148
|
-
/** @type {?} */
|
|
149
73
|
const pdfMetaData = yield pdfDocument.getMetadata();
|
|
150
74
|
this.setCurrentPDFTitle(pdfMetaData.info.Title);
|
|
151
75
|
}
|
|
@@ -154,40 +78,50 @@ export class PdfJsWrapper {
|
|
|
154
78
|
}
|
|
155
79
|
});
|
|
156
80
|
}
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
81
|
+
createLoadingTask(documentUrl) {
|
|
82
|
+
return pdfjsLib.getDocument({
|
|
83
|
+
url: documentUrl,
|
|
84
|
+
cMapUrl: 'assets/minified/cmaps',
|
|
85
|
+
cMapPacked: true,
|
|
86
|
+
withCredentials: true
|
|
87
|
+
});
|
|
88
|
+
}
|
|
89
|
+
setOutlinePageNumbers(pdfDocument, outlineArray) {
|
|
90
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
91
|
+
outlineArray.forEach((outline) => __awaiter(this, void 0, void 0, function* () {
|
|
92
|
+
yield this.setNestedOutlinePageNumbers(pdfDocument, outline);
|
|
93
|
+
}));
|
|
94
|
+
});
|
|
95
|
+
}
|
|
96
|
+
setNestedOutlinePageNumbers(pdfDocument, outline) {
|
|
97
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
98
|
+
outline.pageNumber = yield this.getOutlinePageNumber(pdfDocument, outline);
|
|
99
|
+
outline.items.forEach((outlineItem) => __awaiter(this, void 0, void 0, function* () {
|
|
100
|
+
outlineItem.pageNumber = yield this.getOutlinePageNumber(pdfDocument, outlineItem);
|
|
101
|
+
this.setNestedOutlinePageNumbers(pdfDocument, outlineItem);
|
|
102
|
+
}));
|
|
103
|
+
});
|
|
104
|
+
}
|
|
105
|
+
getOutlinePageNumber(pdfDocument, outline) {
|
|
106
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
107
|
+
const dest = outline.dest;
|
|
108
|
+
const pageIndex = yield pdfDocument.getPageIndex(dest[0]);
|
|
109
|
+
return Number(pageIndex) + 1;
|
|
110
|
+
});
|
|
111
|
+
}
|
|
162
112
|
downloadFile(url, filename) {
|
|
163
113
|
this.downloadManager.downloadUrl(url, filename);
|
|
164
114
|
}
|
|
165
|
-
/**
|
|
166
|
-
* @param {?} pageNumber
|
|
167
|
-
* @return {?}
|
|
168
|
-
*/
|
|
169
115
|
setPageNumber(pageNumber) {
|
|
170
116
|
this.pdfViewer.currentPageNumber = pageNumber;
|
|
171
117
|
}
|
|
172
|
-
/**
|
|
173
|
-
* @return {?}
|
|
174
|
-
*/
|
|
175
118
|
getPageNumber() {
|
|
176
119
|
return this.pdfViewer.currentPageNumber;
|
|
177
120
|
}
|
|
178
|
-
/**
|
|
179
|
-
* @param {?} numPages
|
|
180
|
-
* @return {?}
|
|
181
|
-
*/
|
|
182
121
|
changePageNumber(numPages) {
|
|
183
122
|
this.pdfViewer.currentPageNumber += numPages;
|
|
184
123
|
}
|
|
185
|
-
/**
|
|
186
|
-
* @param {?} operation
|
|
187
|
-
* @return {?}
|
|
188
|
-
*/
|
|
189
124
|
search(operation) {
|
|
190
|
-
/** @type {?} */
|
|
191
125
|
const command = operation.reset ? 'find' : 'findagain';
|
|
192
126
|
this.pdfViewer.findController.executeCommand(command, {
|
|
193
127
|
query: operation.searchTerm,
|
|
@@ -198,16 +132,9 @@ export class PdfJsWrapper {
|
|
|
198
132
|
findPrevious: operation.previous,
|
|
199
133
|
});
|
|
200
134
|
}
|
|
201
|
-
/**
|
|
202
|
-
* @return {?}
|
|
203
|
-
*/
|
|
204
135
|
clearSearch() {
|
|
205
136
|
this.pdfViewer.eventBus.dispatch('findbarclose');
|
|
206
137
|
}
|
|
207
|
-
/**
|
|
208
|
-
* @param {?} destination
|
|
209
|
-
* @return {?}
|
|
210
|
-
*/
|
|
211
138
|
navigateTo(destination) {
|
|
212
139
|
if (destination instanceof Object) {
|
|
213
140
|
if (!destination[1].name.includes('XYZ')) {
|
|
@@ -219,29 +146,16 @@ export class PdfJsWrapper {
|
|
|
219
146
|
}
|
|
220
147
|
this.pdfViewer.linkService.navigateTo(destination);
|
|
221
148
|
}
|
|
222
|
-
/**
|
|
223
|
-
* @param {?} zoomValue
|
|
224
|
-
* @return {?}
|
|
225
|
-
*/
|
|
226
149
|
setZoom(zoomValue) {
|
|
227
150
|
this.pdfViewer.currentScaleValue = this.getZoomValue(zoomValue);
|
|
228
151
|
this.zoomValue = this.pdfViewer.currentScaleValue;
|
|
229
152
|
this.toolbarEvents.zoomValueSubject.next(this.pdfViewer.currentScaleValue);
|
|
230
153
|
}
|
|
231
|
-
/**
|
|
232
|
-
* @param {?} zoomValue
|
|
233
|
-
* @return {?}
|
|
234
|
-
*/
|
|
235
154
|
stepZoom(zoomValue) {
|
|
236
155
|
this.pdfViewer.currentScaleValue = +this.getZoomValue((+this.pdfViewer.currentScaleValue) + zoomValue);
|
|
237
156
|
this.zoomValue = this.pdfViewer.currentScaleValue;
|
|
238
157
|
this.toolbarEvents.zoomValueSubject.next(this.pdfViewer.currentScaleValue);
|
|
239
158
|
}
|
|
240
|
-
/**
|
|
241
|
-
* @private
|
|
242
|
-
* @param {?} zoomValue
|
|
243
|
-
* @return {?}
|
|
244
|
-
*/
|
|
245
159
|
getZoomValue(zoomValue) {
|
|
246
160
|
if (isNaN(zoomValue)) {
|
|
247
161
|
return this.zoomValue;
|
|
@@ -254,116 +168,23 @@ export class PdfJsWrapper {
|
|
|
254
168
|
}
|
|
255
169
|
return +zoomValue.toFixed(2);
|
|
256
170
|
}
|
|
257
|
-
/**
|
|
258
|
-
* @param {?} rotation
|
|
259
|
-
* @return {?}
|
|
260
|
-
*/
|
|
261
171
|
rotate(rotation) {
|
|
262
172
|
return this.pdfViewer.pagesRotation = (this.pdfViewer.pagesRotation + rotation) % 360;
|
|
263
173
|
}
|
|
264
|
-
/**
|
|
265
|
-
* @param {?} rotation
|
|
266
|
-
* @return {?}
|
|
267
|
-
*/
|
|
268
174
|
resetRotation(rotation) {
|
|
269
175
|
return this.pdfViewer.pagesRotation = rotation;
|
|
270
176
|
}
|
|
271
|
-
/**
|
|
272
|
-
* @return {?}
|
|
273
|
-
*/
|
|
274
177
|
getNormalisedPagesRotation() {
|
|
275
178
|
return this.pdfViewer.pagesRotation;
|
|
276
179
|
}
|
|
277
|
-
/**
|
|
278
|
-
* @return {?}
|
|
279
|
-
*/
|
|
280
180
|
getCurrentPDFZoomValue() {
|
|
281
181
|
return this.pdfViewer.currentScaleValue;
|
|
282
182
|
}
|
|
283
|
-
/**
|
|
284
|
-
* @param {?} title
|
|
285
|
-
* @return {?}
|
|
286
|
-
*/
|
|
287
183
|
setCurrentPDFTitle(title) {
|
|
288
184
|
this.documentTitle = title;
|
|
289
185
|
}
|
|
290
|
-
/**
|
|
291
|
-
* @return {?}
|
|
292
|
-
*/
|
|
293
186
|
getCurrentPDFTitle() {
|
|
294
187
|
return this.documentTitle;
|
|
295
188
|
}
|
|
296
189
|
}
|
|
297
|
-
if (false) {
|
|
298
|
-
/**
|
|
299
|
-
* @type {?}
|
|
300
|
-
* @private
|
|
301
|
-
*/
|
|
302
|
-
PdfJsWrapper.prototype.zoomValue;
|
|
303
|
-
/**
|
|
304
|
-
* @type {?}
|
|
305
|
-
* @private
|
|
306
|
-
*/
|
|
307
|
-
PdfJsWrapper.prototype.documentTitle;
|
|
308
|
-
/**
|
|
309
|
-
* @type {?}
|
|
310
|
-
* @private
|
|
311
|
-
*/
|
|
312
|
-
PdfJsWrapper.prototype.documentOutline;
|
|
313
|
-
/**
|
|
314
|
-
* @type {?}
|
|
315
|
-
* @private
|
|
316
|
-
*/
|
|
317
|
-
PdfJsWrapper.prototype.pdfViewer;
|
|
318
|
-
/**
|
|
319
|
-
* @type {?}
|
|
320
|
-
* @private
|
|
321
|
-
*/
|
|
322
|
-
PdfJsWrapper.prototype.downloadManager;
|
|
323
|
-
/**
|
|
324
|
-
* @type {?}
|
|
325
|
-
* @private
|
|
326
|
-
*/
|
|
327
|
-
PdfJsWrapper.prototype.toolbarEvents;
|
|
328
|
-
/** @type {?} */
|
|
329
|
-
PdfJsWrapper.prototype.documentLoadInit;
|
|
330
|
-
/** @type {?} */
|
|
331
|
-
PdfJsWrapper.prototype.documentLoadProgress;
|
|
332
|
-
/** @type {?} */
|
|
333
|
-
PdfJsWrapper.prototype.documentLoaded;
|
|
334
|
-
/** @type {?} */
|
|
335
|
-
PdfJsWrapper.prototype.outlineLoaded;
|
|
336
|
-
/** @type {?} */
|
|
337
|
-
PdfJsWrapper.prototype.documentLoadFailed;
|
|
338
|
-
/** @type {?} */
|
|
339
|
-
PdfJsWrapper.prototype.pageRendered;
|
|
340
|
-
/** @type {?} */
|
|
341
|
-
PdfJsWrapper.prototype.positionUpdated;
|
|
342
|
-
}
|
|
343
|
-
/**
|
|
344
|
-
* @record
|
|
345
|
-
*/
|
|
346
|
-
export function DocumentLoadProgress() { }
|
|
347
|
-
if (false) {
|
|
348
|
-
/** @type {?} */
|
|
349
|
-
DocumentLoadProgress.prototype.loaded;
|
|
350
|
-
/** @type {?} */
|
|
351
|
-
DocumentLoadProgress.prototype.total;
|
|
352
|
-
}
|
|
353
|
-
/**
|
|
354
|
-
* @record
|
|
355
|
-
*/
|
|
356
|
-
export function PageEvent() { }
|
|
357
|
-
if (false) {
|
|
358
|
-
/** @type {?} */
|
|
359
|
-
PageEvent.prototype.div;
|
|
360
|
-
/** @type {?} */
|
|
361
|
-
PageEvent.prototype.scale;
|
|
362
|
-
/** @type {?} */
|
|
363
|
-
PageEvent.prototype.rotation;
|
|
364
|
-
/** @type {?} */
|
|
365
|
-
PageEvent.prototype.id;
|
|
366
|
-
/** @type {?} */
|
|
367
|
-
PageEvent.prototype.viewportScale;
|
|
368
|
-
}
|
|
369
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGRmLWpzLXdyYXBwZXIuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AaG1jdHMvbWVkaWEtdmlld2VyLyIsInNvdXJjZXMiOlsibGliL3ZpZXdlcnMvcGRmLXZpZXdlci9wZGYtanMvcGRmLWpzLXdyYXBwZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxPQUFPLEtBQUssUUFBUSxNQUFNLFlBQVksQ0FBQztBQUV2QyxPQUFPLDZCQUE2QixDQUFDO0FBTXJDLFFBQVEsQ0FBQyxtQkFBbUIsQ0FBQyxTQUFTLEdBQUcsaUNBQWlDLENBQUM7OztJQU16RSxRQUFTO0lBQ1QsWUFBYTtJQUNiLFVBQVc7SUFDWCxVQUFXOzs7Ozs7QUFHYixNQUFNLE9BQU8sWUFBWTs7Ozs7Ozs7Ozs7OztJQU12QixZQUNtQixTQUFvQixFQUNwQixlQUFnQyxFQUNoQyxhQUFrQyxFQUNuQyxnQkFBaUMsRUFDakMsb0JBQW1ELEVBQ25ELGNBQTRCLEVBQzVCLGFBQStCLEVBQy9CLGtCQUFrQyxFQUNsQyxZQUFrQyxFQUNsQyxlQUFtRDtRQVRsRCxjQUFTLEdBQVQsU0FBUyxDQUFXO1FBQ3BCLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQUNoQyxrQkFBYSxHQUFiLGFBQWEsQ0FBcUI7UUFDbkMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFpQjtRQUNqQyx5QkFBb0IsR0FBcEIsb0JBQW9CLENBQStCO1FBQ25ELG1CQUFjLEdBQWQsY0FBYyxDQUFjO1FBQzVCLGtCQUFhLEdBQWIsYUFBYSxDQUFrQjtRQUMvQix1QkFBa0IsR0FBbEIsa0JBQWtCLENBQWdCO1FBQ2xDLGlCQUFZLEdBQVosWUFBWSxDQUFzQjtRQUNsQyxvQkFBZSxHQUFmLGVBQWUsQ0FBb0M7UUFFbkUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLGdCQUFnQjs7OztRQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBQyxDQUFDO1FB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QUdoQiwrQkFNQzs7O0lBTEMsd0JBQVk7O0lBQ1osMEJBQWM7O0lBQ2QsNkJBQWlCOztJQUNqQix1QkFBVzs7SUFDWCxrQ0FBc0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBwZGZqc0xpYiBmcm9tICdwZGZqcy1kaXN0JztcbmltcG9ydCB7IERvd25sb2FkTWFuYWdlciwgUERGVmlld2VyIH0gZnJvbSAncGRmanMtZGlzdC93ZWIvcGRmX3ZpZXdlcic7XG5pbXBvcnQgJ3BkZmpzLWRpc3QvYnVpbGQvcGRmLndvcmtlcic7XG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBTZWFyY2hPcGVyYXRpb24sIFRvb2xiYXJFdmVudFNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi90b29sYmFyL3Rvb2xiYXItZXZlbnQuc2VydmljZSc7XG5pbXBvcnQgeyBPdXRsaW5lIH0gZnJvbSAnLi4vc2lkZS1iYXIvb3V0bGluZS1pdGVtL291dGxpbmUubW9kZWwnO1xuaW1wb3J0IHsgUGRmUG9zaXRpb24gfSBmcm9tICcuLi8uLi8uLi9zdG9yZS9yZWR1Y2Vycy9kb2N1bWVudC5yZWR1Y2VyJztcblxucGRmanNMaWIuR2xvYmFsV29ya2VyT3B0aW9ucy53b3JrZXJTcmMgPSAnL2Fzc2V0cy9idWlsZC9wZGYud29ya2VyLm1pbi5qcyc7XG5cbi8qKlxuICogVmFsdWVzIG9mIHRoZSBzdGF0ZSBmaWVsZCByZXR1cm5lZCBieSB0aGUgZmluZCBldmVudHNcbiAqL1xuZW51bSBGaW5kU3RhdGUge1xuICBGT1VORCA9IDAsXG4gIE5PVF9GT1VORCA9IDEsXG4gIFdSQVBQRUQgPSAyLFxuICBQRU5ESU5HID0gMyxcbn1cblxuZXhwb3J0IGNsYXNzIFBkZkpzV3JhcHBlciB7XG5cbiAgcHJpdmF0ZSB6b29tVmFsdWU6IG51bWJlcjtcbiAgcHJpdmF0ZSBkb2N1bWVudFRpdGxlOiBzdHJpbmc7XG4gIHByaXZhdGUgZG9jdW1lbnRPdXRsaW5lOiBPdXRsaW5lO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgcGRmVmlld2VyOiBQREZWaWV3ZXIsXG4gICAgcHJpdmF0ZSByZWFkb25seSBkb3dubG9hZE1hbmFnZXI6IERvd25sb2FkTWFuYWdlcixcbiAgICBwcml2YXRlIHJlYWRvbmx5IHRvb2xiYXJFdmVudHM6IFRvb2xiYXJFdmVudFNlcnZpY2UsXG4gICAgcHVibGljIHJlYWRvbmx5IGRvY3VtZW50TG9hZEluaXQ6IFN1YmplY3Q8c3RyaW5nPixcbiAgICBwdWJsaWMgcmVhZG9ubHkgZG9jdW1lbnRMb2FkUHJvZ3Jlc3M6IFN1YmplY3Q8RG9jdW1lbnRMb2FkUHJvZ3Jlc3M+LFxuICAgIHB1YmxpYyByZWFkb25seSBkb2N1bWVudExvYWRlZDogU3ViamVjdDxhbnk+LFxuICAgIHB1YmxpYyByZWFkb25seSBvdXRsaW5lTG9hZGVkOiBTdWJqZWN0PE91dGxpbmU+LFxuICAgIHB1YmxpYyByZWFkb25seSBkb2N1bWVudExvYWRGYWlsZWQ6IFN1YmplY3Q8RXJyb3I+LFxuICAgIHB1YmxpYyByZWFkb25seSBwYWdlUmVuZGVyZWQ6IFN1YmplY3Q8UGFnZUV2ZW50W10+LFxuICAgIHB1YmxpYyByZWFkb25seSBwb3NpdGlvblVwZGF0ZWQ6IFN1YmplY3Q8eyBsb2NhdGlvbjogUGRmUG9zaXRpb24gfT4sXG4gICkge1xuICAgIHRoaXMucGRmVmlld2VyLmV2ZW50QnVzLm9uKCd1cGRhdGV2aWV3YXJlYScsIGUgPT4gcG9zaXRpb25VcGRhdGVkLm5leHQoZSkpO1xuICAgIHRoaXMucGRmVmlld2VyLmV2ZW50QnVzLm9uKCdwYWdlY2hhbmdpbmcnLCBlID0+IHRoaXMudG9vbGJhckV2ZW50cy5zZXRDdXJyZW50UGFnZUlucHV0VmFsdWVTdWJqZWN0Lm5leHQoZS5wYWdlTnVtYmVyKSk7XG4gICAgdGhpcy5wZGZWaWV3ZXIuZXZlbnRCdXMub24oJ3BhZ2VzaW5pdCcsICgpID0+IHRoaXMucGRmVmlld2VyLmN1cnJlbnRTY2FsZVZhbHVlID0gJzEnKTtcblxuICAgIHRoaXMucGRmVmlld2VyLmV2ZW50QnVzLm9uKCdwYWdlcmVuZGVyZWQnLCBlID0+IHt9KTsgLy8gbm90IHVzZWQgbGVmdCBmb3IgZnV0dXJlIGNvbnZlbmllbmNlXG4gICAgdGhpcy5wZGZWaWV3ZXIuZXZlbnRCdXMub24oJ3BhZ2VzbG9hZGVkJywgKGUpID0+IHRoaXMuZW1pdERvY3VtZW50SW5mbyhlKSk7XG4gICAgdGhpcy5wZGZWaWV3ZXIuZXZlbnRCdXMub24oJ3NjYWxlY2hhbmdpbmcnLCAoZSkgPT4gIHRoaXMuZW1pdERvY3VtZW50SW5mbyhlKSk7XG4gICAgdGhpcy5wZGZWaWV3ZXIuZXZlbnRCdXMub24oJ3JvdGF0aW9uY2hhbmdpbmcnLCAoZSkgPT4gdGhpcy5lbWl0RG9jdW1lbnRJbmZvKGUpKTtcblxuICAgIHRoaXMucGRmVmlld2VyLmV2ZW50QnVzLm9uKCd1cGRhdGVmaW5kY29udHJvbHN0YXRlJywgZXZlbnQgPT4ge1xuICAgICAgaWYgKGV2ZW50LnN0YXRlICE9PSBGaW5kU3RhdGUuUEVORElORykge1xuICAgICAgICB0aGlzLnRvb2xiYXJFdmVudHMuc2VhcmNoUmVzdWx0c0NvdW50U3ViamVjdC5uZXh0KGV2ZW50Lm1hdGNoZXNDb3VudCk7XG4gICAgICB9XG4gICAgfSk7XG4gICAgdGhpcy5wZGZWaWV3ZXIuZXZlbnRCdXMub24oJ3VwZGF0ZWZpbmRtYXRjaGVzY291bnQnLCBldmVudCA9PiB7XG4gICAgICB0aGlzLnRvb2xiYXJFdmVudHMuc2VhcmNoUmVzdWx0c0NvdW50U3ViamVjdC5uZXh0KGV2ZW50Lm1hdGNoZXNDb3VudCk7XG4gICAgfSk7XG4gICAgdGhpcy56b29tVmFsdWUgPSAxO1xuICB9XG5cbiAgcHJpdmF0ZSBlbWl0RG9jdW1lbnRJbmZvKGUpIHtcbiAgICBjb25zdCBhbGxQYWdlczogUGFnZUV2ZW50W10gPSBbLi4udGhpcy5wZGZWaWV3ZXIuX3BhZ2VzXS5tYXAocGFnZSA9PiB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBkaXY6IHBhZ2UuZGl2LFxuICAgICAgICBzY2FsZTogcGFnZS5zY2FsZSxcbiAgICAgICAgcm90YXRpb246IHBhZ2Uucm90YXRpb24sXG4gICAgICAgIGlkOiBwYWdlLmlkLFxuICAgICAgICB2aWV3cG9ydFNjYWxlOiBwYWdlLnZpZXdwb3J0LnNjYWxlXG4gICAgICB9O1xuICAgIH0pO1xuICAgIHRoaXMucGFnZVJlbmRlcmVkLm5leHQoYWxsUGFnZXMpO1xuICB9XG5cbiAgcHVibGljIGFzeW5jIGxvYWREb2N1bWVudChkb2N1bWVudFVybDogc3RyaW5nKSB7XG4gICAgY29uc3QgbG9hZGluZ1Rhc2sgPSBwZGZqc0xpYi5nZXREb2N1bWVudCh7XG4gICAgICB1cmw6IGRvY3VtZW50VXJsLFxuICAgICAgY01hcFVybDogJ2Fzc2V0cy9taW5pZmllZC9jbWFwcycsXG4gICAgICBjTWFwUGFja2VkOiB0cnVlLFxuICAgICAgd2l0aENyZWRlbnRpYWxzOiB0cnVlXG4gICAgfSk7XG5cbiAgICBsb2FkaW5nVGFzay5vblByb2dyZXNzID0gKHsgbG9hZGVkLCB0b3RhbCB9KSA9PiB7XG4gICAgICB0aGlzLmRvY3VtZW50TG9hZFByb2dyZXNzLm5leHQoeyBsb2FkZWQsIHRvdGFsIH0pO1xuICAgIH07XG5cbiAgICB0aGlzLmRvY3VtZW50TG9hZEluaXQubmV4dChkb2N1bWVudFVybCk7XG5cbiAgICB0cnkge1xuICAgICAgY29uc3QgcGRmRG9jdW1lbnQgPSBhd2FpdCBsb2FkaW5nVGFzay5wcm9taXNlO1xuICAgICAgdGhpcy5kb2N1bWVudExvYWRlZC5uZXh0KHBkZkRvY3VtZW50KTtcbiAgICAgIHRoaXMudG9vbGJhckV2ZW50cy5wYWdlQ291bnRTdWJqZWN0Lm5leHQocGRmRG9jdW1lbnQubnVtUGFnZXMpO1xuXG4gICAgICB0aGlzLnBkZlZpZXdlci5zZXREb2N1bWVudChwZGZEb2N1bWVudCk7XG4gICAgICB0aGlzLnBkZlZpZXdlci5saW5rU2VydmljZS5zZXREb2N1bWVudChwZGZEb2N1bWVudCwgbnVsbCk7XG5cbiAgICAgIHRoaXMuZG9jdW1lbnRPdXRsaW5lID0gYXdhaXQgcGRmRG9jdW1lbnQuZ2V0T3V0bGluZSgpO1xuICAgICAgdGhpcy5vdXRsaW5lTG9hZGVkLm5leHQodGhpcy5kb2N1bWVudE91dGxpbmUpO1xuICAgICAgY29uc3QgcGRmTWV0YURhdGEgPSBhd2FpdCBwZGZEb2N1bWVudC5nZXRNZXRhZGF0YSgpO1xuICAgICAgdGhpcy5zZXRDdXJyZW50UERGVGl0bGUocGRmTWV0YURhdGEuaW5mby5UaXRsZSk7XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgdGhpcy5kb2N1bWVudExvYWRGYWlsZWQubmV4dChlKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZG93bmxvYWRGaWxlKHVybDogc3RyaW5nLCBmaWxlbmFtZTogc3RyaW5nKTogdm9pZCB7XG4gICAgdGhpcy5kb3dubG9hZE1hbmFnZXIuZG93bmxvYWRVcmwodXJsLCBmaWxlbmFtZSk7XG4gIH1cblxuICBwdWJsaWMgc2V0UGFnZU51bWJlcihwYWdlTnVtYmVyOiBudW1iZXIpOiB2b2lkIHtcbiAgICB0aGlzLnBkZlZpZXdlci5jdXJyZW50UGFnZU51bWJlciA9IHBhZ2VOdW1iZXI7XG4gIH1cbiAgcHVibGljIGdldFBhZ2VOdW1iZXIoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5wZGZWaWV3ZXIuY3VycmVudFBhZ2VOdW1iZXI7XG4gIH1cbiAgcHVibGljIGNoYW5nZVBhZ2VOdW1iZXIobnVtUGFnZXM6IG51bWJlcik6IHZvaWQge1xuICAgIHRoaXMucGRmVmlld2VyLmN1cnJlbnRQYWdlTnVtYmVyICs9IG51bVBhZ2VzO1xuICB9XG5cbiAgcHVibGljIHNlYXJjaChvcGVyYXRpb246IFNlYXJjaE9wZXJhdGlvbik6IHZvaWQge1xuICAgIGNvbnN0IGNvbW1hbmQgPSBvcGVyYXRpb24ucmVzZXQgPyAnZmluZCcgOiAnZmluZGFnYWluJztcblxuICAgIHRoaXMucGRmVmlld2VyLmZpbmRDb250cm9sbGVyLmV4ZWN1dGVDb21tYW5kKGNvbW1hbmQsIHtcbiAgICAgIHF1ZXJ5OiBvcGVyYXRpb24uc2VhcmNoVGVybSxcbiAgICAgIHBocmFzZVNlYXJjaDogdHJ1ZSxcbiAgICAgIGNhc2VTZW5zaXRpdmU6IG9wZXJhdGlvbi5tYXRjaENhc2UsXG4gICAgICBlbnRpcmVXb3JkOiBvcGVyYXRpb24ud2hvbGVXb3JkLFxuICAgICAgaGlnaGxpZ2h0QWxsOiBvcGVyYXRpb24uaGlnaGxpZ2h0QWxsLFxuICAgICAgZmluZFByZXZpb3VzOiBvcGVyYXRpb24ucHJldmlvdXMsXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgY2xlYXJTZWFyY2goKTogdm9pZCB7XG4gICAgdGhpcy5wZGZWaWV3ZXIuZXZlbnRCdXMuZGlzcGF0Y2goJ2ZpbmRiYXJjbG9zZScpO1xuICB9XG5cbiAgcHVibGljIG5hdmlnYXRlVG8oZGVzdGluYXRpb246IG9iamVjdCB8IG51bWJlcikge1xuICAgIGlmIChkZXN0aW5hdGlvbiBpbnN0YW5jZW9mIE9iamVjdCkge1xuICAgICAgaWYgKCFkZXN0aW5hdGlvblsxXS5uYW1lLmluY2x1ZGVzKCdYWVonKSkge1xuICAgICAgICBkZXN0aW5hdGlvblsxXSA9IHsgbmFtZTogJ1hZWicgfTtcbiAgICAgICAgZGVzdGluYXRpb25bMl0gPSBkZXN0aW5hdGlvblsyXSB8fCBudWxsO1xuICAgICAgICBkZXN0aW5hdGlvblszXSA9IGRlc3RpbmF0aW9uWzNdIHx8IG51bGw7XG4gICAgICB9XG4gICAgICBkZXN0aW5hdGlvbls0XSA9IHRoaXMuem9vbVZhbHVlO1xuICAgIH1cbiAgICB0aGlzLnBkZlZpZXdlci5saW5rU2VydmljZS5uYXZpZ2F0ZVRvKGRlc3RpbmF0aW9uKTtcbiAgfVxuXG4gIHB1YmxpYyBzZXRab29tKHpvb21WYWx1ZTogbnVtYmVyKTogdm9pZCB7XG4gICAgdGhpcy5wZGZWaWV3ZXIuY3VycmVudFNjYWxlVmFsdWUgPSB0aGlzLmdldFpvb21WYWx1ZSh6b29tVmFsdWUpO1xuICAgIHRoaXMuem9vbVZhbHVlID0gdGhpcy5wZGZWaWV3ZXIuY3VycmVudFNjYWxlVmFsdWU7XG4gICAgdGhpcy50b29sYmFyRXZlbnRzLnpvb21WYWx1ZVN1YmplY3QubmV4dCh0aGlzLnBkZlZpZXdlci5jdXJyZW50U2NhbGVWYWx1ZSk7XG4gIH1cblxuICBwdWJsaWMgc3RlcFpvb20oem9vbVZhbHVlOiBudW1iZXIpOiB2b2lkIHtcbiAgICB0aGlzLnBkZlZpZXdlci5jdXJyZW50U2NhbGVWYWx1ZSA9ICt0aGlzLmdldFpvb21WYWx1ZSgoK3RoaXMucGRmVmlld2VyLmN1cnJlbnRTY2FsZVZhbHVlKSArIHpvb21WYWx1ZSk7XG4gICAgdGhpcy56b29tVmFsdWUgPSB0aGlzLnBkZlZpZXdlci5jdXJyZW50U2NhbGVWYWx1ZTtcbiAgICB0aGlzLnRvb2xiYXJFdmVudHMuem9vbVZhbHVlU3ViamVjdC5uZXh0KHRoaXMucGRmVmlld2VyLmN1cnJlbnRTY2FsZVZhbHVlKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0Wm9vbVZhbHVlKHpvb21WYWx1ZTogbnVtYmVyKTogbnVtYmVyIHtcbiAgICBpZiAoaXNOYU4oem9vbVZhbHVlKSkgeyByZXR1cm4gdGhpcy56b29tVmFsdWU7IH1cbiAgICBpZiAoem9vbVZhbHVlID4gNSkgeyByZXR1cm4gNTsgfVxuICAgIGlmICh6b29tVmFsdWUgPCAwLjEpIHsgcmV0dXJuIDAuMTsgfVxuXG4gICAgcmV0dXJuICt6b29tVmFsdWUudG9GaXhlZCgyKTtcbiAgfVxuXG4gIHB1YmxpYyByb3RhdGUocm90YXRpb246IG51bWJlcik6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMucGRmVmlld2VyLnBhZ2VzUm90YXRpb24gPSAodGhpcy5wZGZWaWV3ZXIucGFnZXNSb3RhdGlvbiArIHJvdGF0aW9uKSAlIDM2MDtcbiAgfVxuXG4gIHB1YmxpYyByZXNldFJvdGF0aW9uKHJvdGF0aW9uOiBudW1iZXIpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLnBkZlZpZXdlci5wYWdlc1JvdGF0aW9uID0gcm90YXRpb247XG4gIH1cblxuICBwdWJsaWMgZ2V0Tm9ybWFsaXNlZFBhZ2VzUm90YXRpb24oKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5wZGZWaWV3ZXIucGFnZXNSb3RhdGlvbjtcbiAgfVxuXG4gIHB1YmxpYyBnZXRDdXJyZW50UERGWm9vbVZhbHVlKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMucGRmVmlld2VyLmN1cnJlbnRTY2FsZVZhbHVlO1xuICB9XG5cbiAgcHVibGljIHNldEN1cnJlbnRQREZUaXRsZSh0aXRsZTogc3RyaW5nKSB7XG4gICAgdGhpcy5kb2N1bWVudFRpdGxlID0gdGl0bGU7XG4gIH1cblxuICBwdWJsaWMgZ2V0Q3VycmVudFBERlRpdGxlKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuZG9jdW1lbnRUaXRsZTtcbiAgfVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIERvY3VtZW50TG9hZFByb2dyZXNzIHtcbiAgbG9hZGVkOiBudW1iZXI7XG4gIHRvdGFsOiBudW1iZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGFnZUV2ZW50IHtcbiAgZGl2OiBvYmplY3Q7XG4gIHNjYWxlOiBudW1iZXI7XG4gIHJvdGF0aW9uOiBudW1iZXI7XG4gIGlkOiBzdHJpbmc7XG4gIHZpZXdwb3J0U2NhbGU6IG51bWJlcjtcbn1cbiJdfQ==
|
|
190
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGRmLWpzLXdyYXBwZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tZWRpYS12aWV3ZXIvc3JjL2xpYi92aWV3ZXJzL3BkZi12aWV3ZXIvcGRmLWpzL3BkZi1qcy13cmFwcGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEtBQUssUUFBUSxNQUFNLFlBQVksQ0FBQztBQUV2QyxPQUFPLDZCQUE2QixDQUFDO0FBTXJDLFFBQVEsQ0FBQyxtQkFBbUIsQ0FBQyxTQUFTLEdBQUcsaUNBQWlDLENBQUM7QUFFM0U7O0dBRUc7QUFDSCxJQUFLLFNBS0o7QUFMRCxXQUFLLFNBQVM7SUFDWiwyQ0FBUyxDQUFBO0lBQ1QsbURBQWEsQ0FBQTtJQUNiLCtDQUFXLENBQUE7SUFDWCwrQ0FBVyxDQUFBO0FBQ2IsQ0FBQyxFQUxJLFNBQVMsS0FBVCxTQUFTLFFBS2I7QUFFRCxNQUFNLE9BQU8sWUFBWTtJQU12QixZQUNtQixTQUFvQixFQUNwQixlQUFnQyxFQUNoQyxhQUFrQyxFQUNuQyxnQkFBaUMsRUFDakMsb0JBQW1ELEVBQ25ELGNBQTRCLEVBQzVCLGFBQStCLEVBQy9CLGtCQUFrQyxFQUNsQyxZQUFrQyxFQUNsQyxlQUFtRDtRQVRsRCxjQUFTLEdBQVQsU0FBUyxDQUFXO1FBQ3BCLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQUNoQyxrQkFBYSxHQUFiLGFBQWEsQ0FBcUI7UUFDbkMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFpQjtRQUNqQyx5QkFBb0IsR0FBcEIsb0JBQW9CLENBQStCO1FBQ25ELG1CQUFjLEdBQWQsY0FBYyxDQUFjO1FBQzVCLGtCQUFhLEdBQWIsYUFBYSxDQUFrQjtRQUMvQix1QkFBa0IsR0FBbEIsa0JBQWtCLENBQWdCO1FBQ2xDLGlCQUFZLEdBQVosWUFBWSxDQUFzQjtRQUNsQyxvQkFBZSxHQUFmLGVBQWUsQ0FBb0M7UUFFbkUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLGdCQUFnQixFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzNFLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxjQUFjLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLCtCQUErQixDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQztRQUN2SCxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsV0FBVyxFQUFFLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsaUJBQWlCLEdBQUcsR0FBRyxDQUFDLENBQUM7UUFFdEYsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLGNBQWMsRUFBRSxDQUFDLENBQUMsRUFBRSxHQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsdUNBQXVDO1FBQzVGLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxhQUFhLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzNFLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxlQUFlLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFFLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzlFLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxrQkFBa0IsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFFaEYsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLHdCQUF3QixFQUFFLEtBQUssQ0FBQyxFQUFFO1lBQzNELElBQUksS0FBSyxDQUFDLEtBQUssS0FBSyxTQUFTLENBQUMsT0FBTyxFQUFFO2dCQUNyQyxJQUFJLENBQUMsYUFBYSxDQUFDLHlCQUF5QixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLENBQUM7YUFDdkU7UUFDSCxDQUFDLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyx3QkFBd0IsRUFBRSxLQUFLLENBQUMsRUFBRTtZQUMzRCxJQUFJLENBQUMsYUFBYSxDQUFDLHlCQUF5QixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDeEUsQ0FBQyxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsU0FBUyxHQUFHLENBQUMsQ0FBQztJQUNyQixDQUFDO0lBRU8sZ0JBQWdCLENBQUMsQ0FBQztRQUN4QixNQUFNLFFBQVEsR0FBZ0IsQ0FBQyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ2xFLE9BQU87Z0JBQ0wsR0FBRyxFQUFFLElBQUksQ0FBQyxHQUFHO2dCQUNiLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSztnQkFDakIsUUFBUSxFQUFFLElBQUksQ0FBQyxRQUFRO2dCQUN2QixFQUFFLEVBQUUsSUFBSSxDQUFDLEVBQUU7Z0JBQ1gsYUFBYSxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSzthQUNuQyxDQUFDO1FBQ0osQ0FBQyxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUNuQyxDQUFDO0lBRVksWUFBWSxDQUFDLFdBQW1COztZQUMzQyxNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsV0FBVyxDQUFDLENBQUM7WUFFeEQsV0FBVyxDQUFDLFVBQVUsR0FBRyxDQUFDLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUU7Z0JBQzdDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztZQUNwRCxDQUFDLENBQUM7WUFFRixJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1lBRXhDLElBQUk7Z0JBQ0YsTUFBTSxXQUFXLEdBQUcsTUFBTSxXQUFXLENBQUMsT0FBTyxDQUFDO2dCQUM5QyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztnQkFDdEMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxDQUFDO2dCQUUvRCxJQUFJLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxXQUFXLENBQUMsQ0FBQztnQkFDeEMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsV0FBVyxDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsQ0FBQztnQkFFMUQsTUFBTSxPQUFPLEdBQUcsTUFBTSxXQUFXLENBQUMsVUFBVSxFQUFFLENBQUM7Z0JBRS9DLE1BQU0sSUFBSSxDQUFDLHFCQUFxQixDQUFDLFdBQVcsRUFBRSxPQUFPLENBQUMsQ0FBQztnQkFFdkQsSUFBSSxDQUFDLGVBQWUsR0FBRyxPQUFPLENBQUM7Z0JBQy9CLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQztnQkFDOUMsTUFBTSxXQUFXLEdBQUcsTUFBTSxXQUFXLENBQUMsV0FBVyxFQUFFLENBQUM7Z0JBQ3BELElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO2FBQ2pEO1lBQUMsT0FBTyxDQUFDLEVBQUU7Z0JBQ1YsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQzthQUNqQztRQUNILENBQUM7S0FBQTtJQUVPLGlCQUFpQixDQUFDLFdBQW1CO1FBQzNDLE9BQU8sUUFBUSxDQUFDLFdBQVcsQ0FBQztZQUMxQixHQUFHLEVBQUUsV0FBVztZQUNoQixPQUFPLEVBQUUsdUJBQXVCO1lBQ2hDLFVBQVUsRUFBRSxJQUFJO1lBQ2hCLGVBQWUsRUFBRSxJQUFJO1NBQ3RCLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFYSxxQkFBcUIsQ0FBQyxXQUFXLEVBQUUsWUFBdUI7O1lBQ3RFLFlBQVksQ0FBQyxPQUFPLENBQUcsQ0FBTyxPQUFnQixFQUFFLEVBQUU7Z0JBQ2hELE1BQU0sSUFBSSxDQUFDLDJCQUEyQixDQUFDLFdBQVcsRUFBRSxPQUFPLENBQUMsQ0FBQztZQUMvRCxDQUFDLENBQUEsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztLQUFBO0lBRWEsMkJBQTJCLENBQUMsV0FBVyxFQUFFLE9BQWdCOztZQUNyRSxPQUFPLENBQUMsVUFBVSxHQUFHLE1BQU0sSUFBSSxDQUFDLG9CQUFvQixDQUFDLFdBQVcsRUFBRSxPQUFPLENBQUMsQ0FBQztZQUMzRSxPQUFPLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBRSxDQUFPLFdBQW9CLEVBQUUsRUFBRTtnQkFDcEQsV0FBVyxDQUFDLFVBQVUsR0FBRyxNQUFNLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxXQUFXLEVBQUUsV0FBVyxDQUFDLENBQUM7Z0JBQ25GLElBQUksQ0FBQywyQkFBMkIsQ0FBQyxXQUFXLEVBQUUsV0FBVyxDQUFDLENBQUM7WUFDN0QsQ0FBQyxDQUFBLENBQUMsQ0FBQztRQUNMLENBQUM7S0FBQTtJQUVhLG9CQUFvQixDQUFDLFdBQVcsRUFBRSxPQUFnQjs7WUFDOUQsTUFBTSxJQUFJLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQztZQUMxQixNQUFNLFNBQVMsR0FBRyxNQUFNLFdBQVcsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDMUQsT0FBTyxNQUFNLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQy9CLENBQUM7S0FBQTtJQUVNLFlBQVksQ0FBQyxHQUFXLEVBQUUsUUFBZ0I7UUFDL0MsSUFBSSxDQUFDLGVBQWUsQ0FBQyxXQUFXLENBQUMsR0FBRyxFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBQ2xELENBQUM7SUFFTSxhQUFhLENBQUMsVUFBa0I7UUFDckMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxpQkFBaUIsR0FBRyxVQUFVLENBQUM7SUFDaEQsQ0FBQztJQUNNLGFBQWE7UUFDbEIsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLGlCQUFpQixDQUFDO0lBQzFDLENBQUM7SUFDTSxnQkFBZ0IsQ0FBQyxRQUFnQjtRQUN0QyxJQUFJLENBQUMsU0FBUyxDQUFDLGlCQUFpQixJQUFJLFFBQVEsQ0FBQztJQUMvQyxDQUFDO0lBRU0sTUFBTSxDQUFDLFNBQTBCO1FBQ3RDLE1BQU0sT0FBTyxHQUFHLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDO1FBRXZELElBQUksQ0FBQyxTQUFTLENBQUMsY0FBYyxDQUFDLGNBQWMsQ0FBQyxPQUFPLEVBQUU7WUFDcEQsS0FBSyxFQUFFLFNBQVMsQ0FBQyxVQUFVO1lBQzNCLFlBQVksRUFBRSxJQUFJO1lBQ2xCLGFBQWEsRUFBRSxTQUFTLENBQUMsU0FBUztZQUNsQyxVQUFVLEVBQUUsU0FBUyxDQUFDLFNBQVM7WUFDL0IsWUFBWSxFQUFFLFNBQVMsQ0FBQyxZQUFZO1lBQ3BDLFlBQVksRUFBRSxTQUFTLENBQUMsUUFBUTtTQUNqQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU0sV0FBVztRQUNoQixJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDbkQsQ0FBQztJQUVNLFVBQVUsQ0FBQyxXQUE0QjtRQUM1QyxJQUFJLFdBQVcsWUFBWSxNQUFNLEVBQUU7WUFDakMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxFQUFFO2dCQUN4QyxXQUFXLENBQUMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLENBQUM7Z0JBQ2pDLFdBQVcsQ0FBQyxDQUFDLENBQUMsR0FBRyxXQUFXLENBQUMsQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDO2dCQUN4QyxXQUFXLENBQUMsQ0FBQyxDQUFDLEdBQUcsV0FBVyxDQUFDLENBQUMsQ0FBQyxJQUFJLElBQUksQ0FBQzthQUN6QztZQUNELFdBQVcsQ0FBQyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDO1NBQ2pDO1FBQ0QsSUFBSSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsVUFBVSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3JELENBQUM7SUFFTSxPQUFPLENBQUMsU0FBaUI7UUFDOUIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ2hFLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxpQkFBaUIsQ0FBQztRQUNsRCxJQUFJLENBQUMsYUFBYSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLGlCQUFpQixDQUFDLENBQUM7SUFDN0UsQ0FBQztJQUVNLFFBQVEsQ0FBQyxTQUFpQjtRQUMvQixJQUFJLENBQUMsU0FBUyxDQUFDLGlCQUFpQixHQUFHLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLFNBQVMsQ0FBQyxDQUFDO1FBQ3ZHLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxpQkFBaUIsQ0FBQztRQUNsRCxJQUFJLENBQUMsYUFBYSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLGlCQUFpQixDQUFDLENBQUM7SUFDN0UsQ0FBQztJQUVPLFlBQVksQ0FBQyxTQUFpQjtRQUNwQyxJQUFJLEtBQUssQ0FBQyxTQUFTLENBQUMsRUFBRTtZQUFFLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQztTQUFFO1FBQ2hELElBQUksU0FBUyxHQUFHLENBQUMsRUFBRTtZQUFFLE9BQU8sQ0FBQyxDQUFDO1NBQUU7UUFDaEMsSUFBSSxTQUFTLEdBQUcsR0FBRyxFQUFFO1lBQUUsT0FBTyxHQUFHLENBQUM7U0FBRTtRQUVwQyxPQUFPLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUMvQixDQUFDO0lBRU0sTUFBTSxDQUFDLFFBQWdCO1FBQzVCLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxhQUFhLEdBQUcsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLGFBQWEsR0FBRyxRQUFRLENBQUMsR0FBRyxHQUFHLENBQUM7SUFDeEYsQ0FBQztJQUVNLGFBQWEsQ0FBQyxRQUFnQjtRQUNuQyxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsYUFBYSxHQUFHLFFBQVEsQ0FBQztJQUNqRCxDQUFDO0lBRU0sMEJBQTBCO1FBQy9CLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUM7SUFDdEMsQ0FBQztJQUVNLHNCQUFzQjtRQUMzQixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsaUJBQWlCLENBQUM7SUFDMUMsQ0FBQztJQUVNLGtCQUFrQixDQUFDLEtBQWE7UUFDckMsSUFBSSxDQUFDLGFBQWEsR0FBRyxLQUFLLENBQUM7SUFDN0IsQ0FBQztJQUVNLGtCQUFrQjtRQUN2QixPQUFPLElBQUksQ0FBQyxhQUFhLENBQUM7SUFDNUIsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgcGRmanNMaWIgZnJvbSAncGRmanMtZGlzdCc7XG5pbXBvcnQgeyBEb3dubG9hZE1hbmFnZXIsIFBERlZpZXdlciB9IGZyb20gJ3BkZmpzLWRpc3Qvd2ViL3BkZl92aWV3ZXInO1xuaW1wb3J0ICdwZGZqcy1kaXN0L2J1aWxkL3BkZi53b3JrZXInO1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgU2VhcmNoT3BlcmF0aW9uLCBUb29sYmFyRXZlbnRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vdG9vbGJhci90b29sYmFyLWV2ZW50LnNlcnZpY2UnO1xuaW1wb3J0IHsgT3V0bGluZSB9IGZyb20gJy4uL3NpZGUtYmFyL291dGxpbmUtaXRlbS9vdXRsaW5lLm1vZGVsJztcbmltcG9ydCB7IFBkZlBvc2l0aW9uIH0gZnJvbSAnLi4vLi4vLi4vc3RvcmUvcmVkdWNlcnMvZG9jdW1lbnQucmVkdWNlcic7XG5cbnBkZmpzTGliLkdsb2JhbFdvcmtlck9wdGlvbnMud29ya2VyU3JjID0gJy9hc3NldHMvYnVpbGQvcGRmLndvcmtlci5taW4uanMnO1xuXG4vKipcbiAqIFZhbHVlcyBvZiB0aGUgc3RhdGUgZmllbGQgcmV0dXJuZWQgYnkgdGhlIGZpbmQgZXZlbnRzXG4gKi9cbmVudW0gRmluZFN0YXRlIHtcbiAgRk9VTkQgPSAwLFxuICBOT1RfRk9VTkQgPSAxLFxuICBXUkFQUEVEID0gMixcbiAgUEVORElORyA9IDMsXG59XG5cbmV4cG9ydCBjbGFzcyBQZGZKc1dyYXBwZXIge1xuXG4gIHByaXZhdGUgem9vbVZhbHVlOiBudW1iZXI7XG4gIHByaXZhdGUgZG9jdW1lbnRUaXRsZTogc3RyaW5nO1xuICBwcml2YXRlIGRvY3VtZW50T3V0bGluZTogT3V0bGluZTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IHBkZlZpZXdlcjogUERGVmlld2VyLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgZG93bmxvYWRNYW5hZ2VyOiBEb3dubG9hZE1hbmFnZXIsXG4gICAgcHJpdmF0ZSByZWFkb25seSB0b29sYmFyRXZlbnRzOiBUb29sYmFyRXZlbnRTZXJ2aWNlLFxuICAgIHB1YmxpYyByZWFkb25seSBkb2N1bWVudExvYWRJbml0OiBTdWJqZWN0PHN0cmluZz4sXG4gICAgcHVibGljIHJlYWRvbmx5IGRvY3VtZW50TG9hZFByb2dyZXNzOiBTdWJqZWN0PERvY3VtZW50TG9hZFByb2dyZXNzPixcbiAgICBwdWJsaWMgcmVhZG9ubHkgZG9jdW1lbnRMb2FkZWQ6IFN1YmplY3Q8YW55PixcbiAgICBwdWJsaWMgcmVhZG9ubHkgb3V0bGluZUxvYWRlZDogU3ViamVjdDxPdXRsaW5lPixcbiAgICBwdWJsaWMgcmVhZG9ubHkgZG9jdW1lbnRMb2FkRmFpbGVkOiBTdWJqZWN0PEVycm9yPixcbiAgICBwdWJsaWMgcmVhZG9ubHkgcGFnZVJlbmRlcmVkOiBTdWJqZWN0PFBhZ2VFdmVudFtdPixcbiAgICBwdWJsaWMgcmVhZG9ubHkgcG9zaXRpb25VcGRhdGVkOiBTdWJqZWN0PHsgbG9jYXRpb246IFBkZlBvc2l0aW9uIH0+LFxuICApIHtcbiAgICB0aGlzLnBkZlZpZXdlci5ldmVudEJ1cy5vbigndXBkYXRldmlld2FyZWEnLCBlID0+IHBvc2l0aW9uVXBkYXRlZC5uZXh0KGUpKTtcbiAgICB0aGlzLnBkZlZpZXdlci5ldmVudEJ1cy5vbigncGFnZWNoYW5naW5nJywgZSA9PiB0aGlzLnRvb2xiYXJFdmVudHMuc2V0Q3VycmVudFBhZ2VJbnB1dFZhbHVlU3ViamVjdC5uZXh0KGUucGFnZU51bWJlcikpO1xuICAgIHRoaXMucGRmVmlld2VyLmV2ZW50QnVzLm9uKCdwYWdlc2luaXQnLCAoKSA9PiB0aGlzLnBkZlZpZXdlci5jdXJyZW50U2NhbGVWYWx1ZSA9ICcxJyk7XG5cbiAgICB0aGlzLnBkZlZpZXdlci5ldmVudEJ1cy5vbigncGFnZXJlbmRlcmVkJywgZSA9PiB7fSk7IC8vIG5vdCB1c2VkIGxlZnQgZm9yIGZ1dHVyZSBjb252ZW5pZW5jZVxuICAgIHRoaXMucGRmVmlld2VyLmV2ZW50QnVzLm9uKCdwYWdlc2xvYWRlZCcsIChlKSA9PiB0aGlzLmVtaXREb2N1bWVudEluZm8oZSkpO1xuICAgIHRoaXMucGRmVmlld2VyLmV2ZW50QnVzLm9uKCdzY2FsZWNoYW5naW5nJywgKGUpID0+ICB0aGlzLmVtaXREb2N1bWVudEluZm8oZSkpO1xuICAgIHRoaXMucGRmVmlld2VyLmV2ZW50QnVzLm9uKCdyb3RhdGlvbmNoYW5naW5nJywgKGUpID0+IHRoaXMuZW1pdERvY3VtZW50SW5mbyhlKSk7XG5cbiAgICB0aGlzLnBkZlZpZXdlci5ldmVudEJ1cy5vbigndXBkYXRlZmluZGNvbnRyb2xzdGF0ZScsIGV2ZW50ID0+IHtcbiAgICAgIGlmIChldmVudC5zdGF0ZSAhPT0gRmluZFN0YXRlLlBFTkRJTkcpIHtcbiAgICAgICAgdGhpcy50b29sYmFyRXZlbnRzLnNlYXJjaFJlc3VsdHNDb3VudFN1YmplY3QubmV4dChldmVudC5tYXRjaGVzQ291bnQpO1xuICAgICAgfVxuICAgIH0pO1xuICAgIHRoaXMucGRmVmlld2VyLmV2ZW50QnVzLm9uKCd1cGRhdGVmaW5kbWF0Y2hlc2NvdW50JywgZXZlbnQgPT4ge1xuICAgICAgdGhpcy50b29sYmFyRXZlbnRzLnNlYXJjaFJlc3VsdHNDb3VudFN1YmplY3QubmV4dChldmVudC5tYXRjaGVzQ291bnQpO1xuICAgIH0pO1xuICAgIHRoaXMuem9vbVZhbHVlID0gMTtcbiAgfVxuXG4gIHByaXZhdGUgZW1pdERvY3VtZW50SW5mbyhlKSB7XG4gICAgY29uc3QgYWxsUGFnZXM6IFBhZ2VFdmVudFtdID0gWy4uLnRoaXMucGRmVmlld2VyLl9wYWdlc10ubWFwKHBhZ2UgPT4ge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgZGl2OiBwYWdlLmRpdixcbiAgICAgICAgc2NhbGU6IHBhZ2Uuc2NhbGUsXG4gICAgICAgIHJvdGF0aW9uOiBwYWdlLnJvdGF0aW9uLFxuICAgICAgICBpZDogcGFnZS5pZCxcbiAgICAgICAgdmlld3BvcnRTY2FsZTogcGFnZS52aWV3cG9ydC5zY2FsZVxuICAgICAgfTtcbiAgICB9KTtcbiAgICB0aGlzLnBhZ2VSZW5kZXJlZC5uZXh0KGFsbFBhZ2VzKTtcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBsb2FkRG9jdW1lbnQoZG9jdW1lbnRVcmw6IHN0cmluZykge1xuICAgIGNvbnN0IGxvYWRpbmdUYXNrID0gdGhpcy5jcmVhdGVMb2FkaW5nVGFzayhkb2N1bWVudFVybCk7XG5cbiAgICBsb2FkaW5nVGFzay5vblByb2dyZXNzID0gKHsgbG9hZGVkLCB0b3RhbCB9KSA9PiB7XG4gICAgICB0aGlzLmRvY3VtZW50TG9hZFByb2dyZXNzLm5leHQoeyBsb2FkZWQsIHRvdGFsIH0pO1xuICAgIH07XG5cbiAgICB0aGlzLmRvY3VtZW50TG9hZEluaXQubmV4dChkb2N1bWVudFVybCk7XG5cbiAgICB0cnkge1xuICAgICAgY29uc3QgcGRmRG9jdW1lbnQgPSBhd2FpdCBsb2FkaW5nVGFzay5wcm9taXNlO1xuICAgICAgdGhpcy5kb2N1bWVudExvYWRlZC5uZXh0KHBkZkRvY3VtZW50KTtcbiAgICAgIHRoaXMudG9vbGJhckV2ZW50cy5wYWdlQ291bnRTdWJqZWN0Lm5leHQocGRmRG9jdW1lbnQubnVtUGFnZXMpO1xuXG4gICAgICB0aGlzLnBkZlZpZXdlci5zZXREb2N1bWVudChwZGZEb2N1bWVudCk7XG4gICAgICB0aGlzLnBkZlZpZXdlci5saW5rU2VydmljZS5zZXREb2N1bWVudChwZGZEb2N1bWVudCwgbnVsbCk7XG5cbiAgICAgIGNvbnN0IG91dGxpbmUgPSBhd2FpdCBwZGZEb2N1bWVudC5nZXRPdXRsaW5lKCk7XG5cbiAgICAgIGF3YWl0IHRoaXMuc2V0T3V0bGluZVBhZ2VOdW1iZXJzKHBkZkRvY3VtZW50LCBvdXRsaW5lKTtcblxuICAgICAgdGhpcy5kb2N1bWVudE91dGxpbmUgPSBvdXRsaW5lO1xuICAgICAgdGhpcy5vdXRsaW5lTG9hZGVkLm5leHQodGhpcy5kb2N1bWVudE91dGxpbmUpO1xuICAgICAgY29uc3QgcGRmTWV0YURhdGEgPSBhd2FpdCBwZGZEb2N1bWVudC5nZXRNZXRhZGF0YSgpO1xuICAgICAgdGhpcy5zZXRDdXJyZW50UERGVGl0bGUocGRmTWV0YURhdGEuaW5mby5UaXRsZSk7XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgdGhpcy5kb2N1bWVudExvYWRGYWlsZWQubmV4dChlKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGNyZWF0ZUxvYWRpbmdUYXNrKGRvY3VtZW50VXJsOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gcGRmanNMaWIuZ2V0RG9jdW1lbnQoe1xuICAgICAgdXJsOiBkb2N1bWVudFVybCxcbiAgICAgIGNNYXBVcmw6ICdhc3NldHMvbWluaWZpZWQvY21hcHMnLFxuICAgICAgY01hcFBhY2tlZDogdHJ1ZSxcbiAgICAgIHdpdGhDcmVkZW50aWFsczogdHJ1ZVxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyBzZXRPdXRsaW5lUGFnZU51bWJlcnMocGRmRG9jdW1lbnQsIG91dGxpbmVBcnJheTogT3V0bGluZVtdKSB7XG4gICAgb3V0bGluZUFycmF5LmZvckVhY2ggKCBhc3luYyAob3V0bGluZTogT3V0bGluZSkgPT4ge1xuICAgICAgYXdhaXQgdGhpcy5zZXROZXN0ZWRPdXRsaW5lUGFnZU51bWJlcnMocGRmRG9jdW1lbnQsIG91dGxpbmUpO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyBzZXROZXN0ZWRPdXRsaW5lUGFnZU51bWJlcnMocGRmRG9jdW1lbnQsIG91dGxpbmU6IE91dGxpbmUpIHtcbiAgICBvdXRsaW5lLnBhZ2VOdW1iZXIgPSBhd2FpdCB0aGlzLmdldE91dGxpbmVQYWdlTnVtYmVyKHBkZkRvY3VtZW50LCBvdXRsaW5lKTtcbiAgICBvdXRsaW5lLml0ZW1zLmZvckVhY2goIGFzeW5jIChvdXRsaW5lSXRlbTogT3V0bGluZSkgPT4ge1xuICAgICAgb3V0bGluZUl0ZW0ucGFnZU51bWJlciA9IGF3YWl0IHRoaXMuZ2V0T3V0bGluZVBhZ2VOdW1iZXIocGRmRG9jdW1lbnQsIG91dGxpbmVJdGVtKTtcbiAgICAgIHRoaXMuc2V0TmVzdGVkT3V0bGluZVBhZ2VOdW1iZXJzKHBkZkRvY3VtZW50LCBvdXRsaW5lSXRlbSk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIGdldE91dGxpbmVQYWdlTnVtYmVyKHBkZkRvY3VtZW50LCBvdXRsaW5lOiBPdXRsaW5lKTogUHJvbWlzZSA8bnVtYmVyPiB7XG4gICAgY29uc3QgZGVzdCA9IG91dGxpbmUuZGVzdDtcbiAgICBjb25zdCBwYWdlSW5kZXggPSBhd2FpdCBwZGZEb2N1bWVudC5nZXRQYWdlSW5kZXgoZGVzdFswXSk7XG4gICAgcmV0dXJuIE51bWJlcihwYWdlSW5kZXgpICsgMTtcbiAgfVxuXG4gIHB1YmxpYyBkb3dubG9hZEZpbGUodXJsOiBzdHJpbmcsIGZpbGVuYW1lOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLmRvd25sb2FkTWFuYWdlci5kb3dubG9hZFVybCh1cmwsIGZpbGVuYW1lKTtcbiAgfVxuXG4gIHB1YmxpYyBzZXRQYWdlTnVtYmVyKHBhZ2VOdW1iZXI6IG51bWJlcik6IHZvaWQge1xuICAgIHRoaXMucGRmVmlld2VyLmN1cnJlbnRQYWdlTnVtYmVyID0gcGFnZU51bWJlcjtcbiAgfVxuICBwdWJsaWMgZ2V0UGFnZU51bWJlcigpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLnBkZlZpZXdlci5jdXJyZW50UGFnZU51bWJlcjtcbiAgfVxuICBwdWJsaWMgY2hhbmdlUGFnZU51bWJlcihudW1QYWdlczogbnVtYmVyKTogdm9pZCB7XG4gICAgdGhpcy5wZGZWaWV3ZXIuY3VycmVudFBhZ2VOdW1iZXIgKz0gbnVtUGFnZXM7XG4gIH1cblxuICBwdWJsaWMgc2VhcmNoKG9wZXJhdGlvbjogU2VhcmNoT3BlcmF0aW9uKTogdm9pZCB7XG4gICAgY29uc3QgY29tbWFuZCA9IG9wZXJhdGlvbi5yZXNldCA/ICdmaW5kJyA6ICdmaW5kYWdhaW4nO1xuXG4gICAgdGhpcy5wZGZWaWV3ZXIuZmluZENvbnRyb2xsZXIuZXhlY3V0ZUNvbW1hbmQoY29tbWFuZCwge1xuICAgICAgcXVlcnk6IG9wZXJhdGlvbi5zZWFyY2hUZXJtLFxuICAgICAgcGhyYXNlU2VhcmNoOiB0cnVlLFxuICAgICAgY2FzZVNlbnNpdGl2ZTogb3BlcmF0aW9uLm1hdGNoQ2FzZSxcbiAgICAgIGVudGlyZVdvcmQ6IG9wZXJhdGlvbi53aG9sZVdvcmQsXG4gICAgICBoaWdobGlnaHRBbGw6IG9wZXJhdGlvbi5oaWdobGlnaHRBbGwsXG4gICAgICBmaW5kUHJldmlvdXM6IG9wZXJhdGlvbi5wcmV2aW91cyxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBjbGVhclNlYXJjaCgpOiB2b2lkIHtcbiAgICB0aGlzLnBkZlZpZXdlci5ldmVudEJ1cy5kaXNwYXRjaCgnZmluZGJhcmNsb3NlJyk7XG4gIH1cblxuICBwdWJsaWMgbmF2aWdhdGVUbyhkZXN0aW5hdGlvbjogb2JqZWN0IHwgbnVtYmVyKSB7XG4gICAgaWYgKGRlc3RpbmF0aW9uIGluc3RhbmNlb2YgT2JqZWN0KSB7XG4gICAgICBpZiAoIWRlc3RpbmF0aW9uWzFdLm5hbWUuaW5jbHVkZXMoJ1hZWicpKSB7XG4gICAgICAgIGRlc3RpbmF0aW9uWzFdID0geyBuYW1lOiAnWFlaJyB9O1xuICAgICAgICBkZXN0aW5hdGlvblsyXSA9IGRlc3RpbmF0aW9uWzJdIHx8IG51bGw7XG4gICAgICAgIGRlc3RpbmF0aW9uWzNdID0gZGVzdGluYXRpb25bM10gfHwgbnVsbDtcbiAgICAgIH1cbiAgICAgIGRlc3RpbmF0aW9uWzRdID0gdGhpcy56b29tVmFsdWU7XG4gICAgfVxuICAgIHRoaXMucGRmVmlld2VyLmxpbmtTZXJ2aWNlLm5hdmlnYXRlVG8oZGVzdGluYXRpb24pO1xuICB9XG5cbiAgcHVibGljIHNldFpvb20oem9vbVZhbHVlOiBudW1iZXIpOiB2b2lkIHtcbiAgICB0aGlzLnBkZlZpZXdlci5jdXJyZW50U2NhbGVWYWx1ZSA9IHRoaXMuZ2V0Wm9vbVZhbHVlKHpvb21WYWx1ZSk7XG4gICAgdGhpcy56b29tVmFsdWUgPSB0aGlzLnBkZlZpZXdlci5jdXJyZW50U2NhbGVWYWx1ZTtcbiAgICB0aGlzLnRvb2xiYXJFdmVudHMuem9vbVZhbHVlU3ViamVjdC5uZXh0KHRoaXMucGRmVmlld2VyLmN1cnJlbnRTY2FsZVZhbHVlKTtcbiAgfVxuXG4gIHB1YmxpYyBzdGVwWm9vbSh6b29tVmFsdWU6IG51bWJlcik6IHZvaWQge1xuICAgIHRoaXMucGRmVmlld2VyLmN1cnJlbnRTY2FsZVZhbHVlID0gK3RoaXMuZ2V0Wm9vbVZhbHVlKCgrdGhpcy5wZGZWaWV3ZXIuY3VycmVudFNjYWxlVmFsdWUpICsgem9vbVZhbHVlKTtcbiAgICB0aGlzLnpvb21WYWx1ZSA9IHRoaXMucGRmVmlld2VyLmN1cnJlbnRTY2FsZVZhbHVlO1xuICAgIHRoaXMudG9vbGJhckV2ZW50cy56b29tVmFsdWVTdWJqZWN0Lm5leHQodGhpcy5wZGZWaWV3ZXIuY3VycmVudFNjYWxlVmFsdWUpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRab29tVmFsdWUoem9vbVZhbHVlOiBudW1iZXIpOiBudW1iZXIge1xuICAgIGlmIChpc05hTih6b29tVmFsdWUpKSB7IHJldHVybiB0aGlzLnpvb21WYWx1ZTsgfVxuICAgIGlmICh6b29tVmFsdWUgPiA1KSB7IHJldHVybiA1OyB9XG4gICAgaWYgKHpvb21WYWx1ZSA8IDAuMSkgeyByZXR1cm4gMC4xOyB9XG5cbiAgICByZXR1cm4gK3pvb21WYWx1ZS50b0ZpeGVkKDIpO1xuICB9XG5cbiAgcHVibGljIHJvdGF0ZShyb3RhdGlvbjogbnVtYmVyKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5wZGZWaWV3ZXIucGFnZXNSb3RhdGlvbiA9ICh0aGlzLnBkZlZpZXdlci5wYWdlc1JvdGF0aW9uICsgcm90YXRpb24pICUgMzYwO1xuICB9XG5cbiAgcHVibGljIHJlc2V0Um90YXRpb24ocm90YXRpb246IG51bWJlcik6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMucGRmVmlld2VyLnBhZ2VzUm90YXRpb24gPSByb3RhdGlvbjtcbiAgfVxuXG4gIHB1YmxpYyBnZXROb3JtYWxpc2VkUGFnZXNSb3RhdGlvbigpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLnBkZlZpZXdlci5wYWdlc1JvdGF0aW9uO1xuICB9XG5cbiAgcHVibGljIGdldEN1cnJlbnRQREZab29tVmFsdWUoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5wZGZWaWV3ZXIuY3VycmVudFNjYWxlVmFsdWU7XG4gIH1cblxuICBwdWJsaWMgc2V0Q3VycmVudFBERlRpdGxlKHRpdGxlOiBzdHJpbmcpIHtcbiAgICB0aGlzLmRvY3VtZW50VGl0bGUgPSB0aXRsZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRDdXJyZW50UERGVGl0bGUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5kb2N1bWVudFRpdGxlO1xuICB9XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRG9jdW1lbnRMb2FkUHJvZ3Jlc3Mge1xuICBsb2FkZWQ6IG51bWJlcjtcbiAgdG90YWw6IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQYWdlRXZlbnQge1xuICBkaXY6IG9iamVjdDtcbiAgc2NhbGU6IG51bWJlcjtcbiAgcm90YXRpb246IG51bWJlcjtcbiAgaWQ6IHN0cmluZztcbiAgdmlld3BvcnRTY2FsZTogbnVtYmVyO1xufVxuIl19
|
|
@@ -1,7 +1,3 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @fileoverview added by tsickle
|
|
3
|
-
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
4
|
-
*/
|
|
5
1
|
import * as pdfjsViewer from 'pdfjs-dist/web/pdf_viewer';
|
|
6
2
|
import { Injectable } from '@angular/core';
|
|
7
3
|
import { PdfJsWrapper } from './pdf-js-wrapper';
|
|
@@ -10,25 +6,16 @@ import { ToolbarEventService } from '../../../toolbar/toolbar-event.service';
|
|
|
10
6
|
import * as i0 from "@angular/core";
|
|
11
7
|
import * as i1 from "../../../toolbar/toolbar-event.service";
|
|
12
8
|
export class PdfJsWrapperFactory {
|
|
13
|
-
/**
|
|
14
|
-
* @param {?} toolbarEvents
|
|
15
|
-
*/
|
|
16
9
|
constructor(toolbarEvents) {
|
|
17
10
|
this.toolbarEvents = toolbarEvents;
|
|
18
11
|
this.linkService = new pdfjsViewer.PDFLinkService();
|
|
19
12
|
this.eventBus = new pdfjsViewer.EventBus();
|
|
20
13
|
}
|
|
21
|
-
/**
|
|
22
|
-
* @param {?} container
|
|
23
|
-
* @return {?}
|
|
24
|
-
*/
|
|
25
14
|
create(container) {
|
|
26
|
-
/** @type {?} */
|
|
27
15
|
const pdfFindController = new pdfjsViewer.PDFFindController({
|
|
28
16
|
linkService: this.linkService,
|
|
29
17
|
eventBus: this.eventBus
|
|
30
18
|
});
|
|
31
|
-
/** @type {?} */
|
|
32
19
|
const pdfViewer = new pdfjsViewer.PDFViewer({
|
|
33
20
|
container: container.nativeElement,
|
|
34
21
|
linkService: this.linkService,
|
|
@@ -41,13 +28,11 @@ export class PdfJsWrapperFactory {
|
|
|
41
28
|
this.pdfJsWrapper = new PdfJsWrapper(pdfViewer, new pdfjsViewer.DownloadManager({}), this.toolbarEvents, new Subject(), new Subject(), new Subject(), new Subject(), new Subject(), new Subject(), new Subject());
|
|
42
29
|
return this.pdfJsWrapper;
|
|
43
30
|
}
|
|
44
|
-
/**
|
|
45
|
-
* @return {?}
|
|
46
|
-
*/
|
|
47
31
|
pdfWrapper() {
|
|
48
32
|
return this.pdfJsWrapper;
|
|
49
33
|
}
|
|
50
34
|
}
|
|
35
|
+
/** @nocollapse */ PdfJsWrapperFactory.ɵprov = i0.ɵɵdefineInjectable({ factory: function PdfJsWrapperFactory_Factory() { return new PdfJsWrapperFactory(i0.ɵɵinject(i1.ToolbarEventService)); }, token: PdfJsWrapperFactory, providedIn: "root" });
|
|
51
36
|
PdfJsWrapperFactory.decorators = [
|
|
52
37
|
{ type: Injectable, args: [{ providedIn: 'root' },] }
|
|
53
38
|
];
|
|
@@ -55,27 +40,4 @@ PdfJsWrapperFactory.decorators = [
|
|
|
55
40
|
PdfJsWrapperFactory.ctorParameters = () => [
|
|
56
41
|
{ type: ToolbarEventService }
|
|
57
42
|
];
|
|
58
|
-
|
|
59
|
-
if (false) {
|
|
60
|
-
/**
|
|
61
|
-
* @type {?}
|
|
62
|
-
* @private
|
|
63
|
-
*/
|
|
64
|
-
PdfJsWrapperFactory.prototype.linkService;
|
|
65
|
-
/**
|
|
66
|
-
* @type {?}
|
|
67
|
-
* @private
|
|
68
|
-
*/
|
|
69
|
-
PdfJsWrapperFactory.prototype.eventBus;
|
|
70
|
-
/**
|
|
71
|
-
* @type {?}
|
|
72
|
-
* @private
|
|
73
|
-
*/
|
|
74
|
-
PdfJsWrapperFactory.prototype.pdfJsWrapper;
|
|
75
|
-
/**
|
|
76
|
-
* @type {?}
|
|
77
|
-
* @private
|
|
78
|
-
*/
|
|
79
|
-
PdfJsWrapperFactory.prototype.toolbarEvents;
|
|
80
|
-
}
|
|
81
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGRmLWpzLXdyYXBwZXIucHJvdmlkZXIuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AaG1jdHMvbWVkaWEtdmlld2VyLyIsInNvdXJjZXMiOlsibGliL3ZpZXdlcnMvcGRmLXZpZXdlci9wZGYtanMvcGRmLWpzLXdyYXBwZXIucHJvdmlkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sS0FBSyxXQUFXLE1BQU0sMkJBQTJCLENBQUM7QUFDekQsT0FBTyxFQUFjLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2RCxPQUFPLEVBQWtDLFlBQVksRUFBQyxNQUFNLGtCQUFrQixDQUFDO0FBQy9FLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7OztBQUs3RSxNQUFNLE9BQU8sbUJBQW1COzs7O0lBTTlCLFlBQTZCLGFBQWtDO1FBQWxDLGtCQUFhLEdBQWIsYUFBYSxDQUFxQjtRQUM3RCxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksV0FBVyxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3BELElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxXQUFXLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDN0MsQ0FBQzs7Ozs7SUFFTSxNQUFNLENBQUMsU0FBcUI7O2NBQzNCLGlCQUFpQixHQUFHLElBQUksV0FBVyxDQUFDLGlCQUFpQixDQUFDO1lBQzFELFdBQVcsRUFBRSxJQUFJLENBQUMsV0FBVztZQUM3QixRQUFRLEVBQUUsSUFBSSxDQUFDLFFBQVE7U0FDeEIsQ0FBQzs7Y0FFSSxTQUFTLEdBQUcsSUFBSSxXQUFXLENBQUMsU0FBUyxDQUFDO1lBQzFDLFNBQVMsRUFBRSxTQUFTLENBQUMsYUFBYTtZQUNsQyxXQUFXLEVBQUUsSUFBSSxDQUFDLFdBQVc7WUFDN0IsY0FBYyxFQUFFLGlCQUFpQjtZQUNqQyxRQUFRLEVBQUUsSUFBSSxDQUFDLFFBQVE7WUFDdkIsa0JBQWtCLEVBQUUsaUJBQWlCO1lBQ3JDLGFBQWEsRUFBRSxDQUFDO1NBQ2pCLENBQUM7UUFFRixJQUFJLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUV0QyxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksWUFBWSxDQUNsQyxTQUFTLEVBQ1QsSUFBSSxXQUFXLENBQUMsZUFBZSxDQUFDLEVBQUUsQ0FBQyxFQUNuQyxJQUFJLENBQUMsYUFBYSxFQUNsQixJQUFJLE9BQU8sRUFBVSxFQUNyQixJQUFJLE9BQU8sRUFBd0IsRUFDbkMsSUFBSSxPQUFPLEVBQU8sRUFDbEIsSUFBSSxPQUFPLEVBQVcsRUFDdEIsSUFBSSxPQUFPLEVBQUUsRUFDYixJQUFJLE9BQU8sRUFBZSxFQUMxQixJQUFJLE9BQU8sRUFBNkIsQ0FDekMsQ0FBQztRQUVGLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQztJQUMzQixDQUFDOzs7O0lBRUQsVUFBVTtRQUNSLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQztJQUMzQixDQUFDOzs7WUEvQ0YsVUFBVSxTQUFDLEVBQUMsVUFBVSxFQUFFLE1BQU0sRUFBQzs7OztZQUp2QixtQkFBbUI7Ozs7Ozs7O0lBTzFCLDBDQUFnRDs7Ozs7SUFDaEQsdUNBQXVDOzs7OztJQUN2QywyQ0FBbUM7Ozs7O0lBRXZCLDRDQUFtRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIHBkZmpzVmlld2VyIGZyb20gJ3BkZmpzLWRpc3Qvd2ViL3BkZl92aWV3ZXInO1xuaW1wb3J0IHsgRWxlbWVudFJlZiwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtEb2N1bWVudExvYWRQcm9ncmVzcywgUGFnZUV2ZW50LCBQZGZKc1dyYXBwZXJ9IGZyb20gJy4vcGRmLWpzLXdyYXBwZXInO1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgVG9vbGJhckV2ZW50U2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3Rvb2xiYXIvdG9vbGJhci1ldmVudC5zZXJ2aWNlJztcbmltcG9ydCB7IE91dGxpbmUgfSBmcm9tICcuLi9zaWRlLWJhci9vdXRsaW5lLWl0ZW0vb3V0bGluZS5tb2RlbCc7XG5pbXBvcnQgeyBQZGZQb3NpdGlvbiB9IGZyb20gJy4uLy4uLy4uL3N0b3JlL3JlZHVjZXJzL2RvY3VtZW50LnJlZHVjZXInO1xuXG5ASW5qZWN0YWJsZSh7cHJvdmlkZWRJbjogJ3Jvb3QnfSlcbmV4cG9ydCBjbGFzcyBQZGZKc1dyYXBwZXJGYWN0b3J5IHtcblxuICBwcml2YXRlIGxpbmtTZXJ2aWNlOiBwZGZqc1ZpZXdlci5QREZMaW5rU2VydmljZTtcbiAgcHJpdmF0ZSBldmVudEJ1czogcGRmanNWaWV3ZXIuRXZlbnRCdXM7XG4gIHByaXZhdGUgcGRmSnNXcmFwcGVyOiBQZGZKc1dyYXBwZXI7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSB0b29sYmFyRXZlbnRzOiBUb29sYmFyRXZlbnRTZXJ2aWNlKSB7XG4gICAgdGhpcy5saW5rU2VydmljZSA9IG5ldyBwZGZqc1ZpZXdlci5QREZMaW5rU2VydmljZSgpO1xuICAgIHRoaXMuZXZlbnRCdXMgPSBuZXcgcGRmanNWaWV3ZXIuRXZlbnRCdXMoKTtcbiAgfVxuXG4gIHB1YmxpYyBjcmVhdGUoY29udGFpbmVyOiBFbGVtZW50UmVmKTogUGRmSnNXcmFwcGVyIHtcbiAgICBjb25zdCBwZGZGaW5kQ29udHJvbGxlciA9IG5ldyBwZGZqc1ZpZXdlci5QREZGaW5kQ29udHJvbGxlcih7XG4gICAgICBsaW5rU2VydmljZTogdGhpcy5saW5rU2VydmljZSxcbiAgICAgIGV2ZW50QnVzOiB0aGlzLmV2ZW50QnVzXG4gICAgfSk7XG5cbiAgICBjb25zdCBwZGZWaWV3ZXIgPSBuZXcgcGRmanNWaWV3ZXIuUERGVmlld2VyKHtcbiAgICAgIGNvbnRhaW5lcjogY29udGFpbmVyLm5hdGl2ZUVsZW1lbnQsXG4gICAgICBsaW5rU2VydmljZTogdGhpcy5saW5rU2VydmljZSxcbiAgICAgIGZpbmRDb250cm9sbGVyOiBwZGZGaW5kQ29udHJvbGxlcixcbiAgICAgIGV2ZW50QnVzOiB0aGlzLmV2ZW50QnVzLFxuICAgICAgaW1hZ2VSZXNvdXJjZXNQYXRoOiAnL2Fzc2V0cy9pbWFnZXMvJyxcbiAgICAgIHRleHRMYXllck1vZGU6IDJcbiAgICB9KTtcblxuICAgIHRoaXMubGlua1NlcnZpY2Uuc2V0Vmlld2VyKHBkZlZpZXdlcik7XG5cbiAgICB0aGlzLnBkZkpzV3JhcHBlciA9IG5ldyBQZGZKc1dyYXBwZXIoXG4gICAgICBwZGZWaWV3ZXIsXG4gICAgICBuZXcgcGRmanNWaWV3ZXIuRG93bmxvYWRNYW5hZ2VyKHt9KSxcbiAgICAgIHRoaXMudG9vbGJhckV2ZW50cyxcbiAgICAgIG5ldyBTdWJqZWN0PHN0cmluZz4oKSxcbiAgICAgIG5ldyBTdWJqZWN0PERvY3VtZW50TG9hZFByb2dyZXNzPigpLFxuICAgICAgbmV3IFN1YmplY3Q8YW55PigpLFxuICAgICAgbmV3IFN1YmplY3Q8T3V0bGluZT4oKSxcbiAgICAgIG5ldyBTdWJqZWN0KCksXG4gICAgICBuZXcgU3ViamVjdDxQYWdlRXZlbnRbXT4oKSxcbiAgICAgIG5ldyBTdWJqZWN0PHsgbG9jYXRpb246IFBkZlBvc2l0aW9uIH0+KClcbiAgICApO1xuXG4gICAgcmV0dXJuIHRoaXMucGRmSnNXcmFwcGVyO1xuICB9XG5cbiAgcGRmV3JhcHBlcigpIHtcbiAgICByZXR1cm4gdGhpcy5wZGZKc1dyYXBwZXI7XG4gIH1cbn1cbiJdfQ==
|
|
43
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGRmLWpzLXdyYXBwZXIucHJvdmlkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tZWRpYS12aWV3ZXIvc3JjL2xpYi92aWV3ZXJzL3BkZi12aWV3ZXIvcGRmLWpzL3BkZi1qcy13cmFwcGVyLnByb3ZpZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxXQUFXLE1BQU0sMkJBQTJCLENBQUM7QUFDekQsT0FBTyxFQUFjLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2RCxPQUFPLEVBQWtDLFlBQVksRUFBQyxNQUFNLGtCQUFrQixDQUFDO0FBQy9FLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7OztBQUs3RSxNQUFNLE9BQU8sbUJBQW1CO0lBTTlCLFlBQTZCLGFBQWtDO1FBQWxDLGtCQUFhLEdBQWIsYUFBYSxDQUFxQjtRQUM3RCxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksV0FBVyxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3BELElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxXQUFXLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDN0MsQ0FBQztJQUVNLE1BQU0sQ0FBQyxTQUFxQjtRQUNqQyxNQUFNLGlCQUFpQixHQUFHLElBQUksV0FBVyxDQUFDLGlCQUFpQixDQUFDO1lBQzFELFdBQVcsRUFBRSxJQUFJLENBQUMsV0FBVztZQUM3QixRQUFRLEVBQUUsSUFBSSxDQUFDLFFBQVE7U0FDeEIsQ0FBQyxDQUFDO1FBRUgsTUFBTSxTQUFTLEdBQUcsSUFBSSxXQUFXLENBQUMsU0FBUyxDQUFDO1lBQzFDLFNBQVMsRUFBRSxTQUFTLENBQUMsYUFBYTtZQUNsQyxXQUFXLEVBQUUsSUFBSSxDQUFDLFdBQVc7WUFDN0IsY0FBYyxFQUFFLGlCQUFpQjtZQUNqQyxRQUFRLEVBQUUsSUFBSSxDQUFDLFFBQVE7WUFDdkIsa0JBQWtCLEVBQUUsaUJBQWlCO1lBQ3JDLGFBQWEsRUFBRSxDQUFDO1NBQ2pCLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBRXRDLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxZQUFZLENBQ2xDLFNBQVMsRUFDVCxJQUFJLFdBQVcsQ0FBQyxlQUFlLENBQUMsRUFBRSxDQUFDLEVBQ25DLElBQUksQ0FBQyxhQUFhLEVBQ2xCLElBQUksT0FBTyxFQUFVLEVBQ3JCLElBQUksT0FBTyxFQUF3QixFQUNuQyxJQUFJLE9BQU8sRUFBTyxFQUNsQixJQUFJLE9BQU8sRUFBVyxFQUN0QixJQUFJLE9BQU8sRUFBRSxFQUNiLElBQUksT0FBTyxFQUFlLEVBQzFCLElBQUksT0FBTyxFQUE2QixDQUN6QyxDQUFDO1FBRUYsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDO0lBQzNCLENBQUM7SUFFRCxVQUFVO1FBQ1IsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDO0lBQzNCLENBQUM7Ozs7WUEvQ0YsVUFBVSxTQUFDLEVBQUMsVUFBVSxFQUFFLE1BQU0sRUFBQzs7OztZQUp2QixtQkFBbUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBwZGZqc1ZpZXdlciBmcm9tICdwZGZqcy1kaXN0L3dlYi9wZGZfdmlld2VyJztcbmltcG9ydCB7IEVsZW1lbnRSZWYsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7RG9jdW1lbnRMb2FkUHJvZ3Jlc3MsIFBhZ2VFdmVudCwgUGRmSnNXcmFwcGVyfSBmcm9tICcuL3BkZi1qcy13cmFwcGVyJztcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFRvb2xiYXJFdmVudFNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi90b29sYmFyL3Rvb2xiYXItZXZlbnQuc2VydmljZSc7XG5pbXBvcnQgeyBPdXRsaW5lIH0gZnJvbSAnLi4vc2lkZS1iYXIvb3V0bGluZS1pdGVtL291dGxpbmUubW9kZWwnO1xuaW1wb3J0IHsgUGRmUG9zaXRpb24gfSBmcm9tICcuLi8uLi8uLi9zdG9yZS9yZWR1Y2Vycy9kb2N1bWVudC5yZWR1Y2VyJztcblxuQEluamVjdGFibGUoe3Byb3ZpZGVkSW46ICdyb290J30pXG5leHBvcnQgY2xhc3MgUGRmSnNXcmFwcGVyRmFjdG9yeSB7XG5cbiAgcHJpdmF0ZSBsaW5rU2VydmljZTogcGRmanNWaWV3ZXIuUERGTGlua1NlcnZpY2U7XG4gIHByaXZhdGUgZXZlbnRCdXM6IHBkZmpzVmlld2VyLkV2ZW50QnVzO1xuICBwcml2YXRlIHBkZkpzV3JhcHBlcjogUGRmSnNXcmFwcGVyO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgdG9vbGJhckV2ZW50czogVG9vbGJhckV2ZW50U2VydmljZSkge1xuICAgIHRoaXMubGlua1NlcnZpY2UgPSBuZXcgcGRmanNWaWV3ZXIuUERGTGlua1NlcnZpY2UoKTtcbiAgICB0aGlzLmV2ZW50QnVzID0gbmV3IHBkZmpzVmlld2VyLkV2ZW50QnVzKCk7XG4gIH1cblxuICBwdWJsaWMgY3JlYXRlKGNvbnRhaW5lcjogRWxlbWVudFJlZik6IFBkZkpzV3JhcHBlciB7XG4gICAgY29uc3QgcGRmRmluZENvbnRyb2xsZXIgPSBuZXcgcGRmanNWaWV3ZXIuUERGRmluZENvbnRyb2xsZXIoe1xuICAgICAgbGlua1NlcnZpY2U6IHRoaXMubGlua1NlcnZpY2UsXG4gICAgICBldmVudEJ1czogdGhpcy5ldmVudEJ1c1xuICAgIH0pO1xuXG4gICAgY29uc3QgcGRmVmlld2VyID0gbmV3IHBkZmpzVmlld2VyLlBERlZpZXdlcih7XG4gICAgICBjb250YWluZXI6IGNvbnRhaW5lci5uYXRpdmVFbGVtZW50LFxuICAgICAgbGlua1NlcnZpY2U6IHRoaXMubGlua1NlcnZpY2UsXG4gICAgICBmaW5kQ29udHJvbGxlcjogcGRmRmluZENvbnRyb2xsZXIsXG4gICAgICBldmVudEJ1czogdGhpcy5ldmVudEJ1cyxcbiAgICAgIGltYWdlUmVzb3VyY2VzUGF0aDogJy9hc3NldHMvaW1hZ2VzLycsXG4gICAgICB0ZXh0TGF5ZXJNb2RlOiAyXG4gICAgfSk7XG5cbiAgICB0aGlzLmxpbmtTZXJ2aWNlLnNldFZpZXdlcihwZGZWaWV3ZXIpO1xuXG4gICAgdGhpcy5wZGZKc1dyYXBwZXIgPSBuZXcgUGRmSnNXcmFwcGVyKFxuICAgICAgcGRmVmlld2VyLFxuICAgICAgbmV3IHBkZmpzVmlld2VyLkRvd25sb2FkTWFuYWdlcih7fSksXG4gICAgICB0aGlzLnRvb2xiYXJFdmVudHMsXG4gICAgICBuZXcgU3ViamVjdDxzdHJpbmc+KCksXG4gICAgICBuZXcgU3ViamVjdDxEb2N1bWVudExvYWRQcm9ncmVzcz4oKSxcbiAgICAgIG5ldyBTdWJqZWN0PGFueT4oKSxcbiAgICAgIG5ldyBTdWJqZWN0PE91dGxpbmU+KCksXG4gICAgICBuZXcgU3ViamVjdCgpLFxuICAgICAgbmV3IFN1YmplY3Q8UGFnZUV2ZW50W10+KCksXG4gICAgICBuZXcgU3ViamVjdDx7IGxvY2F0aW9uOiBQZGZQb3NpdGlvbiB9PigpXG4gICAgKTtcblxuICAgIHJldHVybiB0aGlzLnBkZkpzV3JhcHBlcjtcbiAgfVxuXG4gIHBkZldyYXBwZXIoKSB7XG4gICAgcmV0dXJuIHRoaXMucGRmSnNXcmFwcGVyO1xuICB9XG59XG4iXX0=
|