@hmcts/media-viewer 3.1.2 → 4.0.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.
Files changed (222) hide show
  1. package/esm2022/lib/annotations/annotation-set/annotation-create/box-highlight-create/box-highlight-create.component.mjs +116 -0
  2. package/esm2022/lib/annotations/annotation-set/annotation-create/highlight-create/highlight-create.directive.mjs +109 -0
  3. package/{esm2020 → esm2022}/lib/annotations/annotation-set/annotation-create/highlight-create/highlight-create.service.mjs +5 -5
  4. package/esm2022/lib/annotations/annotation-set/annotation-set.component.mjs +50 -0
  5. package/esm2022/lib/annotations/annotation-set/annotation-view/annotation-view.component.mjs +94 -0
  6. package/esm2022/lib/annotations/annotation-set/annotation-view/rectangle/rectangle.component.mjs +116 -0
  7. package/esm2022/lib/annotations/annotation-set/ctx-toolbar/ctx-toolbar.component.mjs +118 -0
  8. package/esm2022/lib/annotations/annotation-set/metadata-layer/metadata-layer.component.mjs +86 -0
  9. package/{esm2020 → esm2022}/lib/annotations/annotations.module.mjs +61 -61
  10. package/esm2022/lib/annotations/comment-set/comment/comment.component.mjs +177 -0
  11. package/esm2022/lib/annotations/comment-set/comment/comment.service.mjs +50 -0
  12. package/esm2022/lib/annotations/comment-set/comment/text-highlight/text-highlight.directive.mjs +47 -0
  13. package/{esm2020 → esm2022}/lib/annotations/comment-set/comment/textarea-auto-expand/textarea-auto-expand.directive.mjs +5 -5
  14. package/esm2022/lib/annotations/comment-set/comment-navigate/comments-navigate.component.mjs +91 -0
  15. package/{esm2020 → esm2022}/lib/annotations/comment-set/comment-set-header/comment-filter/comment-filter.component.mjs +5 -5
  16. package/esm2022/lib/annotations/comment-set/comment-set-header/comment-search/comment-search.component.mjs +54 -0
  17. package/esm2022/lib/annotations/comment-set/comment-set-header/comment-set-header.component.mjs +68 -0
  18. package/esm2022/lib/annotations/comment-set/comment-set-render.service.mjs +54 -0
  19. package/esm2022/lib/annotations/comment-set/comment-set.component.mjs +123 -0
  20. package/esm2022/lib/annotations/comments-summary/comments-summary.component.mjs +120 -0
  21. package/{esm2020 → esm2022}/lib/annotations/pipes/date/date.pipe.mjs +4 -4
  22. package/esm2022/lib/annotations/pipes/filter/filter.pipe.mjs +32 -0
  23. package/{esm2020 → esm2022}/lib/annotations/pipes/unsnake/unsnake.pipe.mjs +4 -4
  24. package/{esm2020 → esm2022}/lib/annotations/services/annotation-api/annotation-api.service.mjs +5 -5
  25. package/{esm2020 → esm2022}/lib/annotations/services/bookmarks-api/bookmarks-api.service.mjs +5 -5
  26. package/{esm2020 → esm2022}/lib/annotations/services/tags/tags.services.mjs +5 -5
  27. package/esm2022/lib/annotations/tags/tags.component.mjs +53 -0
  28. package/{esm2020 → esm2022}/lib/bookmark/components/bookmark-icons.component.mjs +5 -5
  29. package/{esm2020 → esm2022}/lib/icp/confirm-exit/confirm-action-dialog.component.mjs +5 -5
  30. package/esm2022/lib/icp/icp-follower.service.mjs +60 -0
  31. package/esm2022/lib/icp/icp-presenter.service.mjs +55 -0
  32. package/{esm2020 → esm2022}/lib/icp/icp-session-api.service.mjs +5 -5
  33. package/esm2022/lib/icp/icp-update.service.mjs +57 -0
  34. package/esm2022/lib/icp/icp.service.mjs +93 -0
  35. package/{esm2020 → esm2022}/lib/icp/participants-list/participants-list.component.mjs +5 -5
  36. package/esm2022/lib/icp/socket.service.mjs +118 -0
  37. package/esm2022/lib/media-viewer.component.mjs +244 -0
  38. package/{esm2020 → esm2022}/lib/media-viewer.module.mjs +55 -55
  39. package/{esm2020 → esm2022}/lib/print.service.mjs +4 -4
  40. package/esm2022/lib/redaction/components/redaction.component.mjs +91 -0
  41. package/{esm2020 → esm2022}/lib/redaction/services/redaction-api.service.mjs +5 -5
  42. package/{esm2020 → esm2022}/lib/shared/gov-uk-date/gov-uk-date.component.mjs +4 -4
  43. package/{esm2020 → esm2022}/lib/shared/gov-uk-error-message/gov-uk-error-message.component.mjs +7 -7
  44. package/{esm2020 → esm2022}/lib/shared/gov-uk-fieldset/gov-uk-fieldset.component.mjs +6 -6
  45. package/{esm2020 → esm2022}/lib/shared/gov-uk-label/gov-uk-label.component.mjs +7 -7
  46. package/{esm2020 → esm2022}/lib/shared/shared.module.mjs +19 -19
  47. package/esm2022/lib/shared/util/helpers/html-templates.helper.mjs +18 -0
  48. package/{esm2020 → esm2022}/lib/shared/util/services/number.helper.service.mjs +5 -5
  49. package/esm2022/lib/store/bookmarks-store-utils.mjs +49 -0
  50. package/esm2022/lib/store/effects/annotation.effects.mjs +51 -0
  51. package/{esm2020 → esm2022}/lib/store/effects/bookmarks.effects.mjs +5 -5
  52. package/{esm2020 → esm2022}/lib/store/effects/document.effects.mjs +5 -5
  53. package/{esm2020 → esm2022}/lib/store/effects/icp.effects.mjs +5 -5
  54. package/{esm2020 → esm2022}/lib/store/effects/redaction.effects.mjs +5 -5
  55. package/esm2022/lib/store/reducers/annotations.reducer.mjs +208 -0
  56. package/esm2022/lib/store/reducers/bookmarks.reducer.mjs +116 -0
  57. package/esm2022/lib/store/reducers/document.reducer.mjs +135 -0
  58. package/esm2022/lib/store/reducers/icp.reducer.mjs +56 -0
  59. package/esm2022/lib/store/reducers/redaction.reducer.mjs +116 -0
  60. package/esm2022/lib/store/reducers/tags.reducer.mjs +93 -0
  61. package/esm2022/lib/store/selectors/annotation.selectors.mjs +81 -0
  62. package/{esm2020 → esm2022}/lib/store/selectors/bookmark.selectors.mjs +1 -1
  63. package/{esm2020 → esm2022}/lib/store/selectors/redaction.selectors.mjs +1 -1
  64. package/esm2022/lib/store/store-utils.mjs +131 -0
  65. package/esm2022/lib/toolbar/highlight-toolbar/highlight-toolbar.component.mjs +44 -0
  66. package/{esm2020 → esm2022}/lib/toolbar/icp-event.service.mjs +1 -1
  67. package/{esm2020 → esm2022}/lib/toolbar/icp-toolbar/icp-toolbar.component.mjs +5 -5
  68. package/esm2022/lib/toolbar/main-toolbar/main-toolbar.component.mjs +189 -0
  69. package/esm2022/lib/toolbar/redaction-search-bar/redaction-search-bar.component.mjs +236 -0
  70. package/esm2022/lib/toolbar/redaction-toolbar/redaction-toolbar.component.mjs +68 -0
  71. package/esm2022/lib/toolbar/search-bar/search-bar.component.mjs +109 -0
  72. package/esm2022/lib/toolbar/toolbar-button-visibility.service.mjs +94 -0
  73. package/esm2022/lib/toolbar/toolbar-event.service.mjs +178 -0
  74. package/{esm2020 → esm2022}/lib/toolbar/toolbar.module.mjs +25 -25
  75. package/esm2022/lib/viewers/convertible-content-viewer/convertible-content-viewer.component.mjs +82 -0
  76. package/{esm2020 → esm2022}/lib/viewers/convertible-content-viewer/document-conversion-api.service.mjs +5 -5
  77. package/esm2022/lib/viewers/grab-n-drag.directive.mjs +57 -0
  78. package/esm2022/lib/viewers/image-viewer/image-viewer.component.mjs +166 -0
  79. package/esm2022/lib/viewers/multimedia-player/multimedia-player.component.mjs +59 -0
  80. package/esm2022/lib/viewers/pdf-viewer/pdf-js/pdf-js-wrapper.mjs +209 -0
  81. package/{esm2020 → esm2022}/lib/viewers/pdf-viewer/pdf-js/pdf-js-wrapper.provider.mjs +5 -5
  82. package/esm2022/lib/viewers/pdf-viewer/pdf-viewer.component.mjs +236 -0
  83. package/esm2022/lib/viewers/pdf-viewer/side-bar/bookmarks/bookmarks.component.mjs +352 -0
  84. package/esm2022/lib/viewers/pdf-viewer/side-bar/outline-item/outline-item.component.mjs +49 -0
  85. package/{esm2020 → esm2022}/lib/viewers/pdf-viewer/side-bar/side-bar.component.mjs +5 -5
  86. package/{esm2020 → esm2022}/lib/viewers/rotation-persist/rotation-api.service.mjs +5 -5
  87. package/esm2022/lib/viewers/rotation-persist/rotation-persist.directive.mjs +61 -0
  88. package/esm2022/lib/viewers/unsupported-viewer/unsupported-viewer.component.mjs +49 -0
  89. package/{esm2020 → esm2022}/lib/viewers/viewer-event.service.mjs +5 -5
  90. package/{esm2020 → esm2022}/lib/viewers/viewer-util.service.mjs +5 -5
  91. package/{fesm2020 → fesm2022}/hmcts-media-viewer.mjs +443 -444
  92. package/fesm2022/hmcts-media-viewer.mjs.map +1 -0
  93. package/lib/annotations/annotation-set/annotation-create/box-highlight-create/box-highlight-create.component.d.ts +1 -1
  94. package/lib/annotations/annotation-set/annotation-set.component.d.ts +1 -1
  95. package/lib/annotations/annotation-set/annotation-view/annotation-view.component.d.ts +1 -1
  96. package/lib/annotations/annotation-set/annotation-view/rectangle/rectangle.component.d.ts +1 -1
  97. package/lib/annotations/annotation-set/ctx-toolbar/ctx-toolbar.component.d.ts +1 -1
  98. package/lib/annotations/annotation-set/metadata-layer/metadata-layer.component.d.ts +1 -1
  99. package/lib/annotations/comment-set/comment/comment.component.d.ts +1 -1
  100. package/lib/annotations/comment-set/comment/text-highlight/text-highlight.directive.d.ts +1 -1
  101. package/lib/annotations/comment-set/comment-navigate/comments-navigate.component.d.ts +1 -1
  102. package/lib/annotations/comment-set/comment-set-header/comment-search/comment-search.component.d.ts +1 -1
  103. package/lib/annotations/comment-set/comment-set-header/comment-set-header.component.d.ts +1 -1
  104. package/lib/annotations/comment-set/comment-set.component.d.ts +1 -1
  105. package/lib/annotations/comments-summary/comments-summary.component.d.ts +1 -1
  106. package/lib/annotations/tags/tags.component.d.ts +1 -1
  107. package/lib/bookmark/components/bookmark-icons.component.d.ts +1 -1
  108. package/lib/icp/socket.service.d.ts +6 -6
  109. package/lib/icp/socket.service.d.ts.map +1 -1
  110. package/lib/media-viewer.component.d.ts +1 -2
  111. package/lib/media-viewer.component.d.ts.map +1 -1
  112. package/lib/redaction/components/redaction.component.d.ts +1 -1
  113. package/lib/shared/gov-uk-date/gov-uk-date.component.d.ts +1 -1
  114. package/lib/shared/gov-uk-error-message/gov-uk-error-message.component.d.ts +1 -1
  115. package/lib/shared/gov-uk-fieldset/gov-uk-fieldset.component.d.ts +1 -1
  116. package/lib/shared/gov-uk-label/gov-uk-label.component.d.ts +1 -1
  117. package/lib/store/bookmarks-store-utils.d.ts.map +1 -1
  118. package/lib/toolbar/icp-event.service.d.ts +4 -4
  119. package/lib/toolbar/icp-event.service.d.ts.map +1 -1
  120. package/lib/toolbar/main-toolbar/main-toolbar.component.d.ts +1 -1
  121. package/lib/toolbar/redaction-toolbar/redaction-toolbar.component.d.ts +1 -1
  122. package/lib/toolbar/toolbar-event.service.d.ts +6 -6
  123. package/lib/toolbar/toolbar-event.service.d.ts.map +1 -1
  124. package/lib/viewers/convertible-content-viewer/convertible-content-viewer.component.d.ts +1 -1
  125. package/lib/viewers/grab-n-drag.directive.d.ts +1 -1
  126. package/lib/viewers/image-viewer/image-viewer.component.d.ts +1 -1
  127. package/lib/viewers/multimedia-player/multimedia-player.component.d.ts +1 -1
  128. package/lib/viewers/pdf-viewer/pdf-viewer.component.d.ts +1 -1
  129. package/lib/viewers/pdf-viewer/side-bar/bookmarks/bookmarks.component.d.ts +1 -1
  130. package/lib/viewers/pdf-viewer/side-bar/outline-item/outline-item.component.d.ts +1 -1
  131. package/lib/viewers/pdf-viewer/side-bar/side-bar.component.d.ts +1 -1
  132. package/lib/viewers/unsupported-viewer/unsupported-viewer.component.d.ts +1 -1
  133. package/lib/viewers/viewer-event.service.d.ts +1 -1
  134. package/lib/viewers/viewer-event.service.d.ts.map +1 -1
  135. package/package.json +16 -23
  136. package/esm2020/lib/annotations/annotation-set/annotation-create/box-highlight-create/box-highlight-create.component.mjs +0 -116
  137. package/esm2020/lib/annotations/annotation-set/annotation-create/highlight-create/highlight-create.directive.mjs +0 -109
  138. package/esm2020/lib/annotations/annotation-set/annotation-set.component.mjs +0 -50
  139. package/esm2020/lib/annotations/annotation-set/annotation-view/annotation-view.component.mjs +0 -94
  140. package/esm2020/lib/annotations/annotation-set/annotation-view/rectangle/rectangle.component.mjs +0 -116
  141. package/esm2020/lib/annotations/annotation-set/ctx-toolbar/ctx-toolbar.component.mjs +0 -118
  142. package/esm2020/lib/annotations/annotation-set/metadata-layer/metadata-layer.component.mjs +0 -86
  143. package/esm2020/lib/annotations/comment-set/comment/comment.component.mjs +0 -177
  144. package/esm2020/lib/annotations/comment-set/comment/comment.service.mjs +0 -50
  145. package/esm2020/lib/annotations/comment-set/comment/text-highlight/text-highlight.directive.mjs +0 -47
  146. package/esm2020/lib/annotations/comment-set/comment-navigate/comments-navigate.component.mjs +0 -91
  147. package/esm2020/lib/annotations/comment-set/comment-set-header/comment-search/comment-search.component.mjs +0 -54
  148. package/esm2020/lib/annotations/comment-set/comment-set-header/comment-set-header.component.mjs +0 -68
  149. package/esm2020/lib/annotations/comment-set/comment-set-render.service.mjs +0 -54
  150. package/esm2020/lib/annotations/comment-set/comment-set.component.mjs +0 -123
  151. package/esm2020/lib/annotations/comments-summary/comments-summary.component.mjs +0 -120
  152. package/esm2020/lib/annotations/pipes/filter/filter.pipe.mjs +0 -32
  153. package/esm2020/lib/annotations/tags/tags.component.mjs +0 -53
  154. package/esm2020/lib/icp/icp-follower.service.mjs +0 -60
  155. package/esm2020/lib/icp/icp-presenter.service.mjs +0 -55
  156. package/esm2020/lib/icp/icp-update.service.mjs +0 -57
  157. package/esm2020/lib/icp/icp.service.mjs +0 -93
  158. package/esm2020/lib/icp/socket.service.mjs +0 -118
  159. package/esm2020/lib/media-viewer.component.mjs +0 -245
  160. package/esm2020/lib/redaction/components/redaction.component.mjs +0 -91
  161. package/esm2020/lib/shared/util/helpers/html-templates.helper.mjs +0 -18
  162. package/esm2020/lib/store/bookmarks-store-utils.mjs +0 -49
  163. package/esm2020/lib/store/effects/annotation.effects.mjs +0 -51
  164. package/esm2020/lib/store/reducers/annotations.reducer.mjs +0 -208
  165. package/esm2020/lib/store/reducers/bookmarks.reducer.mjs +0 -116
  166. package/esm2020/lib/store/reducers/document.reducer.mjs +0 -135
  167. package/esm2020/lib/store/reducers/icp.reducer.mjs +0 -56
  168. package/esm2020/lib/store/reducers/redaction.reducer.mjs +0 -116
  169. package/esm2020/lib/store/reducers/tags.reducer.mjs +0 -93
  170. package/esm2020/lib/store/selectors/annotation.selectors.mjs +0 -81
  171. package/esm2020/lib/store/store-utils.mjs +0 -131
  172. package/esm2020/lib/toolbar/highlight-toolbar/highlight-toolbar.component.mjs +0 -44
  173. package/esm2020/lib/toolbar/main-toolbar/main-toolbar.component.mjs +0 -189
  174. package/esm2020/lib/toolbar/redaction-search-bar/redaction-search-bar.component.mjs +0 -236
  175. package/esm2020/lib/toolbar/redaction-toolbar/redaction-toolbar.component.mjs +0 -68
  176. package/esm2020/lib/toolbar/search-bar/search-bar.component.mjs +0 -109
  177. package/esm2020/lib/toolbar/toolbar-button-visibility.service.mjs +0 -94
  178. package/esm2020/lib/toolbar/toolbar-event.service.mjs +0 -178
  179. package/esm2020/lib/viewers/convertible-content-viewer/convertible-content-viewer.component.mjs +0 -82
  180. package/esm2020/lib/viewers/grab-n-drag.directive.mjs +0 -57
  181. package/esm2020/lib/viewers/image-viewer/image-viewer.component.mjs +0 -166
  182. package/esm2020/lib/viewers/multimedia-player/multimedia-player.component.mjs +0 -59
  183. package/esm2020/lib/viewers/pdf-viewer/pdf-js/pdf-js-wrapper.mjs +0 -209
  184. package/esm2020/lib/viewers/pdf-viewer/pdf-viewer.component.mjs +0 -236
  185. package/esm2020/lib/viewers/pdf-viewer/side-bar/bookmarks/bookmarks.component.mjs +0 -352
  186. package/esm2020/lib/viewers/pdf-viewer/side-bar/outline-item/outline-item.component.mjs +0 -49
  187. package/esm2020/lib/viewers/rotation-persist/rotation-persist.directive.mjs +0 -61
  188. package/esm2020/lib/viewers/unsupported-viewer/unsupported-viewer.component.mjs +0 -49
  189. package/fesm2015/hmcts-media-viewer.mjs +0 -6946
  190. package/fesm2015/hmcts-media-viewer.mjs.map +0 -1
  191. package/fesm2020/hmcts-media-viewer.mjs.map +0 -1
  192. /package/{esm2020 → esm2022}/hmcts-media-viewer.mjs +0 -0
  193. /package/{esm2020 → esm2022}/lib/annotations/annotation-set/annotation-set.model.mjs +0 -0
  194. /package/{esm2020 → esm2022}/lib/annotations/annotation-set/annotation-view/annotation.model.mjs +0 -0
  195. /package/{esm2020 → esm2022}/lib/annotations/annotation-set/annotation-view/rectangle/rectangle.model.mjs +0 -0
  196. /package/{esm2020 → esm2022}/lib/annotations/comment-set/comment/comment.model.mjs +0 -0
  197. /package/{esm2020 → esm2022}/lib/annotations/models/api-persisted.model.mjs +0 -0
  198. /package/{esm2020 → esm2022}/lib/annotations/models/event-select.model.mjs +0 -0
  199. /package/{esm2020 → esm2022}/lib/annotations/models/tags.model.mjs +0 -0
  200. /package/{esm2020 → esm2022}/lib/annotations/models/user.model.mjs +0 -0
  201. /package/{esm2020 → esm2022}/lib/icp/icp.events.mjs +0 -0
  202. /package/{esm2020 → esm2022}/lib/icp/icp.interfaces.mjs +0 -0
  203. /package/{esm2020 → esm2022}/lib/redaction/services/redaction.model.mjs +0 -0
  204. /package/{esm2020 → esm2022}/lib/store/actions/annotation.actions.mjs +0 -0
  205. /package/{esm2020 → esm2022}/lib/store/actions/bookmark.actions.mjs +0 -0
  206. /package/{esm2020 → esm2022}/lib/store/actions/document.actions.mjs +0 -0
  207. /package/{esm2020 → esm2022}/lib/store/actions/icp.actions.mjs +0 -0
  208. /package/{esm2020 → esm2022}/lib/store/actions/redaction.actions.mjs +0 -0
  209. /package/{esm2020 → esm2022}/lib/store/actions/tag.actions.mjs +0 -0
  210. /package/{esm2020 → esm2022}/lib/store/effects/index.mjs +0 -0
  211. /package/{esm2020 → esm2022}/lib/store/models/bookmarks.interface.mjs +0 -0
  212. /package/{esm2020 → esm2022}/lib/store/models/filters.interface.mjs +0 -0
  213. /package/{esm2020 → esm2022}/lib/store/reducers/reducers.mjs +0 -0
  214. /package/{esm2020 → esm2022}/lib/store/selectors/document.selectors.mjs +0 -0
  215. /package/{esm2020 → esm2022}/lib/store/selectors/icp.selectors.mjs +0 -0
  216. /package/{esm2020 → esm2022}/lib/store/selectors/tag.selectors.mjs +0 -0
  217. /package/{esm2020 → esm2022}/lib/toolbar/redaction-search-bar/redaction-search.model.mjs +0 -0
  218. /package/{esm2020 → esm2022}/lib/viewers/pdf-viewer/side-bar/bookmarks/bookmarks.interfaces.mjs +0 -0
  219. /package/{esm2020 → esm2022}/lib/viewers/pdf-viewer/side-bar/outline-item/outline.model.mjs +0 -0
  220. /package/{esm2020 → esm2022}/lib/viewers/rotation-persist/rotation.model.mjs +0 -0
  221. /package/{esm2020 → esm2022}/lib/viewers/viewer-exception.model.mjs +0 -0
  222. /package/{esm2020 → esm2022}/public_api.mjs +0 -0
