@hmcts/media-viewer 2.9.4-RC.8 → 2.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/assets/all.scss +1 -1
- package/assets/sass/tags.scss +1 -1
- package/assets/sass/toolbar/main-toolbar.scss +7 -6
- package/esm2020/hmcts-media-viewer.mjs +5 -0
- package/esm2020/lib/annotations/annotation-set/annotation-create/box-highlight-create/box-highlight-create.component.mjs +116 -0
- package/esm2020/lib/annotations/annotation-set/annotation-create/highlight-create/highlight-create.directive.mjs +109 -0
- package/esm2020/lib/annotations/annotation-set/annotation-create/highlight-create/highlight-create.service.mjs +75 -0
- package/esm2020/lib/annotations/annotation-set/annotation-set.component.mjs +50 -0
- package/esm2020/lib/annotations/annotation-set/annotation-view/annotation-view.component.mjs +94 -0
- package/esm2020/lib/annotations/annotation-set/annotation-view/rectangle/rectangle.component.mjs +116 -0
- package/esm2020/lib/annotations/annotation-set/ctx-toolbar/ctx-toolbar.component.mjs +118 -0
- package/esm2020/lib/annotations/annotation-set/metadata-layer/metadata-layer.component.mjs +87 -0
- package/esm2020/lib/annotations/annotations.module.mjs +158 -0
- package/esm2020/lib/annotations/comment-set/comment/comment.component.mjs +176 -0
- package/esm2020/lib/annotations/comment-set/comment/comment.service.mjs +50 -0
- package/esm2020/lib/annotations/comment-set/comment/text-highlight/text-highlight.directive.mjs +47 -0
- package/esm2020/lib/annotations/comment-set/comment/textarea-auto-expand/textarea-auto-expand.directive.mjs +31 -0
- package/esm2020/lib/annotations/comment-set/comment-navigate/comments-navigate.component.mjs +91 -0
- package/esm2020/lib/annotations/comment-set/comment-set-header/comment-filter/comment-filter.component.mjs +61 -0
- package/esm2020/lib/annotations/comment-set/comment-set-header/comment-search/comment-search.component.mjs +53 -0
- package/esm2020/lib/annotations/comment-set/comment-set-header/comment-set-header.component.mjs +68 -0
- package/esm2020/lib/annotations/comment-set/comment-set-render.service.mjs +54 -0
- package/esm2020/lib/annotations/comment-set/comment-set.component.mjs +123 -0
- package/esm2020/lib/annotations/comments-summary/comments-summary.component.mjs +113 -0
- package/esm2020/lib/annotations/pipes/date/date.pipe.mjs +26 -0
- package/esm2020/lib/annotations/pipes/filter/filter.pipe.mjs +32 -0
- package/esm2020/lib/annotations/pipes/unsnake/unsnake.pipe.mjs +16 -0
- package/esm2020/lib/annotations/services/annotation-api/annotation-api.service.mjs +58 -0
- package/esm2020/lib/annotations/services/bookmarks-api/bookmarks-api.service.mjs +45 -0
- package/esm2020/lib/annotations/services/tags/tags.services.mjs +41 -0
- package/esm2020/lib/annotations/tags/tags.component.mjs +53 -0
- package/esm2020/lib/bookmark/components/bookmark-icons.component.mjs +25 -0
- package/esm2020/lib/icp/confirm-exit/confirm-action-dialog.component.mjs +22 -0
- package/esm2020/lib/icp/icp-follower.service.mjs +60 -0
- package/esm2020/lib/icp/icp-presenter.service.mjs +55 -0
- package/esm2020/lib/icp/icp-session-api.service.mjs +21 -0
- package/esm2020/lib/icp/icp-update.service.mjs +57 -0
- package/esm2020/lib/icp/icp.service.mjs +93 -0
- package/esm2020/lib/icp/participants-list/participants-list.component.mjs +30 -0
- package/esm2020/lib/icp/socket.service.mjs +118 -0
- package/esm2020/lib/media-viewer.component.mjs +244 -0
- package/esm2020/lib/media-viewer.module.mjs +151 -0
- package/esm2020/lib/print.service.mjs +30 -0
- package/esm2020/lib/redaction/components/redaction.component.mjs +91 -0
- package/esm2020/lib/redaction/services/redaction-api.service.mjs +50 -0
- package/esm2020/lib/shared/gov-uk-date/gov-uk-date.component.mjs +28 -0
- package/esm2020/lib/shared/gov-uk-error-message/gov-uk-error-message.component.mjs +34 -0
- package/esm2020/lib/shared/gov-uk-fieldset/gov-uk-fieldset.component.mjs +63 -0
- package/esm2020/lib/shared/gov-uk-label/gov-uk-label.component.mjs +44 -0
- package/esm2020/lib/shared/shared.module.mjs +53 -0
- package/esm2020/lib/shared/util/services/number.helper.service.mjs +23 -0
- package/{esm2015/lib/store/bookmarks-store-utils.js → esm2020/lib/store/bookmarks-store-utils.mjs} +1 -3
- package/esm2020/lib/store/effects/annotation.effects.mjs +44 -0
- package/esm2020/lib/store/effects/bookmarks.effects.mjs +44 -0
- package/esm2020/lib/store/effects/document.effects.mjs +44 -0
- package/esm2020/lib/store/effects/icp.effects.mjs +26 -0
- package/esm2020/lib/store/effects/redaction.effects.mjs +67 -0
- package/esm2020/lib/store/reducers/annotations.reducer.mjs +183 -0
- package/esm2020/lib/store/reducers/bookmarks.reducer.mjs +116 -0
- package/esm2020/lib/store/reducers/document.reducer.mjs +135 -0
- package/esm2020/lib/store/reducers/icp.reducer.mjs +56 -0
- package/esm2020/lib/store/reducers/redaction.reducer.mjs +116 -0
- package/esm2020/lib/store/reducers/tags.reducer.mjs +93 -0
- package/esm2020/lib/store/selectors/annotation.selectors.mjs +81 -0
- package/esm2020/lib/store/selectors/bookmark.selectors.mjs +36 -0
- package/{esm2015/lib/store/selectors/document.selectors.js → esm2020/lib/store/selectors/document.selectors.mjs} +3 -6
- package/esm2020/lib/store/selectors/icp.selectors.mjs +13 -0
- package/{esm2015/lib/store/selectors/redaction.selectors.js → esm2020/lib/store/selectors/redaction.selectors.mjs} +6 -10
- package/{esm2015/lib/store/selectors/tag.selectors.js → esm2020/lib/store/selectors/tag.selectors.mjs} +4 -7
- package/esm2020/lib/store/store-utils.mjs +131 -0
- package/esm2020/lib/toolbar/icp-toolbar/icp-toolbar.component.mjs +41 -0
- package/esm2020/lib/toolbar/main-toolbar/main-toolbar.component.mjs +188 -0
- package/esm2020/lib/toolbar/redaction-search-bar/redaction-search-bar.component.mjs +199 -0
- package/esm2020/lib/toolbar/redaction-toolbar/redaction-toolbar.component.mjs +66 -0
- package/esm2020/lib/toolbar/search-bar/search-bar.component.mjs +105 -0
- package/esm2020/lib/toolbar/toolbar-button-visibility.service.mjs +94 -0
- package/{esm2015/lib/toolbar/toolbar-event.service.js → esm2020/lib/toolbar/toolbar-event.service.mjs} +7 -5
- package/esm2020/lib/toolbar/toolbar.module.mjs +67 -0
- package/esm2020/lib/viewers/convertible-content-viewer/convertible-content-viewer.component.mjs +78 -0
- package/esm2020/lib/viewers/convertible-content-viewer/document-conversion-api.service.mjs +22 -0
- package/esm2020/lib/viewers/grab-n-drag.directive.mjs +57 -0
- package/esm2020/lib/viewers/image-viewer/image-viewer.component.mjs +166 -0
- package/esm2020/lib/viewers/multimedia-player/multimedia-player.component.mjs +58 -0
- package/esm2020/lib/viewers/pdf-viewer/pdf-js/pdf-js-wrapper.mjs +193 -0
- package/esm2020/lib/viewers/pdf-viewer/pdf-js/pdf-js-wrapper.provider.mjs +40 -0
- package/esm2020/lib/viewers/pdf-viewer/pdf-viewer.component.mjs +230 -0
- package/esm2020/lib/viewers/pdf-viewer/side-bar/bookmarks/bookmarks.component.mjs +192 -0
- package/esm2020/lib/viewers/pdf-viewer/side-bar/outline-item/outline-item.component.mjs +49 -0
- package/esm2020/lib/viewers/pdf-viewer/side-bar/side-bar.component.mjs +77 -0
- package/esm2020/lib/viewers/rotation-persist/rotation-api.service.mjs +27 -0
- package/esm2020/lib/viewers/rotation-persist/rotation-persist.directive.mjs +64 -0
- package/esm2020/lib/viewers/unsupported-viewer/unsupported-viewer.component.mjs +49 -0
- package/esm2020/lib/viewers/viewer-event.service.mjs +30 -0
- package/esm2020/lib/viewers/viewer-util.service.mjs +20 -0
- package/esm2020/public_api.mjs +32 -0
- package/fesm2015/hmcts-media-viewer.mjs +6602 -0
- package/fesm2015/hmcts-media-viewer.mjs.map +1 -0
- package/fesm2020/hmcts-media-viewer.mjs +6893 -0
- package/fesm2020/hmcts-media-viewer.mjs.map +1 -0
- package/hmcts-media-viewer.d.ts.map +1 -1
- package/index.d.ts +6 -0
- package/lib/annotations/annotation-set/annotation-create/box-highlight-create/box-highlight-create.component.d.ts +3 -0
- package/lib/annotations/annotation-set/annotation-create/box-highlight-create/box-highlight-create.component.d.ts.map +1 -1
- package/lib/annotations/annotation-set/annotation-create/highlight-create/highlight-create.directive.d.ts +3 -0
- package/lib/annotations/annotation-set/annotation-create/highlight-create/highlight-create.directive.d.ts.map +1 -1
- package/lib/annotations/annotation-set/annotation-create/highlight-create/highlight-create.service.d.ts +3 -0
- package/lib/annotations/annotation-set/annotation-create/highlight-create/highlight-create.service.d.ts.map +1 -1
- package/lib/annotations/annotation-set/annotation-set.component.d.ts +3 -0
- package/lib/annotations/annotation-set/annotation-set.component.d.ts.map +1 -1
- package/lib/annotations/annotation-set/annotation-view/annotation-view.component.d.ts +3 -0
- package/lib/annotations/annotation-set/annotation-view/annotation-view.component.d.ts.map +1 -1
- 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 -1
- package/lib/annotations/annotation-set/ctx-toolbar/ctx-toolbar.component.d.ts +3 -0
- package/lib/annotations/annotation-set/ctx-toolbar/ctx-toolbar.component.d.ts.map +1 -1
- package/lib/annotations/annotation-set/metadata-layer/metadata-layer.component.d.ts +3 -0
- package/lib/annotations/annotation-set/metadata-layer/metadata-layer.component.d.ts.map +1 -1
- package/lib/annotations/annotations.module.d.ts +32 -0
- package/lib/annotations/annotations.module.d.ts.map +1 -1
- package/lib/annotations/comment-set/comment/comment.component.d.ts +3 -0
- package/lib/annotations/comment-set/comment/comment.component.d.ts.map +1 -1
- package/lib/annotations/comment-set/comment/comment.service.d.ts +5 -2
- package/lib/annotations/comment-set/comment/comment.service.d.ts.map +1 -1
- package/lib/annotations/comment-set/comment/text-highlight/text-highlight.directive.d.ts +3 -0
- package/lib/annotations/comment-set/comment/text-highlight/text-highlight.directive.d.ts.map +1 -1
- package/lib/annotations/comment-set/comment/textarea-auto-expand/textarea-auto-expand.directive.d.ts +3 -0
- package/lib/annotations/comment-set/comment/textarea-auto-expand/textarea-auto-expand.directive.d.ts.map +1 -1
- package/lib/annotations/comment-set/comment-navigate/comments-navigate.component.d.ts +3 -0
- package/lib/annotations/comment-set/comment-navigate/comments-navigate.component.d.ts.map +1 -1
- package/lib/annotations/comment-set/comment-set-header/comment-filter/comment-filter.component.d.ts +6 -3
- package/lib/annotations/comment-set/comment-set-header/comment-filter/comment-filter.component.d.ts.map +1 -1
- package/lib/annotations/comment-set/comment-set-header/comment-search/comment-search.component.d.ts +3 -0
- package/lib/annotations/comment-set/comment-set-header/comment-search/comment-search.component.d.ts.map +1 -1
- package/lib/annotations/comment-set/comment-set-header/comment-set-header.component.d.ts +3 -0
- package/lib/annotations/comment-set/comment-set-header/comment-set-header.component.d.ts.map +1 -1
- package/lib/annotations/comment-set/comment-set-render.service.d.ts +3 -0
- package/lib/annotations/comment-set/comment-set-render.service.d.ts.map +1 -1
- package/lib/annotations/comment-set/comment-set.component.d.ts +3 -0
- package/lib/annotations/comment-set/comment-set.component.d.ts.map +1 -1
- package/lib/annotations/comments-summary/comments-summary.component.d.ts +6 -3
- package/lib/annotations/comments-summary/comments-summary.component.d.ts.map +1 -1
- package/lib/annotations/pipes/date/date.pipe.d.ts +3 -0
- package/lib/annotations/pipes/date/date.pipe.d.ts.map +1 -1
- package/lib/annotations/pipes/filter/filter.pipe.d.ts +3 -0
- package/lib/annotations/pipes/filter/filter.pipe.d.ts.map +1 -1
- package/lib/annotations/pipes/unsnake/unsnake.pipe.d.ts +3 -0
- package/lib/annotations/pipes/unsnake/unsnake.pipe.d.ts.map +1 -1
- package/lib/annotations/services/annotation-api/annotation-api.service.d.ts +3 -0
- package/lib/annotations/services/annotation-api/annotation-api.service.d.ts.map +1 -1
- package/lib/annotations/services/bookmarks-api/bookmarks-api.service.d.ts +3 -0
- package/lib/annotations/services/bookmarks-api/bookmarks-api.service.d.ts.map +1 -1
- package/lib/annotations/services/tags/tags.services.d.ts +3 -0
- package/lib/annotations/services/tags/tags.services.d.ts.map +1 -1
- package/lib/annotations/tags/tags.component.d.ts +6 -3
- package/lib/annotations/tags/tags.component.d.ts.map +1 -1
- package/lib/bookmark/components/bookmark-icons.component.d.ts +3 -0
- package/lib/bookmark/components/bookmark-icons.component.d.ts.map +1 -1
- package/lib/icp/confirm-exit/confirm-action-dialog.component.d.ts +3 -0
- package/lib/icp/confirm-exit/confirm-action-dialog.component.d.ts.map +1 -1
- package/lib/icp/icp-follower.service.d.ts +3 -0
- package/lib/icp/icp-follower.service.d.ts.map +1 -1
- package/lib/icp/icp-presenter.service.d.ts +3 -0
- package/lib/icp/icp-presenter.service.d.ts.map +1 -1
- package/lib/icp/icp-session-api.service.d.ts +3 -0
- package/lib/icp/icp-session-api.service.d.ts.map +1 -1
- package/lib/icp/icp-update.service.d.ts +3 -0
- package/lib/icp/icp-update.service.d.ts.map +1 -1
- package/lib/icp/icp.service.d.ts +3 -0
- package/lib/icp/icp.service.d.ts.map +1 -1
- package/lib/icp/participants-list/participants-list.component.d.ts +3 -0
- package/lib/icp/participants-list/participants-list.component.d.ts.map +1 -1
- package/lib/icp/socket.service.d.ts +3 -0
- package/lib/icp/socket.service.d.ts.map +1 -1
- package/lib/media-viewer.component.d.ts +3 -0
- package/lib/media-viewer.component.d.ts.map +1 -1
- package/lib/media-viewer.module.d.ts +31 -0
- package/lib/media-viewer.module.d.ts.map +1 -1
- package/lib/print.service.d.ts +3 -0
- package/lib/print.service.d.ts.map +1 -1
- package/lib/redaction/components/redaction.component.d.ts +3 -0
- package/lib/redaction/components/redaction.component.d.ts.map +1 -1
- package/lib/redaction/services/redaction-api.service.d.ts +3 -0
- package/lib/redaction/services/redaction-api.service.d.ts.map +1 -1
- package/lib/shared/gov-uk-date/gov-uk-date.component.d.ts +3 -0
- package/lib/shared/gov-uk-date/gov-uk-date.component.d.ts.map +1 -1
- package/lib/shared/gov-uk-error-message/gov-uk-error-message.component.d.ts +3 -0
- package/lib/shared/gov-uk-error-message/gov-uk-error-message.component.d.ts.map +1 -1
- package/lib/shared/gov-uk-fieldset/gov-uk-fieldset.component.d.ts +3 -0
- package/lib/shared/gov-uk-fieldset/gov-uk-fieldset.component.d.ts.map +1 -1
- package/lib/shared/gov-uk-label/gov-uk-label.component.d.ts +3 -0
- package/lib/shared/gov-uk-label/gov-uk-label.component.d.ts.map +1 -1
- package/lib/shared/shared.module.d.ts +11 -0
- package/lib/shared/shared.module.d.ts.map +1 -1
- package/lib/shared/util/services/number.helper.service.d.ts +3 -0
- package/lib/shared/util/services/number.helper.service.d.ts.map +1 -1
- package/lib/store/actions/annotation.actions.d.ts +1 -1
- package/lib/store/actions/annotation.actions.d.ts.map +1 -1
- package/lib/store/actions/bookmark.actions.d.ts +1 -1
- package/lib/store/actions/bookmark.actions.d.ts.map +1 -1
- package/lib/store/actions/document.actions.d.ts +1 -1
- package/lib/store/actions/document.actions.d.ts.map +1 -1
- package/lib/store/actions/icp.actions.d.ts +1 -1
- package/lib/store/actions/icp.actions.d.ts.map +1 -1
- package/lib/store/actions/redaction.actions.d.ts +1 -1
- package/lib/store/actions/redaction.actions.d.ts.map +1 -1
- package/lib/store/actions/tag.actions.d.ts +1 -1
- package/lib/store/actions/tag.actions.d.ts.map +1 -1
- package/lib/store/effects/annotation.effects.d.ts +6 -3
- package/lib/store/effects/annotation.effects.d.ts.map +1 -1
- package/lib/store/effects/bookmarks.effects.d.ts +8 -5
- package/lib/store/effects/bookmarks.effects.d.ts.map +1 -1
- package/lib/store/effects/document.effects.d.ts +6 -3
- package/lib/store/effects/document.effects.d.ts.map +1 -1
- package/lib/store/effects/icp.effects.d.ts +5 -2
- package/lib/store/effects/icp.effects.d.ts.map +1 -1
- package/lib/store/effects/redaction.effects.d.ts +9 -6
- package/lib/store/effects/redaction.effects.d.ts.map +1 -1
- package/lib/store/selectors/annotation.selectors.d.ts +70 -27
- package/lib/store/selectors/annotation.selectors.d.ts.map +1 -1
- package/lib/store/selectors/bookmark.selectors.d.ts +18 -10
- package/lib/store/selectors/bookmark.selectors.d.ts.map +1 -1
- package/lib/store/selectors/document.selectors.d.ts +13 -11
- package/lib/store/selectors/document.selectors.d.ts.map +1 -1
- package/lib/store/selectors/icp.selectors.d.ts +9 -8
- package/lib/store/selectors/icp.selectors.d.ts.map +1 -1
- package/lib/store/selectors/redaction.selectors.d.ts +17 -11
- package/lib/store/selectors/redaction.selectors.d.ts.map +1 -1
- package/lib/store/selectors/tag.selectors.d.ts +14 -12
- package/lib/store/selectors/tag.selectors.d.ts.map +1 -1
- package/lib/toolbar/icp-toolbar/icp-toolbar.component.d.ts +3 -0
- package/lib/toolbar/icp-toolbar/icp-toolbar.component.d.ts.map +1 -1
- package/lib/toolbar/main-toolbar/main-toolbar.component.d.ts +4 -0
- package/lib/toolbar/main-toolbar/main-toolbar.component.d.ts.map +1 -1
- package/lib/toolbar/redaction-search-bar/redaction-search-bar.component.d.ts +5 -2
- package/lib/toolbar/redaction-search-bar/redaction-search-bar.component.d.ts.map +1 -1
- package/lib/toolbar/redaction-toolbar/redaction-toolbar.component.d.ts +3 -0
- package/lib/toolbar/redaction-toolbar/redaction-toolbar.component.d.ts.map +1 -1
- package/lib/toolbar/search-bar/search-bar.component.d.ts +3 -0
- package/lib/toolbar/search-bar/search-bar.component.d.ts.map +1 -1
- package/lib/toolbar/toolbar-button-visibility.service.d.ts +3 -0
- package/lib/toolbar/toolbar-button-visibility.service.d.ts.map +1 -1
- package/lib/toolbar/toolbar-event.service.d.ts +5 -2
- package/lib/toolbar/toolbar-event.service.d.ts.map +1 -1
- package/lib/toolbar/toolbar.module.d.ts +13 -0
- package/lib/toolbar/toolbar.module.d.ts.map +1 -1
- package/lib/viewers/convertible-content-viewer/convertible-content-viewer.component.d.ts +3 -0
- package/lib/viewers/convertible-content-viewer/convertible-content-viewer.component.d.ts.map +1 -1
- package/lib/viewers/convertible-content-viewer/document-conversion-api.service.d.ts +3 -0
- package/lib/viewers/convertible-content-viewer/document-conversion-api.service.d.ts.map +1 -1
- package/lib/viewers/grab-n-drag.directive.d.ts +3 -0
- package/lib/viewers/grab-n-drag.directive.d.ts.map +1 -1
- package/lib/viewers/image-viewer/image-viewer.component.d.ts +3 -0
- package/lib/viewers/image-viewer/image-viewer.component.d.ts.map +1 -1
- package/lib/viewers/multimedia-player/multimedia-player.component.d.ts +3 -0
- package/lib/viewers/multimedia-player/multimedia-player.component.d.ts.map +1 -1
- package/lib/viewers/pdf-viewer/pdf-js/pdf-js-wrapper.provider.d.ts +3 -0
- package/lib/viewers/pdf-viewer/pdf-js/pdf-js-wrapper.provider.d.ts.map +1 -1
- package/lib/viewers/pdf-viewer/pdf-viewer.component.d.ts +3 -0
- package/lib/viewers/pdf-viewer/pdf-viewer.component.d.ts.map +1 -1
- package/lib/viewers/pdf-viewer/side-bar/bookmarks/bookmarks.component.d.ts +5 -2
- package/lib/viewers/pdf-viewer/side-bar/bookmarks/bookmarks.component.d.ts.map +1 -1
- package/lib/viewers/pdf-viewer/side-bar/outline-item/outline-item.component.d.ts +3 -0
- package/lib/viewers/pdf-viewer/side-bar/outline-item/outline-item.component.d.ts.map +1 -1
- package/lib/viewers/pdf-viewer/side-bar/side-bar.component.d.ts +3 -0
- package/lib/viewers/pdf-viewer/side-bar/side-bar.component.d.ts.map +1 -1
- package/lib/viewers/rotation-persist/rotation-api.service.d.ts +3 -0
- package/lib/viewers/rotation-persist/rotation-api.service.d.ts.map +1 -1
- package/lib/viewers/rotation-persist/rotation-persist.directive.d.ts +3 -0
- package/lib/viewers/rotation-persist/rotation-persist.directive.d.ts.map +1 -1
- package/lib/viewers/unsupported-viewer/unsupported-viewer.component.d.ts +3 -0
- package/lib/viewers/unsupported-viewer/unsupported-viewer.component.d.ts.map +1 -1
- package/lib/viewers/viewer-event.service.d.ts +3 -0
- package/lib/viewers/viewer-event.service.d.ts.map +1 -1
- package/lib/viewers/viewer-util.service.d.ts +3 -0
- package/lib/viewers/viewer-util.service.d.ts.map +1 -1
- package/package.json +34 -22
- package/public_api.d.ts +1 -0
- package/public_api.d.ts.map +1 -1
- package/bundles/hmcts-media-viewer.umd.js +0 -7539
- package/bundles/hmcts-media-viewer.umd.js.map +0 -1
- package/bundles/hmcts-media-viewer.umd.min.js +0 -2
- package/bundles/hmcts-media-viewer.umd.min.js.map +0 -1
- package/esm2015/hmcts-media-viewer.js +0 -64
- package/esm2015/lib/annotations/annotation-set/annotation-create/box-highlight-create/box-highlight-create.component.js +0 -113
- package/esm2015/lib/annotations/annotation-set/annotation-create/highlight-create/highlight-create.directive.js +0 -111
- package/esm2015/lib/annotations/annotation-set/annotation-create/highlight-create/highlight-create.service.js +0 -61
- package/esm2015/lib/annotations/annotation-set/annotation-set.component.js +0 -47
- package/esm2015/lib/annotations/annotation-set/annotation-view/annotation-view.component.js +0 -86
- package/esm2015/lib/annotations/annotation-set/annotation-view/rectangle/rectangle.component.js +0 -108
- package/esm2015/lib/annotations/annotation-set/ctx-toolbar/ctx-toolbar.component.js +0 -107
- package/esm2015/lib/annotations/annotation-set/metadata-layer/metadata-layer.component.js +0 -81
- package/esm2015/lib/annotations/annotations.module.js +0 -103
- package/esm2015/lib/annotations/comment-set/comment/comment.component.js +0 -162
- package/esm2015/lib/annotations/comment-set/comment/comment.service.js +0 -47
- package/esm2015/lib/annotations/comment-set/comment/text-highlight/text-highlight.directive.js +0 -48
- package/esm2015/lib/annotations/comment-set/comment/textarea-auto-expand/textarea-auto-expand.directive.js +0 -31
- package/esm2015/lib/annotations/comment-set/comment-navigate/comments-navigate.component.js +0 -95
- package/esm2015/lib/annotations/comment-set/comment-set-header/comment-filter/comment-filter.component.js +0 -60
- package/esm2015/lib/annotations/comment-set/comment-set-header/comment-search/comment-search.component.js +0 -53
- package/esm2015/lib/annotations/comment-set/comment-set-header/comment-set-header.component.js +0 -68
- package/esm2015/lib/annotations/comment-set/comment-set-render.service.js +0 -51
- package/esm2015/lib/annotations/comment-set/comment-set.component.js +0 -110
- package/esm2015/lib/annotations/comments-summary/comments-summary.component.js +0 -106
- package/esm2015/lib/annotations/pipes/date/date.pipe.js +0 -22
- package/esm2015/lib/annotations/pipes/filter/filter.pipe.js +0 -28
- package/esm2015/lib/annotations/pipes/unsnake/unsnake.pipe.js +0 -12
- package/esm2015/lib/annotations/services/annotation-api/annotation-api.service.js +0 -59
- package/esm2015/lib/annotations/services/bookmarks-api/bookmarks-api.service.js +0 -46
- package/esm2015/lib/annotations/services/tags/tags.services.js +0 -36
- package/esm2015/lib/annotations/tags/tags.component.js +0 -52
- package/esm2015/lib/bookmark/components/bookmark-icons.component.js +0 -26
- package/esm2015/lib/icp/confirm-exit/confirm-action-dialog.component.js +0 -25
- package/esm2015/lib/icp/icp-follower.service.js +0 -63
- package/esm2015/lib/icp/icp-presenter.service.js +0 -57
- package/esm2015/lib/icp/icp-session-api.service.js +0 -22
- package/esm2015/lib/icp/icp-update.service.js +0 -56
- package/esm2015/lib/icp/icp.service.js +0 -98
- package/esm2015/lib/icp/participants-list/participants-list.component.js +0 -32
- package/esm2015/lib/icp/socket.service.js +0 -117
- package/esm2015/lib/media-viewer.component.js +0 -210
- package/esm2015/lib/media-viewer.module.js +0 -102
- package/esm2015/lib/print.service.js +0 -25
- package/esm2015/lib/redaction/components/redaction.component.js +0 -97
- package/esm2015/lib/redaction/services/redaction-api.service.js +0 -51
- package/esm2015/lib/shared/gov-uk-date/gov-uk-date.component.js +0 -21
- package/esm2015/lib/shared/gov-uk-error-message/gov-uk-error-message.component.js +0 -27
- package/esm2015/lib/shared/gov-uk-fieldset/gov-uk-fieldset.component.js +0 -42
- package/esm2015/lib/shared/gov-uk-label/gov-uk-label.component.js +0 -32
- package/esm2015/lib/shared/shared.module.js +0 -34
- package/esm2015/lib/shared/util/services/number.helper.service.js +0 -23
- package/esm2015/lib/store/effects/annotation.effects.js +0 -55
- package/esm2015/lib/store/effects/bookmarks.effects.js +0 -66
- package/esm2015/lib/store/effects/document.effects.js +0 -59
- package/esm2015/lib/store/effects/icp.effects.js +0 -37
- package/esm2015/lib/store/effects/redaction.effects.js +0 -94
- package/esm2015/lib/store/reducers/annotations.reducer.js +0 -115
- package/esm2015/lib/store/reducers/bookmarks.reducer.js +0 -80
- package/esm2015/lib/store/reducers/document.reducer.js +0 -100
- package/esm2015/lib/store/reducers/icp.reducer.js +0 -40
- package/esm2015/lib/store/reducers/redaction.reducer.js +0 -75
- package/esm2015/lib/store/reducers/tags.reducer.js +0 -67
- package/esm2015/lib/store/selectors/annotation.selectors.js +0 -84
- package/esm2015/lib/store/selectors/bookmark.selectors.js +0 -39
- package/esm2015/lib/store/selectors/icp.selectors.js +0 -18
- package/esm2015/lib/store/store-utils.js +0 -105
- package/esm2015/lib/toolbar/icp-toolbar/icp-toolbar.component.js +0 -43
- package/esm2015/lib/toolbar/main-toolbar/main-toolbar.component.js +0 -170
- package/esm2015/lib/toolbar/redaction-search-bar/redaction-search-bar.component.js +0 -201
- package/esm2015/lib/toolbar/redaction-toolbar/redaction-toolbar.component.js +0 -70
- package/esm2015/lib/toolbar/search-bar/search-bar.component.js +0 -102
- package/esm2015/lib/toolbar/toolbar-button-visibility.service.js +0 -92
- package/esm2015/lib/toolbar/toolbar.module.js +0 -45
- package/esm2015/lib/viewers/convertible-content-viewer/convertible-content-viewer.component.js +0 -72
- package/esm2015/lib/viewers/convertible-content-viewer/document-conversion-api.service.js +0 -23
- package/esm2015/lib/viewers/grab-n-drag.directive.js +0 -51
- package/esm2015/lib/viewers/image-viewer/image-viewer.component.js +0 -164
- package/esm2015/lib/viewers/multimedia-player/multimedia-player.component.js +0 -54
- package/esm2015/lib/viewers/pdf-viewer/pdf-js/pdf-js-wrapper.js +0 -203
- package/esm2015/lib/viewers/pdf-viewer/pdf-js/pdf-js-wrapper.provider.js +0 -43
- package/esm2015/lib/viewers/pdf-viewer/pdf-viewer.component.js +0 -220
- package/esm2015/lib/viewers/pdf-viewer/side-bar/bookmarks/bookmarks.component.js +0 -179
- package/esm2015/lib/viewers/pdf-viewer/side-bar/outline-item/outline-item.component.js +0 -44
- package/esm2015/lib/viewers/pdf-viewer/side-bar/side-bar.component.js +0 -72
- package/esm2015/lib/viewers/rotation-persist/rotation-api.service.js +0 -28
- package/esm2015/lib/viewers/rotation-persist/rotation-persist.directive.js +0 -67
- package/esm2015/lib/viewers/unsupported-viewer/unsupported-viewer.component.js +0 -47
- package/esm2015/lib/viewers/viewer-event.service.js +0 -30
- package/esm2015/lib/viewers/viewer-util.service.js +0 -23
- package/esm2015/public_api.js +0 -31
- package/fesm2015/hmcts-media-viewer.js +0 -6572
- package/fesm2015/hmcts-media-viewer.js.map +0 -1
- package/hmcts-media-viewer.d.ts +0 -69
- package/hmcts-media-viewer.metadata.json +0 -1
- package/lib/annotations/annotation-set/annotation-create/box-highlight-create/box-highlight-create.component.ngfactory.d.ts.map +0 -1
- package/lib/annotations/annotation-set/annotation-create/highlight-create/highlight-create.directive.ngfactory.d.ts.map +0 -1
- package/lib/annotations/annotation-set/annotation-create/highlight-create/highlight-create.service.ngfactory.d.ts.map +0 -1
- package/lib/annotations/annotation-set/annotation-set.component.ngfactory.d.ts.map +0 -1
- package/lib/annotations/annotation-set/annotation-view/annotation-view.component.ngfactory.d.ts.map +0 -1
- package/lib/annotations/annotation-set/annotation-view/rectangle/rectangle.component.ngfactory.d.ts.map +0 -1
- package/lib/annotations/annotation-set/ctx-toolbar/ctx-toolbar.component.ngfactory.d.ts.map +0 -1
- package/lib/annotations/annotation-set/metadata-layer/metadata-layer.component.ngfactory.d.ts.map +0 -1
- package/lib/annotations/annotations.module.ngfactory.d.ts.map +0 -1
- package/lib/annotations/comment-set/comment/comment.component.ngfactory.d.ts.map +0 -1
- package/lib/annotations/comment-set/comment/comment.service.ngfactory.d.ts.map +0 -1
- package/lib/annotations/comment-set/comment/text-highlight/text-highlight.directive.ngfactory.d.ts.map +0 -1
- package/lib/annotations/comment-set/comment/textarea-auto-expand/textarea-auto-expand.directive.ngfactory.d.ts.map +0 -1
- package/lib/annotations/comment-set/comment-navigate/comments-navigate.component.ngfactory.d.ts.map +0 -1
- package/lib/annotations/comment-set/comment-set-header/comment-filter/comment-filter.component.ngfactory.d.ts.map +0 -1
- package/lib/annotations/comment-set/comment-set-header/comment-search/comment-search.component.ngfactory.d.ts.map +0 -1
- package/lib/annotations/comment-set/comment-set-header/comment-set-header.component.ngfactory.d.ts.map +0 -1
- package/lib/annotations/comment-set/comment-set-render.service.ngfactory.d.ts.map +0 -1
- package/lib/annotations/comment-set/comment-set.component.ngfactory.d.ts.map +0 -1
- package/lib/annotations/comments-summary/comments-summary.component.ngfactory.d.ts.map +0 -1
- package/lib/annotations/pipes/date/date.pipe.ngfactory.d.ts.map +0 -1
- package/lib/annotations/pipes/filter/filter.pipe.ngfactory.d.ts.map +0 -1
- package/lib/annotations/pipes/unsnake/unsnake.pipe.ngfactory.d.ts.map +0 -1
- package/lib/annotations/services/annotation-api/annotation-api.service.ngfactory.d.ts.map +0 -1
- package/lib/annotations/services/bookmarks-api/bookmarks-api.service.ngfactory.d.ts.map +0 -1
- package/lib/annotations/services/tags/tags.services.ngfactory.d.ts.map +0 -1
- package/lib/annotations/tags/tags.component.ngfactory.d.ts.map +0 -1
- package/lib/bookmark/components/bookmark-icons.component.ngfactory.d.ts.map +0 -1
- package/lib/icp/confirm-exit/confirm-action-dialog.component.ngfactory.d.ts.map +0 -1
- package/lib/icp/icp-follower.service.ngfactory.d.ts.map +0 -1
- package/lib/icp/icp-presenter.service.ngfactory.d.ts.map +0 -1
- package/lib/icp/icp-session-api.service.ngfactory.d.ts.map +0 -1
- package/lib/icp/icp-update.service.ngfactory.d.ts.map +0 -1
- package/lib/icp/icp.service.ngfactory.d.ts.map +0 -1
- package/lib/icp/participants-list/participants-list.component.ngfactory.d.ts.map +0 -1
- package/lib/icp/socket.service.ngfactory.d.ts.map +0 -1
- package/lib/media-viewer.component.ngfactory.d.ts.map +0 -1
- package/lib/media-viewer.module.ngfactory.d.ts.map +0 -1
- package/lib/print.service.ngfactory.d.ts.map +0 -1
- package/lib/redaction/components/redaction.component.ngfactory.d.ts.map +0 -1
- package/lib/redaction/services/redaction-api.service.ngfactory.d.ts.map +0 -1
- package/lib/shared/gov-uk-date/gov-uk-date.component.ngfactory.d.ts.map +0 -1
- package/lib/shared/gov-uk-error-message/gov-uk-error-message.component.ngfactory.d.ts.map +0 -1
- package/lib/shared/gov-uk-fieldset/gov-uk-fieldset.component.ngfactory.d.ts.map +0 -1
- package/lib/shared/gov-uk-label/gov-uk-label.component.ngfactory.d.ts.map +0 -1
- package/lib/shared/shared.module.ngfactory.d.ts.map +0 -1
- package/lib/shared/util/services/number.helper.service.ngfactory.d.ts.map +0 -1
- package/lib/store/effects/annotation.effects.ngfactory.d.ts.map +0 -1
- package/lib/store/effects/bookmarks.effects.ngfactory.d.ts.map +0 -1
- package/lib/store/effects/document.effects.ngfactory.d.ts.map +0 -1
- package/lib/store/effects/icp.effects.ngfactory.d.ts.map +0 -1
- package/lib/store/effects/redaction.effects.ngfactory.d.ts.map +0 -1
- package/lib/toolbar/icp-toolbar/icp-toolbar.component.ngfactory.d.ts.map +0 -1
- package/lib/toolbar/main-toolbar/main-toolbar.component.ngfactory.d.ts.map +0 -1
- package/lib/toolbar/redaction-search-bar/redaction-search-bar.component.ngfactory.d.ts.map +0 -1
- package/lib/toolbar/redaction-search-bar/redaction-search-bar.component.scss.shim.ngstyle.d.ts.map +0 -1
- package/lib/toolbar/redaction-toolbar/redaction-toolbar.component.ngfactory.d.ts.map +0 -1
- package/lib/toolbar/search-bar/search-bar.component.ngfactory.d.ts.map +0 -1
- package/lib/toolbar/toolbar-button-visibility.service.ngfactory.d.ts.map +0 -1
- package/lib/toolbar/toolbar-event.service.ngfactory.d.ts.map +0 -1
- package/lib/toolbar/toolbar.module.ngfactory.d.ts.map +0 -1
- package/lib/viewers/convertible-content-viewer/convertible-content-viewer.component.ngfactory.d.ts.map +0 -1
- package/lib/viewers/convertible-content-viewer/document-conversion-api.service.ngfactory.d.ts.map +0 -1
- package/lib/viewers/grab-n-drag.directive.ngfactory.d.ts.map +0 -1
- package/lib/viewers/image-viewer/image-viewer.component.ngfactory.d.ts.map +0 -1
- package/lib/viewers/multimedia-player/multimedia-player.component.ngfactory.d.ts.map +0 -1
- package/lib/viewers/pdf-viewer/pdf-js/pdf-js-wrapper.provider.ngfactory.d.ts.map +0 -1
- package/lib/viewers/pdf-viewer/pdf-viewer.component.ngfactory.d.ts.map +0 -1
- package/lib/viewers/pdf-viewer/side-bar/bookmarks/bookmarks.component.ngfactory.d.ts.map +0 -1
- package/lib/viewers/pdf-viewer/side-bar/outline-item/outline-item.component.ngfactory.d.ts.map +0 -1
- package/lib/viewers/pdf-viewer/side-bar/side-bar.component.ngfactory.d.ts.map +0 -1
- package/lib/viewers/rotation-persist/rotation-api.service.ngfactory.d.ts.map +0 -1
- package/lib/viewers/rotation-persist/rotation-persist.directive.ngfactory.d.ts.map +0 -1
- package/lib/viewers/unsupported-viewer/unsupported-viewer.component.ngfactory.d.ts.map +0 -1
- package/lib/viewers/viewer-event.service.ngfactory.d.ts.map +0 -1
- package/lib/viewers/viewer-util.service.ngfactory.d.ts.map +0 -1
- /package/{esm2015/lib/annotations/annotation-set/annotation-set.model.js → esm2020/lib/annotations/annotation-set/annotation-set.model.mjs} +0 -0
- /package/{esm2015/lib/annotations/annotation-set/annotation-view/annotation.model.js → esm2020/lib/annotations/annotation-set/annotation-view/annotation.model.mjs} +0 -0
- /package/{esm2015/lib/annotations/annotation-set/annotation-view/rectangle/rectangle.model.js → esm2020/lib/annotations/annotation-set/annotation-view/rectangle/rectangle.model.mjs} +0 -0
- /package/{esm2015/lib/annotations/comment-set/comment/comment.model.js → esm2020/lib/annotations/comment-set/comment/comment.model.mjs} +0 -0
- /package/{esm2015/lib/annotations/models/api-persisted.model.js → esm2020/lib/annotations/models/api-persisted.model.mjs} +0 -0
- /package/{esm2015/lib/annotations/models/event-select.model.js → esm2020/lib/annotations/models/event-select.model.mjs} +0 -0
- /package/{esm2015/lib/annotations/models/tags.model.js → esm2020/lib/annotations/models/tags.model.mjs} +0 -0
- /package/{esm2015/lib/annotations/models/user.model.js → esm2020/lib/annotations/models/user.model.mjs} +0 -0
- /package/{esm2015/lib/icp/icp.events.js → esm2020/lib/icp/icp.events.mjs} +0 -0
- /package/{esm2015/lib/icp/icp.interfaces.js → esm2020/lib/icp/icp.interfaces.mjs} +0 -0
- /package/{esm2015/lib/redaction/services/redaction.model.js → esm2020/lib/redaction/services/redaction.model.mjs} +0 -0
- /package/{esm2015/lib/shared/util/helpers/html-templates.helper.js → esm2020/lib/shared/util/helpers/html-templates.helper.mjs} +0 -0
- /package/{esm2015/lib/store/actions/annotation.actions.js → esm2020/lib/store/actions/annotation.actions.mjs} +0 -0
- /package/{esm2015/lib/store/actions/bookmark.actions.js → esm2020/lib/store/actions/bookmark.actions.mjs} +0 -0
- /package/{esm2015/lib/store/actions/document.actions.js → esm2020/lib/store/actions/document.actions.mjs} +0 -0
- /package/{esm2015/lib/store/actions/icp.actions.js → esm2020/lib/store/actions/icp.actions.mjs} +0 -0
- /package/{esm2015/lib/store/actions/redaction.actions.js → esm2020/lib/store/actions/redaction.actions.mjs} +0 -0
- /package/{esm2015/lib/store/actions/tag.actions.js → esm2020/lib/store/actions/tag.actions.mjs} +0 -0
- /package/{esm2015/lib/store/effects/index.js → esm2020/lib/store/effects/index.mjs} +0 -0
- /package/{esm2015/lib/store/models/bookmarks.interface.js → esm2020/lib/store/models/bookmarks.interface.mjs} +0 -0
- /package/{esm2015/lib/store/models/filters.interface.js → esm2020/lib/store/models/filters.interface.mjs} +0 -0
- /package/{esm2015/lib/store/reducers/reducers.js → esm2020/lib/store/reducers/reducers.mjs} +0 -0
- /package/{esm2015/lib/toolbar/icp-event.service.js → esm2020/lib/toolbar/icp-event.service.mjs} +0 -0
- /package/{esm2015/lib/toolbar/redaction-search-bar/redaction-search.model.js → esm2020/lib/toolbar/redaction-search-bar/redaction-search.model.mjs} +0 -0
- /package/{esm2015/lib/viewers/pdf-viewer/side-bar/bookmarks/bookmarks.interfaces.js → esm2020/lib/viewers/pdf-viewer/side-bar/bookmarks/bookmarks.interfaces.mjs} +0 -0
- /package/{esm2015/lib/viewers/pdf-viewer/side-bar/outline-item/outline.model.js → esm2020/lib/viewers/pdf-viewer/side-bar/outline-item/outline.model.mjs} +0 -0
- /package/{esm2015/lib/viewers/rotation-persist/rotation.model.js → esm2020/lib/viewers/rotation-persist/rotation.model.mjs} +0 -0
- /package/{esm2015/lib/viewers/viewer-exception.model.js → esm2020/lib/viewers/viewer-exception.model.mjs} +0 -0
package/esm2015/lib/annotations/comment-set/comment-set-header/comment-set-header.component.js
DELETED
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
import { Component, EventEmitter, Input, Output, ViewEncapsulation } from '@angular/core';
|
|
2
|
-
import { select, Store } from '@ngrx/store';
|
|
3
|
-
import * as fromTagSelectors from '../../../store/selectors/tag.selectors';
|
|
4
|
-
import * as fromAnnoSelector from '../../../store/selectors/annotation.selectors';
|
|
5
|
-
import { combineLatest } from 'rxjs';
|
|
6
|
-
import { ToolbarEventService } from '../../../toolbar/toolbar-event.service';
|
|
7
|
-
import { CommentService } from '../comment/comment.service';
|
|
8
|
-
export class CommentSetHeaderComponent {
|
|
9
|
-
constructor(store, commentService, toolbarEvents) {
|
|
10
|
-
this.store = store;
|
|
11
|
-
this.commentService = commentService;
|
|
12
|
-
this.toolbarEvents = toolbarEvents;
|
|
13
|
-
this.showCommentSummaryDialog = new EventEmitter();
|
|
14
|
-
this.tabs = [];
|
|
15
|
-
this.tabSelected = '';
|
|
16
|
-
}
|
|
17
|
-
ngOnInit() {
|
|
18
|
-
const tagFilter$ = this.store.pipe(select(fromTagSelectors.getTagFilters));
|
|
19
|
-
const filteredAnnotation$ = this.store.pipe(select(fromAnnoSelector.getFilteredAnnotations));
|
|
20
|
-
this.$subscriptions = combineLatest([tagFilter$, filteredAnnotation$]).subscribe(([formData, filteredAnno]) => {
|
|
21
|
-
this.navigationList = filteredAnno;
|
|
22
|
-
this.tabs = this.navigationList.length > 0 ?
|
|
23
|
-
[{ label: 'comments' }, { label: 'filter' }, { label: 'search' }] : [{ label: 'comments' }];
|
|
24
|
-
this.isFiltered = !formData.length;
|
|
25
|
-
this.tabs = [...this.tabs].map((tab) => {
|
|
26
|
-
return !this.isFiltered && tab.label === 'filter' ? Object.assign(Object.assign({}, tab), { isFiltered: true }) : Object.assign(Object.assign({}, tab), { isFiltered: false });
|
|
27
|
-
});
|
|
28
|
-
});
|
|
29
|
-
}
|
|
30
|
-
toggleCommentsSummary() {
|
|
31
|
-
this.showCommentSummaryDialog.emit();
|
|
32
|
-
}
|
|
33
|
-
selectTab(tab) {
|
|
34
|
-
this.tabSelected = tab !== this.tabSelected ? tab : undefined;
|
|
35
|
-
if (this.tabSelected) {
|
|
36
|
-
this.marginToComment = true;
|
|
37
|
-
this.commentService.createMarginToCommentEvent(this.marginToComment);
|
|
38
|
-
}
|
|
39
|
-
else {
|
|
40
|
-
this.marginToComment = false;
|
|
41
|
-
this.commentService.createMarginToCommentEvent(this.marginToComment);
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
toggleCommentsPanel() {
|
|
45
|
-
this.toolbarEvents.toggleCommentsPanel(!this.toolbarEvents.commentsPanelVisible.getValue());
|
|
46
|
-
}
|
|
47
|
-
ngOnDestroy() {
|
|
48
|
-
this.$subscriptions.unsubscribe();
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
CommentSetHeaderComponent.decorators = [
|
|
52
|
-
{ type: Component, args: [{
|
|
53
|
-
selector: 'mv-comment-set-header',
|
|
54
|
-
template: "<div class=\"govuk-tabs commentSummaryHeader\" [ngClass]=\"{'icp-mode': toolbarEvents.icp.enabled | async}\" data-module=\"govuk-tabs\">\n <ul class=\"govuk-tabs__list\">\n <li *ngFor=\"let tab of tabs; let i = index\" class=\"govuk-tabs__list-item govuk-tabs__list-item\"\n [ngClass]=\"{'govuk-tabs__list-item--selected': tabSelected === tab.label}\">\n <a id=\"commentSubPane{{ i }}\" (click)=\"selectTab(tab.label)\" [routerLink]=\"\" [ngClass]=\"{'govuk-tabs__list-item--filtered': tab.isFiltered}\"\n class=\"govuk-tabs__tab\">\n {{ tab.label | titlecase }}\n </a>\n </li>\n <li>\n <button id=\"mvCloseBtn\" #mvCloseBtn class=\"mv-button commentSummaryHeader-button--close\"\n title=\"Close Comments\" (click)=\"toggleCommentsPanel()\">\n </button>\n </li>\n </ul>\n <div class=\"govuk-tabs__panel\" [hidden]=\"!tabSelected\">\n <ng-container *ngIf=\"tabSelected === 'comments'\">\n <div style=\"width: 100%\">\n <div class=\"hmcts-banner\" *ngIf=\"navigationList?.length === 0\">\n <svg class=\"hmcts-banner__icon\" fill=\"currentColor\" focusable=\"false\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 25 25\" height=\"25\" width=\"25\">\n <path d=\"M13.7,18.5h-2.4v-2.4h2.4V18.5z M12.5,13.7c-0.7,0-1.2-0.5-1.2-1.2V7.7c0-0.7,0.5-1.2,1.2-1.2s1.2,0.5,1.2,1.2v4.8\nC13.7,13.2,13.2,13.7,12.5,13.7z M12.5,0.5c-6.6,0-12,5.4-12,12s5.4,12,12,12s12-5.4,12-12S19.1,0.5,12.5,0.5z\" /></svg>\n <div class=\"hmcts-banner__message\">\n <span class=\"hmcts-banner__assistive\">information</span>\n Select text to add a comment or highlight.\n </div>\n </div>\n <button type=\"button\" class=\"govuk-button\"\n id=\"commentSummary\" tabindex=\"0\"\n data-l10n-id=\"commentSummary\"\n title=\"Open collate summary\"\n (click)=\"toggleCommentsSummary()\">Collate comments</button>\n </div>\n <ng-container *ngIf=\"navigationList?.length > 0\">\n <mv-comments-navigate\n [annotationList]=\"navigationList\">\n </mv-comments-navigate>\n </ng-container>\n <p class=\"aui-comment__private-text\">\n <span class=\"aui-comment__private\">private</span>\n All comments can only be seen by you\n </p>\n </ng-container>\n <div [hidden]=\"tabSelected !== 'filter'\">\n <div class=\"govuk-tabs__panel--container\">\n <mv-comment-filter></mv-comment-filter>\n <mv-comments-navigate\n *ngIf=\"navigationList?.length > 0\"\n [annotationList]=\"navigationList\">\n </mv-comments-navigate>\n </div>\n </div>\n\n <div [hidden]=\"tabSelected !== 'search'\">\n <mv-comment-search [annotations]=\"navigationList\"></mv-comment-search>\n </div>\n </div>\n</div>\n",
|
|
55
|
-
encapsulation: ViewEncapsulation.None
|
|
56
|
-
},] }
|
|
57
|
-
];
|
|
58
|
-
/** @nocollapse */
|
|
59
|
-
CommentSetHeaderComponent.ctorParameters = () => [
|
|
60
|
-
{ type: Store },
|
|
61
|
-
{ type: CommentService },
|
|
62
|
-
{ type: ToolbarEventService }
|
|
63
|
-
];
|
|
64
|
-
CommentSetHeaderComponent.propDecorators = {
|
|
65
|
-
showCommentSummary: [{ type: Input }],
|
|
66
|
-
showCommentSummaryDialog: [{ type: Output }]
|
|
67
|
-
};
|
|
68
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWVudC1zZXQtaGVhZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21lZGlhLXZpZXdlci9zcmMvbGliL2Fubm90YXRpb25zL2NvbW1lbnQtc2V0L2NvbW1lbnQtc2V0LWhlYWRlci9jb21tZW50LXNldC1oZWFkZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBcUIsTUFBTSxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTdHLE9BQU8sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRTVDLE9BQU8sS0FBSyxnQkFBZ0IsTUFBTSx3Q0FBd0MsQ0FBQztBQUMzRSxPQUFPLEtBQUssZ0JBQWdCLE1BQU0sK0NBQStDLENBQUM7QUFDbEYsT0FBTyxFQUFFLGFBQWEsRUFBZ0IsTUFBTSxNQUFNLENBQUM7QUFDbkQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDN0UsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBTzVELE1BQU0sT0FBTyx5QkFBeUI7SUFZcEMsWUFBb0IsS0FBNkIsRUFDN0IsY0FBOEIsRUFDL0IsYUFBa0M7UUFGakMsVUFBSyxHQUFMLEtBQUssQ0FBd0I7UUFDN0IsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBQy9CLGtCQUFhLEdBQWIsYUFBYSxDQUFxQjtRQVgzQiw2QkFBd0IsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBR3hFLFNBQUksR0FBNEMsRUFBRSxDQUFDO1FBQ25ELGdCQUFXLEdBQUcsRUFBRSxDQUFDO0lBT3VDLENBQUM7SUFFekQsUUFBUTtRQUNOLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDO1FBQzNFLE1BQU0sbUJBQW1CLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLGdCQUFnQixDQUFDLHNCQUFzQixDQUFDLENBQUMsQ0FBQztRQUU3RixJQUFJLENBQUMsY0FBYyxHQUFHLGFBQWEsQ0FBQyxDQUFDLFVBQVUsRUFBRSxtQkFBbUIsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxRQUFRLEVBQUUsWUFBWSxDQUFDLEVBQUUsRUFBRTtZQUM1RyxJQUFJLENBQUMsY0FBYyxHQUFHLFlBQVksQ0FBQztZQUNuQyxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDO2dCQUMxQyxDQUFDLEVBQUMsS0FBSyxFQUFFLFVBQVUsRUFBQyxFQUFFLEVBQUMsS0FBSyxFQUFFLFFBQVEsRUFBQyxFQUFFLEVBQUMsS0FBSyxFQUFFLFFBQVEsRUFBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBQyxLQUFLLEVBQUUsVUFBVSxFQUFDLENBQUMsQ0FBQztZQUN0RixJQUFJLENBQUMsVUFBVSxHQUFHLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQztZQUNuQyxJQUFJLENBQUMsSUFBSSxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUU7Z0JBQ3JDLE9BQU8sQ0FBQyxJQUFJLENBQUMsVUFBVSxJQUFJLEdBQUcsQ0FBQyxLQUFLLEtBQUssUUFBUSxDQUFDLENBQUMsaUNBQUssR0FBRyxLQUFFLFVBQVUsRUFBRSxJQUFJLElBQUUsQ0FBQyxpQ0FBSyxHQUFHLEtBQUUsVUFBVSxFQUFFLEtBQUssR0FBQyxDQUFDO1lBQy9HLENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU0scUJBQXFCO1FBQzFCLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN2QyxDQUFDO0lBRUQsU0FBUyxDQUFDLEdBQVc7UUFDbkIsSUFBSSxDQUFDLFdBQVcsR0FBRyxHQUFHLEtBQUssSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7UUFDOUQsSUFBSSxJQUFJLENBQUMsV0FBVyxFQUFFO1lBQ3BCLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDO1lBQzVCLElBQUksQ0FBQyxjQUFjLENBQUMsMEJBQTBCLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDO1NBQ3RFO2FBQU07WUFDTCxJQUFJLENBQUMsZUFBZSxHQUFHLEtBQUssQ0FBQztZQUM3QixJQUFJLENBQUMsY0FBYyxDQUFDLDBCQUEwQixDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQztTQUN0RTtJQUNILENBQUM7SUFFTSxtQkFBbUI7UUFDeEIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsb0JBQW9CLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztJQUM5RixDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxjQUFjLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDcEMsQ0FBQzs7O1lBekRGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsdUJBQXVCO2dCQUNqQyw4MEZBQWtEO2dCQUNsRCxhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTthQUN0Qzs7OztZQVpnQixLQUFLO1lBTWIsY0FBYztZQURkLG1CQUFtQjs7O2lDQVV6QixLQUFLO3VDQUNMLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0LCBPdXRwdXQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBbm5vdGF0aW9uIH0gZnJvbSAnLi4vLi4vYW5ub3RhdGlvbi1zZXQvYW5ub3RhdGlvbi12aWV3L2Fubm90YXRpb24ubW9kZWwnO1xuaW1wb3J0IHsgc2VsZWN0LCBTdG9yZSB9IGZyb20gJ0BuZ3J4L3N0b3JlJztcbmltcG9ydCAqIGFzIGZyb21TdG9yZSBmcm9tICcuLi8uLi8uLi9zdG9yZS9yZWR1Y2Vycy9yZWR1Y2Vycyc7XG5pbXBvcnQgKiBhcyBmcm9tVGFnU2VsZWN0b3JzIGZyb20gJy4uLy4uLy4uL3N0b3JlL3NlbGVjdG9ycy90YWcuc2VsZWN0b3JzJztcbmltcG9ydCAqIGFzIGZyb21Bbm5vU2VsZWN0b3IgZnJvbSAnLi4vLi4vLi4vc3RvcmUvc2VsZWN0b3JzL2Fubm90YXRpb24uc2VsZWN0b3JzJztcbmltcG9ydCB7IGNvbWJpbmVMYXRlc3QsIFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgVG9vbGJhckV2ZW50U2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3Rvb2xiYXIvdG9vbGJhci1ldmVudC5zZXJ2aWNlJztcbmltcG9ydCB7IENvbW1lbnRTZXJ2aWNlIH0gZnJvbSAnLi4vY29tbWVudC9jb21tZW50LnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdtdi1jb21tZW50LXNldC1oZWFkZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vY29tbWVudC1zZXQtaGVhZGVyLmNvbXBvbmVudC5odG1sJyxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbn0pXG5leHBvcnQgY2xhc3MgQ29tbWVudFNldEhlYWRlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcblxuICBASW5wdXQoKSBwdWJsaWMgc2hvd0NvbW1lbnRTdW1tYXJ5OiBib29sZWFuO1xuICBAT3V0cHV0KCkgcHVibGljIHJlYWRvbmx5IHNob3dDb21tZW50U3VtbWFyeURpYWxvZyA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBtYXJnaW5Ub0NvbW1lbnQ6IGJvb2xlYW47XG4gIHRhYnM6IHtpc0ZpbHRlcmVkPzogYm9vbGVhbjsgbGFiZWw6IHN0cmluZ31bXSA9IFtdO1xuICB0YWJTZWxlY3RlZCA9ICcnO1xuICBpc0ZpbHRlcmVkOiBib29sZWFuO1xuICBuYXZpZ2F0aW9uTGlzdDogQW5ub3RhdGlvbltdO1xuICAkc3Vic2NyaXB0aW9uczogU3Vic2NyaXB0aW9uO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgc3RvcmU6IFN0b3JlPGZyb21TdG9yZS5TdGF0ZT4sXG4gICAgICAgICAgICAgIHByaXZhdGUgY29tbWVudFNlcnZpY2U6IENvbW1lbnRTZXJ2aWNlLFxuICAgICAgICAgICAgICBwdWJsaWMgdG9vbGJhckV2ZW50czogVG9vbGJhckV2ZW50U2VydmljZSkge31cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBjb25zdCB0YWdGaWx0ZXIkID0gdGhpcy5zdG9yZS5waXBlKHNlbGVjdChmcm9tVGFnU2VsZWN0b3JzLmdldFRhZ0ZpbHRlcnMpKTtcbiAgICBjb25zdCBmaWx0ZXJlZEFubm90YXRpb24kID0gdGhpcy5zdG9yZS5waXBlKHNlbGVjdChmcm9tQW5ub1NlbGVjdG9yLmdldEZpbHRlcmVkQW5ub3RhdGlvbnMpKTtcblxuICAgIHRoaXMuJHN1YnNjcmlwdGlvbnMgPSBjb21iaW5lTGF0ZXN0KFt0YWdGaWx0ZXIkLCBmaWx0ZXJlZEFubm90YXRpb24kXSkuc3Vic2NyaWJlKChbZm9ybURhdGEsIGZpbHRlcmVkQW5ub10pID0+IHtcbiAgICAgIHRoaXMubmF2aWdhdGlvbkxpc3QgPSBmaWx0ZXJlZEFubm87XG4gICAgICB0aGlzLnRhYnMgPSB0aGlzLm5hdmlnYXRpb25MaXN0Lmxlbmd0aCA+IDAgP1xuICAgICAgICBbe2xhYmVsOiAnY29tbWVudHMnfSwge2xhYmVsOiAnZmlsdGVyJ30sIHtsYWJlbDogJ3NlYXJjaCd9XSA6IFt7bGFiZWw6ICdjb21tZW50cyd9XTtcbiAgICAgIHRoaXMuaXNGaWx0ZXJlZCA9ICFmb3JtRGF0YS5sZW5ndGg7XG4gICAgICB0aGlzLnRhYnMgPSBbLi4udGhpcy50YWJzXS5tYXAoKHRhYikgPT4ge1xuICAgICAgICByZXR1cm4gIXRoaXMuaXNGaWx0ZXJlZCAmJiB0YWIubGFiZWwgPT09ICdmaWx0ZXInID8gey4uLnRhYiwgaXNGaWx0ZXJlZDogdHJ1ZX0gOiB7Li4udGFiLCBpc0ZpbHRlcmVkOiBmYWxzZX07XG4gICAgICB9KTtcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyB0b2dnbGVDb21tZW50c1N1bW1hcnkoKTogdm9pZCB7XG4gICAgdGhpcy5zaG93Q29tbWVudFN1bW1hcnlEaWFsb2cuZW1pdCgpO1xuICB9XG5cbiAgc2VsZWN0VGFiKHRhYjogc3RyaW5nKSB7XG4gICAgdGhpcy50YWJTZWxlY3RlZCA9IHRhYiAhPT0gdGhpcy50YWJTZWxlY3RlZCA/IHRhYiA6IHVuZGVmaW5lZDtcbiAgICBpZiAodGhpcy50YWJTZWxlY3RlZCkge1xuICAgICAgdGhpcy5tYXJnaW5Ub0NvbW1lbnQgPSB0cnVlO1xuICAgICAgdGhpcy5jb21tZW50U2VydmljZS5jcmVhdGVNYXJnaW5Ub0NvbW1lbnRFdmVudCh0aGlzLm1hcmdpblRvQ29tbWVudCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMubWFyZ2luVG9Db21tZW50ID0gZmFsc2U7XG4gICAgICB0aGlzLmNvbW1lbnRTZXJ2aWNlLmNyZWF0ZU1hcmdpblRvQ29tbWVudEV2ZW50KHRoaXMubWFyZ2luVG9Db21tZW50KTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgdG9nZ2xlQ29tbWVudHNQYW5lbCgpIHtcbiAgICB0aGlzLnRvb2xiYXJFdmVudHMudG9nZ2xlQ29tbWVudHNQYW5lbCghdGhpcy50b29sYmFyRXZlbnRzLmNvbW1lbnRzUGFuZWxWaXNpYmxlLmdldFZhbHVlKCkpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy4kc3Vic2NyaXB0aW9ucy51bnN1YnNjcmliZSgpO1xuICB9XG59XG4iXX0=
|
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
export class CommentSetRenderService {
|
|
3
|
-
redrawComponents(commentComponents, pageHeights, rotate, zoom) {
|
|
4
|
-
let prevComment;
|
|
5
|
-
this.sortComponents(commentComponents, pageHeights, rotate, zoom).forEach((comment) => {
|
|
6
|
-
this.adjustIfOverlapping(comment, prevComment, zoom);
|
|
7
|
-
prevComment = comment;
|
|
8
|
-
});
|
|
9
|
-
}
|
|
10
|
-
sortComponents(commentComponents, pageHeights, rotate, zoom) {
|
|
11
|
-
return commentComponents.sort((a, b) => {
|
|
12
|
-
a.rectTop = this.top(a._rectangle, pageHeights[a.page - 1], rotate, zoom);
|
|
13
|
-
b.rectTop = this.top(b._rectangle, pageHeights[b.page - 1], rotate, zoom);
|
|
14
|
-
return this.processSort(a, b);
|
|
15
|
-
});
|
|
16
|
-
}
|
|
17
|
-
adjustIfOverlapping(comment, prevComment, zoom) {
|
|
18
|
-
if (prevComment) {
|
|
19
|
-
const endOfPrevComment = prevComment.commentTop + this.height(prevComment);
|
|
20
|
-
if (comment.commentTop <= endOfPrevComment) {
|
|
21
|
-
comment.rectTop = (endOfPrevComment - comment.totalPrevPagesHeight) / zoom;
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
processSort(a, b) {
|
|
26
|
-
if (this.onSameLine(a, b)) {
|
|
27
|
-
return a.rectLeft >= b.rectLeft ? 1 : -1;
|
|
28
|
-
}
|
|
29
|
-
return a.commentTop >= b.commentTop ? 1 : -1;
|
|
30
|
-
}
|
|
31
|
-
onSameLine(a, b) {
|
|
32
|
-
return this.difference(a.commentTop, b.commentTop) === 0;
|
|
33
|
-
}
|
|
34
|
-
top(rectangle, height, rotate, zoom) {
|
|
35
|
-
const actualHeight = height / zoom;
|
|
36
|
-
switch (rotate) {
|
|
37
|
-
case 90: return rectangle.x;
|
|
38
|
-
case 180: return actualHeight - (rectangle.y + rectangle.height);
|
|
39
|
-
case 270: return actualHeight - (rectangle.x + rectangle.width);
|
|
40
|
-
default: return rectangle.y;
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
height(element) {
|
|
44
|
-
return element.form.nativeElement.getBoundingClientRect().height;
|
|
45
|
-
}
|
|
46
|
-
difference(a, b) { return Math.abs(a - b); }
|
|
47
|
-
}
|
|
48
|
-
CommentSetRenderService.decorators = [
|
|
49
|
-
{ type: Injectable }
|
|
50
|
-
];
|
|
51
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWVudC1zZXQtcmVuZGVyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tZWRpYS12aWV3ZXIvc3JjL2xpYi9hbm5vdGF0aW9ucy9jb21tZW50LXNldC9jb21tZW50LXNldC1yZW5kZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBSTNDLE1BQU0sT0FBTyx1QkFBdUI7SUFFbEMsZ0JBQWdCLENBQUMsaUJBQXFDLEVBQUUsV0FBa0IsRUFBRSxNQUFjLEVBQUUsSUFBWTtRQUN0RyxJQUFJLFdBQTZCLENBQUM7UUFDbEMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxpQkFBaUIsRUFBRSxXQUFXLEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLE9BQXlCLEVBQUUsRUFBRTtZQUN0RyxJQUFJLENBQUMsbUJBQW1CLENBQUMsT0FBTyxFQUFFLFdBQVcsRUFBRSxJQUFJLENBQUMsQ0FBQztZQUNyRCxXQUFXLEdBQUcsT0FBTyxDQUFDO1FBQ3hCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELGNBQWMsQ0FBQyxpQkFBcUMsRUFBRSxXQUFrQixFQUFFLE1BQWMsRUFBRSxJQUFZO1FBQ3BHLE9BQU8saUJBQWlCLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBbUIsRUFBRSxDQUFtQixFQUFFLEVBQUU7WUFDekUsQ0FBQyxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxVQUFVLEVBQUUsV0FBVyxDQUFDLENBQUMsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxDQUFDLEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFDO1lBQzFFLENBQUMsQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsVUFBVSxFQUFFLFdBQVcsQ0FBQyxDQUFDLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQyxFQUFFLE1BQU0sRUFBRSxJQUFJLENBQUMsQ0FBQztZQUMxRSxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ2hDLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLG1CQUFtQixDQUFDLE9BQXlCLEVBQUUsV0FBNkIsRUFBRSxJQUFZO1FBQ2hHLElBQUksV0FBVyxFQUFFO1lBQ2YsTUFBTSxnQkFBZ0IsR0FBRyxXQUFXLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUM7WUFDM0UsSUFBSSxPQUFPLENBQUMsVUFBVSxJQUFJLGdCQUFnQixFQUFFO2dCQUMxQyxPQUFPLENBQUMsT0FBTyxHQUFHLENBQUMsZ0JBQWdCLEdBQUcsT0FBTyxDQUFDLG9CQUFvQixDQUFDLEdBQUcsSUFBSSxDQUFDO2FBQzVFO1NBQ0Y7SUFDSCxDQUFDO0lBRU8sV0FBVyxDQUFDLENBQW1CLEVBQUUsQ0FBbUI7UUFDMUQsSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRTtZQUN6QixPQUFPLENBQUMsQ0FBQyxRQUFRLElBQUksQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztTQUMxQztRQUNELE9BQU8sQ0FBQyxDQUFDLFVBQVUsSUFBSSxDQUFDLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQy9DLENBQUM7SUFFTyxVQUFVLENBQUMsQ0FBbUIsRUFBRSxDQUFtQjtRQUN6RCxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzNELENBQUM7SUFFTyxHQUFHLENBQUMsU0FBa0MsRUFBRSxNQUFjLEVBQUUsTUFBYyxFQUFFLElBQVk7UUFDMUYsTUFBTSxZQUFZLEdBQUcsTUFBTSxHQUFHLElBQUksQ0FBQztRQUNuQyxRQUFRLE1BQU0sRUFBRTtZQUNkLEtBQUssRUFBRSxDQUFDLENBQUMsT0FBTyxTQUFTLENBQUMsQ0FBQyxDQUFDO1lBQzVCLEtBQUssR0FBRyxDQUFDLENBQUMsT0FBTyxZQUFZLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxHQUFHLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUNqRSxLQUFLLEdBQUcsQ0FBQyxDQUFDLE9BQU8sWUFBWSxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsR0FBRyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDaEUsT0FBTyxDQUFDLENBQUMsT0FBTyxTQUFTLENBQUMsQ0FBQyxDQUFDO1NBQzdCO0lBQ0gsQ0FBQztJQUVPLE1BQU0sQ0FBQyxPQUFZO1FBQ3pCLE9BQU8sT0FBTyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMscUJBQXFCLEVBQUUsQ0FBQyxNQUFNLENBQUM7SUFDbkUsQ0FBQztJQUVPLFVBQVUsQ0FBQyxDQUFTLEVBQUUsQ0FBUyxJQUFZLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDOzs7WUFyRDdFLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tZW50Q29tcG9uZW50IH0gZnJvbSAnLi9jb21tZW50L2NvbW1lbnQuY29tcG9uZW50JztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIENvbW1lbnRTZXRSZW5kZXJTZXJ2aWNlIHtcblxuICByZWRyYXdDb21wb25lbnRzKGNvbW1lbnRDb21wb25lbnRzOiBDb21tZW50Q29tcG9uZW50W10sIHBhZ2VIZWlnaHRzOiBhbnlbXSwgcm90YXRlOiBudW1iZXIsIHpvb206IG51bWJlcikge1xuICAgIGxldCBwcmV2Q29tbWVudDogQ29tbWVudENvbXBvbmVudDtcbiAgICB0aGlzLnNvcnRDb21wb25lbnRzKGNvbW1lbnRDb21wb25lbnRzLCBwYWdlSGVpZ2h0cywgcm90YXRlLCB6b29tKS5mb3JFYWNoKChjb21tZW50OiBDb21tZW50Q29tcG9uZW50KSA9PiB7XG4gICAgICB0aGlzLmFkanVzdElmT3ZlcmxhcHBpbmcoY29tbWVudCwgcHJldkNvbW1lbnQsIHpvb20pO1xuICAgICAgcHJldkNvbW1lbnQgPSBjb21tZW50O1xuICAgIH0pO1xuICB9XG5cbiAgc29ydENvbXBvbmVudHMoY29tbWVudENvbXBvbmVudHM6IENvbW1lbnRDb21wb25lbnRbXSwgcGFnZUhlaWdodHM6IGFueVtdLCByb3RhdGU6IG51bWJlciwgem9vbTogbnVtYmVyKSB7XG4gICAgcmV0dXJuIGNvbW1lbnRDb21wb25lbnRzLnNvcnQoKGE6IENvbW1lbnRDb21wb25lbnQsIGI6IENvbW1lbnRDb21wb25lbnQpID0+IHtcbiAgICAgIGEucmVjdFRvcCA9IHRoaXMudG9wKGEuX3JlY3RhbmdsZSwgcGFnZUhlaWdodHNbYS5wYWdlIC0gMV0sIHJvdGF0ZSwgem9vbSk7XG4gICAgICBiLnJlY3RUb3AgPSB0aGlzLnRvcChiLl9yZWN0YW5nbGUsIHBhZ2VIZWlnaHRzW2IucGFnZSAtIDFdLCByb3RhdGUsIHpvb20pO1xuICAgICAgcmV0dXJuIHRoaXMucHJvY2Vzc1NvcnQoYSwgYik7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGFkanVzdElmT3ZlcmxhcHBpbmcoY29tbWVudDogQ29tbWVudENvbXBvbmVudCwgcHJldkNvbW1lbnQ6IENvbW1lbnRDb21wb25lbnQsIHpvb206IG51bWJlcik6IHZvaWQge1xuICAgIGlmIChwcmV2Q29tbWVudCkge1xuICAgICAgY29uc3QgZW5kT2ZQcmV2Q29tbWVudCA9IHByZXZDb21tZW50LmNvbW1lbnRUb3AgKyB0aGlzLmhlaWdodChwcmV2Q29tbWVudCk7XG4gICAgICBpZiAoY29tbWVudC5jb21tZW50VG9wIDw9IGVuZE9mUHJldkNvbW1lbnQpIHtcbiAgICAgICAgY29tbWVudC5yZWN0VG9wID0gKGVuZE9mUHJldkNvbW1lbnQgLSBjb21tZW50LnRvdGFsUHJldlBhZ2VzSGVpZ2h0KSAvIHpvb207XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBwcm9jZXNzU29ydChhOiBDb21tZW50Q29tcG9uZW50LCBiOiBDb21tZW50Q29tcG9uZW50KTogbnVtYmVyIHtcbiAgICBpZiAodGhpcy5vblNhbWVMaW5lKGEsIGIpKSB7XG4gICAgICByZXR1cm4gYS5yZWN0TGVmdCA+PSBiLnJlY3RMZWZ0ID8gMSA6IC0xO1xuICAgIH1cbiAgICByZXR1cm4gYS5jb21tZW50VG9wID49IGIuY29tbWVudFRvcCA/IDEgOiAtMTtcbiAgfVxuXG4gIHByaXZhdGUgb25TYW1lTGluZShhOiBDb21tZW50Q29tcG9uZW50LCBiOiBDb21tZW50Q29tcG9uZW50KTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuZGlmZmVyZW5jZShhLmNvbW1lbnRUb3AsIGIuY29tbWVudFRvcCkgPT09IDA7XG4gIH1cblxuICBwcml2YXRlIHRvcChyZWN0YW5nbGU6IHsgeCwgeSwgaGVpZ2h0LCB3aWR0aCB9LCBoZWlnaHQ6IG51bWJlciwgcm90YXRlOiBudW1iZXIsIHpvb206IG51bWJlcikge1xuICAgIGNvbnN0IGFjdHVhbEhlaWdodCA9IGhlaWdodCAvIHpvb207XG4gICAgc3dpdGNoIChyb3RhdGUpIHtcbiAgICAgIGNhc2UgOTA6IHJldHVybiByZWN0YW5nbGUueDtcbiAgICAgIGNhc2UgMTgwOiByZXR1cm4gYWN0dWFsSGVpZ2h0IC0gKHJlY3RhbmdsZS55ICsgcmVjdGFuZ2xlLmhlaWdodCk7XG4gICAgICBjYXNlIDI3MDogcmV0dXJuIGFjdHVhbEhlaWdodCAtIChyZWN0YW5nbGUueCArIHJlY3RhbmdsZS53aWR0aCk7XG4gICAgICBkZWZhdWx0OiByZXR1cm4gcmVjdGFuZ2xlLnk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBoZWlnaHQoZWxlbWVudDogYW55KSB7XG4gICAgcmV0dXJuIGVsZW1lbnQuZm9ybS5uYXRpdmVFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLmhlaWdodDtcbiAgfVxuXG4gIHByaXZhdGUgZGlmZmVyZW5jZShhOiBudW1iZXIsIGI6IG51bWJlcik6IG51bWJlciB7IHJldHVybiBNYXRoLmFicyhhIC0gYik7IH1cbn1cbiJdfQ==
|
|
@@ -1,110 +0,0 @@
|
|
|
1
|
-
import { Component, ElementRef, Input, QueryList, ViewChild, ViewChildren, } from '@angular/core';
|
|
2
|
-
import { select, Store } from '@ngrx/store';
|
|
3
|
-
import { CommentService } from './comment/comment.service';
|
|
4
|
-
import { CommentSetRenderService } from './comment-set-render.service';
|
|
5
|
-
import * as fromActions from '../../store/actions/annotation.actions';
|
|
6
|
-
import * as fromSelectors from '../../store/selectors/annotation.selectors';
|
|
7
|
-
import { ToolbarEventService } from '../../toolbar/toolbar-event.service';
|
|
8
|
-
export class CommentSetComponent {
|
|
9
|
-
constructor(store, commentService, renderService, toolbarEvents) {
|
|
10
|
-
this.store = store;
|
|
11
|
-
this.commentService = commentService;
|
|
12
|
-
this.renderService = renderService;
|
|
13
|
-
this.toolbarEvents = toolbarEvents;
|
|
14
|
-
this.pageHeights = [];
|
|
15
|
-
this.subscriptions = [];
|
|
16
|
-
this.clearSelection();
|
|
17
|
-
}
|
|
18
|
-
ngOnInit() {
|
|
19
|
-
this.comments$ = this.store.pipe(select(fromSelectors.getCommentsArray));
|
|
20
|
-
this.annoEntities$ = this.store.pipe(select(fromSelectors.getAnnotationEntities));
|
|
21
|
-
this.subscriptions.push(this.toolbarEvents.commentsPanelVisible.subscribe(toggle => {
|
|
22
|
-
this.redrawComments();
|
|
23
|
-
this.showCommentsPanel = toggle;
|
|
24
|
-
}));
|
|
25
|
-
this.subscriptions.push(this.toolbarEvents.rotateSubject.subscribe(rotate => this.rotateDocument()));
|
|
26
|
-
}
|
|
27
|
-
ngOnChanges(changes) {
|
|
28
|
-
if (changes.annotationSet) {
|
|
29
|
-
this.commentService.setCommentSet(this);
|
|
30
|
-
}
|
|
31
|
-
if (changes.contentScrollTop) {
|
|
32
|
-
if (this.container) {
|
|
33
|
-
this.container.nativeElement.scrollTo(0, this.contentScrollTop);
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
ngOnDestroy() {
|
|
38
|
-
if (this.subscriptions.length > 0) {
|
|
39
|
-
this.subscriptions.forEach(subscription => subscription.unsubscribe());
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
onSelect(annotationId) {
|
|
43
|
-
this.store.dispatch(new fromActions.SelectedAnnotation(annotationId));
|
|
44
|
-
}
|
|
45
|
-
onCommentDelete(comment) {
|
|
46
|
-
const annotation = this.annotationSet.annotations.find(anno => anno.id === comment.annotationId);
|
|
47
|
-
const comments = [];
|
|
48
|
-
const annot = Object.assign(Object.assign({}, annotation), { comments });
|
|
49
|
-
this.onAnnotationUpdate(annot);
|
|
50
|
-
this.redrawComments();
|
|
51
|
-
}
|
|
52
|
-
redrawComments() {
|
|
53
|
-
setTimeout(() => {
|
|
54
|
-
const componentList = this.commentComponents.map(comment => comment);
|
|
55
|
-
this.renderService.redrawComponents(componentList, this.pageHeights, this.rotate, this.zoom);
|
|
56
|
-
}, 0);
|
|
57
|
-
}
|
|
58
|
-
rotateDocument() {
|
|
59
|
-
if (this.panel) {
|
|
60
|
-
this.panel.nativeElement.style.height = '0';
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
onCommentUpdate(payload) {
|
|
64
|
-
const annotation = this.annotationSet.annotations.find(anno => anno.id === payload.comment.annotationId);
|
|
65
|
-
const comments = [payload.comment];
|
|
66
|
-
const tags = payload.tags;
|
|
67
|
-
const annot = Object.assign(Object.assign({}, annotation), { comments,
|
|
68
|
-
tags });
|
|
69
|
-
this.onAnnotationUpdate(annot);
|
|
70
|
-
}
|
|
71
|
-
onAnnotationUpdate(annotation) {
|
|
72
|
-
this.store.dispatch(new fromActions.SaveAnnotation(annotation));
|
|
73
|
-
}
|
|
74
|
-
onContainerClick(e) {
|
|
75
|
-
if (e.path && e.path[0] === this.panel.nativeElement) {
|
|
76
|
-
this.clearSelection();
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
clearSelection() {
|
|
80
|
-
this.store.dispatch(new fromActions.SelectedAnnotation({ annotationId: '', editable: false, selected: false }));
|
|
81
|
-
}
|
|
82
|
-
allCommentsSaved() {
|
|
83
|
-
this.commentService.allCommentsSaved();
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
|
-
CommentSetComponent.decorators = [
|
|
87
|
-
{ type: Component, args: [{
|
|
88
|
-
selector: 'mv-comment-set',
|
|
89
|
-
template: "<div #container [ngClass]=\"{'comments': showCommentsPanel}\">\n <div #panel [ngClass]=\"{ 'comments-panel comment-container': true, 'expanded': showCommentsPanel }\"\n [style.height.px]=\"height\"\n (click)=\"onContainerClick($event)\">\n <ng-container *ngFor=\"let comment of (comments$ | async); let i = index;\">\n <mv-anno-comment\n [ngStyle]=\"showCommentsPanel ? {} : {'display':'none'}\"\n #commentComponent\n (commentClick)=\"onSelect($event)\"\n (delete)=\"onCommentDelete($event)\"\n (updated)=\"onCommentUpdate($event)\"\n (changes)=\"allCommentsSaved()\"\n [zoom]=\"zoom\"\n [rotate]=\"rotate\"\n [index]=\"i\"\n [page]=\"comment.page\"\n [comment]=\"comment\"\n [annotation]=\"(annoEntities$ | async)[comment.annotationId]\"\n (renderComments)=\"redrawComments()\">\n </mv-anno-comment>\n </ng-container>\n </div>\n</div>\n"
|
|
90
|
-
},] }
|
|
91
|
-
];
|
|
92
|
-
/** @nocollapse */
|
|
93
|
-
CommentSetComponent.ctorParameters = () => [
|
|
94
|
-
{ type: Store },
|
|
95
|
-
{ type: CommentService },
|
|
96
|
-
{ type: CommentSetRenderService },
|
|
97
|
-
{ type: ToolbarEventService }
|
|
98
|
-
];
|
|
99
|
-
CommentSetComponent.propDecorators = {
|
|
100
|
-
annotationSet: [{ type: Input }],
|
|
101
|
-
zoom: [{ type: Input }],
|
|
102
|
-
rotate: [{ type: Input }],
|
|
103
|
-
height: [{ type: Input }],
|
|
104
|
-
pageHeights: [{ type: Input }],
|
|
105
|
-
contentScrollTop: [{ type: Input }],
|
|
106
|
-
container: [{ type: ViewChild, args: ['container', { static: false },] }],
|
|
107
|
-
panel: [{ type: ViewChild, args: ['panel', { static: false },] }],
|
|
108
|
-
commentComponents: [{ type: ViewChildren, args: ['commentComponent',] }]
|
|
109
|
-
};
|
|
110
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWVudC1zZXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWVkaWEtdmlld2VyL3NyYy9saWIvYW5ub3RhdGlvbnMvY29tbWVudC1zZXQvY29tbWVudC1zZXQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsVUFBVSxFQUNWLEtBQUssRUFHTCxTQUFTLEVBQ1QsU0FBUyxFQUNULFlBQVksR0FDYixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLGFBQWEsQ0FBQztBQU01QyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDM0QsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFFdkUsT0FBTyxLQUFLLFdBQVcsTUFBTSx3Q0FBd0MsQ0FBQztBQUN0RSxPQUFPLEtBQUssYUFBYSxNQUFNLDRDQUE0QyxDQUFDO0FBRzVFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBTTFFLE1BQU0sT0FBTyxtQkFBbUI7SUFxQjlCLFlBQW9CLEtBQTBDLEVBQ2pDLGNBQThCLEVBQzlCLGFBQXNDLEVBQ3RDLGFBQWtDO1FBSDNDLFVBQUssR0FBTCxLQUFLLENBQXFDO1FBQ2pDLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUM5QixrQkFBYSxHQUFiLGFBQWEsQ0FBeUI7UUFDdEMsa0JBQWEsR0FBYixhQUFhLENBQXFCO1FBbEJ0RCxnQkFBVyxHQUFHLEVBQUUsQ0FBQztRQUtsQixrQkFBYSxHQUFtQixFQUFFLENBQUM7UUFjekMsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQ3hCLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxN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QixtQkFBbUI7Ozs0QkFRekIsS0FBSzttQkFDTCxLQUFLO3FCQUNMLEtBQUs7cUJBQ0wsS0FBSzswQkFDTCxLQUFLOytCQUNMLEtBQUs7d0JBUUwsU0FBUyxTQUFDLFdBQVcsRUFBRSxFQUFDLE1BQU0sRUFBRSxLQUFLLEVBQUM7b0JBQ3RDLFNBQVMsU0FBQyxPQUFPLEVBQUUsRUFBQyxNQUFNLEVBQUUsS0FBSyxFQUFDO2dDQUNsQyxZQUFZLFNBQUMsa0JBQWtCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBJbnB1dCwgT25DaGFuZ2VzLFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgUXVlcnlMaXN0LCBTaW1wbGVDaGFuZ2VzLFxuICBWaWV3Q2hpbGQsXG4gIFZpZXdDaGlsZHJlbixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHNlbGVjdCwgU3RvcmUgfSBmcm9tICdAbmdyeC9zdG9yZSc7XG5cbmltcG9ydCB7IEFubm90YXRpb25TZXQgfSBmcm9tICcuLi9hbm5vdGF0aW9uLXNldC9hbm5vdGF0aW9uLXNldC5tb2RlbCc7XG5pbXBvcnQgeyBBbm5vdGF0aW9uIH0gZnJvbSAnLi4vYW5ub3RhdGlvbi1zZXQvYW5ub3RhdGlvbi12aWV3L2Fubm90YXRpb24ubW9kZWwnO1xuaW1wb3J0IHsgQ29tbWVudCB9IGZyb20gJy4vY29tbWVudC9jb21tZW50Lm1vZGVsJztcbmltcG9ydCB7IENvbW1lbnRDb21wb25lbnQgfSBmcm9tICcuL2NvbW1lbnQvY29tbWVudC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ29tbWVudFNlcnZpY2UgfSBmcm9tICcuL2NvbW1lbnQvY29tbWVudC5zZXJ2aWNlJztcbmltcG9ydCB7IENvbW1lbnRTZXRSZW5kZXJTZXJ2aWNlIH0gZnJvbSAnLi9jb21tZW50LXNldC1yZW5kZXIuc2VydmljZSc7XG5pbXBvcnQgKiBhcyBmcm9tU3RvcmUgZnJvbSAnLi4vLi4vc3RvcmUvcmVkdWNlcnMvcmVkdWNlcnMnO1xuaW1wb3J0ICogYXMgZnJvbUFjdGlvbnMgZnJvbSAnLi4vLi4vc3RvcmUvYWN0aW9ucy9hbm5vdGF0aW9uLmFjdGlvbnMnO1xuaW1wb3J0ICogYXMgZnJvbVNlbGVjdG9ycyBmcm9tICcuLi8uLi9zdG9yZS9zZWxlY3RvcnMvYW5ub3RhdGlvbi5zZWxlY3RvcnMnO1xuaW1wb3J0IHsgVGFnc01vZGVsIH0gZnJvbSAnLi4vbW9kZWxzL3RhZ3MubW9kZWwnO1xuaW1wb3J0IHsgU2VsZWN0aW9uQW5ub3RhdGlvbiB9IGZyb20gJy4uL21vZGVscy9ldmVudC1zZWxlY3QubW9kZWwnO1xuaW1wb3J0IHsgVG9vbGJhckV2ZW50U2VydmljZSB9IGZyb20gJy4uLy4uL3Rvb2xiYXIvdG9vbGJhci1ldmVudC5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbXYtY29tbWVudC1zZXQnLFxuICB0ZW1wbGF0ZVVybDogJy4vY29tbWVudC1zZXQuY29tcG9uZW50Lmh0bWwnLFxuIH0pXG5leHBvcnQgY2xhc3MgQ29tbWVudFNldENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95LCBPbkNoYW5nZXMge1xuXG4gIEBJbnB1dCgpIGFubm90YXRpb25TZXQ6IEFubm90YXRpb25TZXQ7XG4gIEBJbnB1dCgpIHpvb206IG51bWJlcjtcbiAgQElucHV0KCkgcm90YXRlOiBudW1iZXI7XG4gIEBJbnB1dCgpIGhlaWdodDogbnVtYmVyO1xuICBASW5wdXQoKSBwYWdlSGVpZ2h0cyA9IFtdO1xuICBASW5wdXQoKSBjb250ZW50U2Nyb2xsVG9wOiBudW1iZXI7XG5cbiAgY29tbWVudHM6IENvbW1lbnRbXTtcbiAgdGFnczogVGFnc01vZGVsW107XG4gIHByaXZhdGUgc3Vic2NyaXB0aW9uczogU3Vic2NyaXB0aW9uW10gPSBbXTtcbiAgcHVibGljIGNvbW1lbnRzJDogT2JzZXJ2YWJsZTxBbm5vdGF0aW9uW10+O1xuICBwdWJsaWMgYW5ub0VudGl0aWVzJDogT2JzZXJ2YWJsZTx7IFtpZDogc3RyaW5nXTogQW5ub3RhdGlvbiB9PjtcblxuICBAVmlld0NoaWxkKCdjb250YWluZXInLCB7c3RhdGljOiBmYWxzZX0pIGNvbnRhaW5lcjogRWxlbWVudFJlZjxIVE1MRGl2RWxlbWVudD47XG4gIEBWaWV3Q2hpbGQoJ3BhbmVsJywge3N0YXRpYzogZmFsc2V9KSBwYW5lbDogRWxlbWVudFJlZjxIVE1MRGl2RWxlbWVudD47XG4gIEBWaWV3Q2hpbGRyZW4oJ2NvbW1lbnRDb21wb25lbnQnKSBjb21tZW50Q29tcG9uZW50czogUXVlcnlMaXN0PENvbW1lbnRDb21wb25lbnQ+O1xuXG4gIHNob3dDb21tZW50c1BhbmVsOiBib29sZWFuO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgc3RvcmU6IFN0b3JlPGZyb21TdG9yZS5Bbm5vdGF0aW9uU2V0U3RhdGU+LFxuICAgICAgICAgICAgICBwcml2YXRlIHJlYWRvbmx5IGNvbW1lbnRTZXJ2aWNlOiBDb21tZW50U2VydmljZSxcbiAgICAgICAgICAgICAgcHJpdmF0ZSByZWFkb25seSByZW5kZXJTZXJ2aWNlOiBDb21tZW50U2V0UmVuZGVyU2VydmljZSxcbiAgICAgICAgICAgICAgcHJpdmF0ZSByZWFkb25seSB0b29sYmFyRXZlbnRzOiBUb29sYmFyRXZlbnRTZXJ2aWNlKSB7XG4gICAgdGhpcy5jbGVhclNlbGVjdGlvbigpO1xuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5jb21tZW50cyQgPSB0aGlzLnN0b3JlLnBpcGUoc2VsZWN0KGZyb21TZWxlY3RvcnMuZ2V0Q29tbWVudHNBcnJheSkpO1xuICAgIHRoaXMuYW5ub0VudGl0aWVzJCA9IHRoaXMuc3RvcmUucGlwZShzZWxlY3QoZnJvbVNlbGVjdG9ycy5nZXRBbm5vdGF0aW9uRW50aXRpZXMpKTtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMucHVzaChcbiAgICAgIHRoaXMudG9vbGJhckV2ZW50cy5jb21tZW50c1BhbmVsVmlzaWJsZS5zdWJzY3JpYmUodG9nZ2xlID0+IHtcbiAgICAgICAgdGhpcy5yZWRyYXdDb21tZW50cygpO1xuICAgICAgICB0aGlzLnNob3dDb21tZW50c1BhbmVsID0gdG9nZ2xlO1xuICAgICAgfSlcbiAgICApO1xuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5wdXNoKHRoaXMudG9vbGJhckV2ZW50cy5yb3RhdGVTdWJqZWN0LnN1YnNjcmliZShyb3RhdGUgPT4gdGhpcy5yb3RhdGVEb2N1bWVudCgpKSk7XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgaWYgKGNoYW5nZXMuYW5ub3RhdGlvblNldCkge1xuICAgICAgdGhpcy5jb21tZW50U2VydmljZS5zZXRDb21tZW50U2V0KHRoaXMpO1xuICAgIH1cbiAgICBpZiAoY2hhbmdlcy5jb250ZW50U2Nyb2xsVG9wKSB7XG4gICAgICBpZiAodGhpcy5jb250YWluZXIpIHtcbiAgICAgICAgdGhpcy5jb250YWluZXIubmF0aXZlRWxlbWVudC5zY3JvbGxUbygwLCB0aGlzLmNvbnRlbnRTY3JvbGxUb3ApO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIGlmICh0aGlzLnN1YnNjcmlwdGlvbnMubGVuZ3RoID4gMCkge1xuICAgICAgdGhpcy5zdWJzY3JpcHRpb25zLmZvckVhY2goc3Vic2NyaXB0aW9uID0+IHN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgb25TZWxlY3QoYW5ub3RhdGlvbklkOiBTZWxlY3Rpb25Bbm5vdGF0aW9uKSB7XG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChuZXcgZnJvbUFjdGlvbnMuU2VsZWN0ZWRBbm5vdGF0aW9uKGFubm90YXRpb25JZCkpO1xuICB9XG5cbiAgcHVibGljIG9uQ29tbWVudERlbGV0ZShjb21tZW50OiBDb21tZW50KSB7XG4gICAgY29uc3QgYW5ub3RhdGlvbiA9IHRoaXMuYW5ub3RhdGlvblNldC5hbm5vdGF0aW9ucy5maW5kKGFubm8gPT4gYW5uby5pZCA9PT0gY29tbWVudC5hbm5vdGF0aW9uSWQpO1xuICAgIGNvbnN0IGNvbW1lbnRzID0gW107XG4gICAgY29uc3QgYW5ub3QgPSB7XG4gICAgICAuLi5hbm5vdGF0aW9uLFxuICAgICAgY29tbWVudHNcbiAgICB9O1xuICAgIHRoaXMub25Bbm5vdGF0aW9uVXBkYXRlKGFubm90KTtcbiAgICB0aGlzLnJlZHJhd0NvbW1lbnRzKCk7XG4gIH1cblxuICByZWRyYXdDb21tZW50cygpIHtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIGNvbnN0IGNvbXBvbmVudExpc3Q6IENvbW1lbnRDb21wb25lbnRbXSA9IHRoaXMuY29tbWVudENvbXBvbmVudHMubWFwKGNvbW1lbnQgPT4gY29tbWVudCk7XG4gICAgICAgIHRoaXMucmVuZGVyU2VydmljZS5yZWRyYXdDb21wb25lbnRzKGNvbXBvbmVudExpc3QsIHRoaXMucGFnZUhlaWdodHMsIHRoaXMucm90YXRlLCB0aGlzLnpvb20pO1xuICAgIH0sIDApO1xuICB9XG5cbiAgcHJpdmF0ZSByb3RhdGVEb2N1bWVudCgpIHtcbiAgICBpZiAodGhpcy5wYW5lbCkge1xuICAgICAgdGhpcy5wYW5lbC5uYXRpdmVFbGVtZW50LnN0eWxlLmhlaWdodCA9ICcwJztcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgb25Db21tZW50VXBkYXRlKHBheWxvYWQ6IHtjb21tZW50OiBDb21tZW50LCB0YWdzOiBUYWdzTW9kZWxbXX0gKSB7XG4gICAgY29uc3QgYW5ub3RhdGlvbiA9IHRoaXMuYW5ub3RhdGlvblNldC5hbm5vdGF0aW9ucy5maW5kKGFubm8gPT4gYW5uby5pZCA9PT0gcGF5bG9hZC5jb21tZW50LmFubm90YXRpb25JZCk7XG4gICAgY29uc3QgY29tbWVudHMgPSBbcGF5bG9hZC5jb21tZW50XTtcbiAgICBjb25zdCB0YWdzID0gcGF5bG9hZC50YWdzO1xuICAgIGNvbnN0IGFubm90ID0ge1xuICAgICAgLi4uYW5ub3RhdGlvbixcbiAgICAgIGNvbW1lbnRzLFxuICAgICAgdGFnc1xuICAgIH07XG4gICAgdGhpcy5vbkFubm90YXRpb25VcGRhdGUoYW5ub3QpO1xuICB9XG5cbiAgcHVibGljIG9uQW5ub3RhdGlvblVwZGF0ZShhbm5vdGF0aW9uOiBBbm5vdGF0aW9uKSB7XG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChuZXcgZnJvbUFjdGlvbnMuU2F2ZUFubm90YXRpb24oYW5ub3RhdGlvbikpO1xuICB9XG5cbiAgb25Db250YWluZXJDbGljayhlKSB7XG4gICAgaWYgKGUucGF0aCAmJiBlLnBhdGhbMF0gPT09IHRoaXMucGFuZWwubmF0aXZlRWxlbWVudCkge1xuICAgICAgdGhpcy5jbGVhclNlbGVjdGlvbigpO1xuICAgIH1cbiAgfVxuXG4gIGNsZWFyU2VsZWN0aW9uKCkge1xuICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2gobmV3IGZyb21BY3Rpb25zLlNlbGVjdGVkQW5ub3RhdGlvbih7IGFubm90YXRpb25JZDogJycsIGVkaXRhYmxlOiBmYWxzZSwgc2VsZWN0ZWQ6IGZhbHNlfSkpO1xuICB9XG5cbiAgYWxsQ29tbWVudHNTYXZlZCgpIHtcbiAgICB0aGlzLmNvbW1lbnRTZXJ2aWNlLmFsbENvbW1lbnRzU2F2ZWQoKTtcbiAgfVxufVxuIl19
|
|
@@ -1,106 +0,0 @@
|
|
|
1
|
-
import { Component, Input, ViewChild, ElementRef } from '@angular/core';
|
|
2
|
-
import { FormBuilder, FormControl, FormGroup } from '@angular/forms';
|
|
3
|
-
import { combineLatest } from 'rxjs';
|
|
4
|
-
import { select, Store } from '@ngrx/store';
|
|
5
|
-
import { PrintService } from '../../print.service';
|
|
6
|
-
import { ToolbarEventService } from '../../toolbar/toolbar-event.service';
|
|
7
|
-
import * as fromSelectors from '../../store/selectors/annotation.selectors';
|
|
8
|
-
import * as fromAnnoActions from '../../store/actions/annotation.actions';
|
|
9
|
-
import * as fromTagSelectors from '../../store/selectors/tag.selectors';
|
|
10
|
-
export class CommentsSummaryComponent {
|
|
11
|
-
constructor(store, printService, toolbarEvents, fb) {
|
|
12
|
-
this.store = store;
|
|
13
|
-
this.printService = printService;
|
|
14
|
-
this.toolbarEvents = toolbarEvents;
|
|
15
|
-
this.fb = fb;
|
|
16
|
-
this.showFilters = false;
|
|
17
|
-
this.hasFilter = false;
|
|
18
|
-
}
|
|
19
|
-
ngOnInit() {
|
|
20
|
-
this.filtersFg = this.fb.group({
|
|
21
|
-
dateRangeFrom: new FormGroup({
|
|
22
|
-
day: new FormControl(''),
|
|
23
|
-
month: new FormControl(''),
|
|
24
|
-
year: new FormControl('')
|
|
25
|
-
}),
|
|
26
|
-
dateRangeTo: new FormGroup({
|
|
27
|
-
day: new FormControl(''),
|
|
28
|
-
month: new FormControl(''),
|
|
29
|
-
year: new FormControl('')
|
|
30
|
-
}),
|
|
31
|
-
tagFilters: this.fb.group({}),
|
|
32
|
-
});
|
|
33
|
-
this.comments$ = this.store.pipe(select(fromSelectors.getCommentSummary));
|
|
34
|
-
this.buildCheckBoxForm();
|
|
35
|
-
this.container.nativeElement.focus();
|
|
36
|
-
}
|
|
37
|
-
buildCheckBoxForm() {
|
|
38
|
-
this.filtersFg.reset();
|
|
39
|
-
const checkboxes = this.filtersFg.get('tagFilters');
|
|
40
|
-
const filters$ = this.store.pipe(select(fromSelectors.getCommentSummaryFilters));
|
|
41
|
-
this.allTags$ = this.store.pipe(select(fromTagSelectors.getAllTagsArr));
|
|
42
|
-
this.$subscriptions = combineLatest([this.allTags$, filters$]).subscribe(([tags, filters]) => {
|
|
43
|
-
this.hasFilter = filters.hasFilter;
|
|
44
|
-
tags.forEach((val) => {
|
|
45
|
-
const checkBoxValue = (filters.filters.tagFilters &&
|
|
46
|
-
filters.filters.tagFilters.hasOwnProperty(val.key)) ?
|
|
47
|
-
filters.filters.tagFilters[val.key] : false;
|
|
48
|
-
checkboxes.addControl(val.key, new FormControl(checkBoxValue));
|
|
49
|
-
});
|
|
50
|
-
this.filtersFg.updateValueAndValidity();
|
|
51
|
-
});
|
|
52
|
-
}
|
|
53
|
-
onClearFilters() {
|
|
54
|
-
this.store.dispatch(new fromAnnoActions.ClearCommentSummaryFilters());
|
|
55
|
-
this.buildCheckBoxForm();
|
|
56
|
-
}
|
|
57
|
-
onFilter() {
|
|
58
|
-
const { value } = this.filtersFg;
|
|
59
|
-
const hasDateFrom = (value.dateRangeFrom.year && value.dateRangeFrom.month && value.dateRangeFrom.day);
|
|
60
|
-
const hasDateTo = (value.dateRangeTo.year && value.dateRangeTo.month && value.dateRangeTo.day);
|
|
61
|
-
const dateRangeFrom = hasDateFrom ?
|
|
62
|
-
new Date(value.dateRangeFrom.year, value.dateRangeFrom.month - 1, value.dateRangeFrom.day).getTime() : null;
|
|
63
|
-
const dateRangeTo = hasDateTo ?
|
|
64
|
-
new Date(value.dateRangeTo.year, value.dateRangeTo.month - 1, value.dateRangeTo.day).getTime() : null;
|
|
65
|
-
this.store.dispatch(new fromAnnoActions.ApplyCommentSymmaryFilter(Object.assign(Object.assign({}, value), { dateRangeFrom, dateRangeTo })));
|
|
66
|
-
}
|
|
67
|
-
onFiltersToggle() {
|
|
68
|
-
this.showFilters = !this.showFilters;
|
|
69
|
-
}
|
|
70
|
-
onClose() {
|
|
71
|
-
this.toolbarEvents.toggleCommentsSummary(false);
|
|
72
|
-
}
|
|
73
|
-
onPrint() {
|
|
74
|
-
this.printService.printElementNatively(this.commentsTable.nativeElement, 1000, 900);
|
|
75
|
-
}
|
|
76
|
-
navigateToPage(pageNumber) {
|
|
77
|
-
if (this.contentType === 'pdf') {
|
|
78
|
-
this.toolbarEvents.setPage(pageNumber);
|
|
79
|
-
}
|
|
80
|
-
this.toolbarEvents.toggleCommentsSummary(false);
|
|
81
|
-
this.toolbarEvents.toggleCommentsPanel(true);
|
|
82
|
-
}
|
|
83
|
-
ngOnDestroy() {
|
|
84
|
-
this.$subscriptions.unsubscribe();
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
CommentsSummaryComponent.decorators = [
|
|
88
|
-
{ type: Component, args: [{
|
|
89
|
-
selector: 'mv-comments-summary',
|
|
90
|
-
template: "<div id=\"modal-background\" class=\"modal\" (click)=\"onClose()\">\n <div #outerContainer id=\"modal\" class=\"modal-content govuk-width-container clearfix\" (click)=\"$event.stopPropagation()\" cdkTrapFocus tabindex=\"0\">\n <div id=\"comment-container\" class=\"comment-container\" #commentContainer>\n <h2 class=\"govuk-heading-m\">{{ title }}</h2>\n <ng-container *ngIf=\"(comments$ | async) as comments\">\n <ng-container *ngIf=\"comments.length\">\n <button type=\"submit\" class=\"govuk-button govuk-!-margin-right-1\" (click)=\"onFiltersToggle()\">\n {{ !showFilters ? 'Show Filters' : 'Hide Filters'}}\n </button>\n <button type=\"submit\" class=\"govuk-button govuk-button--secondary\" (click)=\"onClearFilters()\" *ngIf=\"hasFilter\">\n Clear Filters\n </button>\n <ng-container *ngIf=\"showFilters\">\n <form [formGroup]=\"filtersFg\" (ngSubmit)=\"onFilter()\" >\n <div class=\"dates\">\n <div class=\"dates__from\">\n <mv-gov-uk-date\n [config]=\"{id: 'dateRangeFrom', legend: 'From'}\"\n [formGroup]=\"filtersFg.controls['dateRangeFrom']\"\n [errorMessage]=\"'test'\"\n ></mv-gov-uk-date>\n </div>\n <div class=\"dates__to\">\n <mv-gov-uk-date\n [config]=\"{id: 'dateRangeTo', legend: 'To'}\"\n [formGroup]=\"filtersFg.controls['dateRangeTo']\"\n [errorMessage]=\"'test'\"\n ></mv-gov-uk-date>\n </div>\n <div class=\"dates__tags\">\n <mv-gov-uk-fieldset\n [config]=\"{legend: 'Tags', classes: 'govuk-label--m', id: 'filters'}\"\n [isHeading]=\"false\">\n <div class=\"govuk-checkboxes--scroll\" [formGroup]=\"filtersFg.controls['tagFilters']\">\n <div class=\"govuk-checkboxes govuk-checkboxes--small\">\n <div class=\"govuk-checkboxes__item\" *ngFor=\"let item of (allTags$ | async)\">\n <input [formControlName]=\"item.key\" class=\"govuk-checkboxes__input\" [value]=\"false\" type=\"checkbox\">\n <label class=\"govuk-label govuk-checkboxes__label\">\n {{ item.key | unsnake}} ({{item.length}})\n </label>\n </div>\n </div>\n </div>\n </mv-gov-uk-fieldset>\n </div>\n <div class=\"dates__cta\">\n <button type=\"submit\" class=\"govuk-button\">\n Filter comments\n </button>\n </div>\n </div>\n </form>\n </ng-container>\n <ng-container *ngIf=\"comments[0]\">\n <ngx-datatable\n [rows]=\"comments\"\n rowHeight=\"auto\"\n headerHeight=\"auto\"\n [columnMode]=\"'flex'\"\n [sorts]=\"[{ prop: 'date', dir: 'desc' }]\">\n <ngx-datatable-column name=\"User\" [flexGrow]=\"1\" [sortable]=\"false\"></ngx-datatable-column>\n <ngx-datatable-column name=\"Page\" [flexGrow]=\"1\">\n <ng-template ngx-datatable-cell-template let-value=\"value\">\n <a [routerLink]=\"\" class=\"comment-summary_pages\" (click)=\"navigateToPage(value)\">{{value}}</a>\n </ng-template>\n </ngx-datatable-column>\n <ngx-datatable-column name=\"Date\" [flexGrow]=\"1\"></ngx-datatable-column>\n <ngx-datatable-column name=\"Comment\" [flexGrow]=\"3\" [sortable]=\"false\"></ngx-datatable-column>\n <ngx-datatable-column name=\"Tags\" [flexGrow]=\"1\" [sortable]=\"false\">\n <ng-template ngx-datatable-cell-template let-value=\"value\">\n <span class=\"hmcts-badge\" *ngFor=\"let tag of value\">{{tag.label}}</span>\n </ng-template>\n </ngx-datatable-column>\n </ngx-datatable>\n </ng-container>\n </ng-container>\n <ng-container *ngIf=\"!comments[0]\">\n <h3 class=\"govuk-heading-s\" >No comments available. Select text to add a highlight or comment.</h3>\n </ng-container>\n </ng-container>\n </div>\n\n <div class=\"button-container\">\n <button (click)=\"onPrint()\" class=\"govuk-button govuk-button--secondary\">Print</button>\n <button id=\"modal-close-button\" (click)=\"onClose()\" class=\"govuk-button\">Close</button>\n </div>\n </div>\n</div>\n"
|
|
91
|
-
},] }
|
|
92
|
-
];
|
|
93
|
-
/** @nocollapse */
|
|
94
|
-
CommentsSummaryComponent.ctorParameters = () => [
|
|
95
|
-
{ type: Store },
|
|
96
|
-
{ type: PrintService },
|
|
97
|
-
{ type: ToolbarEventService },
|
|
98
|
-
{ type: FormBuilder }
|
|
99
|
-
];
|
|
100
|
-
CommentsSummaryComponent.propDecorators = {
|
|
101
|
-
title: [{ type: Input }],
|
|
102
|
-
contentType: [{ type: Input }],
|
|
103
|
-
container: [{ type: ViewChild, args: ['outerContainer', { static: true },] }],
|
|
104
|
-
commentsTable: [{ type: ViewChild, args: ['commentContainer', { static: false },] }]
|
|
105
|
-
};
|
|
106
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWVudHMtc3VtbWFyeS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tZWRpYS12aWV3ZXIvc3JjL2xpYi9hbm5vdGF0aW9ucy9jb21tZW50cy1zdW1tYXJ5L2NvbW1lbnRzLXN1bW1hcnkuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQW9CLE1BQU0sZUFBZSxDQUFDO0FBQ3pGLE9BQU8sRUFBRSxXQUFXLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3JFLE9BQU8sRUFBRSxhQUFhLEVBQTRCLE1BQU0sTUFBTSxDQUFDO0FBQy9ELE9BQU8sRUFBQyxNQUFNLEVBQUUsS0FBSyxFQUFDLE1BQU0sYUFBYSxDQUFDO0FBRTFDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUMxRSxPQUFPLEtBQUssYUFBYSxNQUFNLDRDQUE0QyxDQUFDO0FBRTVFLE9BQU8sS0FBSyxlQUFlLE1BQU0sd0NBQXdDLENBQUM7QUFDMUUsT0FBTyxLQUFLLGdCQUFnQixNQUFNLHFDQUFxQyxDQUFDO0FBTXhFLE1BQU0sT0FBTyx3QkFBd0I7SUFhbkMsWUFDVSxLQUEwQyxFQUNqQyxZQUEwQixFQUMxQixhQUFrQyxFQUMzQyxFQUFlO1FBSGYsVUFBSyxHQUFMLEtBQUssQ0FBcUM7UUFDakMsaUJBQVksR0FBWixZQUFZLENBQWM7UUFDMUIsa0JBQWEsR0FBYixhQUFhLENBQXFCO1FBQzNDLE9BQUUsR0FBRixFQUFFLENBQWE7UUFQekIsZ0JBQVcsR0FBRyxLQUFLLENBQUM7UUFDcEIsY0FBUyxHQUFHLEtBQUssQ0FBQztJQU9mLENBQUM7SUFFSixRQUFRO1FB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QUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxhQUFhLEVBQUUsSUFBSSxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQ3RGLENBQUM7SUFFRCxjQUFjLENBQUMsVUFBa0I7UUFDL0IsSUFBSSxJQUFJLENBQUMsV0FBVyxLQUFLLEtBQUssRUFBRTtZQUM5QixJQUFJLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQztTQUN4QztRQUNELElBQUksQ0FBQyxhQUFhLENBQUMscUJBQXFCLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDaEQsSUFBSSxDQUFDLGFBQWEsQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMvQyxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxjQUFjLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDcEMsQ0FBQzs7O1lBbEdGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUscUJBQXFCO2dCQUMvQixtc0pBQWdEO2FBQ2pEOzs7O1lBWmUsS0FBSztZQUVaLFlBQVk7WUFDWixtQkFBbUI7WUFMbkIsV0FBVzs7O29CQWlCakIsS0FBSzswQkFDTCxLQUFLO3dCQUNMLFNBQVMsU0FBQyxnQkFBZ0IsRUFBRSxFQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUM7NEJBQzFDLFNBQVMsU0FBQyxrQkFBa0IsRUFBRSxFQUFDLE1BQU0sRUFBRSxLQUFLLEVBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgSW5wdXQsIFZpZXdDaGlsZCwgRWxlbWVudFJlZiwgT25Jbml0LCBPbkRlc3Ryb3l9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUJ1aWxkZXIsIEZvcm1Db250cm9sLCBGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBjb21iaW5lTGF0ZXN0LCBPYnNlcnZhYmxlLCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7c2VsZWN0LCBTdG9yZX0gZnJvbSAnQG5ncngvc3RvcmUnO1xuXG5pbXBvcnQgeyBQcmludFNlcnZpY2UgfSBmcm9tICcuLi8uLi9wcmludC5zZXJ2aWNlJztcbmltcG9ydCB7IFRvb2xiYXJFdmVudFNlcnZpY2UgfSBmcm9tICcuLi8uLi90b29sYmFyL3Rvb2xiYXItZXZlbnQuc2VydmljZSc7XG5pbXBvcnQgKiBhcyBmcm9tU2VsZWN0b3JzIGZyb20gJy4uLy4uL3N0b3JlL3NlbGVjdG9ycy9hbm5vdGF0aW9uLnNlbGVjdG9ycyc7XG5pbXBvcnQgKiBhcyBmcm9tU3RvcmUgZnJvbSAnLi4vLi4vc3RvcmUvcmVkdWNlcnMvcmVkdWNlcnMnO1xuaW1wb3J0ICogYXMgZnJvbUFubm9BY3Rpb25zIGZyb20gJy4uLy4uL3N0b3JlL2FjdGlvbnMvYW5ub3RhdGlvbi5hY3Rpb25zJztcbmltcG9ydCAqIGFzIGZyb21UYWdTZWxlY3RvcnMgZnJvbSAnLi4vLi4vc3RvcmUvc2VsZWN0b3JzL3RhZy5zZWxlY3RvcnMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdtdi1jb21tZW50cy1zdW1tYXJ5JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2NvbW1lbnRzLXN1bW1hcnkuY29tcG9uZW50Lmh0bWwnLFxufSlcbmV4cG9ydCBjbGFzcyBDb21tZW50c1N1bW1hcnlDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG5cbiAgQElucHV0KCkgdGl0bGU6IHN0cmluZztcbiAgQElucHV0KCkgY29udGVudFR5cGU6IHN0cmluZztcbiAgQFZpZXdDaGlsZCgnb3V0ZXJDb250YWluZXInLCB7c3RhdGljOiB0cnVlfSkgY29udGFpbmVyOiBFbGVtZW50UmVmO1xuICBAVmlld0NoaWxkKCdjb21tZW50Q29udGFpbmVyJywge3N0YXRpYzogZmFsc2V9KSBjb21tZW50c1RhYmxlOiBFbGVtZW50UmVmO1xuICBwdWJsaWMgY29tbWVudHMkOiBPYnNlcnZhYmxlPGFueT47XG4gIHB1YmxpYyBmaWx0ZXJzRmc6IEZvcm1Hcm91cDtcbiAgcHJpdmF0ZSAkc3Vic2NyaXB0aW9uczogU3Vic2NyaXB0aW9uO1xuICBhbGxUYWdzJDogT2JzZXJ2YWJsZTx7a2V5OiBzdHJpbmc7IGxlbmd0aDogbnVtYmVyfVtdPjtcbiAgc2hvd0ZpbHRlcnMgPSBmYWxzZTtcbiAgaGFzRmlsdGVyID0gZmFsc2U7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBzdG9yZTogU3RvcmU8ZnJvbVN0b3JlLkFubm90YXRpb25TZXRTdGF0ZT4sXG4gICAgcHJpdmF0ZSByZWFkb25seSBwcmludFNlcnZpY2U6IFByaW50U2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHRvb2xiYXJFdmVudHM6IFRvb2xiYXJFdmVudFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBmYjogRm9ybUJ1aWxkZXJcbiAgKSB7fVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuZmlsdGVyc0ZnID0gdGhpcy5mYi5ncm91cCh7XG4gICAgICBkYXRlUmFuZ2VGcm9tOiBuZXcgRm9ybUdyb3VwKHtcbiAgICAgICAgZGF5OiBuZXcgRm9ybUNvbnRyb2woJycpLFxuICAgICAgICBtb250aDogbmV3IEZvcm1Db250cm9sKCcnKSxcbiAgICAgICAgeWVhcjogbmV3IEZvcm1Db250cm9sKCcnKVxuICAgICAgfSksXG4gICAgICBkYXRlUmFuZ2VUbzogbmV3IEZvcm1Hcm91cCh7XG4gICAgICAgIGRheTogbmV3IEZvcm1Db250cm9sKCcnKSxcbiAgICAgICAgbW9udGg6IG5ldyBGb3JtQ29udHJvbCgnJyksXG4gICAgICAgIHllYXI6IG5ldyBGb3JtQ29udHJvbCgnJylcbiAgICAgIH0pLFxuICAgICAgdGFnRmlsdGVyczogdGhpcy5mYi5ncm91cCh7fSksXG4gICAgfSk7XG4gICAgdGhpcy5jb21tZW50cyQgPSB0aGlzLnN0b3JlLnBpcGUoc2VsZWN0KGZyb21TZWxlY3RvcnMuZ2V0Q29tbWVudFN1bW1hcnkpKTtcbiAgICB0aGlzLmJ1aWxkQ2hlY2tCb3hGb3JtKCk7XG4gICAgdGhpcy5jb250YWluZXIubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICB9XG5cbiAgYnVpbGRDaGVja0JveEZvcm0oKSB7XG4gICAgdGhpcy5maWx0ZXJzRmcucmVzZXQoKTtcbiAgICBjb25zdCBjaGVja2JveGVzID0gPEZvcm1Hcm91cD50aGlzLmZpbHRlcnNGZy5nZXQoJ3RhZ0ZpbHRlcnMnKTtcbiAgICBjb25zdCBmaWx0ZXJzJCA9IHRoaXMuc3RvcmUucGlwZShzZWxlY3QoZnJvbVNlbGVjdG9ycy5nZXRDb21tZW50U3VtbWFyeUZpbHRlcnMpKTtcbiAgICB0aGlzLmFsbFRhZ3MkID0gdGhpcy5zdG9yZS5waXBlKHNlbGVjdChmcm9tVGFnU2VsZWN0b3JzLmdldEFsbFRhZ3NBcnIpKTtcbiAgICB0aGlzLiRzdWJzY3JpcHRpb25zID0gY29tYmluZUxhdGVzdChbdGhpcy5hbGxUYWdzJCwgZmlsdGVycyRdKS5zdWJzY3JpYmUoKFt0YWdzLCBmaWx0ZXJzXSkgPT4ge1xuICAgICAgdGhpcy5oYXNGaWx0ZXIgPSBmaWx0ZXJzLmhhc0ZpbHRlcjtcbiAgICAgIHRhZ3MuZm9yRWFjaCgodmFsKSA9PiB7XG4gICAgICAgIGNvbnN0IGNoZWNrQm94VmFsdWUgPSAoZmlsdGVycy5maWx0ZXJzLnRhZ0ZpbHRlcnMgJiZcbiAgICAgICAgICBmaWx0ZXJzLmZpbHRlcnMudGFnRmlsdGVycy5oYXNPd25Qcm9wZXJ0eSh2YWwua2V5KSkgP1xuICAgICAgICAgIGZpbHRlcnMuZmlsdGVycy50YWdGaWx0ZXJzW3ZhbC5rZXldIDogZmFsc2U7XG4gICAgICAgIGNoZWNrYm94ZXMuYWRkQ29udHJvbCh2YWwua2V5LCBuZXcgRm9ybUNvbnRyb2woY2hlY2tCb3hWYWx1ZSkpO1xuICAgICAgfSk7XG4gICAgICB0aGlzLmZpbHRlcnNGZy51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KCk7XG4gICAgfSk7XG4gIH1cblxuICBvbkNsZWFyRmlsdGVycygpIHtcbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKG5ldyBmcm9tQW5ub0FjdGlvbnMuQ2xlYXJDb21tZW50U3VtbWFyeUZpbHRlcnMoKSk7XG4gICAgdGhpcy5idWlsZENoZWNrQm94Rm9ybSgpO1xuICB9XG5cbiAgb25GaWx0ZXIoKSB7XG4gICAgY29uc3QgeyB2YWx1ZSB9ID0gdGhpcy5maWx0ZXJzRmc7XG4gICAgY29uc3QgaGFzRGF0ZUZyb20gPSAgKHZhbHVlLmRhdGVSYW5nZUZyb20ueWVhciAmJiB2YWx1ZS5kYXRlUmFuZ2VGcm9tLm1vbnRoICYmIHZhbHVlLmRhdGVSYW5nZUZyb20uZGF5KTtcbiAgICBjb25zdCBoYXNEYXRlVG8gPSAodmFsdWUuZGF0ZVJhbmdlVG8ueWVhciAmJiB2YWx1ZS5kYXRlUmFuZ2VUby5tb250aCAmJiB2YWx1ZS5kYXRlUmFuZ2VUby5kYXkpO1xuICAgIGNvbnN0IGRhdGVSYW5nZUZyb20gPSBoYXNEYXRlRnJvbSA/XG4gICAgICBuZXcgRGF0ZSh2YWx1ZS5kYXRlUmFuZ2VGcm9tLnllYXIsIHZhbHVlLmRhdGVSYW5nZUZyb20ubW9udGggLSAxLCB2YWx1ZS5kYXRlUmFuZ2VGcm9tLmRheSkuZ2V0VGltZSgpIDogbnVsbDtcbiAgICBjb25zdCBkYXRlUmFuZ2VUbyA9IGhhc0RhdGVUbyA/XG4gICAgICBuZXcgRGF0ZSh2YWx1ZS5kYXRlUmFuZ2VUby55ZWFyLCB2YWx1ZS5kYXRlUmFuZ2VUby5tb250aCAtIDEsIHZhbHVlLmRhdGVSYW5nZVRvLmRheSkuZ2V0VGltZSgpIDogbnVsbDtcbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKG5ldyBmcm9tQW5ub0FjdGlvbnMuQXBwbHlDb21tZW50U3ltbWFyeUZpbHRlcih7Li4udmFsdWUsIGRhdGVSYW5nZUZyb20sIGRhdGVSYW5nZVRvfSkpO1xuICB9XG5cbiAgb25GaWx0ZXJzVG9nZ2xlKCkge1xuICAgIHRoaXMuc2hvd0ZpbHRlcnMgPSAhdGhpcy5zaG93RmlsdGVycztcbiAgfVxuXG4gIHB1YmxpYyBvbkNsb3NlKCk6IHZvaWQge1xuICAgIHRoaXMudG9vbGJhckV2ZW50cy50b2dnbGVDb21tZW50c1N1bW1hcnkoZmFsc2UpO1xuICB9XG5cbiAgcHVibGljIG9uUHJpbnQoKTogdm9pZCB7XG4gICAgdGhpcy5wcmludFNlcnZpY2UucHJpbnRFbGVtZW50TmF0aXZlbHkodGhpcy5jb21tZW50c1RhYmxlLm5hdGl2ZUVsZW1lbnQsIDEwMDAsIDkwMCk7XG4gIH1cblxuICBuYXZpZ2F0ZVRvUGFnZShwYWdlTnVtYmVyOiBudW1iZXIpIHtcbiAgICBpZiAodGhpcy5jb250ZW50VHlwZSA9PT0gJ3BkZicpIHtcbiAgICAgIHRoaXMudG9vbGJhckV2ZW50cy5zZXRQYWdlKHBhZ2VOdW1iZXIpO1xuICAgIH1cbiAgICB0aGlzLnRvb2xiYXJFdmVudHMudG9nZ2xlQ29tbWVudHNTdW1tYXJ5KGZhbHNlKTtcbiAgICB0aGlzLnRvb2xiYXJFdmVudHMudG9nZ2xlQ29tbWVudHNQYW5lbCh0cnVlKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuJHN1YnNjcmlwdGlvbnMudW5zdWJzY3JpYmUoKTtcbiAgfVxufVxuIl19
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import { Pipe } from '@angular/core';
|
|
2
|
-
import { DatePipe } from '@angular/common';
|
|
3
|
-
import moment from 'moment-timezone';
|
|
4
|
-
/**
|
|
5
|
-
* A moment timezone pipe to support parsing based on time zone abbreviations
|
|
6
|
-
* covers all cases of offset variation due to daylight saving.
|
|
7
|
-
*
|
|
8
|
-
* Same API as DatePipe with additional timezone abbreviation support
|
|
9
|
-
* Official date pipe dropped support for abbreviations names from Angular V5
|
|
10
|
-
*/
|
|
11
|
-
export class MomentDatePipe extends DatePipe {
|
|
12
|
-
transform(value, format = 'mediumDate', timezone = 'Europe/London') {
|
|
13
|
-
const timezoneOffset = moment(value).tz(timezone).format('Z');
|
|
14
|
-
return super.transform(value, format, timezoneOffset);
|
|
15
|
-
}
|
|
16
|
-
}
|
|
17
|
-
MomentDatePipe.decorators = [
|
|
18
|
-
{ type: Pipe, args: [{
|
|
19
|
-
name: 'momentDate'
|
|
20
|
-
},] }
|
|
21
|
-
];
|
|
22
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWVkaWEtdmlld2VyL3NyYy9saWIvYW5ub3RhdGlvbnMvcGlwZXMvZGF0ZS9kYXRlLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFDcEQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzNDLE9BQU8sTUFBTSxNQUFNLGlCQUFpQixDQUFDO0FBQ3JDOzs7Ozs7R0FNRztBQUlILE1BQU0sT0FBTyxjQUFlLFNBQVEsUUFBUTtJQUUxQyxTQUFTLENBQ1AsS0FBb0IsRUFDcEIsU0FBaUIsWUFBWSxFQUM3QixXQUFtQixlQUFlO1FBRWxDLE1BQU0sY0FBYyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQzlELE9BQU8sS0FBSyxDQUFDLFNBQVMsQ0FBQyxLQUFLLEVBQUUsTUFBTSxFQUFFLGNBQWMsQ0FBQyxDQUFDO0lBQ3hELENBQUM7OztZQVpGLElBQUksU0FBQztnQkFDSixJQUFJLEVBQUUsWUFBWTthQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERhdGVQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCBtb21lbnQgZnJvbSAnbW9tZW50LXRpbWV6b25lJztcbi8qKlxuICogQSBtb21lbnQgdGltZXpvbmUgcGlwZSB0byBzdXBwb3J0IHBhcnNpbmcgYmFzZWQgb24gdGltZSB6b25lIGFiYnJldmlhdGlvbnNcbiAqIGNvdmVycyBhbGwgY2FzZXMgb2Ygb2Zmc2V0IHZhcmlhdGlvbiBkdWUgdG8gZGF5bGlnaHQgc2F2aW5nLlxuICpcbiAqIFNhbWUgQVBJIGFzIERhdGVQaXBlIHdpdGggYWRkaXRpb25hbCB0aW1lem9uZSBhYmJyZXZpYXRpb24gc3VwcG9ydFxuICogT2ZmaWNpYWwgZGF0ZSBwaXBlIGRyb3BwZWQgc3VwcG9ydCBmb3IgYWJicmV2aWF0aW9ucyBuYW1lcyBmcm9tIEFuZ3VsYXIgVjVcbiAqL1xuQFBpcGUoe1xuICBuYW1lOiAnbW9tZW50RGF0ZSdcbn0pXG5leHBvcnQgY2xhc3MgTW9tZW50RGF0ZVBpcGUgZXh0ZW5kcyBEYXRlUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuXG4gIHRyYW5zZm9ybShcbiAgICB2YWx1ZTogc3RyaW5nIHwgRGF0ZSxcbiAgICBmb3JtYXQ6IHN0cmluZyA9ICdtZWRpdW1EYXRlJyxcbiAgICB0aW1lem9uZTogc3RyaW5nID0gJ0V1cm9wZS9Mb25kb24nXG4gICk6IGFueSB7XG4gICAgY29uc3QgdGltZXpvbmVPZmZzZXQgPSBtb21lbnQodmFsdWUpLnR6KHRpbWV6b25lKS5mb3JtYXQoJ1onKTtcbiAgICByZXR1cm4gc3VwZXIudHJhbnNmb3JtKHZhbHVlLCBmb3JtYXQsIHRpbWV6b25lT2Zmc2V0KTtcbiAgfVxufVxuIl19
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import { Pipe } from '@angular/core';
|
|
2
|
-
export class FilterPipe {
|
|
3
|
-
transform(items, searchText, fieldName) {
|
|
4
|
-
if (!items) {
|
|
5
|
-
return [];
|
|
6
|
-
}
|
|
7
|
-
if (!searchText) {
|
|
8
|
-
return items;
|
|
9
|
-
}
|
|
10
|
-
return items.filter(item => {
|
|
11
|
-
if (item) {
|
|
12
|
-
if (item[fieldName]) {
|
|
13
|
-
return item[fieldName].toLowerCase().includes(searchText.toLowerCase());
|
|
14
|
-
}
|
|
15
|
-
else {
|
|
16
|
-
return item.toLowerCase().includes(searchText.toLowerCase());
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
return false;
|
|
20
|
-
});
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
FilterPipe.decorators = [
|
|
24
|
-
{ type: Pipe, args: [{
|
|
25
|
-
name: 'filter'
|
|
26
|
-
},] }
|
|
27
|
-
];
|
|
28
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tZWRpYS12aWV3ZXIvc3JjL2xpYi9hbm5vdGF0aW9ucy9waXBlcy9maWx0ZXIvZmlsdGVyLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFLcEQsTUFBTSxPQUFPLFVBQVU7SUFFckIsU0FBUyxDQUFDLEtBQVksRUFBRSxVQUFrQixFQUFFLFNBQWlCO1FBRTNELElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDVixPQUFPLEVBQUUsQ0FBQztTQUNYO1FBRUQsSUFBSSxDQUFDLFVBQVUsRUFBRTtZQUNmLE9BQU8sS0FBSyxDQUFDO1NBQ2Q7UUFFRCxPQUFPLEtBQUssQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDekIsSUFBSSxJQUFJLEVBQUU7Z0JBQ1IsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLEVBQUU7b0JBQ25CLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztpQkFDekU7cUJBQU07b0JBQ0wsT0FBTyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO2lCQUM5RDthQUNGO1lBQ0QsT0FBTyxLQUFLLENBQUM7UUFDZixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7OztZQXpCRixJQUFJLFNBQUM7Z0JBQ0osSUFBSSxFQUFFLFFBQVE7YUFDZiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQFBpcGUoe1xuICBuYW1lOiAnZmlsdGVyJ1xufSlcbmV4cG9ydCBjbGFzcyBGaWx0ZXJQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG5cbiAgdHJhbnNmb3JtKGl0ZW1zOiBhbnlbXSwgc2VhcmNoVGV4dDogc3RyaW5nLCBmaWVsZE5hbWU6IHN0cmluZyk6IGFueVtdIHtcblxuICAgIGlmICghaXRlbXMpIHtcbiAgICAgIHJldHVybiBbXTtcbiAgICB9XG5cbiAgICBpZiAoIXNlYXJjaFRleHQpIHtcbiAgICAgIHJldHVybiBpdGVtcztcbiAgICB9XG5cbiAgICByZXR1cm4gaXRlbXMuZmlsdGVyKGl0ZW0gPT4ge1xuICAgICAgaWYgKGl0ZW0pIHtcbiAgICAgICAgaWYgKGl0ZW1bZmllbGROYW1lXSkge1xuICAgICAgICAgIHJldHVybiBpdGVtW2ZpZWxkTmFtZV0udG9Mb3dlckNhc2UoKS5pbmNsdWRlcyhzZWFyY2hUZXh0LnRvTG93ZXJDYXNlKCkpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHJldHVybiBpdGVtLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXMoc2VhcmNoVGV4dC50b0xvd2VyQ2FzZSgpKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH0pO1xuICB9XG59XG4iXX0=
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import { Pipe } from '@angular/core';
|
|
2
|
-
export class UnsnakePipe {
|
|
3
|
-
transform(items) {
|
|
4
|
-
return items.split('_').join(' ');
|
|
5
|
-
}
|
|
6
|
-
}
|
|
7
|
-
UnsnakePipe.decorators = [
|
|
8
|
-
{ type: Pipe, args: [{
|
|
9
|
-
name: 'unsnake'
|
|
10
|
-
},] }
|
|
11
|
-
];
|
|
12
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidW5zbmFrZS5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWVkaWEtdmlld2VyL3NyYy9saWIvYW5ub3RhdGlvbnMvcGlwZXMvdW5zbmFrZS91bnNuYWtlLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFLcEQsTUFBTSxPQUFPLFdBQVc7SUFFdEIsU0FBUyxDQUFDLEtBQWE7UUFDckIsT0FBTyxLQUFLLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNwQyxDQUFDOzs7WUFQRixJQUFJLFNBQUM7Z0JBQ0osSUFBSSxFQUFFLFNBQVM7YUFDaEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBQaXBlKHtcbiAgbmFtZTogJ3Vuc25ha2UnXG59KVxuZXhwb3J0IGNsYXNzIFVuc25ha2VQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG5cbiAgdHJhbnNmb3JtKGl0ZW1zOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiBpdGVtcy5zcGxpdCgnXycpLmpvaW4oJyAnKTtcbiAgfVxuXG59XG4iXX0=
|
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
import { HttpClient } from '@angular/common/http';
|
|
2
|
-
import { Injectable } from '@angular/core';
|
|
3
|
-
import { catchError, map } from 'rxjs/operators';
|
|
4
|
-
export class AnnotationApiService {
|
|
5
|
-
constructor(httpClient) {
|
|
6
|
-
this.httpClient = httpClient;
|
|
7
|
-
this.annotationApiUrl = '/em-anno';
|
|
8
|
-
this.annotationSetBaseUrl = '/annotation-sets';
|
|
9
|
-
this.annotationBaseUrl = '/annotations';
|
|
10
|
-
}
|
|
11
|
-
getAnnotationSet(documentId) {
|
|
12
|
-
const fixedUrl = `${this.annotationSetsFullUrl}/filter?documentId=${documentId}`;
|
|
13
|
-
return this.httpClient
|
|
14
|
-
.get(fixedUrl, { observe: 'response', withCredentials: true });
|
|
15
|
-
}
|
|
16
|
-
postAnnotationSet(body) {
|
|
17
|
-
return this.httpClient
|
|
18
|
-
.post(this.annotationSetsFullUrl, body, { observe: 'response', withCredentials: true })
|
|
19
|
-
.pipe(map(response => response.body), catchError(() => []));
|
|
20
|
-
}
|
|
21
|
-
getComments(annotationSet) {
|
|
22
|
-
return annotationSet
|
|
23
|
-
.pipe(map(this.sortAnnotations), map(this.extractComments));
|
|
24
|
-
}
|
|
25
|
-
/**
|
|
26
|
-
* Sort the annotations in the response by page and then y position of their first rectangle
|
|
27
|
-
*/
|
|
28
|
-
sortAnnotations(r) {
|
|
29
|
-
return r.annotations.sort((a, b) => a.page !== b.page ? a.page - b.page : a.rectangles[0].y - b.rectangles[0].y);
|
|
30
|
-
}
|
|
31
|
-
extractComments(annotations) {
|
|
32
|
-
return [].concat(...annotations.map(a => a.comments));
|
|
33
|
-
}
|
|
34
|
-
deleteAnnotation(annotationId) {
|
|
35
|
-
const url = `${this.annotationFullsUrl}/${annotationId}`;
|
|
36
|
-
return this.httpClient
|
|
37
|
-
.delete(url, { observe: 'response', withCredentials: true })
|
|
38
|
-
.pipe(map(response => response.body));
|
|
39
|
-
}
|
|
40
|
-
postAnnotation(annotation) {
|
|
41
|
-
return this.httpClient
|
|
42
|
-
.post(this.annotationFullsUrl, annotation, { observe: 'response', withCredentials: true })
|
|
43
|
-
.pipe(map(response => response.body));
|
|
44
|
-
}
|
|
45
|
-
get annotationSetsFullUrl() {
|
|
46
|
-
return this.annotationApiUrl + this.annotationSetBaseUrl;
|
|
47
|
-
}
|
|
48
|
-
get annotationFullsUrl() {
|
|
49
|
-
return this.annotationApiUrl + this.annotationBaseUrl;
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
AnnotationApiService.decorators = [
|
|
53
|
-
{ type: Injectable }
|
|
54
|
-
];
|
|
55
|
-
/** @nocollapse */
|
|
56
|
-
AnnotationApiService.ctorParameters = () => [
|
|
57
|
-
{ type: HttpClient }
|
|
58
|
-
];
|
|
59
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ub3RhdGlvbi1hcGkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21lZGlhLXZpZXdlci9zcmMvbGliL2Fubm90YXRpb25zL3NlcnZpY2VzL2Fubm90YXRpb24tYXBpL2Fubm90YXRpb24tYXBpLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQU9qRCxNQUFNLE9BQU8sb0JBQW9CO0lBTy9CLFlBQ21CLFVBQXNCO1FBQXRCLGVBQVUsR0FBVixVQUFVLENBQVk7UUFObEMscUJBQWdCLEdBQUcsVUFBVSxDQUFDO1FBRTdCLHlCQUFvQixHQUFHLGtCQUFrQixDQUFDO1FBQzFDLHNCQUFpQixHQUFHLGNBQWMsQ0FBQztJQUl4QyxDQUFDO0lBRUcsZ0JBQWdCLENBQUMsVUFBa0I7UUFDeEMsTUFBTSxRQUFRLEdBQUcsR0FBRyxJQUFJLENBQUMscUJBQXFCLHNCQUFzQixVQUFVLEVBQUUsQ0FBQztRQUNqRixPQUFPLElBQUksQ0FBQyxVQUFVO2FBQ25CLEdBQUcsQ0FBZ0IsUUFBUSxFQUFFLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBRyxlQUFlLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUNuRixDQUFDO0lBRU0saUJBQWlCLENBQUMsSUFBNEI7UUFDbkQsT0FBTyxJQUFJLENBQUMsVUFBVTthQUNuQixJQUFJLENBQWdCLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxJQUFJLEVBQUUsRUFBRSxPQUFPLEVBQUUsVUFBVSxFQUFHLGVBQWUsRUFBRSxJQUFJLEVBQUUsQ0FBQzthQUN0RyxJQUFJLENBQ0gsR0FBRyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxFQUM5QixVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQ3JCLENBQUM7SUFDTixDQUFDO0lBRU0sV0FBVyxDQUFDLGFBQXdDO1FBQ3pELE9BQU8sYUFBYTthQUNqQixJQUFJLENBQ0gsR0FBRyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsRUFDekIsR0FBRyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FDMUIsQ0FBQztJQUNOLENBQUM7SUFFRDs7T0FFRztJQUNLLGVBQWUsQ0FBQyxDQUFnQjtRQUN0QyxPQUFPLENBQUMsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDbkgsQ0FBQztJQUVPLGVBQWUsQ0FBQyxXQUF5QjtRQUMvQyxPQUFPLEVBQUUsQ0FBQyxNQUFNLENBQUMsR0FBRyxXQUFXLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7SUFDeEQsQ0FBQztJQUVNLGdCQUFnQixDQUFDLFlBQW9CO1FBQzFDLE1BQU0sR0FBRyxHQUFHLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixJQUFJLFlBQVksRUFBRSxDQUFDO1FBRXpELE9BQU8sSUFBSSxDQUFDLFVBQVU7YUFDbkIsTUFBTSxDQUFPLEdBQUcsRUFBRSxFQUFFLE9BQU8sRUFBRSxVQUFVLEVBQUcsZUFBZSxFQUFFLElBQUksRUFBRSxDQUFDO2FBQ2xFLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBRU0sY0FBYyxDQUFDLFVBQStCO1FBQ25ELE9BQU8sSUFBSSxDQUFDLFVBQVU7YUFDbkIsSUFBSSxDQUFhLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxVQUFVLEVBQUUsRUFBRSxPQUFPLEVBQUUsVUFBVSxFQUFHLGVBQWUsRUFBRSxJQUFJLEVBQUUsQ0FBQzthQUN0RyxJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDMUMsQ0FBQztJQUVELElBQUkscUJBQXFCO1FBQ3ZCLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQyxvQkFBb0IsQ0FBQztJQUMzRCxDQUFDO0lBRUQsSUFBSSxrQkFBa0I7UUFDcEIsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDO0lBQ3hELENBQUM7OztZQWxFRixVQUFVOzs7O1lBVEYsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBjYXRjaEVycm9yLCBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IEFubm90YXRpb25TZXQgfSBmcm9tICcuLi8uLi9hbm5vdGF0aW9uLXNldC9hbm5vdGF0aW9uLXNldC5tb2RlbCc7XG5pbXBvcnQgeyBBbm5vdGF0aW9uIH0gZnJvbSAnLi4vLi4vYW5ub3RhdGlvbi1zZXQvYW5ub3RhdGlvbi12aWV3L2Fubm90YXRpb24ubW9kZWwnO1xuaW1wb3J0IHsgQ29tbWVudCB9IGZyb20gJy4uLy4uL2NvbW1lbnQtc2V0L2NvbW1lbnQvY29tbWVudC5tb2RlbCc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBBbm5vdGF0aW9uQXBpU2VydmljZSB7XG5cbiAgcHVibGljIGFubm90YXRpb25BcGlVcmwgPSAnL2VtLWFubm8nO1xuXG4gIHByaXZhdGUgYW5ub3RhdGlvblNldEJhc2VVcmwgPSAnL2Fubm90YXRpb24tc2V0cyc7XG4gIHByaXZhdGUgYW5ub3RhdGlvbkJhc2VVcmwgPSAnL2Fubm90YXRpb25zJztcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IGh0dHBDbGllbnQ6IEh0dHBDbGllbnRcbiAgKSB7fVxuXG4gIHB1YmxpYyBnZXRBbm5vdGF0aW9uU2V0KGRvY3VtZW50SWQ6IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7IC8vIHRvZG8gYWRkIG1vZGVsXG4gICAgY29uc3QgZml4ZWRVcmwgPSBgJHt0aGlzLmFubm90YXRpb25TZXRzRnVsbFVybH0vZmlsdGVyP2RvY3VtZW50SWQ9JHtkb2N1bWVudElkfWA7XG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudFxuICAgICAgLmdldDxBbm5vdGF0aW9uU2V0PihmaXhlZFVybCwgeyBvYnNlcnZlOiAncmVzcG9uc2UnICwgd2l0aENyZWRlbnRpYWxzOiB0cnVlIH0pO1xuICB9XG5cbiAgcHVibGljIHBvc3RBbm5vdGF0aW9uU2V0KGJvZHk6IFBhcnRpYWw8QW5ub3RhdGlvblNldD4pOiBPYnNlcnZhYmxlPEFubm90YXRpb25TZXQ+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50XG4gICAgICAucG9zdDxBbm5vdGF0aW9uU2V0Pih0aGlzLmFubm90YXRpb25TZXRzRnVsbFVybCwgYm9keSwgeyBvYnNlcnZlOiAncmVzcG9uc2UnICwgd2l0aENyZWRlbnRpYWxzOiB0cnVlIH0pXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKHJlc3BvbnNlID0+IHJlc3BvbnNlLmJvZHkpLFxuICAgICAgICBjYXRjaEVycm9yKCgpID0+IFtdKVxuICAgICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRDb21tZW50cyhhbm5vdGF0aW9uU2V0OiBPYnNlcnZhYmxlPEFubm90YXRpb25TZXQ+KTogT2JzZXJ2YWJsZTxDb21tZW50W10+IHtcbiAgICByZXR1cm4gYW5ub3RhdGlvblNldFxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcCh0aGlzLnNvcnRBbm5vdGF0aW9ucyksXG4gICAgICAgIG1hcCh0aGlzLmV4dHJhY3RDb21tZW50cylcbiAgICAgICk7XG4gIH1cblxuICAvKipcbiAgICogU29ydCB0aGUgYW5ub3RhdGlvbnMgaW4gdGhlIHJlc3BvbnNlIGJ5IHBhZ2UgYW5kIHRoZW4geSBwb3NpdGlvbiBvZiB0aGVpciBmaXJzdCByZWN0YW5nbGVcbiAgICovXG4gIHByaXZhdGUgc29ydEFubm90YXRpb25zKHI6IEFubm90YXRpb25TZXQpOiBBbm5vdGF0aW9uW10ge1xuICAgIHJldHVybiByLmFubm90YXRpb25zLnNvcnQoKGEsIGIpID0+IGEucGFnZSAhPT0gYi5wYWdlID8gYS5wYWdlIC0gYi5wYWdlIDogYS5yZWN0YW5nbGVzWzBdLnkgLSBiLnJlY3RhbmdsZXNbMF0ueSk7XG4gIH1cblxuICBwcml2YXRlIGV4dHJhY3RDb21tZW50cyhhbm5vdGF0aW9uczogQW5ub3RhdGlvbltdKSB7XG4gICAgcmV0dXJuIFtdLmNvbmNhdCguLi5hbm5vdGF0aW9ucy5tYXAoYSA9PiBhLmNvbW1lbnRzKSk7XG4gIH1cblxuICBwdWJsaWMgZGVsZXRlQW5ub3RhdGlvbihhbm5vdGF0aW9uSWQ6IHN0cmluZyk6IE9ic2VydmFibGU8bnVsbD4ge1xuICAgIGNvbnN0IHVybCA9IGAke3RoaXMuYW5ub3RhdGlvbkZ1bGxzVXJsfS8ke2Fubm90YXRpb25JZH1gO1xuXG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudFxuICAgICAgLmRlbGV0ZTxudWxsPih1cmwsIHsgb2JzZXJ2ZTogJ3Jlc3BvbnNlJyAsIHdpdGhDcmVkZW50aWFsczogdHJ1ZSB9KVxuICAgICAgLnBpcGUobWFwKHJlc3BvbnNlID0+IHJlc3BvbnNlLmJvZHkpKTtcbiAgfVxuXG4gIHB1YmxpYyBwb3N0QW5ub3RhdGlvbihhbm5vdGF0aW9uOiBQYXJ0aWFsPEFubm90YXRpb24+KTogT2JzZXJ2YWJsZTxBbm5vdGF0aW9uPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudFxuICAgICAgLnBvc3Q8QW5ub3RhdGlvbj4odGhpcy5hbm5vdGF0aW9uRnVsbHNVcmwsIGFubm90YXRpb24sIHsgb2JzZXJ2ZTogJ3Jlc3BvbnNlJyAsIHdpdGhDcmVkZW50aWFsczogdHJ1ZSB9KVxuICAgICAgLnBpcGUobWFwKHJlc3BvbnNlID0+IHJlc3BvbnNlLmJvZHkpKTtcbiAgfVxuXG4gIGdldCBhbm5vdGF0aW9uU2V0c0Z1bGxVcmwoKSB7XG4gICAgcmV0dXJuIHRoaXMuYW5ub3RhdGlvbkFwaVVybCArIHRoaXMuYW5ub3RhdGlvblNldEJhc2VVcmw7XG4gIH1cblxuICBnZXQgYW5ub3RhdGlvbkZ1bGxzVXJsKCkge1xuICAgIHJldHVybiB0aGlzLmFubm90YXRpb25BcGlVcmwgKyB0aGlzLmFubm90YXRpb25CYXNlVXJsO1xuICB9XG59XG4iXX0=
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
import { HttpClient } from '@angular/common/http';
|
|
2
|
-
import { Injectable } from '@angular/core';
|
|
3
|
-
import { map } from 'rxjs/operators';
|
|
4
|
-
export class BookmarksApiService {
|
|
5
|
-
constructor(httpClient) {
|
|
6
|
-
this.httpClient = httpClient;
|
|
7
|
-
this.ANNOTATIONS_API = '/em-anno';
|
|
8
|
-
}
|
|
9
|
-
getBookmarks(documentId) {
|
|
10
|
-
return this.httpClient
|
|
11
|
-
.get(`${this.ANNOTATIONS_API}/${documentId}/bookmarks`, { observe: 'response', withCredentials: true });
|
|
12
|
-
}
|
|
13
|
-
createBookmark(bookmark) {
|
|
14
|
-
return this.httpClient
|
|
15
|
-
.post(`${this.ANNOTATIONS_API}/bookmarks`, bookmark, { observe: 'response', withCredentials: true })
|
|
16
|
-
.pipe(map(response => response.body));
|
|
17
|
-
}
|
|
18
|
-
updateBookmark(bookmark) {
|
|
19
|
-
return this.httpClient
|
|
20
|
-
.put(`${this.ANNOTATIONS_API}/bookmarks`, bookmark, { observe: 'response', withCredentials: true })
|
|
21
|
-
.pipe(map(response => response.body));
|
|
22
|
-
}
|
|
23
|
-
updateMultipleBookmarks(bookmarks) {
|
|
24
|
-
return this.httpClient
|
|
25
|
-
.put(`${this.ANNOTATIONS_API}/bookmarks_multiple`, bookmarks, { observe: 'response', withCredentials: true })
|
|
26
|
-
.pipe(map(response => response.body));
|
|
27
|
-
}
|
|
28
|
-
deleteBookmark(bookmarkId) {
|
|
29
|
-
return this.httpClient
|
|
30
|
-
.delete(`${this.ANNOTATIONS_API}/bookmarks/${bookmarkId}`, { observe: 'response', withCredentials: true })
|
|
31
|
-
.pipe(map(response => response.body));
|
|
32
|
-
}
|
|
33
|
-
deleteMultipleBookmarks(payload) {
|
|
34
|
-
return this.httpClient
|
|
35
|
-
.request('DELETE', `${this.ANNOTATIONS_API}/bookmarks_multiple`, { body: payload, observe: 'response', withCredentials: true })
|
|
36
|
-
.pipe(map(response => response.body));
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
BookmarksApiService.decorators = [
|
|
40
|
-
{ type: Injectable }
|
|
41
|
-
];
|
|
42
|
-
/** @nocollapse */
|
|
43
|
-
BookmarksApiService.ctorParameters = () => [
|
|
44
|
-
{ type: HttpClient }
|
|
45
|
-
];
|
|
46
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm9va21hcmtzLWFwaS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWVkaWEtdmlld2VyL3NyYy9saWIvYW5ub3RhdGlvbnMvc2VydmljZXMvYm9va21hcmtzLWFwaS9ib29rbWFya3MtYXBpLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBSXJDLE1BQU0sT0FBTyxtQkFBbUI7SUFJOUIsWUFDbUIsVUFBc0I7UUFBdEIsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUh4QixvQkFBZSxHQUFHLFVBQVUsQ0FBQztJQUkzQyxDQUFDO0lBRUcsWUFBWSxDQUFDLFVBQWtCO1FBQ3BDLE9BQU8sSUFBSSxDQUFDLFVBQVU7YUFDbkIsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLGVBQWUsSUFBSSxVQUFVLFlBQVksRUFDcEQsRUFBRSxPQUFPLEVBQUUsVUFBVSxFQUFHLGVBQWUsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQ3ZELENBQUM7SUFFTSxjQUFjLENBQUMsUUFBMkI7UUFDL0MsT0FBTyxJQUFJLENBQUMsVUFBVTthQUNuQixJQUFJLENBQVcsR0FBRyxJQUFJLENBQUMsZUFBZSxZQUFZLEVBQ2pELFFBQVEsRUFBRSxFQUFFLE9BQU8sRUFBRSxVQUFVLEVBQUcsZUFBZSxFQUFFLElBQUksRUFBRSxDQUFDO2FBQzNELElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBRU0sY0FBYyxDQUFDLFFBQTJCO1FBQy9DLE9BQU8sSUFBSSxDQUFDLFVBQVU7YUFDbkIsR0FBRyxDQUFXLEdBQUcsSUFBSSxDQUFDLGVBQWUsWUFBWSxFQUNoRCxRQUFRLEVBQUUsRUFBRSxPQUFPLEVBQUUsVUFBVSxFQUFHLGVBQWUsRUFBRSxJQUFJLEVBQUUsQ0FBQzthQUMzRCxJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDMUMsQ0FBQztJQUVNLHVCQUF1QixDQUFDLFNBQThCO1FBQzNELE9BQU8sSUFBSSxDQUFDLFVBQVU7YUFDbkIsR0FBRyxDQUFhLEdBQUcsSUFBSSxDQUFDLGVBQWUscUJBQXFCLEVBQzNELFNBQVMsRUFBRSxFQUFFLE9BQU8sRUFBRSxVQUFVLEVBQUcsZUFBZSxFQUFFLElBQUksRUFBRSxDQUFDO2FBQzVELElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBRU0sY0FBYyxDQUFDLFVBQWtCO1FBQ3RDLE9BQU8sSUFBSSxDQUFDLFVBQVU7YUFDbkIsTUFBTSxDQUFPLEdBQUcsSUFBSSxDQUFDLGVBQWUsY0FBYyxVQUFVLEVBQUUsRUFDN0QsRUFBRSxPQUFPLEVBQUUsVUFBVSxFQUFHLGVBQWUsRUFBRSxJQUFJLEVBQUUsQ0FBQzthQUNqRCxJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDMUMsQ0FBQztJQUVNLHVCQUF1QixDQUFDLE9BQWlEO1FBQzlFLE9BQU8sSUFBSSxDQUFDLFVBQVU7YUFDbkIsT0FBTyxDQUFPLFFBQVEsRUFBRSxHQUFHLElBQUksQ0FBQyxlQUFlLHFCQUFxQixFQUNuRSxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBRyxlQUFlLEVBQUUsSUFBSSxFQUFFLENBQUM7YUFDaEUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQzFDLENBQUM7OztZQWhERixVQUFVOzs7O1lBTEYsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBCb29rbWFyayB9IGZyb20gJy4uLy4uLy4uL3ZpZXdlcnMvcGRmLXZpZXdlci9zaWRlLWJhci9ib29rbWFya3MvYm9va21hcmtzLmludGVyZmFjZXMnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgQm9va21hcmtzQXBpU2VydmljZSB7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBBTk5PVEFUSU9OU19BUEkgPSAnL2VtLWFubm8nO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgaHR0cENsaWVudDogSHR0cENsaWVudFxuICApIHt9XG5cbiAgcHVibGljIGdldEJvb2ttYXJrcyhkb2N1bWVudElkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRcbiAgICAgIC5nZXQoYCR7dGhpcy5BTk5PVEFUSU9OU19BUEl9LyR7ZG9jdW1lbnRJZH0vYm9va21hcmtzYCxcbiAgICAgICAgeyBvYnNlcnZlOiAncmVzcG9uc2UnICwgd2l0aENyZWRlbnRpYWxzOiB0cnVlIH0pO1xuICB9XG5cbiAgcHVibGljIGNyZWF0ZUJvb2ttYXJrKGJvb2ttYXJrOiBQYXJ0aWFsPEJvb2ttYXJrPik6IE9ic2VydmFibGU8Qm9va21hcms+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50XG4gICAgICAucG9zdDxCb29rbWFyaz4oYCR7dGhpcy5BTk5PVEFUSU9OU19BUEl9L2Jvb2ttYXJrc2AsXG4gICAgICAgIGJvb2ttYXJrLCB7IG9ic2VydmU6ICdyZXNwb25zZScgLCB3aXRoQ3JlZGVudGlhbHM6IHRydWUgfSlcbiAgICAgIC5waXBlKG1hcChyZXNwb25zZSA9PiByZXNwb25zZS5ib2R5KSk7XG4gIH1cblxuICBwdWJsaWMgdXBkYXRlQm9va21hcmsoYm9va21hcms6IFBhcnRpYWw8Qm9va21hcms+KTogT2JzZXJ2YWJsZTxCb29rbWFyaz4ge1xuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRcbiAgICAgIC5wdXQ8Qm9va21hcms+KGAke3RoaXMuQU5OT1RBVElPTlNfQVBJfS9ib29rbWFya3NgLFxuICAgICAgICBib29rbWFyaywgeyBvYnNlcnZlOiAncmVzcG9uc2UnICwgd2l0aENyZWRlbnRpYWxzOiB0cnVlIH0pXG4gICAgICAucGlwZShtYXAocmVzcG9uc2UgPT4gcmVzcG9uc2UuYm9keSkpO1xuICB9XG5cbiAgcHVibGljIHVwZGF0ZU11bHRpcGxlQm9va21hcmtzKGJvb2ttYXJrczogUGFydGlhbDxCb29rbWFya1tdPik6IE9ic2VydmFibGU8Qm9va21hcmtbXT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRcbiAgICAgIC5wdXQ8Qm9va21hcmtbXT4oYCR7dGhpcy5BTk5PVEFUSU9OU19BUEl9L2Jvb2ttYXJrc19tdWx0aXBsZWAsXG4gICAgICAgIGJvb2ttYXJrcywgeyBvYnNlcnZlOiAncmVzcG9uc2UnICwgd2l0aENyZWRlbnRpYWxzOiB0cnVlIH0pXG4gICAgICAucGlwZShtYXAocmVzcG9uc2UgPT4gcmVzcG9uc2UuYm9keSkpO1xuICB9XG5cbiAgcHVibGljIGRlbGV0ZUJvb2ttYXJrKGJvb2ttYXJrSWQ6IHN0cmluZyk6IE9ic2VydmFibGU8dm9pZD4ge1xuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRcbiAgICAgIC5kZWxldGU8dm9pZD4oYCR7dGhpcy5BTk5PVEFUSU9OU19BUEl9L2Jvb2ttYXJrcy8ke2Jvb2ttYXJrSWR9YCxcbiAgICAgICAgeyBvYnNlcnZlOiAncmVzcG9uc2UnICwgd2l0aENyZWRlbnRpYWxzOiB0cnVlIH0pXG4gICAgICAucGlwZShtYXAocmVzcG9uc2UgPT4gcmVzcG9uc2UuYm9keSkpO1xuICB9XG5cbiAgcHVibGljIGRlbGV0ZU11bHRpcGxlQm9va21hcmtzKHBheWxvYWQ6IHsgZGVsZXRlZDogc3RyaW5nW10sIHVwZGF0ZWQ6IEJvb2ttYXJrIH0pOiBPYnNlcnZhYmxlPHZvaWQ+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50XG4gICAgICAucmVxdWVzdDx2b2lkPignREVMRVRFJywgYCR7dGhpcy5BTk5PVEFUSU9OU19BUEl9L2Jvb2ttYXJrc19tdWx0aXBsZWAsXG4gICAgICAgIHsgYm9keTogcGF5bG9hZCwgb2JzZXJ2ZTogJ3Jlc3BvbnNlJyAsIHdpdGhDcmVkZW50aWFsczogdHJ1ZSB9KVxuICAgICAgLnBpcGUobWFwKHJlc3BvbnNlID0+IHJlc3BvbnNlLmJvZHkpKTtcbiAgfVxufVxuIl19
|