@hmcts/media-viewer 4.0.0 → 4.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/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/{esm2022 → esm2020}/lib/annotations/annotation-set/annotation-create/highlight-create/highlight-create.service.mjs +5 -5
- 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 +86 -0
- package/{esm2022 → esm2020}/lib/annotations/annotations.module.mjs +61 -61
- package/esm2020/lib/annotations/comment-set/comment/comment.component.mjs +177 -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/{esm2022 → esm2020}/lib/annotations/comment-set/comment/textarea-auto-expand/textarea-auto-expand.directive.mjs +5 -5
- package/esm2020/lib/annotations/comment-set/comment-navigate/comments-navigate.component.mjs +91 -0
- package/{esm2022 → esm2020}/lib/annotations/comment-set/comment-set-header/comment-filter/comment-filter.component.mjs +5 -5
- package/esm2020/lib/annotations/comment-set/comment-set-header/comment-search/comment-search.component.mjs +54 -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 +120 -0
- package/{esm2022 → esm2020}/lib/annotations/pipes/date/date.pipe.mjs +4 -4
- package/esm2020/lib/annotations/pipes/filter/filter.pipe.mjs +32 -0
- package/{esm2022 → esm2020}/lib/annotations/pipes/unsnake/unsnake.pipe.mjs +4 -4
- package/{esm2022 → esm2020}/lib/annotations/services/annotation-api/annotation-api.service.mjs +5 -5
- package/{esm2022 → esm2020}/lib/annotations/services/bookmarks-api/bookmarks-api.service.mjs +5 -5
- package/{esm2022 → esm2020}/lib/annotations/services/tags/tags.services.mjs +5 -5
- package/esm2020/lib/annotations/tags/tags.component.mjs +53 -0
- package/{esm2022 → esm2020}/lib/bookmark/components/bookmark-icons.component.mjs +5 -5
- package/{esm2022 → esm2020}/lib/icp/confirm-exit/confirm-action-dialog.component.mjs +5 -5
- 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 +65 -0
- package/{esm2022 → esm2020}/lib/icp/icp.interfaces.mjs +1 -1
- package/esm2020/lib/icp/icp.service.mjs +95 -0
- package/{esm2022 → esm2020}/lib/icp/participants-list/participants-list.component.mjs +5 -5
- package/esm2020/lib/icp/socket.service.mjs +118 -0
- package/esm2020/lib/media-viewer.component.mjs +245 -0
- package/{esm2022 → esm2020}/lib/media-viewer.module.mjs +55 -55
- package/{esm2022 → esm2020}/lib/print.service.mjs +4 -4
- package/esm2020/lib/redaction/components/redaction.component.mjs +91 -0
- package/{esm2022 → esm2020}/lib/redaction/services/redaction-api.service.mjs +5 -5
- package/{esm2022 → esm2020}/lib/shared/gov-uk-date/gov-uk-date.component.mjs +4 -4
- package/{esm2022 → esm2020}/lib/shared/gov-uk-error-message/gov-uk-error-message.component.mjs +7 -7
- package/{esm2022 → esm2020}/lib/shared/gov-uk-fieldset/gov-uk-fieldset.component.mjs +6 -6
- package/{esm2022 → esm2020}/lib/shared/gov-uk-label/gov-uk-label.component.mjs +7 -7
- package/{esm2022 → esm2020}/lib/shared/shared.module.mjs +19 -19
- package/esm2020/lib/shared/util/helpers/html-templates.helper.mjs +18 -0
- package/{esm2022 → esm2020}/lib/shared/util/services/number.helper.service.mjs +5 -5
- package/esm2020/lib/store/actions/icp.actions.mjs +56 -0
- package/esm2020/lib/store/bookmarks-store-utils.mjs +49 -0
- package/esm2020/lib/store/effects/annotation.effects.mjs +51 -0
- package/{esm2022 → esm2020}/lib/store/effects/bookmarks.effects.mjs +5 -5
- package/{esm2022 → esm2020}/lib/store/effects/document.effects.mjs +5 -5
- package/esm2020/lib/store/effects/icp.effects.mjs +26 -0
- package/{esm2022 → esm2020}/lib/store/effects/redaction.effects.mjs +5 -5
- package/esm2020/lib/store/reducers/annotations.reducer.mjs +208 -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/{esm2022 → esm2020}/lib/store/selectors/bookmark.selectors.mjs +1 -1
- package/{esm2022 → esm2020}/lib/store/selectors/redaction.selectors.mjs +1 -1
- package/esm2020/lib/store/store-utils.mjs +131 -0
- package/esm2020/lib/toolbar/highlight-toolbar/highlight-toolbar.component.mjs +44 -0
- package/{esm2022 → esm2020}/lib/toolbar/icp-event.service.mjs +1 -1
- package/{esm2022 → esm2020}/lib/toolbar/icp-toolbar/icp-toolbar.component.mjs +5 -5
- package/esm2020/lib/toolbar/main-toolbar/main-toolbar.component.mjs +189 -0
- package/esm2020/lib/toolbar/redaction-search-bar/redaction-search-bar.component.mjs +236 -0
- package/esm2020/lib/toolbar/redaction-toolbar/redaction-toolbar.component.mjs +68 -0
- package/esm2020/lib/toolbar/search-bar/search-bar.component.mjs +109 -0
- package/esm2020/lib/toolbar/toolbar-button-visibility.service.mjs +94 -0
- package/esm2020/lib/toolbar/toolbar-event.service.mjs +178 -0
- package/{esm2022 → esm2020}/lib/toolbar/toolbar.module.mjs +25 -25
- package/esm2020/lib/viewers/convertible-content-viewer/convertible-content-viewer.component.mjs +82 -0
- package/{esm2022 → esm2020}/lib/viewers/convertible-content-viewer/document-conversion-api.service.mjs +5 -5
- 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 +59 -0
- package/esm2020/lib/viewers/pdf-viewer/pdf-js/pdf-js-wrapper.mjs +209 -0
- package/{esm2022 → esm2020}/lib/viewers/pdf-viewer/pdf-js/pdf-js-wrapper.provider.mjs +5 -5
- package/esm2020/lib/viewers/pdf-viewer/pdf-viewer.component.mjs +236 -0
- package/esm2020/lib/viewers/pdf-viewer/side-bar/bookmarks/bookmarks.component.mjs +352 -0
- package/esm2020/lib/viewers/pdf-viewer/side-bar/outline-item/outline-item.component.mjs +49 -0
- package/{esm2022 → esm2020}/lib/viewers/pdf-viewer/side-bar/side-bar.component.mjs +5 -5
- package/{esm2022 → esm2020}/lib/viewers/rotation-persist/rotation-api.service.mjs +5 -5
- package/esm2020/lib/viewers/rotation-persist/rotation-persist.directive.mjs +61 -0
- package/esm2020/lib/viewers/unsupported-viewer/unsupported-viewer.component.mjs +49 -0
- package/{esm2022 → esm2020}/lib/viewers/viewer-event.service.mjs +5 -5
- package/{esm2022 → esm2020}/lib/viewers/viewer-util.service.mjs +5 -5
- package/fesm2015/hmcts-media-viewer.mjs +6953 -0
- package/fesm2015/hmcts-media-viewer.mjs.map +1 -0
- package/{fesm2022 → fesm2020}/hmcts-media-viewer.mjs +461 -451
- package/fesm2020/hmcts-media-viewer.mjs.map +1 -0
- package/lib/annotations/annotation-set/annotation-create/box-highlight-create/box-highlight-create.component.d.ts +1 -1
- package/lib/annotations/annotation-set/annotation-set.component.d.ts +1 -1
- package/lib/annotations/annotation-set/annotation-view/annotation-view.component.d.ts +1 -1
- package/lib/annotations/annotation-set/annotation-view/rectangle/rectangle.component.d.ts +1 -1
- package/lib/annotations/annotation-set/ctx-toolbar/ctx-toolbar.component.d.ts +1 -1
- package/lib/annotations/annotation-set/metadata-layer/metadata-layer.component.d.ts +1 -1
- package/lib/annotations/comment-set/comment/comment.component.d.ts +1 -1
- package/lib/annotations/comment-set/comment/text-highlight/text-highlight.directive.d.ts +1 -1
- package/lib/annotations/comment-set/comment-navigate/comments-navigate.component.d.ts +1 -1
- package/lib/annotations/comment-set/comment-set-header/comment-search/comment-search.component.d.ts +1 -1
- package/lib/annotations/comment-set/comment-set-header/comment-set-header.component.d.ts +1 -1
- package/lib/annotations/comment-set/comment-set.component.d.ts +1 -1
- package/lib/annotations/comments-summary/comments-summary.component.d.ts +1 -1
- package/lib/annotations/tags/tags.component.d.ts +1 -1
- package/lib/bookmark/components/bookmark-icons.component.d.ts +1 -1
- package/lib/icp/icp-session-api.service.d.ts +4 -1
- package/lib/icp/icp-session-api.service.d.ts.map +1 -1
- package/lib/icp/icp-update.service.d.ts.map +1 -1
- package/lib/icp/icp.interfaces.d.ts +1 -0
- package/lib/icp/icp.interfaces.d.ts.map +1 -1
- package/lib/icp/icp.service.d.ts +1 -0
- package/lib/icp/icp.service.d.ts.map +1 -1
- package/lib/icp/socket.service.d.ts +6 -6
- package/lib/icp/socket.service.d.ts.map +1 -1
- package/lib/media-viewer.component.d.ts +2 -1
- package/lib/media-viewer.component.d.ts.map +1 -1
- package/lib/redaction/components/redaction.component.d.ts +1 -1
- package/lib/shared/gov-uk-date/gov-uk-date.component.d.ts +1 -1
- package/lib/shared/gov-uk-error-message/gov-uk-error-message.component.d.ts +1 -1
- package/lib/shared/gov-uk-fieldset/gov-uk-fieldset.component.d.ts +1 -1
- package/lib/shared/gov-uk-label/gov-uk-label.component.d.ts +1 -1
- package/lib/store/actions/icp.actions.d.ts +8 -2
- package/lib/store/actions/icp.actions.d.ts.map +1 -1
- package/lib/store/bookmarks-store-utils.d.ts.map +1 -1
- package/lib/store/effects/icp.effects.d.ts.map +1 -1
- package/lib/toolbar/icp-event.service.d.ts +4 -4
- package/lib/toolbar/icp-event.service.d.ts.map +1 -1
- package/lib/toolbar/main-toolbar/main-toolbar.component.d.ts +1 -1
- package/lib/toolbar/redaction-toolbar/redaction-toolbar.component.d.ts +1 -1
- package/lib/toolbar/toolbar-event.service.d.ts +6 -6
- package/lib/toolbar/toolbar-event.service.d.ts.map +1 -1
- package/lib/viewers/convertible-content-viewer/convertible-content-viewer.component.d.ts +1 -1
- package/lib/viewers/grab-n-drag.directive.d.ts +1 -1
- package/lib/viewers/image-viewer/image-viewer.component.d.ts +1 -1
- package/lib/viewers/multimedia-player/multimedia-player.component.d.ts +1 -1
- package/lib/viewers/pdf-viewer/pdf-viewer.component.d.ts +1 -1
- package/lib/viewers/pdf-viewer/side-bar/bookmarks/bookmarks.component.d.ts +1 -1
- package/lib/viewers/pdf-viewer/side-bar/outline-item/outline-item.component.d.ts +1 -1
- package/lib/viewers/pdf-viewer/side-bar/side-bar.component.d.ts +1 -1
- package/lib/viewers/unsupported-viewer/unsupported-viewer.component.d.ts +1 -1
- package/lib/viewers/viewer-event.service.d.ts +1 -1
- package/lib/viewers/viewer-event.service.d.ts.map +1 -1
- package/package.json +23 -16
- package/esm2022/lib/annotations/annotation-set/annotation-create/box-highlight-create/box-highlight-create.component.mjs +0 -116
- package/esm2022/lib/annotations/annotation-set/annotation-create/highlight-create/highlight-create.directive.mjs +0 -109
- package/esm2022/lib/annotations/annotation-set/annotation-set.component.mjs +0 -50
- package/esm2022/lib/annotations/annotation-set/annotation-view/annotation-view.component.mjs +0 -94
- package/esm2022/lib/annotations/annotation-set/annotation-view/rectangle/rectangle.component.mjs +0 -116
- package/esm2022/lib/annotations/annotation-set/ctx-toolbar/ctx-toolbar.component.mjs +0 -118
- package/esm2022/lib/annotations/annotation-set/metadata-layer/metadata-layer.component.mjs +0 -86
- package/esm2022/lib/annotations/comment-set/comment/comment.component.mjs +0 -177
- package/esm2022/lib/annotations/comment-set/comment/comment.service.mjs +0 -50
- package/esm2022/lib/annotations/comment-set/comment/text-highlight/text-highlight.directive.mjs +0 -47
- package/esm2022/lib/annotations/comment-set/comment-navigate/comments-navigate.component.mjs +0 -91
- package/esm2022/lib/annotations/comment-set/comment-set-header/comment-search/comment-search.component.mjs +0 -54
- package/esm2022/lib/annotations/comment-set/comment-set-header/comment-set-header.component.mjs +0 -68
- package/esm2022/lib/annotations/comment-set/comment-set-render.service.mjs +0 -54
- package/esm2022/lib/annotations/comment-set/comment-set.component.mjs +0 -123
- package/esm2022/lib/annotations/comments-summary/comments-summary.component.mjs +0 -120
- package/esm2022/lib/annotations/pipes/filter/filter.pipe.mjs +0 -32
- package/esm2022/lib/annotations/tags/tags.component.mjs +0 -53
- package/esm2022/lib/icp/icp-follower.service.mjs +0 -60
- package/esm2022/lib/icp/icp-presenter.service.mjs +0 -55
- package/esm2022/lib/icp/icp-session-api.service.mjs +0 -21
- package/esm2022/lib/icp/icp-update.service.mjs +0 -57
- package/esm2022/lib/icp/icp.service.mjs +0 -93
- package/esm2022/lib/icp/socket.service.mjs +0 -118
- package/esm2022/lib/media-viewer.component.mjs +0 -244
- package/esm2022/lib/redaction/components/redaction.component.mjs +0 -91
- package/esm2022/lib/shared/util/helpers/html-templates.helper.mjs +0 -18
- package/esm2022/lib/store/actions/icp.actions.mjs +0 -56
- package/esm2022/lib/store/bookmarks-store-utils.mjs +0 -49
- package/esm2022/lib/store/effects/annotation.effects.mjs +0 -51
- package/esm2022/lib/store/effects/icp.effects.mjs +0 -26
- package/esm2022/lib/store/reducers/annotations.reducer.mjs +0 -208
- package/esm2022/lib/store/reducers/bookmarks.reducer.mjs +0 -116
- package/esm2022/lib/store/reducers/document.reducer.mjs +0 -135
- package/esm2022/lib/store/reducers/icp.reducer.mjs +0 -56
- package/esm2022/lib/store/reducers/redaction.reducer.mjs +0 -116
- package/esm2022/lib/store/reducers/tags.reducer.mjs +0 -93
- package/esm2022/lib/store/selectors/annotation.selectors.mjs +0 -81
- package/esm2022/lib/store/store-utils.mjs +0 -131
- package/esm2022/lib/toolbar/highlight-toolbar/highlight-toolbar.component.mjs +0 -44
- package/esm2022/lib/toolbar/main-toolbar/main-toolbar.component.mjs +0 -189
- package/esm2022/lib/toolbar/redaction-search-bar/redaction-search-bar.component.mjs +0 -236
- package/esm2022/lib/toolbar/redaction-toolbar/redaction-toolbar.component.mjs +0 -68
- package/esm2022/lib/toolbar/search-bar/search-bar.component.mjs +0 -109
- package/esm2022/lib/toolbar/toolbar-button-visibility.service.mjs +0 -94
- package/esm2022/lib/toolbar/toolbar-event.service.mjs +0 -178
- package/esm2022/lib/viewers/convertible-content-viewer/convertible-content-viewer.component.mjs +0 -82
- package/esm2022/lib/viewers/grab-n-drag.directive.mjs +0 -57
- package/esm2022/lib/viewers/image-viewer/image-viewer.component.mjs +0 -166
- package/esm2022/lib/viewers/multimedia-player/multimedia-player.component.mjs +0 -59
- package/esm2022/lib/viewers/pdf-viewer/pdf-js/pdf-js-wrapper.mjs +0 -209
- package/esm2022/lib/viewers/pdf-viewer/pdf-viewer.component.mjs +0 -236
- package/esm2022/lib/viewers/pdf-viewer/side-bar/bookmarks/bookmarks.component.mjs +0 -352
- package/esm2022/lib/viewers/pdf-viewer/side-bar/outline-item/outline-item.component.mjs +0 -49
- package/esm2022/lib/viewers/rotation-persist/rotation-persist.directive.mjs +0 -61
- package/esm2022/lib/viewers/unsupported-viewer/unsupported-viewer.component.mjs +0 -49
- package/fesm2022/hmcts-media-viewer.mjs.map +0 -1
- /package/{esm2022 → esm2020}/hmcts-media-viewer.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/annotations/annotation-set/annotation-set.model.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/annotations/annotation-set/annotation-view/annotation.model.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/annotations/annotation-set/annotation-view/rectangle/rectangle.model.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/annotations/comment-set/comment/comment.model.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/annotations/models/api-persisted.model.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/annotations/models/event-select.model.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/annotations/models/tags.model.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/annotations/models/user.model.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/icp/icp.events.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/redaction/services/redaction.model.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/store/actions/annotation.actions.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/store/actions/bookmark.actions.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/store/actions/document.actions.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/store/actions/redaction.actions.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/store/actions/tag.actions.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/store/effects/index.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/store/models/bookmarks.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/store/models/filters.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/store/reducers/reducers.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/store/selectors/document.selectors.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/store/selectors/icp.selectors.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/store/selectors/tag.selectors.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/toolbar/redaction-search-bar/redaction-search.model.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/viewers/pdf-viewer/side-bar/bookmarks/bookmarks.interfaces.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/viewers/pdf-viewer/side-bar/outline-item/outline.model.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/viewers/rotation-persist/rotation.model.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/viewers/viewer-exception.model.mjs +0 -0
- /package/{esm2022 → esm2020}/public_api.mjs +0 -0
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
import { Component, EventEmitter, Input, Output, ViewChild } from '@angular/core';
|
|
2
|
+
import { v4 as uuid } from 'uuid';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "../../../../toolbar/toolbar.module";
|
|
5
|
+
import * as i2 from "../highlight-create/highlight-create.service";
|
|
6
|
+
export class BoxHighlightCreateComponent {
|
|
7
|
+
constructor(toolbarEvents, highlightService) {
|
|
8
|
+
this.toolbarEvents = toolbarEvents;
|
|
9
|
+
this.highlightService = highlightService;
|
|
10
|
+
this.saveSelection = new EventEmitter();
|
|
11
|
+
this.drawStartX = -1;
|
|
12
|
+
this.drawStartY = -1;
|
|
13
|
+
this.backgroundColor = 'none';
|
|
14
|
+
this.subscriptions = [];
|
|
15
|
+
}
|
|
16
|
+
ngOnInit() {
|
|
17
|
+
this.subscriptions = [
|
|
18
|
+
this.toolbarEvents.drawModeSubject.subscribe(drawMode => {
|
|
19
|
+
this.defaultHeight = drawMode ? '100%' : '0px';
|
|
20
|
+
this.defaultWidth = drawMode ? '100%' : '0px';
|
|
21
|
+
}),
|
|
22
|
+
this.toolbarEvents.redactWholePage.subscribe(() => {
|
|
23
|
+
this.wholePage = true;
|
|
24
|
+
})
|
|
25
|
+
];
|
|
26
|
+
}
|
|
27
|
+
ngOnDestroy() {
|
|
28
|
+
this.subscriptions.forEach(subscription => {
|
|
29
|
+
subscription.unsubscribe();
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
initHighlight({ offsetX, offsetY }) {
|
|
33
|
+
if (this.wholePage) {
|
|
34
|
+
this.highlightPage();
|
|
35
|
+
return;
|
|
36
|
+
}
|
|
37
|
+
this.position = 'absolute';
|
|
38
|
+
this.backgroundColor = 'yellow';
|
|
39
|
+
this.drawStartX = offsetX;
|
|
40
|
+
this.drawStartY = offsetY;
|
|
41
|
+
this.display = 'block';
|
|
42
|
+
this.height = 50;
|
|
43
|
+
this.width = 50;
|
|
44
|
+
this.top = this.drawStartY;
|
|
45
|
+
this.left = this.drawStartX;
|
|
46
|
+
switch (this.rotate) {
|
|
47
|
+
case 90:
|
|
48
|
+
this.top = this.drawStartY - this.height;
|
|
49
|
+
break;
|
|
50
|
+
case 180:
|
|
51
|
+
this.top = this.drawStartY - this.height;
|
|
52
|
+
this.left = this.drawStartX - this.width;
|
|
53
|
+
break;
|
|
54
|
+
case 270:
|
|
55
|
+
this.left = this.drawStartX - this.width;
|
|
56
|
+
break;
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
updateHighlight({ currentTarget, clientX, clientY }) {
|
|
60
|
+
const rect = currentTarget.getBoundingClientRect(), offsetX = clientX - rect.left, offsetY = clientY - rect.top;
|
|
61
|
+
if (this.drawStartX > 0 && this.drawStartY > 0) {
|
|
62
|
+
this.height = Math.abs(offsetY - this.drawStartY);
|
|
63
|
+
this.width = Math.abs(offsetX - this.drawStartX);
|
|
64
|
+
this.top = Math.min(offsetY, this.drawStartY);
|
|
65
|
+
this.left = Math.min(offsetX, this.drawStartX);
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
createHighlight() {
|
|
69
|
+
if (this.height / this.zoom > 5 || this.width / this.zoom > 5) {
|
|
70
|
+
let rectangle = this.highlightService
|
|
71
|
+
.applyRotation(this.pageHeight, this.pageWidth, this.height, this.width, this.top, this.left, this.rotate, this.zoom);
|
|
72
|
+
rectangle = { id: uuid(), ...rectangle };
|
|
73
|
+
this.saveSelection.emit({ rectangles: [rectangle], page: this.page });
|
|
74
|
+
this.resetHighlight();
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
resetHighlight() {
|
|
78
|
+
this.drawStartX = -1;
|
|
79
|
+
this.drawStartY = -1;
|
|
80
|
+
this.display = 'none';
|
|
81
|
+
this.width = 0;
|
|
82
|
+
this.height = 0;
|
|
83
|
+
this.wholePage = false;
|
|
84
|
+
}
|
|
85
|
+
highlightPage() {
|
|
86
|
+
this.height = this.pageHeight;
|
|
87
|
+
this.width = this.pageWidth;
|
|
88
|
+
this.top = 0;
|
|
89
|
+
this.left = 0;
|
|
90
|
+
this.createHighlight();
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
/** @nocollapse */ BoxHighlightCreateComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: BoxHighlightCreateComponent, deps: [{ token: i1.ToolbarEventService }, { token: i2.HighlightCreateService }], target: i0.ɵɵFactoryTarget.Component });
|
|
94
|
+
/** @nocollapse */ BoxHighlightCreateComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: BoxHighlightCreateComponent, selector: "mv-box-highlight-create", inputs: { page: "page", pageHeight: "pageHeight", pageWidth: "pageWidth", rotate: "rotate", zoom: "zoom", container: "container" }, outputs: { saveSelection: "saveSelection" }, viewQueries: [{ propertyName: "highlight", first: true, predicate: ["boxHighlight"], descendants: true }], ngImport: i0, template: "<div [style.height]=\"defaultHeight\"\n [style.width]=\"defaultWidth\"\n (mousedown)=\"initHighlight($event)\"\n (mousemove)=\"updateHighlight($event)\"\n (mouseup)=\"createHighlight()\">\n <div #boxHighlight\n class=\"box-highlight\"\n [style.display]=\"display\"\n [style.position]=\"position\"\n [style.background-color]=\"backgroundColor\"\n [style.height]=\"height ? height + 'px' : '100%'\"\n [style.width]=\"width ? width + 'px' : '100%'\"\n [style.top]=\"top + 'px'\"\n [style.left]=\"left + 'px'\">\n </div>\n</div>\n" });
|
|
95
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: BoxHighlightCreateComponent, decorators: [{
|
|
96
|
+
type: Component,
|
|
97
|
+
args: [{ selector: 'mv-box-highlight-create', template: "<div [style.height]=\"defaultHeight\"\n [style.width]=\"defaultWidth\"\n (mousedown)=\"initHighlight($event)\"\n (mousemove)=\"updateHighlight($event)\"\n (mouseup)=\"createHighlight()\">\n <div #boxHighlight\n class=\"box-highlight\"\n [style.display]=\"display\"\n [style.position]=\"position\"\n [style.background-color]=\"backgroundColor\"\n [style.height]=\"height ? height + 'px' : '100%'\"\n [style.width]=\"width ? width + 'px' : '100%'\"\n [style.top]=\"top + 'px'\"\n [style.left]=\"left + 'px'\">\n </div>\n</div>\n" }]
|
|
98
|
+
}], ctorParameters: function () { return [{ type: i1.ToolbarEventService }, { type: i2.HighlightCreateService }]; }, propDecorators: { page: [{
|
|
99
|
+
type: Input
|
|
100
|
+
}], pageHeight: [{
|
|
101
|
+
type: Input
|
|
102
|
+
}], pageWidth: [{
|
|
103
|
+
type: Input
|
|
104
|
+
}], rotate: [{
|
|
105
|
+
type: Input
|
|
106
|
+
}], zoom: [{
|
|
107
|
+
type: Input
|
|
108
|
+
}], container: [{
|
|
109
|
+
type: Input
|
|
110
|
+
}], saveSelection: [{
|
|
111
|
+
type: Output
|
|
112
|
+
}], highlight: [{
|
|
113
|
+
type: ViewChild,
|
|
114
|
+
args: ['boxHighlight', { static: false }]
|
|
115
|
+
}] } });
|
|
116
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm94LWhpZ2hsaWdodC1jcmVhdGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWVkaWEtdmlld2VyL3NyYy9saWIvYW5ub3RhdGlvbnMvYW5ub3RhdGlvbi1zZXQvYW5ub3RhdGlvbi1jcmVhdGUvYm94LWhpZ2hsaWdodC1jcmVhdGUvYm94LWhpZ2hsaWdodC1jcmVhdGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWVkaWEtdmlld2VyL3NyYy9saWIvYW5ub3RhdGlvbnMvYW5ub3RhdGlvbi1zZXQvYW5ub3RhdGlvbi1jcmVhdGUvYm94LWhpZ2hsaWdodC1jcmVhdGUvYm94LWhpZ2hsaWdodC1jcmVhdGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBYyxZQUFZLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pILE9BQU8sRUFBRSxFQUFFLElBQUksSUFBSSxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7O0FBVWxDLE1BQU0sT0FBTywyQkFBMkI7SUE2QnRDLFlBQTZCLGFBQWtDLEVBQzVDLGdCQUF3QztRQUQ5QixrQkFBYSxHQUFiLGFBQWEsQ0FBcUI7UUFDNUMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUF3QjtRQXJCakQsa0JBQWEsR0FBRyxJQUFJLFlBQVksRUFBNkMsQ0FBQztRQUl4RixlQUFVLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDaEIsZUFBVSxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBVWhCLG9CQUFlLEdBQUcsTUFBTSxDQUFDO1FBR2pCLGtCQUFhLEdBQW1CLEVBQUUsQ0FBQztJQUdvQixDQUFDO0lBRWhFLFFBQVE7UUFDTixJQUFJLENBQUMsYUFBYSxHQUFHO1lBQ25CLElBQUksQ0FBQyxhQUFhLENBQUMs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QUN6QixDQUFDO0lBRU8sYUFBYTtRQUNuQixJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUM7UUFDOUIsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDO1FBQzVCLElBQUksQ0FBQyxHQUFHLEdBQUcsQ0FBQyxDQUFDO1FBQ2IsSUFBSSxDQUFDLElBQUksR0FBRyxDQUFDLENBQUM7UUFDZCxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7SUFDekIsQ0FBQzs7NElBdEhVLDJCQUEyQjtnSUFBM0IsMkJBQTJCLDJWQ1h4Qyxra0JBZ0JBOzRGRExhLDJCQUEyQjtrQkFKdkMsU0FBUzsrQkFDRSx5QkFBeUI7K0lBSzFCLElBQUk7c0JBQVosS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUVJLGFBQWE7c0JBQXRCLE1BQU07Z0JBRXVDLFNBQVM7c0JBQXRELFNBQVM7dUJBQUMsY0FBYyxFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQsIE91dHB1dCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyB2NCBhcyB1dWlkIH0gZnJvbSAndXVpZCc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFRvb2xiYXJFdmVudFNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi8uLi90b29sYmFyL3Rvb2xiYXIubW9kdWxlJztcbmltcG9ydCB7IFJlY3RhbmdsZSB9IGZyb20gJy4uLy4uL2Fubm90YXRpb24tdmlldy9yZWN0YW5nbGUvcmVjdGFuZ2xlLm1vZGVsJztcbmltcG9ydCB7IEhpZ2hsaWdodENyZWF0ZVNlcnZpY2UgfSBmcm9tICcuLi9oaWdobGlnaHQtY3JlYXRlL2hpZ2hsaWdodC1jcmVhdGUuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ212LWJveC1oaWdobGlnaHQtY3JlYXRlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2JveC1oaWdobGlnaHQtY3JlYXRlLmNvbXBvbmVudC5odG1sJyxcbn0pXG5leHBvcnQgY2xhc3MgQm94SGlnaGxpZ2h0Q3JlYXRlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuXG4gIEBJbnB1dCgpIHBhZ2U6IG51bWJlcjtcbiAgQElucHV0KCkgcGFnZUhlaWdodDogbnVtYmVyO1xuICBASW5wdXQoKSBwYWdlV2lkdGg6IG51bWJlcjtcbiAgQElucHV0KCkgcm90YXRlOiBudW1iZXI7XG4gIEBJbnB1dCgpIHpvb206IG51bWJlcjtcbiAgQElucHV0KCkgY29udGFpbmVyOiB7IHRvcDogbnVtYmVyLCBsZWZ0OiBudW1iZXIgfTtcblxuICBAT3V0cHV0KCkgc2F2ZVNlbGVjdGlvbiA9IG5ldyBFdmVudEVtaXR0ZXI8eyByZWN0YW5nbGVzOiBSZWN0YW5nbGVbXSwgcGFnZTogbnVtYmVyIH0+KCk7XG5cbiAgQFZpZXdDaGlsZCgnYm94SGlnaGxpZ2h0JywgeyBzdGF0aWM6IGZhbHNlIH0pIGhpZ2hsaWdodDogRWxlbWVudFJlZjtcblxuICBkcmF3U3RhcnRYID0gLTE7XG4gIGRyYXdTdGFydFkgPSAtMTtcbiAgdG9wOiBudW1iZXI7XG4gIGxlZnQ6IG51bWJlcjtcbiAgaGVpZ2h0OiBudW1iZXI7XG4gIHdpZHRoOiBudW1iZXI7XG4gIGRpc3BsYXk6IHN0cmluZztcbiAgZHJhd01vZGU6IGJvb2xlYW47XG4gIGRlZmF1bHRIZWlnaHQ6IHN0cmluZztcbiAgZGVmYXVsdFdpZHRoOiBzdHJpbmc7XG4gIHBvc2l0aW9uOiBzdHJpbmc7XG4gIGJhY2tncm91bmRDb2xvciA9ICdub25lJztcbiAgd2hvbGVQYWdlOiBib29sZWFuO1xuXG4gIHByaXZhdGUgc3Vic2NyaXB0aW9uczogU3Vic2NyaXB0aW9uW10gPSBbXTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IHRvb2xiYXJFdmVudHM6IFRvb2xiYXJFdmVudFNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBoaWdobGlnaHRTZXJ2aWNlOiBIaWdobGlnaHRDcmVhdGVTZXJ2aWNlKSB7IH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMgPSBbXG4gICAgICB0aGlzLnRvb2xiYXJFdmVudHMuZHJhd01vZGVTdWJqZWN0LnN1YnNjcmliZShkcmF3TW9kZSA9PiB7XG4gICAgICAgIHRoaXMuZGVmYXVsdEhlaWdodCA9IGRyYXdNb2RlID8gJzEwMCUnIDogJzBweCc7XG4gICAgICAgIHRoaXMuZGVmYXVsdFdpZHRoID0gZHJhd01vZGUgPyAnMTAwJScgOiAnMHB4JztcbiAgICAgIH0pLFxuICAgICAgdGhpcy50b29sYmFyRXZlbnRzLnJlZGFjdFdob2xlUGFnZS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLndob2xlUGFnZSA9IHRydWU7XG4gICAgICB9KVxuICAgIF07XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMuZm9yRWFjaChzdWJzY3JpcHRpb24gPT4ge1xuICAgICAgc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgfSk7XG4gIH1cblxuICBpbml0SGlnaGxpZ2h0KHsgb2Zmc2V0WCwgb2Zmc2V0WSB9KSB7XG4gICAgaWYgKHRoaXMud2hvbGVQYWdlKSB7XG4gICAgICB0aGlzLmhpZ2hsaWdodFBhZ2UoKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5wb3NpdGlvbiA9ICdhYnNvbHV0ZSc7XG4gICAgdGhpcy5iYWNrZ3JvdW5kQ29sb3IgPSAneWVsbG93JztcbiAgICB0aGlzLmRyYXdTdGFydFggPSBvZmZzZXRYO1xuICAgIHRoaXMuZHJhd1N0YXJ0WSA9IG9mZnNldFk7XG5cbiAgICB0aGlzLmRpc3BsYXkgPSAnYmxvY2snO1xuICAgIHRoaXMuaGVpZ2h0ID0gNTA7XG4gICAgdGhpcy53aWR0aCA9IDUwO1xuXG4gICAgdGhpcy50b3AgPSB0aGlzLmRyYXdTdGFydFk7XG4gICAgdGhpcy5sZWZ0ID0gdGhpcy5kcmF3U3RhcnRYO1xuXG4gICAgc3dpdGNoICh0aGlzLnJvdGF0ZSkge1xuICAgICAgY2FzZSA5MDpcbiAgICAgICAgdGhpcy50b3AgPSB0aGlzLmRyYXdTdGFydFkgLSB0aGlzLmhlaWdodDtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlIDE4MDpcbiAgICAgICAgdGhpcy50b3AgPSB0aGlzLmRyYXdTdGFydFkgLSB0aGlzLmhlaWdodDtcbiAgICAgICAgdGhpcy5sZWZ0ID0gdGhpcy5kcmF3U3RhcnRYIC0gdGhpcy53aWR0aDtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlIDI3MDpcbiAgICAgICAgdGhpcy5sZWZ0ID0gdGhpcy5kcmF3U3RhcnRYIC0gdGhpcy53aWR0aDtcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuICB9XG5cbiAgdXBkYXRlSGlnaGxpZ2h0KHsgY3VycmVudFRhcmdldCwgY2xpZW50WCwgY2xpZW50WSB9KSB7XG4gICAgY29uc3QgcmVjdCA9IGN1cnJlbnRUYXJnZXQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCksXG4gICAgICBvZmZzZXRYID0gY2xpZW50WCAtIHJlY3QubGVmdCxcbiAgICAgIG9mZnNldFkgPSBjbGllbnRZIC0gcmVjdC50b3A7XG4gICAgaWYgKHRoaXMuZHJhd1N0YXJ0WCA+IDAgJiYgdGhpcy5kcmF3U3RhcnRZID4gMCkge1xuICAgICAgdGhpcy5oZWlnaHQgPSBNYXRoLmFicyhvZmZzZXRZIC0gdGhpcy5kcmF3U3RhcnRZKTtcbiAgICAgIHRoaXMud2lkdGggPSBNYXRoLmFicyhvZmZzZXRYIC0gdGhpcy5kcmF3U3RhcnRYKTtcbiAgICAgIHRoaXMudG9wID0gTWF0aC5taW4ob2Zmc2V0WSwgdGhpcy5kcmF3U3RhcnRZKTtcbiAgICAgIHRoaXMubGVmdCA9IE1hdGgubWluKG9mZnNldFgsIHRoaXMuZHJhd1N0YXJ0WCk7XG4gICAgfVxuICB9XG5cbiAgY3JlYXRlSGlnaGxpZ2h0KCkge1xuICAgIGlmICh0aGlzLmhlaWdodCAvIHRoaXMuem9vbSA+IDUgfHwgdGhpcy53aWR0aCAvIHRoaXMuem9vbSA+IDUpIHtcbiAgICAgIGxldCByZWN0YW5nbGUgPSB0aGlzLmhpZ2hsaWdodFNlcnZpY2VcbiAgICAgICAgLmFwcGx5Um90YXRpb24odGhpcy5wYWdlSGVpZ2h0LCB0aGlzLnBhZ2VXaWR0aCwgdGhpcy5oZWlnaHQsIHRoaXMud2lkdGgsIHRoaXMudG9wLCB0aGlzLmxlZnQsIHRoaXMucm90YXRlLCB0aGlzLnpvb20pO1xuICAgICAgcmVjdGFuZ2xlID0geyBpZDogdXVpZCgpLCAuLi5yZWN0YW5nbGUgfSBhcyBhbnk7XG4gICAgICB0aGlzLnNhdmVTZWxlY3Rpb24uZW1pdCh7IHJlY3RhbmdsZXM6IFtyZWN0YW5nbGVdLCBwYWdlOiB0aGlzLnBhZ2UgfSk7XG4gICAgICB0aGlzLnJlc2V0SGlnaGxpZ2h0KCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSByZXNldEhpZ2hsaWdodCgpIHtcbiAgICB0aGlzLmRyYXdTdGFydFggPSAtMTtcbiAgICB0aGlzLmRyYXdTdGFydFkgPSAtMTtcbiAgICB0aGlzLmRpc3BsYXkgPSAnbm9uZSc7XG4gICAgdGhpcy53aWR0aCA9IDA7XG4gICAgdGhpcy5oZWlnaHQgPSAwO1xuICAgIHRoaXMud2hvbGVQYWdlID0gZmFsc2U7XG4gIH1cblxuICBwcml2YXRlIGhpZ2hsaWdodFBhZ2UoKSB7XG4gICAgdGhpcy5oZWlnaHQgPSB0aGlzLnBhZ2VIZWlnaHQ7XG4gICAgdGhpcy53aWR0aCA9IHRoaXMucGFnZVdpZHRoO1xuICAgIHRoaXMudG9wID0gMDtcbiAgICB0aGlzLmxlZnQgPSAwO1xuICAgIHRoaXMuY3JlYXRlSGlnaGxpZ2h0KCk7XG4gIH1cbn1cbiIsIjxkaXYgW3N0eWxlLmhlaWdodF09XCJkZWZhdWx0SGVpZ2h0XCJcbiAgICAgW3N0eWxlLndpZHRoXT1cImRlZmF1bHRXaWR0aFwiXG4gICAgIChtb3VzZWRvd24pPVwiaW5pdEhpZ2hsaWdodCgkZXZlbnQpXCJcbiAgICAgKG1vdXNlbW92ZSk9XCJ1cGRhdGVIaWdobGlnaHQoJGV2ZW50KVwiXG4gICAgIChtb3VzZXVwKT1cImNyZWF0ZUhpZ2hsaWdodCgpXCI+XG4gIDxkaXYgI2JveEhpZ2hsaWdodFxuICAgICBjbGFzcz1cImJveC1oaWdobGlnaHRcIlxuICAgICBbc3R5bGUuZGlzcGxheV09XCJkaXNwbGF5XCJcbiAgICAgW3N0eWxlLnBvc2l0aW9uXT1cInBvc2l0aW9uXCJcbiAgICAgW3N0eWxlLmJhY2tncm91bmQtY29sb3JdPVwiYmFja2dyb3VuZENvbG9yXCJcbiAgICAgW3N0eWxlLmhlaWdodF09XCJoZWlnaHQgPyBoZWlnaHQgKyAncHgnIDogJzEwMCUnXCJcbiAgICAgW3N0eWxlLndpZHRoXT1cIndpZHRoID8gd2lkdGggKyAncHgnIDogJzEwMCUnXCJcbiAgICAgW3N0eWxlLnRvcF09XCJ0b3AgKyAncHgnXCJcbiAgICAgW3N0eWxlLmxlZnRdPVwibGVmdCArICdweCdcIj5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
import { Directive, HostListener } from '@angular/core';
|
|
2
|
+
import { v4 as uuid } from 'uuid';
|
|
3
|
+
import * as fromDocument from '../../../../store/selectors/document.selectors';
|
|
4
|
+
import * as fromAnnotationActions from '../../../../store/actions/annotation.actions';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "../../../../toolbar/toolbar.module";
|
|
7
|
+
import * as i2 from "../../../../viewers/viewer-event.service";
|
|
8
|
+
import * as i3 from "./highlight-create.service";
|
|
9
|
+
import * as i4 from "@ngrx/store";
|
|
10
|
+
export class HighlightCreateDirective {
|
|
11
|
+
constructor(element, toolbarEvents, viewerEvents, highlightService, store) {
|
|
12
|
+
this.element = element;
|
|
13
|
+
this.toolbarEvents = toolbarEvents;
|
|
14
|
+
this.viewerEvents = viewerEvents;
|
|
15
|
+
this.highlightService = highlightService;
|
|
16
|
+
this.store = store;
|
|
17
|
+
}
|
|
18
|
+
ngOnInit() {
|
|
19
|
+
this.$subscription = this.store.select(fromDocument.getPages).subscribe((pages) => {
|
|
20
|
+
if (pages[1]) {
|
|
21
|
+
this.allPages = pages;
|
|
22
|
+
}
|
|
23
|
+
});
|
|
24
|
+
}
|
|
25
|
+
ngOnDestroy() {
|
|
26
|
+
if (this.$subscription) {
|
|
27
|
+
this.$subscription.unsubscribe();
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
onMouseUp(mouseEvent) {
|
|
31
|
+
const pageElement = mouseEvent.target.offsetParent.offsetParent;
|
|
32
|
+
const page = parseInt(pageElement.getAttribute('data-page-number'), 10);
|
|
33
|
+
if (this.toolbarEvents.highlightModeSubject.getValue()) {
|
|
34
|
+
const rectangles = this.getRectangles(mouseEvent, page);
|
|
35
|
+
this.viewerEvents.textSelected({ page, rectangles });
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
onPdfViewerClick(event) {
|
|
39
|
+
this.store.dispatch(new fromAnnotationActions.SelectedAnnotation({
|
|
40
|
+
annotationId: '',
|
|
41
|
+
selected: false,
|
|
42
|
+
editable: false,
|
|
43
|
+
}));
|
|
44
|
+
this.viewerEvents.clearCtxToolbar();
|
|
45
|
+
}
|
|
46
|
+
getRectangles(event, page) {
|
|
47
|
+
this.pageHeight = this.allPages[page].styles.height;
|
|
48
|
+
this.pageWidth = this.allPages[page].styles.width;
|
|
49
|
+
this.zoom = parseFloat(this.allPages[page].scaleRotation.scale);
|
|
50
|
+
this.rotate = parseInt(this.allPages[page].scaleRotation.rotation, 10);
|
|
51
|
+
const selection = window.getSelection();
|
|
52
|
+
if (selection) {
|
|
53
|
+
const localElement = event.target;
|
|
54
|
+
this.removeEnhancedTextModeStyling(localElement);
|
|
55
|
+
if (selection.rangeCount && !selection.isCollapsed) {
|
|
56
|
+
const range = selection.getRangeAt(0).cloneRange();
|
|
57
|
+
const clientRects = range.getClientRects();
|
|
58
|
+
if (clientRects) {
|
|
59
|
+
const parentRect = localElement.parentElement.getBoundingClientRect();
|
|
60
|
+
const selectionRectangles = [];
|
|
61
|
+
for (let i = 0; i < clientRects.length; i++) {
|
|
62
|
+
const selectionRectangle = this.createTextRectangle(clientRects[i], parentRect);
|
|
63
|
+
const findSelecttionRectangle = selectionRectangles.find((rect) => rect.width === selectionRectangle.width && rect.x === selectionRectangle.x);
|
|
64
|
+
if (!findSelecttionRectangle) {
|
|
65
|
+
selectionRectangles.push(selectionRectangle);
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
return selectionRectangles;
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
createTextRectangle(rect, parentRect) {
|
|
74
|
+
const height = rect.bottom - rect.top;
|
|
75
|
+
const width = rect.right - rect.left;
|
|
76
|
+
const top = rect.top - parentRect.top;
|
|
77
|
+
const left = rect.left - parentRect.left;
|
|
78
|
+
let rectangle = this.highlightService.applyRotation(this.pageHeight, this.pageWidth, height, width, top, left, this.rotate, this.zoom);
|
|
79
|
+
rectangle = { id: uuid(), ...rectangle };
|
|
80
|
+
return rectangle;
|
|
81
|
+
}
|
|
82
|
+
removeEnhancedTextModeStyling(element) {
|
|
83
|
+
if (element.parentElement.children) {
|
|
84
|
+
for (let i = 0; i < element.parentElement.children.length; i++) {
|
|
85
|
+
const child = element.parentElement.children[i];
|
|
86
|
+
child.style.padding = '0';
|
|
87
|
+
// regex will be targeting the translate style in string
|
|
88
|
+
// e.g. scaleX(0.969918) translateX(-110.684px) translateY(-105.274px) will become scaleX(0.969918)
|
|
89
|
+
const translateCSSRegex = /translate[XYZ]\(-?\d*(\.\d+)?(px)?\)/g;
|
|
90
|
+
child.style.transform = child.style.transform.replace(translateCSSRegex, '').trim();
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
/** @nocollapse */ HighlightCreateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: HighlightCreateDirective, deps: [{ token: i0.ElementRef }, { token: i1.ToolbarEventService }, { token: i2.ViewerEventService }, { token: i3.HighlightCreateService }, { token: i4.Store }], target: i0.ɵɵFactoryTarget.Directive });
|
|
96
|
+
/** @nocollapse */ HighlightCreateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: HighlightCreateDirective, selector: "[mvCreateTextHighlight]", host: { listeners: { "mouseup": "onMouseUp($event)", "mousedown": "onPdfViewerClick($event)" } }, ngImport: i0 });
|
|
97
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: HighlightCreateDirective, decorators: [{
|
|
98
|
+
type: Directive,
|
|
99
|
+
args: [{
|
|
100
|
+
selector: '[mvCreateTextHighlight]'
|
|
101
|
+
}]
|
|
102
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i1.ToolbarEventService }, { type: i2.ViewerEventService }, { type: i3.HighlightCreateService }, { type: i4.Store }]; }, propDecorators: { onMouseUp: [{
|
|
103
|
+
type: HostListener,
|
|
104
|
+
args: ['mouseup', ['$event']]
|
|
105
|
+
}], onPdfViewerClick: [{
|
|
106
|
+
type: HostListener,
|
|
107
|
+
args: ['mousedown', ['$event']]
|
|
108
|
+
}] } });
|
|
109
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGlnaGxpZ2h0LWNyZWF0ZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tZWRpYS12aWV3ZXIvc3JjL2xpYi9hbm5vdGF0aW9ucy9hbm5vdGF0aW9uLXNldC9hbm5vdGF0aW9uLWNyZWF0ZS9oaWdobGlnaHQtY3JlYXRlL2hpZ2hsaWdodC1jcmVhdGUuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWMsWUFBWSxFQUFxQixNQUFNLGVBQWUsQ0FBQztBQUN2RixPQUFPLEVBQUUsRUFBRSxJQUFJLElBQUksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQU9sQyxPQUFPLEtBQUssWUFBWSxNQUFNLGdEQUFnRCxDQUFDO0FBRS9FLE9BQU8sS0FBSyxxQkFBcUIsTUFBTSw4Q0FBOEMsQ0FBQzs7Ozs7O0FBTXRGLE1BQU0sT0FBTyx3QkFBd0I7SUFTbkMsWUFDVSxPQUFnQyxFQUNoQyxhQUFrQyxFQUNsQyxZQUFnQyxFQUNoQyxnQkFBd0MsRUFDeEMsS0FBMEM7UUFKMUMsWUFBTyxHQUFQLE9BQU8sQ0FBeUI7UUFDaEMsa0JBQWEsR0FBYixhQUFhLENBQXFCO1FBQ2xDLGlCQUFZLEdBQVosWUFBWSxDQUFvQjtRQUNoQyxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQXdCO1FBQ3hDLFVBQUssR0FBTCxLQUFLLENBQXFDO0lBQ2hELENBQUM7SUFFTCxRQUFRO1FBQ04sSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDaEYsSUFBSSxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUU7Z0JBQ1osSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUM7YUFDdkI7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNM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TUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFO2dCQUM5RCxNQUFNLEtBQUssR0FBZ0IsT0FBTyxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBRTdELEtBQUssQ0FBQyxLQUFLLENBQUMsT0FBTyxHQUFHLEdBQUcsQ0FBQztnQkFDMUIsd0RBQXdEO2dCQUN4RCxtR0FBbUc7Z0JBQ25HLE1BQU0saUJBQWlCLEdBQUcsdUNBQXVDLENBQUM7Z0JBQ2xFLEtBQUssQ0FBQyxLQUFLLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxpQkFBaUIsRUFBRSxFQUFFLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQzthQUNyRjtTQUNGO0lBQ0gsQ0FBQzs7eUlBeEhVLHdCQUF3Qjs2SEFBeEIsd0JBQXdCOzRGQUF4Qix3QkFBd0I7a0JBSHBDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHlCQUF5QjtpQkFDcEM7Nk5BaUNDLFNBQVM7c0JBRFIsWUFBWTt1QkFBQyxTQUFTLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBV25DLGdCQUFnQjtzQkFEZixZQUFZO3VCQUFDLFdBQVcsRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgSG9zdExpc3RlbmVyLCBPbkRlc3Ryb3ksIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdjQgYXMgdXVpZCB9IGZyb20gJ3V1aWQnO1xuaW1wb3J0IHsgU3RvcmUgfSBmcm9tICdAbmdyeC9zdG9yZSc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgUmVjdGFuZ2xlIH0gZnJvbSAnLi4vLi4vYW5ub3RhdGlvbi12aWV3L3JlY3RhbmdsZS9yZWN0YW5nbGUubW9kZWwnO1xuaW1wb3J0IHsgVG9vbGJhckV2ZW50U2VydmljZSB9IGZyb20gJy4uLy4uLy4uLy4uL3Rvb2xiYXIvdG9vbGJhci5tb2R1bGUnO1xuaW1wb3J0ICogYXMgZnJvbVN0b3JlIGZyb20gJy4uLy4uLy4uLy4uL3N0b3JlL3JlZHVjZXJzL3JlZHVjZXJzJztcbmltcG9ydCAqIGFzIGZyb21Eb2N1bWVudCBmcm9tICcuLi8uLi8uLi8uLi9zdG9yZS9zZWxlY3RvcnMvZG9jdW1lbnQuc2VsZWN0b3JzJztcbmltcG9ydCB7IFZpZXdlckV2ZW50U2VydmljZSB9IGZyb20gJy4uLy4uLy4uLy4uL3ZpZXdlcnMvdmlld2VyLWV2ZW50LnNlcnZpY2UnO1xuaW1wb3J0ICogYXMgZnJvbUFubm90YXRpb25BY3Rpb25zIGZyb20gJy4uLy4uLy4uLy4uL3N0b3JlL2FjdGlvbnMvYW5ub3RhdGlvbi5hY3Rpb25zJztcbmltcG9ydCB7IEhpZ2hsaWdodENyZWF0ZVNlcnZpY2UgfSBmcm9tICcuL2hpZ2hsaWdodC1jcmVhdGUuc2VydmljZSc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1ttdkNyZWF0ZVRleHRIaWdobGlnaHRdJ1xufSlcbmV4cG9ydCBjbGFzcyBIaWdobGlnaHRDcmVhdGVEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIHBhZ2VIZWlnaHQ6IG51bWJlcjtcbiAgcGFnZVdpZHRoOiBudW1iZXI7XG4gIHpvb206IG51bWJlcjtcbiAgcm90YXRlOiBudW1iZXI7XG4gIGFsbFBhZ2VzOiBvYmplY3Q7XG5cbiAgJHN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZWxlbWVudDogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4sXG4gICAgcHJpdmF0ZSB0b29sYmFyRXZlbnRzOiBUb29sYmFyRXZlbnRTZXJ2aWNlLFxuICAgIHByaXZhdGUgdmlld2VyRXZlbnRzOiBWaWV3ZXJFdmVudFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBoaWdobGlnaHRTZXJ2aWNlOiBIaWdobGlnaHRDcmVhdGVTZXJ2aWNlLFxuICAgIHByaXZhdGUgc3RvcmU6IFN0b3JlPGZyb21TdG9yZS5Bbm5vdGF0aW9uU2V0U3RhdGU+XG4gICkgeyB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy4kc3Vic2NyaXB0aW9uID0gdGhpcy5zdG9yZS5zZWxlY3QoZnJvbURvY3VtZW50LmdldFBhZ2VzKS5zdWJzY3JpYmUoKHBhZ2VzKSA9PiB7XG4gICAgICBpZiAocGFnZXNbMV0pIHtcbiAgICAgICAgdGhpcy5hbGxQYWdlcyA9IHBhZ2VzO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgaWYgKHRoaXMuJHN1YnNjcmlwdGlvbikge1xuICAgICAgdGhpcy4kc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignbW91c2V1cCcsIFsnJGV2ZW50J10pXG4gIG9uTW91c2VVcChtb3VzZUV2ZW50OiBNb3VzZUV2ZW50KSB7XG4gICAgY29uc3QgcGFnZUVsZW1lbnQgPSAoPEhUTUxFbGVtZW50Pihtb3VzZUV2ZW50LnRhcmdldCBhcyBIVE1MRWxlbWVudCkub2Zmc2V0UGFyZW50KS5vZmZzZXRQYXJlbnQ7XG4gICAgY29uc3QgcGFnZSA9IHBhcnNlSW50KHBhZ2VFbGVtZW50LmdldEF0dHJpYnV0ZSgnZGF0YS1wYWdlLW51bWJlcicpLCAxMCk7XG4gICAgaWYgKHRoaXMudG9vbGJhckV2ZW50cy5oaWdobGlnaHRNb2RlU3ViamVjdC5nZXRWYWx1ZSgpKSB7XG4gICAgICBjb25zdCByZWN0YW5nbGVzID0gdGhpcy5nZXRSZWN0YW5nbGVzKG1vdXNlRXZlbnQsIHBhZ2UpO1xuICAgICAgdGhpcy52aWV3ZXJFdmVudHMudGV4dFNlbGVjdGVkKHsgcGFnZSwgcmVjdGFuZ2xlcyB9KTtcbiAgICB9XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdtb3VzZWRvd24nLCBbJyRldmVudCddKVxuICBvblBkZlZpZXdlckNsaWNrKGV2ZW50OiBNb3VzZUV2ZW50KSB7XG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChcbiAgICAgIG5ldyBmcm9tQW5ub3RhdGlvbkFjdGlvbnMuU2VsZWN0ZWRBbm5vdGF0aW9uKHtcbiAgICAgICAgYW5ub3RhdGlvbklkOiAnJyxcbiAgICAgICAgc2VsZWN0ZWQ6IGZhbHNlLFxuICAgICAgICBlZGl0YWJsZTogZmFsc2UsXG4gICAgICB9KVxuICAgICk7XG4gICAgdGhpcy52aWV3ZXJFdmVudHMuY2xlYXJDdHhUb29sYmFyKCk7XG4gIH1cblxuICBwcml2YXRlIGdldFJlY3RhbmdsZXMoZXZlbnQ6IE1vdXNlRXZlbnQsIHBhZ2UpIHtcbiAgICB0aGlzLnBhZ2VIZWlnaHQgPSB0aGlzLmFsbFBhZ2VzW3BhZ2VdLnN0eWxlcy5oZWlnaHQ7XG4gICAgdGhpcy5wYWdlV2lkdGggPSB0aGlzLmFsbFBhZ2VzW3BhZ2VdLnN0eWxlcy53aWR0aDtcbiAgICB0aGlzLnpvb20gPSBwYXJzZUZsb2F0KHRoaXMuYWxsUGFnZXNbcGFnZV0uc2NhbGVSb3RhdGlvbi5zY2FsZSk7XG4gICAgdGhpcy5yb3RhdGUgPSBwYXJzZUludCh0aGlzLmFsbFBhZ2VzW3BhZ2VdLnNjYWxlUm90YXRpb24ucm90YXRpb24sIDEwKTtcbiAgICBjb25zdCBzZWxlY3Rpb24gPSB3aW5kb3cuZ2V0U2VsZWN0aW9uKCk7XG4gICAgaWYgKHNlbGVjdGlvbikge1xuICAgICAgY29uc3QgbG9jYWxFbGVtZW50ID0gPEhUTUxFbGVtZW50PmV2ZW50LnRhcmdldDtcblxuICAgICAgdGhpcy5yZW1vdmVFbmhhbmNlZFRleHRNb2RlU3R5bGluZyhsb2NhbEVsZW1lbnQpO1xuXG4gICAgICBpZiAoc2VsZWN0aW9uLnJhbmdlQ291bnQgJiYgIXNlbGVjdGlvbi5pc0NvbGxhcHNlZCkge1xuICAgICAgICBjb25zdCByYW5nZSA9IHNlbGVjdGlvbi5nZXRSYW5nZUF0KDApLmNsb25lUmFuZ2UoKTtcbiAgICAgICAgY29uc3QgY2xpZW50UmVjdHMgPSByYW5nZS5nZXRDbGllbnRSZWN0cygpO1xuXG4gICAgICAgIGlmIChjbGllbnRSZWN0cykge1xuXG4gICAgICAgICAgY29uc3QgcGFyZW50UmVjdCA9IGxvY2FsRWxlbWVudC5wYXJlbnRFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICAgICAgICAgIGNvbnN0IHNlbGVjdGlvblJlY3RhbmdsZXM6IFJlY3RhbmdsZVtdID0gW107XG4gICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBjbGllbnRSZWN0cy5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgY29uc3Qgc2VsZWN0aW9uUmVjdGFuZ2xlID0gdGhpcy5jcmVhdGVUZXh0UmVjdGFuZ2xlKGNsaWVudFJlY3RzW2ldLCBwYXJlbnRSZWN0KTtcbiAgICAgICAgICAgIGNvbnN0IGZpbmRTZWxlY3R0aW9uUmVjdGFuZ2xlID0gc2VsZWN0aW9uUmVjdGFuZ2xlcy5maW5kKFxuICAgICAgICAgICAgICAocmVjdCkgPT4gcmVjdC53aWR0aCA9PT0gc2VsZWN0aW9uUmVjdGFuZ2xlLndpZHRoICYmIHJlY3QueCA9PT0gc2VsZWN0aW9uUmVjdGFuZ2xlLnhcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICBpZiAoIWZpbmRTZWxlY3R0aW9uUmVjdGFuZ2xlKSB7XG4gICAgICAgICAgICAgIHNlbGVjdGlvblJlY3RhbmdsZXMucHVzaChzZWxlY3Rpb25SZWN0YW5nbGUpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICByZXR1cm4gc2VsZWN0aW9uUmVjdGFuZ2xlcztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgY3JlYXRlVGV4dFJlY3RhbmdsZShyZWN0OiBhbnksIHBhcmVudFJlY3Q6IGFueSk6IFJlY3RhbmdsZSB7XG4gICAgY29uc3QgaGVpZ2h0ID0gcmVjdC5ib3R0b20gLSByZWN0LnRvcDtcbiAgICBjb25zdCB3aWR0aCA9IHJlY3QucmlnaHQgLSByZWN0LmxlZnQ7XG4gICAgY29uc3QgdG9wID0gcmVjdC50b3AgLSBwYXJlbnRSZWN0LnRvcDtcbiAgICBjb25zdCBsZWZ0ID0gcmVjdC5sZWZ0IC0gcGFyZW50UmVjdC5sZWZ0O1xuXG4gICAgbGV0IHJlY3RhbmdsZSA9IHRoaXMuaGlnaGxpZ2h0U2VydmljZS5hcHBseVJvdGF0aW9uKFxuICAgICAgdGhpcy5wYWdlSGVpZ2h0LFxuICAgICAgdGhpcy5wYWdlV2lkdGgsXG4gICAgICBoZWlnaHQsXG4gICAgICB3aWR0aCxcbiAgICAgIHRvcCxcbiAgICAgIGxlZnQsXG4gICAgICB0aGlzLnJvdGF0ZSxcbiAgICAgIHRoaXMuem9vbVxuICAgICk7XG4gICAgcmVjdGFuZ2xlID0geyBpZDogdXVpZCgpLCAuLi5yZWN0YW5nbGUgfTtcblxuICAgIHJldHVybiByZWN0YW5nbGUgYXMgUmVjdGFuZ2xlO1xuICB9XG5cbiAgcHJpdmF0ZSByZW1vdmVFbmhhbmNlZFRleHRNb2RlU3R5bGluZyhlbGVtZW50OiBIVE1MRWxlbWVudCkge1xuICAgIGlmIChlbGVtZW50LnBhcmVudEVsZW1lbnQuY2hpbGRyZW4pIHtcbiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgZWxlbWVudC5wYXJlbnRFbGVtZW50LmNoaWxkcmVuLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIGNvbnN0IGNoaWxkID0gPEhUTUxFbGVtZW50PmVsZW1lbnQucGFyZW50RWxlbWVudC5jaGlsZHJlbltpXTtcblxuICAgICAgICBjaGlsZC5zdHlsZS5wYWRkaW5nID0gJzAnO1xuICAgICAgICAvLyByZWdleCB3aWxsIGJlIHRhcmdldGluZyB0aGUgdHJhbnNsYXRlIHN0eWxlIGluIHN0cmluZ1xuICAgICAgICAvLyBlLmcuIHNjYWxlWCgwLjk2OTkxOCkgdHJhbnNsYXRlWCgtMTEwLjY4NHB4KSB0cmFuc2xhdGVZKC0xMDUuMjc0cHgpIHdpbGwgYmVjb21lIHNjYWxlWCgwLjk2OTkxOClcbiAgICAgICAgY29uc3QgdHJhbnNsYXRlQ1NTUmVnZXggPSAvdHJhbnNsYXRlW1hZWl1cXCgtP1xcZCooXFwuXFxkKyk/KHB4KT9cXCkvZztcbiAgICAgICAgY2hpbGQuc3R5bGUudHJhbnNmb3JtID0gY2hpbGQuc3R5bGUudHJhbnNmb3JtLnJlcGxhY2UodHJhbnNsYXRlQ1NTUmVnZXgsICcnKS50cmltKCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iXX0=
|
|
@@ -91,10 +91,10 @@ export class HighlightCreateService {
|
|
|
91
91
|
window.getSelection().removeAllRanges();
|
|
92
92
|
this.toolBarEvents.highlightModeSubject.next(false);
|
|
93
93
|
}
|
|
94
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: HighlightCreateService, deps: [{ token: i1.ToolbarEventService }, { token: i2.Store }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
95
|
-
/** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: HighlightCreateService }); }
|
|
96
94
|
}
|
|
97
|
-
i0.ɵɵ
|
|
95
|
+
/** @nocollapse */ HighlightCreateService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: HighlightCreateService, deps: [{ token: i1.ToolbarEventService }, { token: i2.Store }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
96
|
+
/** @nocollapse */ HighlightCreateService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: HighlightCreateService });
|
|
97
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: HighlightCreateService, decorators: [{
|
|
98
98
|
type: Injectable
|
|
99
|
-
}], ctorParameters: ()
|
|
100
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGlnaGxpZ2h0LWNyZWF0ZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWVkaWEtdmlld2VyL3NyYy9saWIvYW5ub3RhdGlvbnMvYW5ub3RhdGlvbi1zZXQvYW5ub3RhdGlvbi1jcmVhdGUvaGlnaGxpZ2h0LWNyZWF0ZS9oaWdobGlnaHQtY3JlYXRlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsSUFBSSxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDckMsT0FBTyxFQUFFLE1BQU0sRUFBUyxNQUFNLGFBQWEsQ0FBQztBQUM1QyxPQUFPLEVBQUUsRUFBRSxJQUFJLElBQUksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNsQyxPQUFPLE1BQU0sTUFBTSxpQkFBaUIsQ0FBQztBQUtyQyxPQUFPLEtBQUssYUFBYSxNQUFNLGtEQUFrRCxDQUFDO0FBQ2xGLE9BQU8sS0FBSyxXQUFXLE1BQU0sOENBQThDLENBQUM7Ozs7QUFNNUUsTUFBTSxPQUFPLHNCQUFzQjtJQUVqQyxZQUFvQixhQUFrQyxFQUM1QyxLQUEwQztRQURoQyxrQkFBYSxHQUFiLGFBQWEsQ0FBcUI7UUFDNUMsVUFBSyxHQUFMLEtBQUssQ0FBcUM7SUFBSSxDQUFDO0lBRXpELGNBQWMsQ0FBQyxVQUF1QixFQUFFLElBQVk7UUFDbEQsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxrQkFBa0IsQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsRUFBRTtZQUN6RixNQUFNLElBQUksR0FBZTtnQkFDdkIsRUFBRSxFQUFFLElBQUksRUFBRTtnQkFDVixLQUFLLEVBQUUsUUFBUTtnQkFDZixRQUFRLEVBQUUsRUFB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QXNCO3FJQUF0QixzQkFBc0I7OzJGQUF0QixzQkFBc0I7a0JBRGxDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUb29sYmFyRXZlbnRTZXJ2aWNlIH0gZnJvbSAnLi8uLi8uLi8uLi8uLi90b29sYmFyL3Rvb2xiYXItZXZlbnQuc2VydmljZSc7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyB0YWtlfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBzZWxlY3QsIFN0b3JlIH0gZnJvbSAnQG5ncngvc3RvcmUnO1xuaW1wb3J0IHsgdjQgYXMgdXVpZCB9IGZyb20gJ3V1aWQnO1xuaW1wb3J0IG1vbWVudCBmcm9tICdtb21lbnQtdGltZXpvbmUnO1xuXG5cbmltcG9ydCB7IFJlY3RhbmdsZSB9IGZyb20gJy4uLy4uL2Fubm90YXRpb24tdmlldy9yZWN0YW5nbGUvcmVjdGFuZ2xlLm1vZGVsJztcbmltcG9ydCAqIGFzIGZyb21TdG9yZSBmcm9tICcuLi8uLi8uLi8uLi9zdG9yZS9yZWR1Y2Vycy9yZWR1Y2Vycyc7XG5pbXBvcnQgKiBhcyBmcm9tU2VsZWN0b3JzIGZyb20gJy4uLy4uLy4uLy4uL3N0b3JlL3NlbGVjdG9ycy9hbm5vdGF0aW9uLnNlbGVjdG9ycyc7XG5pbXBvcnQgKiBhcyBmcm9tQWN0aW9ucyBmcm9tICcuLi8uLi8uLi8uLi9zdG9yZS9hY3Rpb25zL2Fubm90YXRpb24uYWN0aW9ucyc7XG5pbXBvcnQgeyBBbm5vdGF0aW9uIH0gZnJvbSAnLi4vLi4vYW5ub3RhdGlvbi12aWV3L2Fubm90YXRpb24ubW9kZWwnO1xuaW1wb3J0IHsgUmVkYWN0UmVjdGFuZ2xlIH0gZnJvbSAnLi4vLi4vLi4vLi4vdG9vbGJhci9yZWRhY3Rpb24tc2VhcmNoLWJhci9yZWRhY3Rpb24tc2VhcmNoLm1vZGVsJztcbmltcG9ydCB7IEFubm90YXRpb25TZXQgfSBmcm9tICcuLi8uLi9hbm5vdGF0aW9uLXNldC5tb2RlbCc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBIaWdobGlnaHRDcmVhdGVTZXJ2aWNlIHtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHRvb2xCYXJFdmVudHM6IFRvb2xiYXJFdmVudFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBzdG9yZTogU3RvcmU8ZnJvbVN0b3JlLkFubm90YXRpb25TZXRTdGF0ZT4pIHsgfVxuXG4gIHNhdmVBbm5vdGF0aW9uKHJlY3RhbmdsZXM6IFJlY3RhbmdsZVtdLCBwYWdlOiBudW1iZXIpIHtcbiAgICB0aGlzLnN0b3JlLnBpcGUoc2VsZWN0KGZyb21TZWxlY3RvcnMuZ2V0RG9jdW1lbnRJZFNldElkKSwgdGFrZSgxKSkuc3Vic2NyaWJlKGFub1NldERvY0lkID0+IHtcbiAgICAgIGNvbnN0IGFubm86IEFubm90YXRpb24gPSB7XG4gICAgICAgIGlkOiB1dWlkKCksXG4gICAgICAgIGNvbG9yOiAnRkZGRjAwJyxcbiAgICAgICAgY29tbWVudHM6IFtdLFxuICAgICAgICBwYWdlOiBwYWdlLFxuICAgICAgICByZWN0YW5nbGVzOiByZWN0YW5nbGVzLFxuICAgICAgICB0eXBlOiAnaGlnaGxpZ2h0JyxcbiAgICAgICAgLi4uYW5vU2V0RG9jSWQsXG4gICAgICAgIGNyZWF0ZWRCeTogJycsXG4gICAgICAgIGNyZWF0ZWRCeURldGFpbHM6IHVuZGVmaW5lZCxcbiAgICAgICAgY3JlYXRlZERhdGU6IG1vbWVudC51dGMoKS50eignRXVyb3BlL0xvbmRvbicpLnRvSVNPU3RyaW5nKCksXG4gICAgICAgIGxhc3RNb2RpZmllZEJ5OiAnJyxcbiAgICAgICAgbGFzdE1vZGlmaWVkQnlEZXRhaWxzOiB1bmRlZmluZWQsXG4gICAgICAgIGxhc3RNb2RpZmllZERhdGU6ICcnLFxuICAgICAgICB0YWdzOiBbXSxcbiAgICAgIH07XG4gICAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKG5ldyBmcm9tQWN0aW9ucy5TYXZlQW5ub3RhdGlvbihhbm5vKSk7XG4gICAgfSk7XG4gIH1cblxuICBzYXZlQW5ub3RhdGlvblNldChzZWFyY2hSZWN0YW5nbGVzOiBSZWRhY3RSZWN0YW5nbGVbXSkge1xuICAgIHRoaXMuc3RvcmUucGlwZShzZWxlY3QoZnJvbVNlbGVjdG9ycy5nZXREb2N1bWVudElkU2V0SWQpLCB0YWtlKDEpKS5zdWJzY3JpYmUoYW5vU2V0RG9jSWQgPT4ge1xuICAgICAgY29uc3QgYW5ub1NldCA9IHNlYXJjaFJlY3RhbmdsZXMubWFwKHggPT4ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIGlkOiB1dWlkKCksXG4gICAgICAgICAgY29sb3I6ICdGRkZGMDAnLFxuICAgICAgICAgIGNvbW1lbnRzOiBbXSxcbiAgICAgICAgICBwYWdlOiB4LnBhZ2UsXG4gICAgICAgICAgcmVjdGFuZ2xlczogeC5yZWN0YW5nbGVzLFxuICAgICAgICAgIHR5cGU6ICdoaWdobGlnaHQnLFxuICAgICAgICAgIC4uLmFub1NldERvY0lkLFxuICAgICAgICAgIGNyZWF0ZWRCeTogJycsXG4gICAgICAgICAgY3JlYXRlZEJ5RGV0YWlsczogdW5kZWZpbmVkLFxuICAgICAgICAgIGNyZWF0ZWREYXRlOiBtb21lbnQudXRjKCkudHooJ0V1cm9wZS9Mb25kb24nKS50b0lTT1N0cmluZygpLFxuICAgICAgICAgIGxhc3RNb2RpZmllZEJ5OiAnJyxcbiAgICAgICAgICBsYXN0TW9kaWZpZWRCeURldGFpbHM6IHVuZGVmaW5lZCxcbiAgICAgICAgICBsYXN0TW9kaWZpZWREYXRlOiAnJyxcbiAgICAgICAgICB0YWdzOiBbXSxcbiAgICAgICAgfSBhcyBBbm5vdGF0aW9uO1xuICAgICAgfSk7XG4gICAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKG5ldyBmcm9tQWN0aW9ucy5TYXZlQW5ub3RhdGlvblNldCh7XG4gICAgICAgIGlkOiBhbm9TZXREb2NJZC5hbm5vdGF0aW9uU2V0SWQsIGFubm90YXRpb25zOiBhbm5vU2V0LCBkb2N1bWVudElkOiBhbm9TZXREb2NJZC5kb2N1bWVudElkIH0gYXMgQW5ub3RhdGlvblNldCkpO1xuICAgIH0pO1xuICB9XG5cblxuICBhcHBseVJvdGF0aW9uKHBhZ2VIZWlnaHQsIHBhZ2VXaWR0aCwgb2Zmc2V0SGVpZ2h0LCBvZmZzZXRXaWR0aCwgb2Zmc2V0VG9wLCBvZmZzZXRMZWZ0LCByb3RhdGUsIHpvb20pIHtcbiAgICBjb25zdCB7IHgsIHksIHdpZHRoLCBoZWlnaHQgfSA9IHtcbiAgICAgIHg6ICsob2Zmc2V0TGVmdCAvIHpvb20pLnRvRml4ZWQoMiksXG4gICAgICB5OiArKG9mZnNldFRvcCAvIHpvb20pLnRvRml4ZWQoMiksXG4gICAgICB3aWR0aDogKyhvZmZzZXRXaWR0aCAvIHpvb20pLnRvRml4ZWQoMiksXG4gICAgICBoZWlnaHQ6ICsob2Zmc2V0SGVpZ2h0IC8gem9vbSkudG9GaXhlZCgyKVxuICAgIH07XG4gICAgY29uc3QgcmVjdGFuZ2xlID0geyB4LCB5LCB3aWR0aCwgaGVpZ2h0IH07XG4gICAgc3dpdGNoIChyb3RhdGUpIHtcbiAgICAgIGNhc2UgOTA6XG4gICAgICAgIHJlY3RhbmdsZS53aWR0aCA9IGhlaWdodDtcbiAgICAgICAgcmVjdGFuZ2xlLmhlaWdodCA9IHdpZHRoO1xuICAgICAgICByZWN0YW5nbGUueCA9IHk7XG4gICAgICAgIHJlY3RhbmdsZS55ID0gKyhwYWdlV2lkdGggLyB6b29tIC0geCAtIHdpZHRoKS50b0ZpeGVkKDIpO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgMTgwOlxuICAgICAgICByZWN0YW5nbGUueCA9ICsocGFnZVdpZHRoIC8gem9vbSAtIHggLSB3aWR0aCkudG9GaXhlZCgyKTtcbiAgICAgICAgcmVjdGFuZ2xlLnkgPSArKHBhZ2VIZWlnaHQgLyB6b29tIC0geSAtIGhlaWdodCkudG9GaXhlZCgyKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlIDI3MDpcbiAgICAgICAgcmVjdGFuZ2xlLndpZHRoID0gaGVpZ2h0O1xuICAgICAgICByZWN0YW5nbGUuaGVpZ2h0ID0gd2lkdGg7XG4gICAgICAgIHJlY3RhbmdsZS54ID0gKyhwYWdlSGVpZ2h0IC8gem9vbSAtIHkgLSBoZWlnaHQpLnRvRml4ZWQoMik7XG4gICAgICAgIHJlY3RhbmdsZS55ID0geDtcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuICAgIHJldHVybiByZWN0YW5nbGUgYXMgYW55O1xuICB9XG5cbiAgcmVzZXRIaWdobGlnaHQoKSB7XG4gICAgd2luZG93LmdldFNlbGVjdGlvbigpLnJlbW92ZUFsbFJhbmdlcygpO1xuICAgIHRoaXMudG9vbEJhckV2ZW50cy5oaWdobGlnaHRNb2RlU3ViamVjdC5uZXh0KGZhbHNlKTtcbiAgfVxufVxuIl19
|
|
99
|
+
}], ctorParameters: function () { return [{ type: i1.ToolbarEventService }, { type: i2.Store }]; } });
|
|
100
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGlnaGxpZ2h0LWNyZWF0ZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWVkaWEtdmlld2VyL3NyYy9saWIvYW5ub3RhdGlvbnMvYW5ub3RhdGlvbi1zZXQvYW5ub3RhdGlvbi1jcmVhdGUvaGlnaGxpZ2h0LWNyZWF0ZS9oaWdobGlnaHQtY3JlYXRlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsSUFBSSxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDckMsT0FBTyxFQUFFLE1BQU0sRUFBUyxNQUFNLGFBQWEsQ0FBQztBQUM1QyxPQUFPLEVBQUUsRUFBRSxJQUFJLElBQUksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNsQyxPQUFPLE1BQU0sTUFBTSxpQkFBaUIsQ0FBQztBQUtyQyxPQUFPLEtBQUssYUFBYSxNQUFNLGtEQUFrRCxDQUFDO0FBQ2xGLE9BQU8sS0FBSyxXQUFXLE1BQU0sOENBQThDLENBQUM7Ozs7QUFNNUUsTUFBTSxPQUFPLHNCQUFzQjtJQUVqQyxZQUFvQixhQUFrQyxFQUM1QyxLQUEwQztRQURoQyxrQkFBYSxHQUFiLGFBQWEsQ0FBcUI7UUFDNUMsVUFBSyxHQUFMLEtBQUssQ0FBcUM7SUFBSSxDQUFDO0lBRXpELGNBQWMsQ0FBQyxVQUF1QixFQUFFLElBQVk7UUFDbEQsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxrQkFBa0IsQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsRUFBRTtZQUN6RixNQUFNLElBQUksR0FBZTtnQkFDdkIsRUFBRSxFQUFFLElBQUksRUFBRTtnQkFDVixLQUFLLEVBQUUsUUFBUTtnQkFDZixRQUFRLEVBQUUsRUFB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QixzQkFBc0I7NEZBQXRCLHNCQUFzQjtrQkFEbEMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRvb2xiYXJFdmVudFNlcnZpY2UgfSBmcm9tICcuLy4uLy4uLy4uLy4uL3Rvb2xiYXIvdG9vbGJhci1ldmVudC5zZXJ2aWNlJztcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHRha2V9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IHNlbGVjdCwgU3RvcmUgfSBmcm9tICdAbmdyeC9zdG9yZSc7XG5pbXBvcnQgeyB2NCBhcyB1dWlkIH0gZnJvbSAndXVpZCc7XG5pbXBvcnQgbW9tZW50IGZyb20gJ21vbWVudC10aW1lem9uZSc7XG5cblxuaW1wb3J0IHsgUmVjdGFuZ2xlIH0gZnJvbSAnLi4vLi4vYW5ub3RhdGlvbi12aWV3L3JlY3RhbmdsZS9yZWN0YW5nbGUubW9kZWwnO1xuaW1wb3J0ICogYXMgZnJvbVN0b3JlIGZyb20gJy4uLy4uLy4uLy4uL3N0b3JlL3JlZHVjZXJzL3JlZHVjZXJzJztcbmltcG9ydCAqIGFzIGZyb21TZWxlY3RvcnMgZnJvbSAnLi4vLi4vLi4vLi4vc3RvcmUvc2VsZWN0b3JzL2Fubm90YXRpb24uc2VsZWN0b3JzJztcbmltcG9ydCAqIGFzIGZyb21BY3Rpb25zIGZyb20gJy4uLy4uLy4uLy4uL3N0b3JlL2FjdGlvbnMvYW5ub3RhdGlvbi5hY3Rpb25zJztcbmltcG9ydCB7IEFubm90YXRpb24gfSBmcm9tICcuLi8uLi9hbm5vdGF0aW9uLXZpZXcvYW5ub3RhdGlvbi5tb2RlbCc7XG5pbXBvcnQgeyBSZWRhY3RSZWN0YW5nbGUgfSBmcm9tICcuLi8uLi8uLi8uLi90b29sYmFyL3JlZGFjdGlvbi1zZWFyY2gtYmFyL3JlZGFjdGlvbi1zZWFyY2gubW9kZWwnO1xuaW1wb3J0IHsgQW5ub3RhdGlvblNldCB9IGZyb20gJy4uLy4uL2Fubm90YXRpb24tc2V0Lm1vZGVsJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEhpZ2hsaWdodENyZWF0ZVNlcnZpY2Uge1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgdG9vbEJhckV2ZW50czogVG9vbGJhckV2ZW50U2VydmljZSxcbiAgICBwcml2YXRlIHN0b3JlOiBTdG9yZTxmcm9tU3RvcmUuQW5ub3RhdGlvblNldFN0YXRlPikgeyB9XG5cbiAgc2F2ZUFubm90YXRpb24ocmVjdGFuZ2xlczogUmVjdGFuZ2xlW10sIHBhZ2U6IG51bWJlcikge1xuICAgIHRoaXMuc3RvcmUucGlwZShzZWxlY3QoZnJvbVNlbGVjdG9ycy5nZXREb2N1bWVudElkU2V0SWQpLCB0YWtlKDEpKS5zdWJzY3JpYmUoYW5vU2V0RG9jSWQgPT4ge1xuICAgICAgY29uc3QgYW5ubzogQW5ub3RhdGlvbiA9IHtcbiAgICAgICAgaWQ6IHV1aWQoKSxcbiAgICAgICAgY29sb3I6ICdGRkZGMDAnLFxuICAgICAgICBjb21tZW50czogW10sXG4gICAgICAgIHBhZ2U6IHBhZ2UsXG4gICAgICAgIHJlY3RhbmdsZXM6IHJlY3RhbmdsZXMsXG4gICAgICAgIHR5cGU6ICdoaWdobGlnaHQnLFxuICAgICAgICAuLi5hbm9TZXREb2NJZCxcbiAgICAgICAgY3JlYXRlZEJ5OiAnJyxcbiAgICAgICAgY3JlYXRlZEJ5RGV0YWlsczogdW5kZWZpbmVkLFxuICAgICAgICBjcmVhdGVkRGF0ZTogbW9tZW50LnV0YygpLnR6KCdFdXJvcGUvTG9uZG9uJykudG9JU09TdHJpbmcoKSxcbiAgICAgICAgbGFzdE1vZGlmaWVkQnk6ICcnLFxuICAgICAgICBsYXN0TW9kaWZpZWRCeURldGFpbHM6IHVuZGVmaW5lZCxcbiAgICAgICAgbGFzdE1vZGlmaWVkRGF0ZTogJycsXG4gICAgICAgIHRhZ3M6IFtdLFxuICAgICAgfTtcbiAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2gobmV3IGZyb21BY3Rpb25zLlNhdmVBbm5vdGF0aW9uKGFubm8pKTtcbiAgICB9KTtcbiAgfVxuXG4gIHNhdmVBbm5vdGF0aW9uU2V0KHNlYXJjaFJlY3RhbmdsZXM6IFJlZGFjdFJlY3RhbmdsZVtdKSB7XG4gICAgdGhpcy5zdG9yZS5waXBlKHNlbGVjdChmcm9tU2VsZWN0b3JzLmdldERvY3VtZW50SWRTZXRJZCksIHRha2UoMSkpLnN1YnNjcmliZShhbm9TZXREb2NJZCA9PiB7XG4gICAgICBjb25zdCBhbm5vU2V0ID0gc2VhcmNoUmVjdGFuZ2xlcy5tYXAoeCA9PiB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgaWQ6IHV1aWQoKSxcbiAgICAgICAgICBjb2xvcjogJ0ZGRkYwMCcsXG4gICAgICAgICAgY29tbWVudHM6IFtdLFxuICAgICAgICAgIHBhZ2U6IHgucGFnZSxcbiAgICAgICAgICByZWN0YW5nbGVzOiB4LnJlY3RhbmdsZXMsXG4gICAgICAgICAgdHlwZTogJ2hpZ2hsaWdodCcsXG4gICAgICAgICAgLi4uYW5vU2V0RG9jSWQsXG4gICAgICAgICAgY3JlYXRlZEJ5OiAnJyxcbiAgICAgICAgICBjcmVhdGVkQnlEZXRhaWxzOiB1bmRlZmluZWQsXG4gICAgICAgICAgY3JlYXRlZERhdGU6IG1vbWVudC51dGMoKS50eignRXVyb3BlL0xvbmRvbicpLnRvSVNPU3RyaW5nKCksXG4gICAgICAgICAgbGFzdE1vZGlmaWVkQnk6ICcnLFxuICAgICAgICAgIGxhc3RNb2RpZmllZEJ5RGV0YWlsczogdW5kZWZpbmVkLFxuICAgICAgICAgIGxhc3RNb2RpZmllZERhdGU6ICcnLFxuICAgICAgICAgIHRhZ3M6IFtdLFxuICAgICAgICB9IGFzIEFubm90YXRpb247XG4gICAgICB9KTtcbiAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2gobmV3IGZyb21BY3Rpb25zLlNhdmVBbm5vdGF0aW9uU2V0KHtcbiAgICAgICAgaWQ6IGFub1NldERvY0lkLmFubm90YXRpb25TZXRJZCwgYW5ub3RhdGlvbnM6IGFubm9TZXQsIGRvY3VtZW50SWQ6IGFub1NldERvY0lkLmRvY3VtZW50SWQgfSBhcyBBbm5vdGF0aW9uU2V0KSk7XG4gICAgfSk7XG4gIH1cblxuXG4gIGFwcGx5Um90YXRpb24ocGFnZUhlaWdodCwgcGFnZVdpZHRoLCBvZmZzZXRIZWlnaHQsIG9mZnNldFdpZHRoLCBvZmZzZXRUb3AsIG9mZnNldExlZnQsIHJvdGF0ZSwgem9vbSkge1xuICAgIGNvbnN0IHsgeCwgeSwgd2lkdGgsIGhlaWdodCB9ID0ge1xuICAgICAgeDogKyhvZmZzZXRMZWZ0IC8gem9vbSkudG9GaXhlZCgyKSxcbiAgICAgIHk6ICsob2Zmc2V0VG9wIC8gem9vbSkudG9GaXhlZCgyKSxcbiAgICAgIHdpZHRoOiArKG9mZnNldFdpZHRoIC8gem9vbSkudG9GaXhlZCgyKSxcbiAgICAgIGhlaWdodDogKyhvZmZzZXRIZWlnaHQgLyB6b29tKS50b0ZpeGVkKDIpXG4gICAgfTtcbiAgICBjb25zdCByZWN0YW5nbGUgPSB7IHgsIHksIHdpZHRoLCBoZWlnaHQgfTtcbiAgICBzd2l0Y2ggKHJvdGF0ZSkge1xuICAgICAgY2FzZSA5MDpcbiAgICAgICAgcmVjdGFuZ2xlLndpZHRoID0gaGVpZ2h0O1xuICAgICAgICByZWN0YW5nbGUuaGVpZ2h0ID0gd2lkdGg7XG4gICAgICAgIHJlY3RhbmdsZS54ID0geTtcbiAgICAgICAgcmVjdGFuZ2xlLnkgPSArKHBhZ2VXaWR0aCAvIHpvb20gLSB4IC0gd2lkdGgpLnRvRml4ZWQoMik7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAxODA6XG4gICAgICAgIHJlY3RhbmdsZS54ID0gKyhwYWdlV2lkdGggLyB6b29tIC0geCAtIHdpZHRoKS50b0ZpeGVkKDIpO1xuICAgICAgICByZWN0YW5nbGUueSA9ICsocGFnZUhlaWdodCAvIHpvb20gLSB5IC0gaGVpZ2h0KS50b0ZpeGVkKDIpO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgMjcwOlxuICAgICAgICByZWN0YW5nbGUud2lkdGggPSBoZWlnaHQ7XG4gICAgICAgIHJlY3RhbmdsZS5oZWlnaHQgPSB3aWR0aDtcbiAgICAgICAgcmVjdGFuZ2xlLnggPSArKHBhZ2VIZWlnaHQgLyB6b29tIC0geSAtIGhlaWdodCkudG9GaXhlZCgyKTtcbiAgICAgICAgcmVjdGFuZ2xlLnkgPSB4O1xuICAgICAgICBicmVhaztcbiAgICB9XG4gICAgcmV0dXJuIHJlY3RhbmdsZSBhcyBhbnk7XG4gIH1cblxuICByZXNldEhpZ2hsaWdodCgpIHtcbiAgICB3aW5kb3cuZ2V0U2VsZWN0aW9uKCkucmVtb3ZlQWxsUmFuZ2VzKCk7XG4gICAgdGhpcy50b29sQmFyRXZlbnRzLmhpZ2hsaWdodE1vZGVTdWJqZWN0Lm5leHQoZmFsc2UpO1xuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { Component, Input } from '@angular/core';
|
|
2
|
+
import { select } from '@ngrx/store';
|
|
3
|
+
import * as fromActions from '../../store/actions/annotation.actions';
|
|
4
|
+
import * as fromSelectors from '../../store/selectors/annotation.selectors';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "@ngrx/store";
|
|
7
|
+
import * as i2 from "../comment-set/comment/comment.service";
|
|
8
|
+
import * as i3 from "@angular/common";
|
|
9
|
+
import * as i4 from "./annotation-view/annotation-view.component";
|
|
10
|
+
export class AnnotationSetComponent {
|
|
11
|
+
constructor(store, commentService) {
|
|
12
|
+
this.store = store;
|
|
13
|
+
this.commentService = commentService;
|
|
14
|
+
this.annotations = [];
|
|
15
|
+
}
|
|
16
|
+
ngOnInit() {
|
|
17
|
+
this.selectedAnnotation$ = this.store.pipe(select(fromSelectors.getSelectedAnnotation));
|
|
18
|
+
}
|
|
19
|
+
onAnnotationUpdate(annotation) {
|
|
20
|
+
this.store.dispatch(new fromActions.SaveAnnotation(annotation));
|
|
21
|
+
}
|
|
22
|
+
onAnnotationDelete(annotation) {
|
|
23
|
+
if (annotation.comments.length > 0) {
|
|
24
|
+
this.commentService.updateUnsavedCommentsStatus(annotation, false);
|
|
25
|
+
}
|
|
26
|
+
this.store.dispatch(new fromActions.DeleteAnnotation(annotation.id));
|
|
27
|
+
}
|
|
28
|
+
selectAnnotation(selectedAnnotation) {
|
|
29
|
+
this.store.dispatch(new fromActions.SelectedAnnotation(selectedAnnotation));
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
/** @nocollapse */ AnnotationSetComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: AnnotationSetComponent, deps: [{ token: i1.Store }, { token: i2.CommentService }], target: i0.ɵɵFactoryTarget.Component });
|
|
33
|
+
/** @nocollapse */ AnnotationSetComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: AnnotationSetComponent, selector: "mv-annotation-set", inputs: { page: "page", annotations: "annotations", zoom: "zoom", rotate: "rotate", pageHeight: "pageHeight", pageWidth: "pageWidth" }, ngImport: i0, template: "<ng-container *ngFor=\"let annotation of annotations\">\n <mv-annotation [annotation]=\"annotation\"\n [zoom]=\"zoom\"\n [rotate]=\"rotate\"\n [selectedAnnoId]=\"selectedAnnotation$ | async\"\n [pageHeight]=\"pageHeight\"\n [pageWidth]=\"pageWidth\"\n (update)=\"onAnnotationUpdate($event)\"\n (delete)=\"onAnnotationDelete($event)\"\n (annotationClick)=\"selectAnnotation($event)\">\n </mv-annotation>\n</ng-container>\n", dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: i4.AnnotationViewComponent, selector: "mv-annotation", inputs: ["annotation", "zoom", "rotate", "selectedAnnoId", "pageHeight", "pageWidth"], outputs: ["update", "delete", "annotationClick"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }] });
|
|
34
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: AnnotationSetComponent, decorators: [{
|
|
35
|
+
type: Component,
|
|
36
|
+
args: [{ selector: 'mv-annotation-set', template: "<ng-container *ngFor=\"let annotation of annotations\">\n <mv-annotation [annotation]=\"annotation\"\n [zoom]=\"zoom\"\n [rotate]=\"rotate\"\n [selectedAnnoId]=\"selectedAnnotation$ | async\"\n [pageHeight]=\"pageHeight\"\n [pageWidth]=\"pageWidth\"\n (update)=\"onAnnotationUpdate($event)\"\n (delete)=\"onAnnotationDelete($event)\"\n (annotationClick)=\"selectAnnotation($event)\">\n </mv-annotation>\n</ng-container>\n" }]
|
|
37
|
+
}], ctorParameters: function () { return [{ type: i1.Store }, { type: i2.CommentService }]; }, propDecorators: { page: [{
|
|
38
|
+
type: Input
|
|
39
|
+
}], annotations: [{
|
|
40
|
+
type: Input
|
|
41
|
+
}], zoom: [{
|
|
42
|
+
type: Input
|
|
43
|
+
}], rotate: [{
|
|
44
|
+
type: Input
|
|
45
|
+
}], pageHeight: [{
|
|
46
|
+
type: Input
|
|
47
|
+
}], pageWidth: [{
|
|
48
|
+
type: Input
|
|
49
|
+
}] } });
|
|
50
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ub3RhdGlvbi1zZXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWVkaWEtdmlld2VyL3NyYy9saWIvYW5ub3RhdGlvbnMvYW5ub3RhdGlvbi1zZXQvYW5ub3RhdGlvbi1zZXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWVkaWEtdmlld2VyL3NyYy9saWIvYW5ub3RhdGlvbnMvYW5ub3RhdGlvbi1zZXQvYW5ub3RhdGlvbi1zZXQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFLekQsT0FBTyxFQUFFLE1BQU0sRUFBUyxNQUFNLGFBQWEsQ0FBQztBQUU1QyxPQUFPLEtBQUssV0FBVyxNQUFNLHdDQUF3QyxDQUFDO0FBQ3RFLE9BQU8sS0FBSyxhQUFhLE1BQU0sNENBQTRDLENBQUM7Ozs7OztBQU01RSxNQUFNLE9BQU8sc0JBQXNCO0lBV2pDLFlBQ1UsS0FBMEMsRUFDakMsY0FBOEI7UUFEdkMsVUFBSyxHQUFMLEtBQUssQ0FBcUM7UUFDakMsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBVnhDLGdCQUFXLEdBQWlCLEVBQUUsQ0FBQztJQVdyQyxDQUFDO0lBRUosUUFBUTtRQUNOLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLHFCQUFxQixDQUFDLENBQUMsQ0FBQztJQUMxRixDQUFDO0lBRU0sa0JBQWtCLENBQUMsVUFBc0I7UUFDOUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxXQUFXLENBQUMsY0FBYyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUM7SUFDbEUsQ0FBQztJQUVNLGtCQUFrQixDQUFDLFVBQXNCO1FBQzlDLElBQUksVUFBVSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1lBQ2xDLElBQUksQ0FBQyxjQUFjLENBQUMsMkJBQTJCLENBQUMsVUFBVSxFQUFFLEtBQUssQ0FBQyxDQUFDO1NBQ3BFO1FBQ0QsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxXQUFXLENBQUMsZ0JBQWdCLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDdkUsQ0FBQztJQUVELGdCQUFnQixDQUFDLGtCQUF1QztRQUN0RCxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUFJLFdBQVcsQ0FBQyxrQkFBa0IsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLENBQUM7SUFDOUUsQ0FBQzs7dUlBakNVLHNCQUFzQjsySEFBdEIsc0JBQXNCLGlNQ2RuQyx5aUJBWUE7NEZERWEsc0JBQXNCO2tCQUpsQyxTQUFTOytCQUNFLG1CQUFtQjt5SEFLcEIsSUFBSTtzQkFBWixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFubm90YXRpb24gfSBmcm9tICcuL2Fubm90YXRpb24tdmlldy9hbm5vdGF0aW9uLm1vZGVsJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFNlbGVjdGlvbkFubm90YXRpb24gfSBmcm9tICcuLi9tb2RlbHMvZXZlbnQtc2VsZWN0Lm1vZGVsJztcbmltcG9ydCB7IENvbW1lbnRTZXJ2aWNlIH0gZnJvbSAnLi4vY29tbWVudC1zZXQvY29tbWVudC9jb21tZW50LnNlcnZpY2UnO1xuaW1wb3J0IHsgc2VsZWN0LCBTdG9yZSB9IGZyb20gJ0BuZ3J4L3N0b3JlJztcbmltcG9ydCAqIGFzIGZyb21TdG9yZSBmcm9tICcuLi8uLi9zdG9yZS9yZWR1Y2Vycy9yZWR1Y2Vycyc7XG5pbXBvcnQgKiBhcyBmcm9tQWN0aW9ucyBmcm9tICcuLi8uLi9zdG9yZS9hY3Rpb25zL2Fubm90YXRpb24uYWN0aW9ucyc7XG5pbXBvcnQgKiBhcyBmcm9tU2VsZWN0b3JzIGZyb20gJy4uLy4uL3N0b3JlL3NlbGVjdG9ycy9hbm5vdGF0aW9uLnNlbGVjdG9ycyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ212LWFubm90YXRpb24tc2V0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2Fubm90YXRpb24tc2V0LmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBBbm5vdGF0aW9uU2V0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcblxuICBASW5wdXQoKSBwYWdlOiBudW1iZXI7XG4gIEBJbnB1dCgpIGFubm90YXRpb25zOiBBbm5vdGF0aW9uW10gPSBbXTtcbiAgQElucHV0KCkgem9vbTogbnVtYmVyO1xuICBASW5wdXQoKSByb3RhdGU6IG51bWJlcjtcbiAgQElucHV0KCkgcGFnZUhlaWdodDogbnVtYmVyO1xuICBASW5wdXQoKSBwYWdlV2lkdGg6IG51bWJlcjtcblxuICBzZWxlY3RlZEFubm90YXRpb24kOiBPYnNlcnZhYmxlPFNlbGVjdGlvbkFubm90YXRpb24+O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgc3RvcmU6IFN0b3JlPGZyb21TdG9yZS5Bbm5vdGF0aW9uU2V0U3RhdGU+LFxuICAgIHByaXZhdGUgcmVhZG9ubHkgY29tbWVudFNlcnZpY2U6IENvbW1lbnRTZXJ2aWNlXG4gICkge31cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnNlbGVjdGVkQW5ub3RhdGlvbiQgPSB0aGlzLnN0b3JlLnBpcGUoc2VsZWN0KGZyb21TZWxlY3RvcnMuZ2V0U2VsZWN0ZWRBbm5vdGF0aW9uKSk7XG4gIH1cblxuICBwdWJsaWMgb25Bbm5vdGF0aW9uVXBkYXRlKGFubm90YXRpb246IEFubm90YXRpb24pIHtcbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKG5ldyBmcm9tQWN0aW9ucy5TYXZlQW5ub3RhdGlvbihhbm5vdGF0aW9uKSk7XG4gIH1cblxuICBwdWJsaWMgb25Bbm5vdGF0aW9uRGVsZXRlKGFubm90YXRpb246IEFubm90YXRpb24pIHtcbiAgICBpZiAoYW5ub3RhdGlvbi5jb21tZW50cy5sZW5ndGggPiAwKSB7XG4gICAgICB0aGlzLmNvbW1lbnRTZXJ2aWNlLnVwZGF0ZVVuc2F2ZWRDb21tZW50c1N0YXR1cyhhbm5vdGF0aW9uLCBmYWxzZSk7XG4gICAgfVxuICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2gobmV3IGZyb21BY3Rpb25zLkRlbGV0ZUFubm90YXRpb24oYW5ub3RhdGlvbi5pZCkpO1xuICB9XG5cbiAgc2VsZWN0QW5ub3RhdGlvbihzZWxlY3RlZEFubm90YXRpb246IFNlbGVjdGlvbkFubm90YXRpb24pIHtcbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKG5ldyBmcm9tQWN0aW9ucy5TZWxlY3RlZEFubm90YXRpb24oc2VsZWN0ZWRBbm5vdGF0aW9uKSk7XG4gIH1cbn1cbiIsIjxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGFubm90YXRpb24gb2YgYW5ub3RhdGlvbnNcIj5cbiAgPG12LWFubm90YXRpb24gW2Fubm90YXRpb25dPVwiYW5ub3RhdGlvblwiXG4gICAgICAgICAgICAgICAgIFt6b29tXT1cInpvb21cIlxuICAgICAgICAgICAgICAgICBbcm90YXRlXT1cInJvdGF0ZVwiXG4gICAgICAgICAgICAgICAgIFtzZWxlY3RlZEFubm9JZF09XCJzZWxlY3RlZEFubm90YXRpb24kIHwgYXN5bmNcIlxuICAgICAgICAgICAgICAgICBbcGFnZUhlaWdodF09XCJwYWdlSGVpZ2h0XCJcbiAgICAgICAgICAgICAgICAgW3BhZ2VXaWR0aF09XCJwYWdlV2lkdGhcIlxuICAgICAgICAgICAgICAgICAodXBkYXRlKT1cIm9uQW5ub3RhdGlvblVwZGF0ZSgkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAgKGRlbGV0ZSk9XCJvbkFubm90YXRpb25EZWxldGUoJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgIChhbm5vdGF0aW9uQ2xpY2spPVwic2VsZWN0QW5ub3RhdGlvbigkZXZlbnQpXCI+XG4gIDwvbXYtYW5ub3RhdGlvbj5cbjwvbmctY29udGFpbmVyPlxuIl19
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
import { Component, EventEmitter, Input, Output, ViewChild } from '@angular/core';
|
|
2
|
+
import { v4 as uuid } from 'uuid';
|
|
3
|
+
import moment from 'moment-timezone';
|
|
4
|
+
import * as fromActions from '../../../store/actions/annotation.actions';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "../../../toolbar/toolbar-event.service";
|
|
7
|
+
import * as i2 from "@ngrx/store";
|
|
8
|
+
import * as i3 from "@angular/common";
|
|
9
|
+
import * as i4 from "./rectangle/rectangle.component";
|
|
10
|
+
import * as i5 from "../ctx-toolbar/ctx-toolbar.component";
|
|
11
|
+
export class AnnotationViewComponent {
|
|
12
|
+
set annotation(value) {
|
|
13
|
+
this.anno = { ...value };
|
|
14
|
+
}
|
|
15
|
+
set selectedAnnoId(selectedId) {
|
|
16
|
+
if (selectedId) {
|
|
17
|
+
const id = this.anno.id || this.anno.redactionId; // todo make it unique
|
|
18
|
+
this.selected = selectedId.annotationId ? (selectedId.annotationId === id) : false;
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
constructor(toolbarEvents, store) {
|
|
22
|
+
this.toolbarEvents = toolbarEvents;
|
|
23
|
+
this.store = store;
|
|
24
|
+
this.update = new EventEmitter();
|
|
25
|
+
this.delete = new EventEmitter();
|
|
26
|
+
this.annotationClick = new EventEmitter();
|
|
27
|
+
}
|
|
28
|
+
onSelect() {
|
|
29
|
+
const annotationId = this.anno.id || this.anno.redactionId;
|
|
30
|
+
this.annotationClick.emit({ annotationId, editable: false, selected: true });
|
|
31
|
+
}
|
|
32
|
+
onRectangleUpdate(rectangle) {
|
|
33
|
+
const annotation = { ...this.anno };
|
|
34
|
+
annotation.rectangles = annotation.rectangles.filter(r => r.id !== rectangle.id);
|
|
35
|
+
annotation.rectangles.push(rectangle);
|
|
36
|
+
this.update.emit(annotation);
|
|
37
|
+
}
|
|
38
|
+
deleteHighlight() {
|
|
39
|
+
this.delete.emit(this.anno);
|
|
40
|
+
}
|
|
41
|
+
addOrEditComment() {
|
|
42
|
+
if (this.anno.comments.length === 0) {
|
|
43
|
+
const comment = {
|
|
44
|
+
annotationId: this.anno.id,
|
|
45
|
+
content: '',
|
|
46
|
+
createdBy: this.anno.createdBy,
|
|
47
|
+
createdByDetails: undefined,
|
|
48
|
+
createdDate: moment.utc().tz('Europe/London').toISOString(),
|
|
49
|
+
id: uuid(),
|
|
50
|
+
lastModifiedBy: '',
|
|
51
|
+
lastModifiedByDetails: undefined,
|
|
52
|
+
lastModifiedDate: '',
|
|
53
|
+
tags: [],
|
|
54
|
+
page: null,
|
|
55
|
+
pages: {},
|
|
56
|
+
pageHeight: null,
|
|
57
|
+
selected: false,
|
|
58
|
+
editable: false
|
|
59
|
+
};
|
|
60
|
+
this.store.dispatch(new fromActions.AddOrEditComment(comment));
|
|
61
|
+
}
|
|
62
|
+
this.selected = true;
|
|
63
|
+
this.annotationClick.emit({ annotationId: this.anno.id, editable: true, selected: true });
|
|
64
|
+
this.toolbarEvents.toggleCommentsPanel(true);
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
/** @nocollapse */ AnnotationViewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: AnnotationViewComponent, deps: [{ token: i1.ToolbarEventService }, { token: i2.Store }], target: i0.ɵɵFactoryTarget.Component });
|
|
68
|
+
/** @nocollapse */ AnnotationViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: AnnotationViewComponent, selector: "mv-annotation", inputs: { annotation: "annotation", zoom: "zoom", rotate: "rotate", selectedAnnoId: "selectedAnnoId", pageHeight: "pageHeight", pageWidth: "pageWidth" }, outputs: { update: "update", delete: "delete", annotationClick: "annotationClick" }, viewQueries: [{ propertyName: "container", first: true, predicate: ["container"], descendants: true }], ngImport: i0, template: "<div #container [tabindex]=\"anno.id\">\n <mv-ctx-toolbar *ngIf=\"selected\"\n [canDelete]=\"true\" [canComment]=\"true\"\n [rectangles]=\"anno.rectangles\"\n [zoom]=\"zoom\"\n [rotate]=\"rotate\"\n [pageHeight]=\"pageHeight\"\n [pageWidth]=\"pageWidth\"\n (deleteHighlightEvent)=\"deleteHighlight()\"\n (addOrEditCommentEvent)=\"addOrEditComment()\">\n </mv-ctx-toolbar>\n <ng-container *ngFor=\"let rectangle of anno.rectangles\">\n <mv-anno-rectangle\n (selectEvent)=\"onSelect()\"\n (updateEvent)=\"onRectangleUpdate($event)\"\n [selected]=\"selected\"\n [zoom]=\"zoom\"\n [rotate]=\"rotate\"\n [pageHeight]=\"pageHeight\"\n [pageWidth]=\"pageWidth\"\n [editable]=\"anno.rectangles.length <= 1\"\n [annoRect]=\"rectangle\"\n [color]=\"anno.color\">\n </mv-anno-rectangle>\n </ng-container>\n</div>\n", dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.RectangleComponent, selector: "mv-anno-rectangle", inputs: ["color", "zoom", "rotate", "editable", "pageHeight", "pageWidth", "annoRect", "selected"], outputs: ["selectEvent", "updateEvent"] }, { kind: "component", type: i5.CtxToolbarComponent, selector: "mv-ctx-toolbar", inputs: ["zoom", "rotate", "pageHeight", "pageWidth", "canHighlight", "canBookmark", "canComment", "canDelete", "rectangles"], outputs: ["createHighlightEvent", "deleteHighlightEvent", "addOrEditCommentEvent", "createBookmarkEvent"] }] });
|
|
69
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: AnnotationViewComponent, decorators: [{
|
|
70
|
+
type: Component,
|
|
71
|
+
args: [{ selector: 'mv-annotation', template: "<div #container [tabindex]=\"anno.id\">\n <mv-ctx-toolbar *ngIf=\"selected\"\n [canDelete]=\"true\" [canComment]=\"true\"\n [rectangles]=\"anno.rectangles\"\n [zoom]=\"zoom\"\n [rotate]=\"rotate\"\n [pageHeight]=\"pageHeight\"\n [pageWidth]=\"pageWidth\"\n (deleteHighlightEvent)=\"deleteHighlight()\"\n (addOrEditCommentEvent)=\"addOrEditComment()\">\n </mv-ctx-toolbar>\n <ng-container *ngFor=\"let rectangle of anno.rectangles\">\n <mv-anno-rectangle\n (selectEvent)=\"onSelect()\"\n (updateEvent)=\"onRectangleUpdate($event)\"\n [selected]=\"selected\"\n [zoom]=\"zoom\"\n [rotate]=\"rotate\"\n [pageHeight]=\"pageHeight\"\n [pageWidth]=\"pageWidth\"\n [editable]=\"anno.rectangles.length <= 1\"\n [annoRect]=\"rectangle\"\n [color]=\"anno.color\">\n </mv-anno-rectangle>\n </ng-container>\n</div>\n" }]
|
|
72
|
+
}], ctorParameters: function () { return [{ type: i1.ToolbarEventService }, { type: i2.Store }]; }, propDecorators: { annotation: [{
|
|
73
|
+
type: Input
|
|
74
|
+
}], zoom: [{
|
|
75
|
+
type: Input
|
|
76
|
+
}], rotate: [{
|
|
77
|
+
type: Input
|
|
78
|
+
}], selectedAnnoId: [{
|
|
79
|
+
type: Input
|
|
80
|
+
}], pageHeight: [{
|
|
81
|
+
type: Input
|
|
82
|
+
}], pageWidth: [{
|
|
83
|
+
type: Input
|
|
84
|
+
}], update: [{
|
|
85
|
+
type: Output
|
|
86
|
+
}], delete: [{
|
|
87
|
+
type: Output
|
|
88
|
+
}], annotationClick: [{
|
|
89
|
+
type: Output
|
|
90
|
+
}], container: [{
|
|
91
|
+
type: ViewChild,
|
|
92
|
+
args: ['container', { static: false }]
|
|
93
|
+
}] } });
|
|
94
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ub3RhdGlvbi12aWV3LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21lZGlhLXZpZXdlci9zcmMvbGliL2Fubm90YXRpb25zL2Fubm90YXRpb24tc2V0L2Fubm90YXRpb24tdmlldy9hbm5vdGF0aW9uLXZpZXcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWVkaWEtdmlld2VyL3NyYy9saWIvYW5ub3RhdGlvbnMvYW5ub3RhdGlvbi1zZXQvYW5ub3RhdGlvbi12aWV3L2Fubm90YXRpb24tdmlldy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBYyxNQUFNLGVBQWUsQ0FBQztBQUM5RixPQUFPLEVBQUUsRUFBRSxJQUFJLElBQUksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUdsQyxPQUFPLE1BQU0sTUFBTSxpQkFBaUIsQ0FBQztBQUdyQyxPQUFPLEtBQUssV0FBVyxNQUFNLDJDQUEyQyxDQUFDOzs7Ozs7O0FBU3pFLE1BQU0sT0FBTyx1QkFBdUI7SUFFbEMsSUFBYSxVQUFVLENBQUMsS0FBSztRQUMzQixJQUFJLENBQUMsSUFBSSxHQUFHLEVBQUUsR0FBRyxLQUFLLEVBQUUsQ0FBQztJQUMzQixDQUFDO0lBS0QsSUFBYSxjQUFjLENBQUMsVUFBb0M7UUFDOUQsSUFBSSxVQUFVLEVBQUU7WUFDZCxNQUFNLEVBQUUsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLHNCQUFzQjtZQUN4RSxJQUFJLENBQUMsUUFBUSxHQUFHLFVBQVUsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLFlBQVksS0FBSyxFQUFFLENB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QUs7Z0JBS0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDTyxjQUFjO3NCQUExQixLQUFLO2dCQU1HLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDSSxNQUFNO3NCQUFmLE1BQU07Z0JBQ0csTUFBTTtzQkFBZixNQUFNO2dCQUNHLGVBQWU7c0JBQXhCLE1BQU07Z0JBRW9DLFNBQVM7c0JBQW5ELFNBQVM7dUJBQUMsV0FBVyxFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0LCBWaWV3Q2hpbGQsIEVsZW1lbnRSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHY0IGFzIHV1aWQgfSBmcm9tICd1dWlkJztcbmltcG9ydCB7IEFubm90YXRpb24gfSBmcm9tICcuL2Fubm90YXRpb24ubW9kZWwnO1xuaW1wb3J0IHsgUmVjdGFuZ2xlIH0gZnJvbSAnLi9yZWN0YW5nbGUvcmVjdGFuZ2xlLm1vZGVsJztcbmltcG9ydCBtb21lbnQgZnJvbSAnbW9tZW50LXRpbWV6b25lJztcbmltcG9ydCB7IFN0b3JlIH0gZnJvbSAnQG5ncngvc3RvcmUnO1xuaW1wb3J0ICogYXMgZnJvbVN0b3JlIGZyb20gJy4uLy4uLy4uL3N0b3JlL3JlZHVjZXJzL3JlZHVjZXJzJztcbmltcG9ydCAqIGFzIGZyb21BY3Rpb25zIGZyb20gJy4uLy4uLy4uL3N0b3JlL2FjdGlvbnMvYW5ub3RhdGlvbi5hY3Rpb25zJztcbmltcG9ydCB7IFNlbGVjdGlvbkFubm90YXRpb24gfSBmcm9tICcuLi8uLi9tb2RlbHMvZXZlbnQtc2VsZWN0Lm1vZGVsJztcbmltcG9ydCB7IFRvb2xiYXJFdmVudFNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi90b29sYmFyL3Rvb2xiYXItZXZlbnQuc2VydmljZSc7XG5pbXBvcnQgeyBDb21tZW50IH0gZnJvbSAnLi4vLi4vY29tbWVudC1zZXQvY29tbWVudC9jb21tZW50Lm1vZGVsJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbXYtYW5ub3RhdGlvbicsXG4gIHRlbXBsYXRlVXJsOiAnLi9hbm5vdGF0aW9uLXZpZXcuY29tcG9uZW50Lmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIEFubm90YXRpb25WaWV3Q29tcG9uZW50IHsgIC8vIHRvZG8gcmVuYW1lIHRoaXMgdG8gc2VsZWN0aW9uIHZldyBjXG5cbiAgQElucHV0KCkgc2V0IGFubm90YXRpb24odmFsdWUpIHtcbiAgICB0aGlzLmFubm8gPSB7IC4uLnZhbHVlIH07XG4gIH1cbiAgYW5ubzogQW5ub3RhdGlvbjtcbiAgc2VsZWN0ZWQ6IGJvb2xlYW47XG4gIEBJbnB1dCgpIHpvb206IG51bWJlcjtcbiAgQElucHV0KCkgcm90YXRlOiBudW1iZXI7XG4gIEBJbnB1dCgpIHNldCBzZWxlY3RlZEFubm9JZChzZWxlY3RlZElkOiB7IGFubm90YXRpb25JZDogc3RyaW5nIH0pIHtcbiAgICBpZiAoc2VsZWN0ZWRJZCkge1xuICAgICAgY29uc3QgaWQgPSB0aGlzLmFubm8uaWQgfHwgdGhpcy5hbm5vLnJlZGFjdGlvbklkOyAvLyB0b2RvIG1ha2UgaXQgdW5pcXVlXG4gICAgICB0aGlzLnNlbGVjdGVkID0gc2VsZWN0ZWRJZC5hbm5vdGF0aW9uSWQgPyAoc2VsZWN0ZWRJZC5hbm5vdGF0aW9uSWQgPT09IGlkKSA6IGZhbHNlO1xuICAgIH1cbiAgfVxuICBASW5wdXQoKSBwYWdlSGVpZ2h0OiBudW1iZXI7XG4gIEBJbnB1dCgpIHBhZ2VXaWR0aDogbnVtYmVyO1xuICBAT3V0cHV0KCkgdXBkYXRlID0gbmV3IEV2ZW50RW1pdHRlcjxBbm5vdGF0aW9uPigpO1xuICBAT3V0cHV0KCkgZGVsZXRlID0gbmV3IEV2ZW50RW1pdHRlcjxBbm5vdGF0aW9uPigpO1xuICBAT3V0cHV0KCkgYW5ub3RhdGlvbkNsaWNrID0gbmV3IEV2ZW50RW1pdHRlcjxTZWxlY3Rpb25Bbm5vdGF0aW9uPigpO1xuXG4gIEBWaWV3Q2hpbGQoJ2NvbnRhaW5lcicsIHsgc3RhdGljOiBmYWxzZSB9KSBjb250YWluZXI6IEVsZW1lbnRSZWY7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSB0b29sYmFyRXZlbnRzOiBUb29sYmFyRXZlbnRTZXJ2aWNlLFxuICAgIHByaXZhdGUgc3RvcmU6IFN0b3JlPGZyb21TdG9yZS5Bbm5vdGF0aW9uU2V0U3RhdGU+XG4gICkgeyB9XG5cbiAgcHVibGljIG9uU2VsZWN0KCkge1xuICAgIGNvbnN0IGFubm90YXRpb25JZCA9IHRoaXMuYW5uby5pZCB8fCB0aGlzLmFubm8ucmVkYWN0aW9uSWQ7XG4gICAgdGhpcy5hbm5vdGF0aW9uQ2xpY2suZW1pdCh7IGFubm90YXRpb25JZCwgZWRpdGFibGU6IGZhbHNlLCBzZWxlY3RlZDogdHJ1ZSB9KTtcbiAgfVxuXG4gIHB1YmxpYyBvblJlY3RhbmdsZVVwZGF0ZShyZWN0YW5nbGU6IFJlY3RhbmdsZSkge1xuICAgIGNvbnN0IGFubm90YXRpb24gPSB7IC4uLnRoaXMuYW5ubyB9O1xuICAgIGFubm90YXRpb24ucmVjdGFuZ2xlcyA9IGFubm90YXRpb24ucmVjdGFuZ2xlcy5maWx0ZXIociA9PiByLmlkICE9PSByZWN0YW5nbGUuaWQpO1xuICAgIGFubm90YXRpb24ucmVjdGFuZ2xlcy5wdXNoKHJlY3RhbmdsZSk7XG4gICAgdGhpcy51cGRhdGUuZW1pdChhbm5vdGF0aW9uKTtcbiAgfVxuXG4gIHB1YmxpYyBkZWxldGVIaWdobGlnaHQoKSB7XG4gICAgdGhpcy5kZWxldGUuZW1pdCh0aGlzLmFubm8pO1xuICB9XG5cbiAgcHVibGljIGFkZE9yRWRpdENvbW1lbnQoKSB7XG4gICAgaWYgKHRoaXMuYW5uby5jb21tZW50cy5sZW5ndGggPT09IDApIHtcbiAgICAgIGNvbnN0IGNvbW1lbnQ6IENvbW1lbnQgPSB7XG4gICAgICAgIGFubm90YXRpb25JZDogdGhpcy5hbm5vLmlkLFxuICAgICAgICBjb250ZW50OiAnJyxcbiAgICAgICAgY3JlYXRlZEJ5OiB0aGlzLmFubm8uY3JlYXRlZEJ5LFxuICAgICAgICBjcmVhdGVkQnlEZXRhaWxzOiB1bmRlZmluZWQsXG4gICAgICAgIGNyZWF0ZWREYXRlOiBtb21lbnQudXRjKCkudHooJ0V1cm9wZS9Mb25kb24nKS50b0lTT1N0cmluZygpLFxuICAgICAgICBpZDogdXVpZCgpLFxuICAgICAgICBsYXN0TW9kaWZpZWRCeTogJycsXG4gICAgICAgIGxhc3RNb2RpZmllZEJ5RGV0YWlsczogdW5kZWZpbmVkLFxuICAgICAgICBsYXN0TW9kaWZpZWREYXRlOiAnJyxcbiAgICAgICAgdGFnczogW10sXG4gICAgICAgIHBhZ2U6IG51bGwsXG4gICAgICAgIHBhZ2VzOiB7fSxcbiAgICAgICAgcGFnZUhlaWdodDogbnVsbCxcbiAgICAgICAgc2VsZWN0ZWQ6IGZhbHNlLFxuICAgICAgICBlZGl0YWJsZTogZmFsc2VcbiAgICAgIH07XG4gICAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKG5ldyBmcm9tQWN0aW9ucy5BZGRPckVkaXRDb21tZW50KGNvbW1lbnQpKTtcblxuICAgIH1cbiAgICB0aGlzLnNlbGVjdGVkID0gdHJ1ZTtcbiAgICB0aGlzLmFubm90YXRpb25DbGljay5lbWl0KHsgYW5ub3RhdGlvbklkOiB0aGlzLmFubm8uaWQsIGVkaXRhYmxlOiB0cnVlLCBzZWxlY3RlZDogdHJ1ZSB9KTtcbiAgICB0aGlzLnRvb2xiYXJFdmVudHMudG9nZ2xlQ29tbWVudHNQYW5lbCh0cnVlKTtcbiAgfVxufVxuIiwiPGRpdiAjY29udGFpbmVyIFt0YWJpbmRleF09XCJhbm5vLmlkXCI+XG4gIDxtdi1jdHgtdG9vbGJhciAqbmdJZj1cInNlbGVjdGVkXCJcbiAgICAgICAgICAgICAgICAgIFtjYW5EZWxldGVdPVwidHJ1ZVwiIFtjYW5Db21tZW50XT1cInRydWVcIlxuICAgICAgICAgICAgICAgICAgW3JlY3RhbmdsZXNdPVwiYW5uby5yZWN0YW5nbGVzXCJcbiAgICAgICAgICAgICAgICAgIFt6b29tXT1cInpvb21cIlxuICAgICAgICAgICAgICAgICAgW3JvdGF0ZV09XCJyb3RhdGVcIlxuICAgICAgICAgICAgICAgICAgW3BhZ2VIZWlnaHRdPVwicGFnZUhlaWdodFwiXG4gICAgICAgICAgICAgICAgICBbcGFnZVdpZHRoXT1cInBhZ2VXaWR0aFwiXG4gICAgICAgICAgICAgICAgICAoZGVsZXRlSGlnaGxpZ2h0RXZlbnQpPVwiZGVsZXRlSGlnaGxpZ2h0KClcIlxuICAgICAgICAgICAgICAgICAgKGFkZE9yRWRpdENvbW1lbnRFdmVudCk9XCJhZGRPckVkaXRDb21tZW50KClcIj5cbiAgPC9tdi1jdHgtdG9vbGJhcj5cbiAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgcmVjdGFuZ2xlIG9mIGFubm8ucmVjdGFuZ2xlc1wiPlxuICAgIDxtdi1hbm5vLXJlY3RhbmdsZVxuICAgICAgKHNlbGVjdEV2ZW50KT1cIm9uU2VsZWN0KClcIlxuICAgICAgKHVwZGF0ZUV2ZW50KT1cIm9uUmVjdGFuZ2xlVXBkYXRlKCRldmVudClcIlxuICAgICAgW3NlbGVjdGVkXT1cInNlbGVjdGVkXCJcbiAgICAgIFt6b29tXT1cInpvb21cIlxuICAgICAgW3JvdGF0ZV09XCJyb3RhdGVcIlxuICAgICAgW3BhZ2VIZWlnaHRdPVwicGFnZUhlaWdodFwiXG4gICAgICBbcGFnZVdpZHRoXT1cInBhZ2VXaWR0aFwiXG4gICAgICBbZWRpdGFibGVdPVwiYW5uby5yZWN0YW5nbGVzLmxlbmd0aCA8PSAxXCJcbiAgICAgIFthbm5vUmVjdF09XCJyZWN0YW5nbGVcIlxuICAgICAgW2NvbG9yXT1cImFubm8uY29sb3JcIj5cbiAgICA8L212LWFubm8tcmVjdGFuZ2xlPlxuICA8L25nLWNvbnRhaW5lcj5cbjwvZGl2PlxuIl19
|