@@ -1,81 +0,0 @@
1
- import { createSelector } from '@ngrx/store';
2
- import * as fromFeature from '../reducers/reducers';
3
- import * as fromAnnotations from '../reducers/annotations.reducer';
4
- import * as fromTags from './tag.selectors';
5
- import * as fromDocument from './document.selectors';
6
- import { StoreUtils } from '../store-utils';
7
- import moment from 'moment-timezone';
8
- export const getAnnotationsSetState = createSelector(fromFeature.getMVState, (state) => state.annotations);
9
- export const getAnnotationEntities = createSelector(getAnnotationsSetState, fromAnnotations.getAnnoEnt);
10
- export const getSet = createSelector(getAnnotationsSetState, fromAnnotations.getAnnoSet);
11
- export const getDocumentIdSetId = createSelector(getSet, (annoSet) => {
12
- return {
13
- documentId: annoSet.documentId,
14
- annotationSetId: annoSet.id
15
- };
16
- });
17
- export const getAnnotationSet = createSelector(getAnnotationEntities, getSet, (entities, set) => {
18
- return {
19
- ...set,
20
- annotations: Object.keys(entities).map(key => entities[key])
21
- };
22
- });
23
- export const getSelectedAnnotation = createSelector(getAnnotationsSetState, fromAnnotations.getSelectedAnno);
24
- export const getCommentEntities = createSelector(getAnnotationsSetState, fromAnnotations.getCommentEnts);
25
- export const getPageEntities = createSelector(getAnnotationsSetState, fromAnnotations.getAnnoPageEnt);
26
- export const getComponentSearchQueries = createSelector(getAnnotationsSetState, fromAnnotations.commentSearchQ);
27
- export const getComponentSearchText = createSelector(getComponentSearchQueries, (queries) => queries.commentSearch);
28
- export const getCommentSummaryFilters = createSelector(getAnnotationsSetState, fromAnnotations.getSummaryFilters);
29
- export const getAnnoPerPage = createSelector(fromDocument.getPages, getPageEntities, fromTags.getFilteredPageEntities, (pages, pageEnt, filteredPageEnt) => {
30
- const isFiltered = !!Object.keys(filteredPageEnt).length;
31
- const entities = isFiltered ? filteredPageEnt : pageEnt;
32
- if (pages) {
33
- const arr = [];
34
- Object.keys(pages).forEach(key => {
35
- arr.push({
36
- anno: entities[key] ? entities[key] : [],
37
- styles: pages[key].styles
38
- });
39
- });
40
- return arr;
41
- }
42
- });
43
- export const getCommentsArray = createSelector(getCommentEntities, fromDocument.getPages, getAnnotationEntities, fromTags.getTagFiltered, (commentEnts, pages, annoEnts, filtered) => {
44
- if (commentEnts && annoEnts && pages[1]) {
45
- const isFiltered = !!Object.keys(filtered).length;
46
- const com = isFiltered ? filtered : commentEnts;
47
- return Object.keys(com).map(key => {
48
- const page = annoEnts[key].page;
49
- return {
50
- ...commentEnts[key],
51
- page,
52
- pages
53
- };
54
- });
55
- }
56
- });
57
- export const getCommentSummary = createSelector(getCommentsArray, getCommentSummaryFilters, (commentSummary = [], filters) => {
58
- const comments = StoreUtils.filterCommentsSummary(commentSummary, filters.filters);
59
- if (comments.length) {
60
- const savedComments = comments.filter((comment) => {
61
- return comment.createdByDetails !== undefined;
62
- });
63
- return savedComments.map((comment) => {
64
- return {
65
- page: comment.page,
66
- user: comment.createdByDetails.forename.concat(' ').concat(comment.createdByDetails.surname),
67
- date: moment(comment.lastModifiedDate).format('D MMMM YYYY'),
68
- tags: comment.tags,
69
- comment: comment.content
70
- };
71
- });
72
- }
73
- return [''];
74
- });
75
- export const getFilteredAnnotations = createSelector(getAnnotationEntities, fromTags.getTagFiltered, (annoEnt, filters) => {
76
- const isFiltered = !!Object.keys(filters).length;
77
- const anno = isFiltered ? filters : annoEnt;
78
- return Object.keys(anno).map(key => annoEnt[key])
79
- .filter(annotation => annotation.comments && annotation.comments.length > 0);
80
- });
81
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ub3RhdGlvbi5zZWxlY3RvcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tZWRpYS12aWV3ZXIvc3JjL2xpYi9zdG9yZS9zZWxlY3RvcnMvYW5ub3RhdGlvbi5zZWxlY3RvcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLGFBQWEsQ0FBQztBQUUzQyxPQUFPLEtBQUssV0FBVyxNQUFNLHNCQUFzQixDQUFDO0FBQ3BELE9BQU8sS0FBSyxlQUFlLE1BQU0saUNBQWlDLENBQUM7QUFDbkUsT0FBTyxLQUFLLFFBQVEsTUFBTSxpQkFBaUIsQ0FBQztBQUM1QyxPQUFPLEtBQUssWUFBWSxNQUFNLHNCQUFzQixDQUFDO0FBQ3JELE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUMxQyxPQUFPLE1BQU0sTUFBTSxpQkFBaUIsQ0FBQztBQUNyQyxNQUFNLENBQUMsTUFBTSxzQkFBc0IsR0FBRyxjQUFjLENBQ2xELFdBQVcsQ0FBQyxVQUFVLEVBQ3RCLENBQUMsS0FBd0IsRUFBRSxFQUFFLENBQUUsS0FBSyxDQUFDLFdBQVcsQ0FDakQsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLHFCQUFxQixHQUFHLGNBQWMsQ0FDakQsc0JBQXNCLEVBQ3RCLGVBQWUsQ0FBQyxVQUFVLENBQzNCLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxNQUFNLEdBQUcsY0FBYyxDQUNsQyxzQkFBc0IsRUFDdEIsZUFBZSxDQUFDLFVBQVUsQ0FDM0IsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHLGNBQWMsQ0FDOUMsTUFBTSxFQUNOLENBQUMsT0FBTyxFQUFFLEVBQUU7SUFDVixPQUFPO1FBQ0wsVUFBVSxFQUFFLE9BQU8sQ0FBQyxVQUFVO1FBQzlCLGVBQWUsRUFBRSxPQUFPLENBQUMsRUFBRTtLQUM1QixDQUFDO0FBQ0osQ0FBQyxD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QixPQUFPLEVBQUUsT0FBTyxDQUFDLE9BQU87YUFDekIsQ0FBQztRQUNKLENBQUMsQ0FBQyxDQUFDO0tBQ0o7SUFDRCxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUM7QUFDZCxDQUFDLENBQ0YsQ0FBQztBQUdGLE1BQU0sQ0FBQyxNQUFNLHNCQUFzQixHQUFHLGNBQWMsQ0FDbEQscUJBQXFCLEVBQ3JCLFFBQVEsQ0FBQyxjQUFjLEVBQ3ZCLENBQUMsT0FBTyxFQUFFLE9BQU8sRUFBRSxFQUFFO0lBQ25CLE1BQU0sVUFBVSxHQUFZLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLE1BQU0sQ0FBQztJQUMxRCxNQUFNLElBQUksR0FBRyxVQUFVLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDO0lBQzVDLE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDOUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUMsVUFBVSxDQUFDLFFBQVEsSUFBSSxVQUFVLENBQUMsUUFBUSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQztBQUNqRixDQUFDLENBQ0YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Y3JlYXRlU2VsZWN0b3J9IGZyb20gJ0BuZ3J4L3N0b3JlJztcblxuaW1wb3J0ICogYXMgZnJvbUZlYXR1cmUgZnJvbSAnLi4vcmVkdWNlcnMvcmVkdWNlcnMnO1xuaW1wb3J0ICogYXMgZnJvbUFubm90YXRpb25zIGZyb20gJy4uL3JlZHVjZXJzL2Fubm90YXRpb25zLnJlZHVjZXInO1xuaW1wb3J0ICogYXMgZnJvbVRhZ3MgZnJvbSAnLi90YWcuc2VsZWN0b3JzJztcbmltcG9ydCAqIGFzIGZyb21Eb2N1bWVudCBmcm9tICcuL2RvY3VtZW50LnNlbGVjdG9ycyc7XG5pbXBvcnQge1N0b3JlVXRpbHN9IGZyb20gJy4uL3N0b3JlLXV0aWxzJztcbmltcG9ydCBtb21lbnQgZnJvbSAnbW9tZW50LXRpbWV6b25lJztcbmV4cG9ydCBjb25zdCBnZXRBbm5vdGF0aW9uc1NldFN0YXRlID0gY3JlYXRlU2VsZWN0b3IoXG4gIGZyb21GZWF0dXJlLmdldE1WU3RhdGUsXG4gIChzdGF0ZTogZnJvbUZlYXR1cmUuU3RhdGUpID0+ICBzdGF0ZS5hbm5vdGF0aW9uc1xuKTtcblxuZXhwb3J0IGNvbnN0IGdldEFubm90YXRpb25FbnRpdGllcyA9IGNyZWF0ZVNlbGVjdG9yKFxuICBnZXRBbm5vdGF0aW9uc1NldFN0YXRlLFxuICBmcm9tQW5ub3RhdGlvbnMuZ2V0QW5ub0VudFxuKTtcblxuZXhwb3J0IGNvbnN0IGdldFNldCA9IGNyZWF0ZVNlbGVjdG9yKFxuICBnZXRBbm5vdGF0aW9uc1NldFN0YXRlLFxuICBmcm9tQW5ub3RhdGlvbnMuZ2V0QW5ub1NldFxuKTtcblxuZXhwb3J0IGNvbnN0IGdldERvY3VtZW50SWRTZXRJZCA9IGNyZWF0ZVNlbGVjdG9yKFxuICBnZXRTZXQsXG4gIChhbm5vU2V0KSA9PiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGRvY3VtZW50SWQ6IGFubm9TZXQuZG9jdW1lbnRJZCxcbiAgICAgIGFubm90YXRpb25TZXRJZDogYW5ub1NldC5pZFxuICAgIH07XG4gIH1cbik7XG5cbmV4cG9ydCBjb25zdCBnZXRBbm5vdGF0aW9uU2V0ID0gY3JlYXRlU2VsZWN0b3IoXG4gIGdldEFubm90YXRpb25FbnRpdGllcyxcbiAgZ2V0U2V0LFxuICAoZW50aXRpZXMsIHNldCkgPT4ge1xuICAgIHJldHVybiB7XG4gICAgICAuLi5zZXQsXG4gICAgICBhbm5vdGF0aW9uczogT2JqZWN0LmtleXMoZW50aXRpZXMpLm1hcChrZXkgPT4gZW50aXRpZXNba2V5XSlcbiAgICB9O1xuICB9XG4pO1xuXG5leHBvcnQgY29uc3QgZ2V0U2VsZWN0ZWRBbm5vdGF0aW9uID0gY3JlYXRlU2VsZWN0b3IoXG4gIGdldEFubm90YXRpb25zU2V0U3RhdGUsXG4gIGZyb21Bbm5vdGF0aW9ucy5nZXRTZWxlY3RlZEFubm9cbik7XG5cbmV4cG9ydCBjb25zdCBnZXRDb21tZW50RW50aXRpZXMgPSBjcmVhdGVTZWxlY3RvcihcbiAgZ2V0QW5ub3RhdGlvbnNTZXRTdGF0ZSxcbiAgZnJvbUFubm90YXRpb25zLmdldENvbW1lbnRFbnRzXG4pO1xuXG5cbmV4cG9ydCBjb25zdCBnZXRQYWdlRW50aXRpZXMgPSBjcmVhdGVTZWxlY3RvcihcbiAgZ2V0QW5ub3RhdGlvbnNTZXRTdGF0ZSxcbiAgZnJvbUFubm90YXRpb25zLmdldEFubm9QYWdlRW50XG4pO1xuXG5leHBvcnQgY29uc3QgZ2V0Q29tcG9uZW50U2VhcmNoUXVlcmllcyA9IGNyZWF0ZVNlbGVjdG9yKFxuICBnZXRBbm5vdGF0aW9uc1NldFN0YXRlLFxuICBmcm9tQW5ub3RhdGlvbnMuY29tbWVudFNlYXJjaFFcbik7XG5cbmV4cG9ydCBjb25zdCBnZXRDb21wb25lbnRTZWFyY2hUZXh0ID0gY3JlYXRlU2VsZWN0b3IoXG4gIGdldENvbXBvbmVudFNlYXJjaFF1ZXJpZXMsXG4gIChxdWVyaWVzKSA9PiBxdWVyaWVzLmNvbW1lbnRTZWFyY2hcbik7XG5cbmV4cG9ydCBjb25zdCBnZXRDb21tZW50U3VtbWFyeUZpbHRlcnMgPSBjcmVhdGVTZWxlY3RvcihcbiAgZ2V0QW5ub3RhdGlvbnNTZXRTdGF0ZSxcbiAgZnJvbUFubm90YXRpb25zLmdldFN1bW1hcnlGaWx0ZXJzXG4pO1xuXG5leHBvcnQgY29uc3QgZ2V0QW5ub1BlclBhZ2UgPSBjcmVhdGVTZWxlY3RvcihcbiAgZnJvbURvY3VtZW50LmdldFBhZ2VzLFxuICBnZXRQYWdlRW50aXRpZXMsXG4gIGZyb21UYWdzLmdldEZpbHRlcmVkUGFnZUVudGl0aWVzLFxuICAocGFnZXMsIHBhZ2VFbnQsIGZpbHRlcmVkUGFnZUVudCkgPT4ge1xuICAgIGNvbnN0IGlzRmlsdGVyZWQ6IGJvb2xlYW4gPSAhIU9iamVjdC5rZXlzKGZpbHRlcmVkUGFnZUVudCkubGVuZ3RoO1xuICAgIGNvbnN0IGVudGl0aWVzID0gaXNGaWx0ZXJlZCA/IGZpbHRlcmVkUGFnZUVudCA6IHBhZ2VFbnQ7XG4gICAgaWYgKHBhZ2VzKSB7XG4gICAgICBjb25zdCBhcnIgPSBbXTtcbiAgICAgIE9iamVjdC5rZXlzKHBhZ2VzKS5mb3JFYWNoKGtleSA9PiB7XG4gICAgICAgIGFyci5wdXNoKHtcbiAgICAgICAgICBhbm5vOiBlbnRpdGllc1trZXldID8gZW50aXRpZXNba2V5XSA6IFtdLFxuICAgICAgICAgIHN0eWxlczogcGFnZXNba2V5XS5zdHlsZXNcbiAgICAgICAgfSk7XG4gICAgICB9KTtcbiAgICAgIHJldHVybiBhcnI7XG4gICAgfVxuICB9XG4pO1xuXG5leHBvcnQgY29uc3QgZ2V0Q29tbWVudHNBcnJheSA9IGNyZWF0ZVNlbGVjdG9yKFxuICBnZXRDb21tZW50RW50aXRpZXMsXG4gIGZyb21Eb2N1bWVudC5nZXRQYWdlcyxcbiAgZ2V0QW5ub3RhdGlvbkVudGl0aWVzLFxuICBmcm9tVGFncy5nZXRUYWdGaWx0ZXJlZCxcbiAgKGNvbW1lbnRFbnRzLCBwYWdlcywgYW5ub0VudHMsIGZpbHRlcmVkKSA9PiB7XG4gICAgaWYgKGNvbW1lbnRFbnRzICYmIGFubm9FbnRzICYmIHBhZ2VzWzFdKSB7XG4gICAgICAgIGNvbnN0IGlzRmlsdGVyZWQ6IGJvb2xlYW4gPSAhIU9iamVjdC5rZXlzKGZpbHRlcmVkKS5sZW5ndGg7XG4gICAgICAgIGNvbnN0IGNvbSA9IGlzRmlsdGVyZWQgPyBmaWx0ZXJlZCA6IGNvbW1lbnRFbnRzO1xuICAgICAgICByZXR1cm4gT2JqZWN0LmtleXMoY29tKS5tYXAoa2V5ID0+IHtcbiAgICAgICAgICBjb25zdCBwYWdlID0gYW5ub0VudHNba2V5XS5wYWdlO1xuICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAuLi5jb21tZW50RW50c1trZXldLFxuICAgICAgICAgICAgcGFnZSxcbiAgICAgICAgICAgIHBhZ2VzXG4gICAgICAgICAgfTtcbiAgICAgICAgfSk7XG4gICAgfVxuICB9XG4pO1xuXG5leHBvcnQgY29uc3QgZ2V0Q29tbWVudFN1bW1hcnkgPSBjcmVhdGVTZWxlY3RvcihcbiAgZ2V0Q29tbWVudHNBcnJheSxcbiAgZ2V0Q29tbWVudFN1bW1hcnlGaWx0ZXJzLFxuICAoY29tbWVudFN1bW1hcnkgPSBbXSwgZmlsdGVycykgPT4ge1xuICAgIGNvbnN0IGNvbW1lbnRzID0gU3RvcmVVdGlscy5maWx0ZXJDb21tZW50c1N1bW1hcnkoY29tbWVudFN1bW1hcnksIGZpbHRlcnMuZmlsdGVycyk7XG4gICAgaWYgKGNvbW1lbnRzLmxlbmd0aCkge1xuICAgICAgY29uc3Qgc2F2ZWRDb21tZW50cyAgPSBjb21tZW50cy5maWx0ZXIoKGNvbW1lbnQpID0+IHtcbiAgICAgICAgcmV0dXJuIGNvbW1lbnQuY3JlYXRlZEJ5RGV0YWlscyAhPT0gdW5kZWZpbmVkO1xuICAgICAgfVxuICAgICAgKTtcbiAgICAgIHJldHVybiBzYXZlZENvbW1lbnRzLm1hcCgoY29tbWVudCkgPT4ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIHBhZ2U6IGNvbW1lbnQucGFnZSxcbiAgICAgICAgICB1c2VyOiBjb21tZW50LmNyZWF0ZWRCeURldGFpbHMuZm9yZW5hbWUuY29uY2F0KCcgJykuY29uY2F0KGNvbW1lbnQuY3JlYXRlZEJ5RGV0YWlscy5zdXJuYW1lKSxcbiAgICAgICAgICBkYXRlOiBtb21lbnQoY29tbWVudC5sYXN0TW9kaWZpZWREYXRlKS5mb3JtYXQoJ0QgTU1NTSBZWVlZJyksXG4gICAgICAgICAgdGFnczogY29tbWVudC50YWdzLFxuICAgICAgICAgIGNvbW1lbnQ6IGNvbW1lbnQuY29udGVudFxuICAgICAgICB9O1xuICAgICAgfSk7XG4gICAgfVxuICAgIHJldHVybiBbJyddO1xuICB9XG4pO1xuXG5cbmV4cG9ydCBjb25zdCBnZXRGaWx0ZXJlZEFubm90YXRpb25zID0gY3JlYXRlU2VsZWN0b3IoXG4gIGdldEFubm90YXRpb25FbnRpdGllcyxcbiAgZnJvbVRhZ3MuZ2V0VGFnRmlsdGVyZWQsXG4gIChhbm5vRW50LCBmaWx0ZXJzKSA9PiB7XG4gICAgY29uc3QgaXNGaWx0ZXJlZDogYm9vbGVhbiA9ICEhT2JqZWN0LmtleXMoZmlsdGVycykubGVuZ3RoO1xuICAgIGNvbnN0IGFubm8gPSBpc0ZpbHRlcmVkID8gZmlsdGVycyA6IGFubm9FbnQ7XG4gICAgcmV0dXJuIE9iamVjdC5rZXlzKGFubm8pLm1hcChrZXkgPT4gYW5ub0VudFtrZXldKVxuICAgICAgLmZpbHRlcihhbm5vdGF0aW9uID0+IGFubm90YXRpb24uY29tbWVudHMgJiYgYW5ub3RhdGlvbi5jb21tZW50cy5sZW5ndGggPiAwKTtcbiAgfVxuKTtcbiJdfQ==
@@ -1,131 +0,0 @@
1
- import moment from 'moment-timezone';
2
- /*
3
- @dynamic
4
- marking class as dynamic to stop compiler throwing error for lambda in static function
5
- see https://github.com/angular/angular/issues/19698#issuecomment-338340211
6
- */
7
- export class StoreUtils {
8
- static groupByKeyEntities(annotations, key) {
9
- return annotations.reduce((h, obj) => Object.assign(h, { [obj[key]]: (h[obj[key]] || []).concat(obj) }), {});
10
- }
11
- static generateCommentsEntities(annotations) {
12
- return annotations.reduce((commentEntities, annotation) => {
13
- if (annotation.comments.length) {
14
- const comment = {
15
- ...annotation.comments[0] || '',
16
- tags: [...annotation.tags || []]
17
- };
18
- return {
19
- ...commentEntities,
20
- [annotation.id]: comment
21
- };
22
- }
23
- return {
24
- ...commentEntities
25
- };
26
- }, {});
27
- }
28
- static genTagNameEntities(annotations) {
29
- const filterAnnoWithoutCommentsTags = annotations.filter(a => (a.comments.length && a.tags.length));
30
- const allTags = filterAnnoWithoutCommentsTags.map(anno => this.groupByKeyEntities(anno.tags, 'name'));
31
- const groupedByName = allTags.reduce((tagEntitiy, tagItem) => {
32
- return {
33
- ...tagEntitiy,
34
- ...tagItem
35
- };
36
- }, {});
37
- return this.genNameEnt(annotations, groupedByName);
38
- }
39
- static genNameEnt(annos, groupedByName) {
40
- return Object.keys(groupedByName).reduce((tagNameEnt, key) => {
41
- const readyAnno = annos.filter(anno => anno.tags.find(tag => tag.name === key))
42
- .map(anno => anno.id)
43
- .reduce((obj, anno) => ({ ...obj, [anno]: anno }), {});
44
- return {
45
- ...tagNameEnt,
46
- [key]: readyAnno
47
- };
48
- }, {});
49
- }
50
- static generateAnnotationEntities(anno) {
51
- return anno.reduce((annoEntities, annotation) => {
52
- const annot = {
53
- ...annotation,
54
- positionTop: annotation.rectangles[0].y // todo remove this
55
- };
56
- return {
57
- ...annoEntities,
58
- [annotation.id]: annot
59
- };
60
- }, {});
61
- }
62
- static generateRedactionEntities(redactions) {
63
- return redactions.reduce((redactEntities, redaction) => {
64
- return {
65
- ...redactEntities,
66
- [redaction.redactionId]: redaction
67
- };
68
- }, {});
69
- }
70
- static resetCommentEntSelect(ent) {
71
- return Object.keys(ent).reduce((object, key) => {
72
- object[key] = {
73
- ...ent[key],
74
- editable: false,
75
- selected: false
76
- };
77
- return object;
78
- }, {});
79
- }
80
- static filterCommentsSummary(comments, filters) {
81
- if (Object.keys(filters).length) {
82
- const tagFilterApplied = Object.keys(filters.tagFilters)
83
- .filter(key => filters.tagFilters[key] === true).length;
84
- const dateFilterApplied = (filters.dateRangeFrom || filters.dateRangeTo);
85
- const filteredComments = comments.filter(comment => {
86
- let hasTagFilter = false;
87
- let hasDateFilter = false;
88
- // check tags
89
- if (filters.hasOwnProperty('tagFilters')) {
90
- Object.keys(filters.tagFilters).forEach(filter => {
91
- const label = filters.tagFilters[filter];
92
- if (label) {
93
- return comment.tags.forEach(tag => {
94
- if (tag.name === filter && !hasTagFilter) {
95
- hasTagFilter = true;
96
- }
97
- });
98
- }
99
- });
100
- }
101
- // check for dates
102
- if (dateFilterApplied) {
103
- const commentDate = moment(comment.lastModifiedDate);
104
- const dateFrom = filters.dateRangeFrom !== null ? moment(filters.dateRangeFrom) : undefined;
105
- const dateTo = filters.dateRangeTo !== null ? moment(filters.dateRangeTo) : undefined;
106
- if (dateTo && dateFrom) {
107
- if (commentDate > dateFrom && commentDate < dateTo) {
108
- hasDateFilter = true;
109
- }
110
- }
111
- if (dateTo && !dateFrom) {
112
- if (commentDate <= dateTo) {
113
- hasDateFilter = true;
114
- }
115
- }
116
- if (dateFrom && !dateTo) {
117
- if (commentDate > dateFrom) {
118
- hasDateFilter = true;
119
- }
120
- }
121
- }
122
- return (hasTagFilter || hasDateFilter);
123
- });
124
- return (tagFilterApplied || dateFilterApplied) ? filteredComments : comments;
125
- }
126
- else {
127
- return comments;
128
- }
129
- }
130
- }
131
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcmUtdXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tZWRpYS12aWV3ZXIvc3JjL2xpYi9zdG9yZS9zdG9yZS11dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLE1BQU0sTUFBTSxpQkFBaUIsQ0FBQztBQUtyQzs7OztHQUlHO0FBQ0gsTUFBTSxPQUFPLFVBQVU7SUFFckIsTUFBTSxDQUFDLGtCQUFrQixDQUFDLFdBQVcsRUFBRSxHQUFHO1FBQ3hDLE9BQU8sV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUFHLEVBQUUsRUFBRSxDQUNuQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsQ0FBRSxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFFLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUM3RSxDQUFDO0lBRUQsTUFBTSxDQUFDLHdCQUF3QixDQUFDLFdBQVc7UUFDeEMsT0FBTyxXQUFXLENBQUMsTUFBTSxDQUN4QixDQUFDLGVBQTZDLEVBQUUsVUFBc0IsRUFBRSxFQUFFO1lBQ3hFLElBQUksVUFBVSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEVBQUU7Z0JBQzlCLE1BQU0sT0FBTyxHQUFHO29CQUNkLEdBQUcsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFO29CQUMvQixJQUFJLEVBQUUsQ0FBQyxHQUFHLFVBQVUsQ0FBQyxJQUFJLElBQUksRUFBRSxDQUFDO2lCQUNqQyxDQUFDO2dCQUNGLE9BQU87b0JBQ0wsR0FBRyxlQUFlO29CQUNsQixDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUMsRUFBRSxPQUFPO2lCQUN6QixDQUFDO2FBQ0g7WUFDRCxPQUFPO2dC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QUFDO1lBQ0gsT0FBTyxDQUFDLGdCQUFnQixJQUFJLGlCQUFpQixDQUFDLENBQUMsQ0FBQyxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUM7U0FDOUU7YUFBTTtZQUNMLE9BQU8sUUFBUSxDQUFDO1NBQ2pCO0lBQ0gsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQW5ub3RhdGlvbiB9IGZyb20gJy4uL2Fubm90YXRpb25zL2Fubm90YXRpb24tc2V0L2Fubm90YXRpb24tdmlldy9hbm5vdGF0aW9uLm1vZGVsJztcbmltcG9ydCBtb21lbnQgZnJvbSAnbW9tZW50LXRpbWV6b25lJztcbmltcG9ydCB7IFJlZGFjdGlvbiB9IGZyb20gJy4uL3JlZGFjdGlvbi9zZXJ2aWNlcy9yZWRhY3Rpb24ubW9kZWwnO1xuaW1wb3J0IHsgRmlsdGVycyB9IGZyb20gJy4vbW9kZWxzL2ZpbHRlcnMuaW50ZXJmYWNlJztcbmltcG9ydCB7IENvbW1lbnQgfSBmcm9tICcuLi9hbm5vdGF0aW9ucy9jb21tZW50LXNldC9jb21tZW50L2NvbW1lbnQubW9kZWwnO1xuXG4vKlxuICBAZHluYW1pY1xuICBtYXJraW5nIGNsYXNzIGFzIGR5bmFtaWMgdG8gc3RvcCBjb21waWxlciB0aHJvd2luZyBlcnJvciBmb3IgbGFtYmRhIGluIHN0YXRpYyBmdW5jdGlvblxuICBzZWUgaHR0cHM6Ly9naXRodWIuY29tL2FuZ3VsYXIvYW5ndWxhci9pc3N1ZXMvMTk2OTgjaXNzdWVjb21tZW50LTMzODM0MDIxMVxuICovXG5leHBvcnQgY2xhc3MgU3RvcmVVdGlscyB7XG5cbiAgc3RhdGljIGdyb3VwQnlLZXlFbnRpdGllcyhhbm5vdGF0aW9ucywga2V5KToge1tpZDogc3RyaW5nXTogYW55W119IHtcbiAgICByZXR1cm4gYW5ub3RhdGlvbnMucmVkdWNlKChoLCBvYmopID0+XG4gICAgICBPYmplY3QuYXNzaWduKGgsIHsgW29ialtrZXldXTogKCBoW29ialtrZXldXSB8fCBbXSApLmNvbmNhdChvYmopIH0pLCB7fSk7XG4gIH1cblxuICBzdGF0aWMgZ2VuZXJhdGVDb21tZW50c0VudGl0aWVzKGFubm90YXRpb25zKToge1tpZDogc3RyaW5nXTogQ29tbWVudH0ge1xuICAgICByZXR1cm4gYW5ub3RhdGlvbnMucmVkdWNlKFxuICAgICAgKGNvbW1lbnRFbnRpdGllczogeyBbaWQ6IHN0cmluZ106IEFubm90YXRpb24gfSwgYW5ub3RhdGlvbjogQW5ub3RhdGlvbikgPT4ge1xuICAgICAgICBpZiAoYW5ub3RhdGlvbi5jb21tZW50cy5sZW5ndGgpIHtcbiAgICAgICAgICBjb25zdCBjb21tZW50ID0ge1xuICAgICAgICAgICAgLi4uYW5ub3RhdGlvbi5jb21tZW50c1swXSB8fCAnJyxcbiAgICAgICAgICAgIHRhZ3M6IFsuLi5hbm5vdGF0aW9uLnRhZ3MgfHwgW11dXG4gICAgICAgICAgfTtcbiAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgLi4uY29tbWVudEVudGl0aWVzLFxuICAgICAgICAgICAgW2Fubm90YXRpb24uaWRdOiBjb21tZW50XG4gICAgICAgICAgfTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIC4uLmNvbW1lbnRFbnRpdGllc1xuICAgICAgICB9O1xuICAgICAgfSwge30pO1xuICB9XG5cbiAgc3RhdGljIGdlblRhZ05hbWVFbnRpdGllcyhhbm5vdGF0aW9ucykge1xuICAgIGNvbnN0IGZpbHRlckFubm9XaXRob3V0Q29tbWVudHNUYWdzID0gYW5ub3RhdGlvbnMuZmlsdGVyKGEgPT4gKGEuY29tbWVudHMubGVuZ3RoICYmIGEudGFncy5sZW5ndGgpKTtcbiAgICBjb25zdCBhbGxUYWdzID0gZmlsdGVyQW5ub1dpdGhvdXRDb21tZW50c1RhZ3MubWFwKGFubm8gPT4gdGhpcy5ncm91cEJ5S2V5RW50aXRpZXMoYW5uby50YWdzLCAnbmFtZScpKTtcbiAgICBjb25zdCBncm91cGVkQnlOYW1lID0gYWxsVGFncy5yZWR1Y2UoXG4gICAgICAodGFnRW50aXRpeTogeyBbaWQ6IHN0cmluZ106IEFubm90YXRpb24gfSwgdGFnSXRlbSkgPT4ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIC4uLnRhZ0VudGl0aXksXG4gICAgICAgICAgLi4udGFnSXRlbVxuICAgICAgICB9O1xuICAgICAgfSwge30pO1xuXG4gICAgcmV0dXJuIHRoaXMuZ2VuTmFtZUVudChhbm5vdGF0aW9ucywgZ3JvdXBlZEJ5TmFtZSk7XG4gIH1cblxuICBzdGF0aWMgZ2VuTmFtZUVudChhbm5vcywgZ3JvdXBlZEJ5TmFtZSkge1xuICAgICByZXR1cm4gT2JqZWN0LmtleXMoZ3JvdXBlZEJ5TmFtZSkucmVkdWNlKFxuICAgICAgKHRhZ05hbWVFbnQsIGtleSkgPT4ge1xuICAgICAgICBjb25zdCByZWFkeUFubm8gPSBhbm5vcy5maWx0ZXIoYW5ubyA9PiBhbm5vLnRhZ3MuZmluZCh0YWcgPT4gdGFnLm5hbWUgPT09IGtleSkpXG4gICAgICAgICAgLm1hcChhbm5vID0+IGFubm8uaWQpXG4gICAgICAgICAgLnJlZHVjZSgob2JqOiB7W2lkOiBzdHJpbmddOiBzdHJpbmd9LCBhbm5vOiBzdHJpbmcpID0+ICh7IC4uLm9iaiwgW2Fubm9dOiBhbm5vIH0pLCB7fSk7XG5cbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAuLi50YWdOYW1lRW50LFxuICAgICAgICAgIFtrZXldOiByZWFkeUFubm9cbiAgICAgICAgfTtcbiAgICAgIH0sIHt9KTtcblxuICB9XG5cbiAgc3RhdGljIGdlbmVyYXRlQW5ub3RhdGlvbkVudGl0aWVzKGFubm8pOiB7W2lkOiBzdHJpbmddOiBBbm5vdGF0aW9ufSB7XG4gICAgcmV0dXJuIGFubm8ucmVkdWNlKFxuICAgICAgKGFubm9FbnRpdGllczogeyBbaWQ6IHN0cmluZ106IEFubm90YXRpb24gfSwgYW5ub3RhdGlvbjogQW5ub3RhdGlvbikgPT4ge1xuICAgICAgICBjb25zdCBhbm5vdCA9IHtcbiAgICAgICAgICAuLi5hbm5vdGF0aW9uLFxuICAgICAgICAgIHBvc2l0aW9uVG9wOiBhbm5vdGF0aW9uLnJlY3RhbmdsZXNbMF0ueSAvLyB0b2RvIHJlbW92ZSB0aGlzXG4gICAgICAgIH07XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgLi4uYW5ub0VudGl0aWVzLFxuICAgICAgICAgIFthbm5vdGF0aW9uLmlkXTogYW5ub3RcbiAgICAgICAgfTtcbiAgICAgIH0sIHt9KTtcbiAgfVxuXG4gIHN0YXRpYyBnZW5lcmF0ZVJlZGFjdGlvbkVudGl0aWVzKHJlZGFjdGlvbnM6IFJlZGFjdGlvbltdKTogeyBbaWQ6IHN0cmluZ106IFJlZGFjdGlvbiB9IHtcbiAgICByZXR1cm4gcmVkYWN0aW9ucy5yZWR1Y2UoXG4gICAgICAocmVkYWN0RW50aXRpZXM6IHsgW2lkOiBzdHJpbmddOiBSZWRhY3Rpb24gfSwgcmVkYWN0aW9uOiBSZWRhY3Rpb24pID0+IHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAuLi5yZWRhY3RFbnRpdGllcyxcbiAgICAgICAgICBbcmVkYWN0aW9uLnJlZGFjdGlvbklkXTogcmVkYWN0aW9uXG4gICAgICAgIH07XG4gICAgICB9LCB7fSk7XG4gIH1cblxuICBzdGF0aWMgcmVzZXRDb21tZW50RW50U2VsZWN0KGVudDogeyBbaWQ6IHN0cmluZ106IENvbW1lbnQgfSkge1xuICAgIHJldHVybiBPYmplY3Qua2V5cyhlbnQpLnJlZHVjZSgob2JqZWN0LCBrZXkpID0+IHtcbiAgICAgIG9iamVjdFtrZXldID0ge1xuICAgICAgICAuLi5lbnRba2V5XSxcbiAgICAgICAgZWRpdGFibGU6IGZhbHNlLFxuICAgICAgICBzZWxlY3RlZDogZmFsc2VcbiAgICAgIH07XG4gICAgICByZXR1cm4gb2JqZWN0O1xuICAgIH0sIHt9KTtcbiAgfVxuXG4gIHN0YXRpYyBmaWx0ZXJDb21tZW50c1N1bW1hcnkoY29tbWVudHM6IEFycmF5PENvbW1lbnQ+LCBmaWx0ZXJzOiBGaWx0ZXJzKSB7XG4gICAgaWYgKE9iamVjdC5rZXlzKGZpbHRlcnMpLmxlbmd0aCkge1xuICAgICAgY29uc3QgdGFnRmlsdGVyQXBwbGllZCA9IE9iamVjdC5rZXlzKGZpbHRlcnMudGFnRmlsdGVycylcbiAgICAgICAgLmZpbHRlcihrZXkgPT4gZmlsdGVycy50YWdGaWx0ZXJzW2tleV0gPT09IHRydWUpLmxlbmd0aDtcbiAgICAgIGNvbnN0IGRhdGVGaWx0ZXJBcHBsaWVkID0gKGZpbHRlcnMuZGF0ZVJhbmdlRnJvbSB8fCBmaWx0ZXJzLmRhdGVSYW5nZVRvKTtcbiAgICAgIGNvbnN0IGZpbHRlcmVkQ29tbWVudHMgPSBjb21tZW50cy5maWx0ZXIoY29tbWVudCA9PiB7XG4gICAgICAgIGxldCBoYXNUYWdGaWx0ZXIgPSBmYWxzZTtcbiAgICAgICAgbGV0IGhhc0RhdGVGaWx0ZXIgPSBmYWxzZTtcbiAgICAgICAgLy8gY2hlY2sgdGFnc1xuICAgICAgICBpZiAoZmlsdGVycy5oYXNPd25Qcm9wZXJ0eSgndGFnRmlsdGVycycpKSB7XG4gICAgICAgICAgT2JqZWN0LmtleXMoZmlsdGVycy50YWdGaWx0ZXJzKS5mb3JFYWNoKGZpbHRlciA9PiB7XG4gICAgICAgICAgICBjb25zdCBsYWJlbCA9IGZpbHRlcnMudGFnRmlsdGVyc1tmaWx0ZXJdO1xuICAgICAgICAgICAgaWYgKGxhYmVsKSB7XG4gICAgICAgICAgICAgIHJldHVybiBjb21tZW50LnRhZ3MuZm9yRWFjaCh0YWcgPT4ge1xuICAgICAgICAgICAgICAgIGlmICh0YWcubmFtZSA9PT0gZmlsdGVyICYmICFoYXNUYWdGaWx0ZXIpIHtcbiAgICAgICAgICAgICAgICAgIGhhc1RhZ0ZpbHRlciA9IHRydWU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH19KTtcbiAgICAgICAgfVxuICAgICAgICAvLyBjaGVjayBmb3IgZGF0ZXNcbiAgICAgICAgaWYgKGRhdGVGaWx0ZXJBcHBsaWVkKSB7XG4gICAgICAgICAgY29uc3QgY29tbWVudERhdGUgPSBtb21lbnQoY29tbWVudC5sYXN0TW9kaWZpZWREYXRlKTtcbiAgICAgICAgICBjb25zdCBkYXRlRnJvbSA9ICBmaWx0ZXJzLmRhdGVSYW5nZUZyb20gIT09IG51bGwgPyBtb21lbnQoZmlsdGVycy5kYXRlUmFuZ2VGcm9tKSA6IHVuZGVmaW5lZDtcbiAgICAgICAgICBjb25zdCBkYXRlVG8gPSBmaWx0ZXJzLmRhdGVSYW5nZVRvICE9PSBudWxsID8gbW9tZW50KGZpbHRlcnMuZGF0ZVJhbmdlVG8pIDogdW5kZWZpbmVkO1xuXG4gICAgICAgICAgaWYgKGRhdGVUbyAmJiBkYXRlRnJvbSkge1xuICAgICAgICAgICAgaWYgKGNvbW1lbnREYXRlID4gZGF0ZUZyb20gJiYgY29tbWVudERhdGUgPCBkYXRlVG8pIHtcbiAgICAgICAgICAgICAgaGFzRGF0ZUZpbHRlciA9IHRydWU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIGlmIChkYXRlVG8gJiYgIWRhdGVGcm9tKSB7XG4gICAgICAgICAgICBpZiAoY29tbWVudERhdGUgPD0gZGF0ZVRvKSB7XG4gICAgICAgICAgICAgIGhhc0RhdGVGaWx0ZXIgPSB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICBpZiAoZGF0ZUZyb20gJiYgIWRhdGVUbykge1xuICAgICAgICAgICAgaWYgKGNvbW1lbnREYXRlID4gZGF0ZUZyb20pIHtcbiAgICAgICAgICAgICAgaGFzRGF0ZUZpbHRlciA9IHRydWU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIChoYXNUYWdGaWx0ZXIgfHwgaGFzRGF0ZUZpbHRlcik7XG4gICAgICB9KTtcbiAgICAgIHJldHVybiAodGFnRmlsdGVyQXBwbGllZCB8fCBkYXRlRmlsdGVyQXBwbGllZCkgPyBmaWx0ZXJlZENvbW1lbnRzIDogY29tbWVudHM7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBjb21tZW50cztcbiAgICB9XG4gIH1cbn1cbiJdfQ==
@@ -1,44 +0,0 @@
1
- import { Component } from '@angular/core';
2
- import { SearchType } from '../toolbar-event.service';
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "../toolbar-event.service";
5
- import * as i2 from "../toolbar-button-visibility.service";
6
- import * as i3 from "@angular/common";
7
- export class HighlightToolbarComponent {
8
- constructor(toolbarEventService, toolbarButtons) {
9
- this.toolbarEventService = toolbarEventService;
10
- this.toolbarButtons = toolbarButtons;
11
- this.subscriptions = [];
12
- }
13
- ngOnInit() {
14
- this.subscriptions.push(this.toolbarEventService.redactAllInProgressSubject.subscribe(inprogress => {
15
- this.redactionAllInProgress = inprogress;
16
- }));
17
- }
18
- onAllSearch() {
19
- this.toolbarEventService.openRedactionSearch.next({ modeType: SearchType.Highlight, isOpen: true });
20
- }
21
- onHighlight() {
22
- this.toolbarEventService.toggleHighlightMode();
23
- }
24
- onClickDrawToggle() {
25
- this.toolbarEventService.toggleDrawMode();
26
- }
27
- onClose() {
28
- this.toolbarEventService.highlightToolbarSubject.next(false);
29
- this.toolbarEventService.highlightModeSubject.next(false);
30
- this.toolbarEventService.openRedactionSearch.next({ modeType: SearchType.Highlight, isOpen: false });
31
- }
32
- ngOnDestroy() {
33
- for (const subscription of this.subscriptions) {
34
- subscription.unsubscribe();
35
- }
36
- }
37
- }
38
- /** @nocollapse */ HighlightToolbarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: HighlightToolbarComponent, deps: [{ token: i1.ToolbarEventService }, { token: i2.ToolbarButtonVisibilityService }], target: i0.ɵɵFactoryTarget.Component });
39
- /** @nocollapse */ HighlightToolbarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: HighlightToolbarComponent, selector: "mv-highlight-toolbar", ngImport: i0, template: "<div class=\"redaction\">\n <label class=\"govuk-label redaction-title\" data-l10n-id=\"redaction_options\"\n >Highlight options</label\n >\n\n <button\n id=\"mvDrawBtn\"\n #mvDrawBtn\n class=\"mv-button mv-toolbar__menu-button--draw\"\n title=\"Draw a box\"\n [class.toggled]=\"toolbarEventService.drawModeSubject | async\"\n aria-pressed=\"false\"\n data-l10n-id=\"mvDrawBtn\"\n (click)=\"onClickDrawToggle()\"\n [disabled]=\"redactionAllInProgress\"\n >\n <span data-l10n-id=\"draw_label\">Draw a box</span>\n </button>\n\n <button\n id=\"highlightTextBtn\"\n class=\"mv-button mv-toolbar__menu-button--highlight\"\n title=\"Highlight text\"\n data-l10n-id=\"highlightTextBtn\"\n (click)=\"onHighlight()\"\n [class.toggled]=\"toolbarEventService.highlightModeSubject | async\"\n [disabled]=\"redactionAllInProgress\"\n >\n <span data-l10n-id=\"highlightTextBtn_label\">Highlight text</span>\n </button>\n\n <button\n id=\"mvHighlightFromSearchBtn\"\n title=\"From search\"\n data-l10n-id=\"fromSearchButton\"\n class=\"mv-button redaction-button--search\"\n (click)=\"onAllSearch()\"\n [disabled]=\"redactionAllInProgress\"\n >\n <span style=\"width: 5rem\" data-l10n-id=\"fromSearchButton_label\"\n >From search</span\n >\n </button>\n\n <button\n id=\"mvCloseBtn\"\n #mvCloseBtn\n class=\"mv-button redaction-button--close\"\n title=\"Close Redaction\"\n data-l10n-id=\"mvRedactBtn\"\n (click)=\"onClose()\"\n [disabled]=\"redactionAllInProgress\"\n >\n <span data-l10n-id=\"Close Redaction\">Close Highlight</span>\n </button>\n</div>\n", styles: [""], dependencies: [{ kind: "pipe", type: i3.AsyncPipe, name: "async" }] });
40
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: HighlightToolbarComponent, decorators: [{
41
- type: Component,
42
- args: [{ selector: 'mv-highlight-toolbar', template: "<div class=\"redaction\">\n <label class=\"govuk-label redaction-title\" data-l10n-id=\"redaction_options\"\n >Highlight options</label\n >\n\n <button\n id=\"mvDrawBtn\"\n #mvDrawBtn\n class=\"mv-button mv-toolbar__menu-button--draw\"\n title=\"Draw a box\"\n [class.toggled]=\"toolbarEventService.drawModeSubject | async\"\n aria-pressed=\"false\"\n data-l10n-id=\"mvDrawBtn\"\n (click)=\"onClickDrawToggle()\"\n [disabled]=\"redactionAllInProgress\"\n >\n <span data-l10n-id=\"draw_label\">Draw a box</span>\n </button>\n\n <button\n id=\"highlightTextBtn\"\n class=\"mv-button mv-toolbar__menu-button--highlight\"\n title=\"Highlight text\"\n data-l10n-id=\"highlightTextBtn\"\n (click)=\"onHighlight()\"\n [class.toggled]=\"toolbarEventService.highlightModeSubject | async\"\n [disabled]=\"redactionAllInProgress\"\n >\n <span data-l10n-id=\"highlightTextBtn_label\">Highlight text</span>\n </button>\n\n <button\n id=\"mvHighlightFromSearchBtn\"\n title=\"From search\"\n data-l10n-id=\"fromSearchButton\"\n class=\"mv-button redaction-button--search\"\n (click)=\"onAllSearch()\"\n [disabled]=\"redactionAllInProgress\"\n >\n <span style=\"width: 5rem\" data-l10n-id=\"fromSearchButton_label\"\n >From search</span\n >\n </button>\n\n <button\n id=\"mvCloseBtn\"\n #mvCloseBtn\n class=\"mv-button redaction-button--close\"\n title=\"Close Redaction\"\n data-l10n-id=\"mvRedactBtn\"\n (click)=\"onClose()\"\n [disabled]=\"redactionAllInProgress\"\n >\n <span data-l10n-id=\"Close Redaction\">Close Highlight</span>\n </button>\n</div>\n" }]
43
- }], ctorParameters: function () { return [{ type: i1.ToolbarEventService }, { type: i2.ToolbarButtonVisibilityService }]; } });
44
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGlnaGxpZ2h0LXRvb2xiYXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWVkaWEtdmlld2VyL3NyYy9saWIvdG9vbGJhci9oaWdobGlnaHQtdG9vbGJhci9oaWdobGlnaHQtdG9vbGJhci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tZWRpYS12aWV3ZXIvc3JjL2xpYi90b29sYmFyL2hpZ2hsaWdodC10b29sYmFyL2hpZ2hsaWdodC10b29sYmFyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBQzdELE9BQU8sRUFBYyxVQUFVLEVBQXVCLE1BQU0sMEJBQTBCLENBQUM7Ozs7O0FBWXZGLE1BQU0sT0FBTyx5QkFBeUI7SUFLcEMsWUFBNEIsbUJBQXdDLEVBQ2xELGNBQThDO1FBRHBDLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFDbEQsbUJBQWMsR0FBZCxjQUFjLENBQWdDO1FBSnhELGtCQUFhLEdBQW1CLEVBQUUsQ0FBQztJQUl5QixDQUFDO0lBRXJFLFFBQVE7UUFDTixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsMEJBQTBCLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxFQUFFO1lBQ2pHLElBQUksQ0FBQyxzQkFBc0IsR0FBRyxVQUFVLENBQUM7UUFDM0MsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNOLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLG1CQUFtQixDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxFQUFFLFFBQVEsRUFBRSxVQUFVLENBQUMsU0FBUyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQWdCLENBQUMsQ0FBQztJQUNwSCxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO0lBQ2pELENBQUM7SUFFRCxpQkFBaUI7UUFDZixJQUFJLENBQUMsbUJBQW1CLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDNUMsQ0FBQztJQUVELE9BQU87UUFDTCxJQUFJLENBQUMsbUJBQW1CLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzdELElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDMUQsSUFBSSxDQUFDLG1CQUFtQixDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxFQUFFLFFBQVEsRUFBRSxVQUFVLENBQUMsU0FBUyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQWdCLENBQUMsQ0FBQztJQUNySCxDQUFDO0lBRUQsV0FBVztRQUNULEtBQUssTUFBTSxZQUFZLElBQUksSUFBSSxDQUFDLGFBQWEsRUFBRTtZQUM3QyxZQUFZLENBQUMsV0FBVyxFQUFFLENBQUM7U0FDNUI7SUFDSCxDQUFDOzswSUFwQ1UseUJBQXlCOzhIQUF6Qix5QkFBeUIsNERDYnRDLG9vREF3REE7NEZEM0NhLHlCQUF5QjtrQkFMckMsU0FBUzsrQkFDRSxzQkFBc0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uRGVzdHJveSwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTZWFyY2hNb2RlLCBTZWFyY2hUeXBlLCBUb29sYmFyRXZlbnRTZXJ2aWNlIH0gZnJvbSAnLi4vdG9vbGJhci1ldmVudC5zZXJ2aWNlJztcbmltcG9ydCB7IFRvb2xiYXJCdXR0b25WaXNpYmlsaXR5U2VydmljZSB9IGZyb20gJy4uL3Rvb2xiYXItYnV0dG9uLXZpc2liaWxpdHkuc2VydmljZSc7XG5pbXBvcnQgKiBhcyBmcm9tU3RvcmUgZnJvbSAnLi4vLi4vc3RvcmUvcmVkdWNlcnMvcmVkdWNlcnMnO1xuaW1wb3J0IHsgU3RvcmUsIHNlbGVjdCB9IGZyb20gJ0BuZ3J4L3N0b3JlJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0ICogYXMgZnJvbVJlZGFjdFNlbGVjdG9ycyBmcm9tICcuLi8uLi9zdG9yZS9zZWxlY3RvcnMvcmVkYWN0aW9uLnNlbGVjdG9ycyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ212LWhpZ2hsaWdodC10b29sYmFyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2hpZ2hsaWdodC10b29sYmFyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vaGlnaGxpZ2h0LXRvb2xiYXIuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBIaWdobGlnaHRUb29sYmFyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuXG4gIHByaXZhdGUgc3Vic2NyaXB0aW9uczogU3Vic2NyaXB0aW9uW10gPSBbXTtcbiAgcmVkYWN0aW9uQWxsSW5Qcm9ncmVzczogYm9vbGVhbjtcblxuICBjb25zdHJ1Y3RvcihwdWJsaWMgcmVhZG9ubHkgdG9vbGJhckV2ZW50U2VydmljZTogVG9vbGJhckV2ZW50U2VydmljZSxcbiAgICBwdWJsaWMgcmVhZG9ubHkgdG9vbGJhckJ1dHRvbnM6IFRvb2xiYXJCdXR0b25WaXNpYmlsaXR5U2VydmljZSkgeyB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5zdWJzY3JpcHRpb25zLnB1c2godGhpcy50b29sYmFyRXZlbnRTZXJ2aWNlLnJlZGFjdEFsbEluUHJvZ3Jlc3NTdWJqZWN0LnN1YnNjcmliZShpbnByb2dyZXNzID0+IHtcbiAgICAgIHRoaXMucmVkYWN0aW9uQWxsSW5Qcm9ncmVzcyA9IGlucHJvZ3Jlc3M7XG4gICAgfSkpO1xuICB9XG5cbiAgb25BbGxTZWFyY2goKSB7XG4gICAgdGhpcy50b29sYmFyRXZlbnRTZXJ2aWNlLm9wZW5SZWRhY3Rpb25TZWFyY2gubmV4dCh7IG1vZGVUeXBlOiBTZWFyY2hUeXBlLkhpZ2hsaWdodCwgaXNPcGVuOiB0cnVlIH0gYXMgU2VhcmNoTW9kZSk7XG4gIH1cblxuICBvbkhpZ2hsaWdodCgpIHtcbiAgICB0aGlzLnRvb2xiYXJFdmVudFNlcnZpY2UudG9nZ2xlSGlnaGxpZ2h0TW9kZSgpO1xuICB9XG5cbiAgb25DbGlja0RyYXdUb2dnbGUoKSB7XG4gICAgdGhpcy50b29sYmFyRXZlbnRTZXJ2aWNlLnRvZ2dsZURyYXdNb2RlKCk7XG4gIH1cblxuICBvbkNsb3NlKCkge1xuICAgIHRoaXMudG9vbGJhckV2ZW50U2VydmljZS5oaWdobGlnaHRUb29sYmFyU3ViamVjdC5uZXh0KGZhbHNlKTtcbiAgICB0aGlzLnRvb2xiYXJFdmVudFNlcnZpY2UuaGlnaGxpZ2h0TW9kZVN1YmplY3QubmV4dChmYWxzZSk7XG4gICAgdGhpcy50b29sYmFyRXZlbnRTZXJ2aWNlLm9wZW5SZWRhY3Rpb25TZWFyY2gubmV4dCh7IG1vZGVUeXBlOiBTZWFyY2hUeXBlLkhpZ2hsaWdodCwgaXNPcGVuOiBmYWxzZSB9IGFzIFNlYXJjaE1vZGUpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgZm9yIChjb25zdCBzdWJzY3JpcHRpb24gb2YgdGhpcy5zdWJzY3JpcHRpb25zKSB7XG4gICAgICBzdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICB9XG4gIH1cblxufVxuIiwiPGRpdiBjbGFzcz1cInJlZGFjdGlvblwiPlxuICA8bGFiZWwgY2xhc3M9XCJnb3Z1ay1sYWJlbCByZWRhY3Rpb24tdGl0bGVcIiBkYXRhLWwxMG4taWQ9XCJyZWRhY3Rpb25fb3B0aW9uc1wiXG4gICAgPkhpZ2hsaWdodCBvcHRpb25zPC9sYWJlbFxuICA+XG5cbiAgPGJ1dHRvblxuICAgIGlkPVwibXZEcmF3QnRuXCJcbiAgICAjbXZEcmF3QnRuXG4gICAgY2xhc3M9XCJtdi1idXR0b24gbXYtdG9vbGJhcl9fbWVudS1idXR0b24tLWRyYXdcIlxuICAgIHRpdGxlPVwiRHJhdyBhIGJveFwiXG4gICAgW2NsYXNzLnRvZ2dsZWRdPVwidG9vbGJhckV2ZW50U2VydmljZS5kcmF3TW9kZVN1YmplY3QgfCBhc3luY1wiXG4gICAgYXJpYS1wcmVzc2VkPVwiZmFsc2VcIlxuICAgIGRhdGEtbDEwbi1pZD1cIm12RHJhd0J0blwiXG4gICAgKGNsaWNrKT1cIm9uQ2xpY2tEcmF3VG9nZ2xlKClcIlxuICAgIFtkaXNhYmxlZF09XCJyZWRhY3Rpb25BbGxJblByb2dyZXNzXCJcbiAgPlxuICAgIDxzcGFuIGRhdGEtbDEwbi1pZD1cImRyYXdfbGFiZWxcIj5EcmF3IGEgYm94PC9zcGFuPlxuICA8L2J1dHRvbj5cblxuICA8YnV0dG9uXG4gICAgaWQ9XCJoaWdobGlnaHRUZXh0QnRuXCJcbiAgICBjbGFzcz1cIm12LWJ1dHRvbiBtdi10b29sYmFyX19tZW51LWJ1dHRvbi0taGlnaGxpZ2h0XCJcbiAgICB0aXRsZT1cIkhpZ2hsaWdodCB0ZXh0XCJcbiAgICBkYXRhLWwxMG4taWQ9XCJoaWdobGlnaHRUZXh0QnRuXCJcbiAgICAoY2xpY2spPVwib25IaWdobGlnaHQoKVwiXG4gICAgW2NsYXNzLnRvZ2dsZWRdPVwidG9vbGJhckV2ZW50U2VydmljZS5oaWdobGlnaHRNb2RlU3ViamVjdCB8IGFzeW5jXCJcbiAgICBbZGlzYWJsZWRdPVwicmVkYWN0aW9uQWxsSW5Qcm9ncmVzc1wiXG4gID5cbiAgICA8c3BhbiBkYXRhLWwxMG4taWQ9XCJoaWdobGlnaHRUZXh0QnRuX2xhYmVsXCI+SGlnaGxpZ2h0IHRleHQ8L3NwYW4+XG4gIDwvYnV0dG9uPlxuXG4gIDxidXR0b25cbiAgICBpZD1cIm12SGlnaGxpZ2h0RnJvbVNlYXJjaEJ0blwiXG4gICAgdGl0bGU9XCJGcm9tIHNlYXJjaFwiXG4gICAgZGF0YS1sMTBuLWlkPVwiZnJvbVNlYXJjaEJ1dHRvblwiXG4gICAgY2xhc3M9XCJtdi1idXR0b24gcmVkYWN0aW9uLWJ1dHRvbi0tc2VhcmNoXCJcbiAgICAoY2xpY2spPVwib25BbGxTZWFyY2goKVwiXG4gICAgW2Rpc2FibGVkXT1cInJlZGFjdGlvbkFsbEluUHJvZ3Jlc3NcIlxuICA+XG4gICAgPHNwYW4gc3R5bGU9XCJ3aWR0aDogNXJlbVwiIGRhdGEtbDEwbi1pZD1cImZyb21TZWFyY2hCdXR0b25fbGFiZWxcIlxuICAgICAgPkZyb20gc2VhcmNoPC9zcGFuXG4gICAgPlxuICA8L2J1dHRvbj5cblxuICA8YnV0dG9uXG4gICAgaWQ9XCJtdkNsb3NlQnRuXCJcbiAgICAjbXZDbG9zZUJ0blxuICAgIGNsYXNzPVwibXYtYnV0dG9uIHJlZGFjdGlvbi1idXR0b24tLWNsb3NlXCJcbiAgICB0aXRsZT1cIkNsb3NlIFJlZGFjdGlvblwiXG4gICAgZGF0YS1sMTBuLWlkPVwibXZSZWRhY3RCdG5cIlxuICAgIChjbGljayk9XCJvbkNsb3NlKClcIlxuICAgIFtkaXNhYmxlZF09XCJyZWRhY3Rpb25BbGxJblByb2dyZXNzXCJcbiAgPlxuICAgIDxzcGFuIGRhdGEtbDEwbi1pZD1cIkNsb3NlIFJlZGFjdGlvblwiPkNsb3NlIEhpZ2hsaWdodDwvc3Bhbj5cbiAgPC9idXR0b24+XG48L2Rpdj5cbiJdfQ==