@hmcts/media-viewer 2.9.4-RC.8 → 2.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (477) hide show
  1. package/assets/all.scss +1 -1
  2. package/assets/sass/tags.scss +1 -1
  3. package/assets/sass/toolbar/main-toolbar.scss +7 -6
  4. package/esm2020/hmcts-media-viewer.mjs +5 -0
  5. package/esm2020/lib/annotations/annotation-set/annotation-create/box-highlight-create/box-highlight-create.component.mjs +116 -0
  6. package/esm2020/lib/annotations/annotation-set/annotation-create/highlight-create/highlight-create.directive.mjs +109 -0
  7. package/esm2020/lib/annotations/annotation-set/annotation-create/highlight-create/highlight-create.service.mjs +75 -0
  8. package/esm2020/lib/annotations/annotation-set/annotation-set.component.mjs +50 -0
  9. package/esm2020/lib/annotations/annotation-set/annotation-view/annotation-view.component.mjs +94 -0
  10. package/esm2020/lib/annotations/annotation-set/annotation-view/rectangle/rectangle.component.mjs +116 -0
  11. package/esm2020/lib/annotations/annotation-set/ctx-toolbar/ctx-toolbar.component.mjs +118 -0
  12. package/esm2020/lib/annotations/annotation-set/metadata-layer/metadata-layer.component.mjs +87 -0
  13. package/esm2020/lib/annotations/annotations.module.mjs +158 -0
  14. package/esm2020/lib/annotations/comment-set/comment/comment.component.mjs +176 -0
  15. package/esm2020/lib/annotations/comment-set/comment/comment.service.mjs +50 -0
  16. package/esm2020/lib/annotations/comment-set/comment/text-highlight/text-highlight.directive.mjs +47 -0
  17. package/esm2020/lib/annotations/comment-set/comment/textarea-auto-expand/textarea-auto-expand.directive.mjs +31 -0
  18. package/esm2020/lib/annotations/comment-set/comment-navigate/comments-navigate.component.mjs +91 -0
  19. package/esm2020/lib/annotations/comment-set/comment-set-header/comment-filter/comment-filter.component.mjs +61 -0
  20. package/esm2020/lib/annotations/comment-set/comment-set-header/comment-search/comment-search.component.mjs +53 -0
  21. package/esm2020/lib/annotations/comment-set/comment-set-header/comment-set-header.component.mjs +68 -0
  22. package/esm2020/lib/annotations/comment-set/comment-set-render.service.mjs +54 -0
  23. package/esm2020/lib/annotations/comment-set/comment-set.component.mjs +123 -0
  24. package/esm2020/lib/annotations/comments-summary/comments-summary.component.mjs +113 -0
  25. package/esm2020/lib/annotations/pipes/date/date.pipe.mjs +26 -0
  26. package/esm2020/lib/annotations/pipes/filter/filter.pipe.mjs +32 -0
  27. package/esm2020/lib/annotations/pipes/unsnake/unsnake.pipe.mjs +16 -0
  28. package/esm2020/lib/annotations/services/annotation-api/annotation-api.service.mjs +58 -0
  29. package/esm2020/lib/annotations/services/bookmarks-api/bookmarks-api.service.mjs +45 -0
  30. package/esm2020/lib/annotations/services/tags/tags.services.mjs +41 -0
  31. package/esm2020/lib/annotations/tags/tags.component.mjs +53 -0
  32. package/esm2020/lib/bookmark/components/bookmark-icons.component.mjs +25 -0
  33. package/esm2020/lib/icp/confirm-exit/confirm-action-dialog.component.mjs +22 -0
  34. package/esm2020/lib/icp/icp-follower.service.mjs +60 -0
  35. package/esm2020/lib/icp/icp-presenter.service.mjs +55 -0
  36. package/esm2020/lib/icp/icp-session-api.service.mjs +21 -0
  37. package/esm2020/lib/icp/icp-update.service.mjs +57 -0
  38. package/esm2020/lib/icp/icp.service.mjs +93 -0
  39. package/esm2020/lib/icp/participants-list/participants-list.component.mjs +30 -0
  40. package/esm2020/lib/icp/socket.service.mjs +118 -0
  41. package/esm2020/lib/media-viewer.component.mjs +244 -0
  42. package/esm2020/lib/media-viewer.module.mjs +151 -0
  43. package/esm2020/lib/print.service.mjs +30 -0
  44. package/esm2020/lib/redaction/components/redaction.component.mjs +91 -0
  45. package/esm2020/lib/redaction/services/redaction-api.service.mjs +50 -0
  46. package/esm2020/lib/shared/gov-uk-date/gov-uk-date.component.mjs +28 -0
  47. package/esm2020/lib/shared/gov-uk-error-message/gov-uk-error-message.component.mjs +34 -0
  48. package/esm2020/lib/shared/gov-uk-fieldset/gov-uk-fieldset.component.mjs +63 -0
  49. package/esm2020/lib/shared/gov-uk-label/gov-uk-label.component.mjs +44 -0
  50. package/esm2020/lib/shared/shared.module.mjs +53 -0
  51. package/esm2020/lib/shared/util/services/number.helper.service.mjs +23 -0
  52. package/{esm2015/lib/store/bookmarks-store-utils.js → esm2020/lib/store/bookmarks-store-utils.mjs} +1 -3
  53. package/esm2020/lib/store/effects/annotation.effects.mjs +44 -0
  54. package/esm2020/lib/store/effects/bookmarks.effects.mjs +44 -0
  55. package/esm2020/lib/store/effects/document.effects.mjs +44 -0
  56. package/esm2020/lib/store/effects/icp.effects.mjs +26 -0
  57. package/esm2020/lib/store/effects/redaction.effects.mjs +67 -0
  58. package/esm2020/lib/store/reducers/annotations.reducer.mjs +183 -0
  59. package/esm2020/lib/store/reducers/bookmarks.reducer.mjs +116 -0
  60. package/esm2020/lib/store/reducers/document.reducer.mjs +135 -0
  61. package/esm2020/lib/store/reducers/icp.reducer.mjs +56 -0
  62. package/esm2020/lib/store/reducers/redaction.reducer.mjs +116 -0
  63. package/esm2020/lib/store/reducers/tags.reducer.mjs +93 -0
  64. package/esm2020/lib/store/selectors/annotation.selectors.mjs +81 -0
  65. package/esm2020/lib/store/selectors/bookmark.selectors.mjs +36 -0
  66. package/{esm2015/lib/store/selectors/document.selectors.js → esm2020/lib/store/selectors/document.selectors.mjs} +3 -6
  67. package/esm2020/lib/store/selectors/icp.selectors.mjs +13 -0
  68. package/{esm2015/lib/store/selectors/redaction.selectors.js → esm2020/lib/store/selectors/redaction.selectors.mjs} +6 -10
  69. package/{esm2015/lib/store/selectors/tag.selectors.js → esm2020/lib/store/selectors/tag.selectors.mjs} +4 -7
  70. package/esm2020/lib/store/store-utils.mjs +131 -0
  71. package/esm2020/lib/toolbar/icp-toolbar/icp-toolbar.component.mjs +41 -0
  72. package/esm2020/lib/toolbar/main-toolbar/main-toolbar.component.mjs +188 -0
  73. package/esm2020/lib/toolbar/redaction-search-bar/redaction-search-bar.component.mjs +199 -0
  74. package/esm2020/lib/toolbar/redaction-toolbar/redaction-toolbar.component.mjs +66 -0
  75. package/esm2020/lib/toolbar/search-bar/search-bar.component.mjs +105 -0
  76. package/esm2020/lib/toolbar/toolbar-button-visibility.service.mjs +94 -0
  77. package/{esm2015/lib/toolbar/toolbar-event.service.js → esm2020/lib/toolbar/toolbar-event.service.mjs} +7 -5
  78. package/esm2020/lib/toolbar/toolbar.module.mjs +67 -0
  79. package/esm2020/lib/viewers/convertible-content-viewer/convertible-content-viewer.component.mjs +78 -0
  80. package/esm2020/lib/viewers/convertible-content-viewer/document-conversion-api.service.mjs +22 -0
  81. package/esm2020/lib/viewers/grab-n-drag.directive.mjs +57 -0
  82. package/esm2020/lib/viewers/image-viewer/image-viewer.component.mjs +166 -0
  83. package/esm2020/lib/viewers/multimedia-player/multimedia-player.component.mjs +58 -0
  84. package/esm2020/lib/viewers/pdf-viewer/pdf-js/pdf-js-wrapper.mjs +193 -0
  85. package/esm2020/lib/viewers/pdf-viewer/pdf-js/pdf-js-wrapper.provider.mjs +40 -0
  86. package/esm2020/lib/viewers/pdf-viewer/pdf-viewer.component.mjs +230 -0
  87. package/esm2020/lib/viewers/pdf-viewer/side-bar/bookmarks/bookmarks.component.mjs +192 -0
  88. package/esm2020/lib/viewers/pdf-viewer/side-bar/outline-item/outline-item.component.mjs +49 -0
  89. package/esm2020/lib/viewers/pdf-viewer/side-bar/side-bar.component.mjs +77 -0
  90. package/esm2020/lib/viewers/rotation-persist/rotation-api.service.mjs +27 -0
  91. package/esm2020/lib/viewers/rotation-persist/rotation-persist.directive.mjs +64 -0
  92. package/esm2020/lib/viewers/unsupported-viewer/unsupported-viewer.component.mjs +49 -0
  93. package/esm2020/lib/viewers/viewer-event.service.mjs +30 -0
  94. package/esm2020/lib/viewers/viewer-util.service.mjs +20 -0
  95. package/esm2020/public_api.mjs +32 -0
  96. package/fesm2015/hmcts-media-viewer.mjs +6602 -0
  97. package/fesm2015/hmcts-media-viewer.mjs.map +1 -0
  98. package/fesm2020/hmcts-media-viewer.mjs +6893 -0
  99. package/fesm2020/hmcts-media-viewer.mjs.map +1 -0
  100. package/hmcts-media-viewer.d.ts.map +1 -1
  101. package/index.d.ts +6 -0
  102. package/lib/annotations/annotation-set/annotation-create/box-highlight-create/box-highlight-create.component.d.ts +3 -0
  103. package/lib/annotations/annotation-set/annotation-create/box-highlight-create/box-highlight-create.component.d.ts.map +1 -1
  104. package/lib/annotations/annotation-set/annotation-create/highlight-create/highlight-create.directive.d.ts +3 -0
  105. package/lib/annotations/annotation-set/annotation-create/highlight-create/highlight-create.directive.d.ts.map +1 -1
  106. package/lib/annotations/annotation-set/annotation-create/highlight-create/highlight-create.service.d.ts +3 -0
  107. package/lib/annotations/annotation-set/annotation-create/highlight-create/highlight-create.service.d.ts.map +1 -1
  108. package/lib/annotations/annotation-set/annotation-set.component.d.ts +3 -0
  109. package/lib/annotations/annotation-set/annotation-set.component.d.ts.map +1 -1
  110. package/lib/annotations/annotation-set/annotation-view/annotation-view.component.d.ts +3 -0
  111. package/lib/annotations/annotation-set/annotation-view/annotation-view.component.d.ts.map +1 -1
  112. package/lib/annotations/annotation-set/annotation-view/rectangle/rectangle.component.d.ts +5 -2
  113. package/lib/annotations/annotation-set/annotation-view/rectangle/rectangle.component.d.ts.map +1 -1
  114. package/lib/annotations/annotation-set/ctx-toolbar/ctx-toolbar.component.d.ts +3 -0
  115. package/lib/annotations/annotation-set/ctx-toolbar/ctx-toolbar.component.d.ts.map +1 -1
  116. package/lib/annotations/annotation-set/metadata-layer/metadata-layer.component.d.ts +3 -0
  117. package/lib/annotations/annotation-set/metadata-layer/metadata-layer.component.d.ts.map +1 -1
  118. package/lib/annotations/annotations.module.d.ts +32 -0
  119. package/lib/annotations/annotations.module.d.ts.map +1 -1
  120. package/lib/annotations/comment-set/comment/comment.component.d.ts +3 -0
  121. package/lib/annotations/comment-set/comment/comment.component.d.ts.map +1 -1
  122. package/lib/annotations/comment-set/comment/comment.service.d.ts +5 -2
  123. package/lib/annotations/comment-set/comment/comment.service.d.ts.map +1 -1
  124. package/lib/annotations/comment-set/comment/text-highlight/text-highlight.directive.d.ts +3 -0
  125. package/lib/annotations/comment-set/comment/text-highlight/text-highlight.directive.d.ts.map +1 -1
  126. package/lib/annotations/comment-set/comment/textarea-auto-expand/textarea-auto-expand.directive.d.ts +3 -0
  127. package/lib/annotations/comment-set/comment/textarea-auto-expand/textarea-auto-expand.directive.d.ts.map +1 -1
  128. package/lib/annotations/comment-set/comment-navigate/comments-navigate.component.d.ts +3 -0
  129. package/lib/annotations/comment-set/comment-navigate/comments-navigate.component.d.ts.map +1 -1
  130. package/lib/annotations/comment-set/comment-set-header/comment-filter/comment-filter.component.d.ts +6 -3
  131. package/lib/annotations/comment-set/comment-set-header/comment-filter/comment-filter.component.d.ts.map +1 -1
  132. package/lib/annotations/comment-set/comment-set-header/comment-search/comment-search.component.d.ts +3 -0
  133. package/lib/annotations/comment-set/comment-set-header/comment-search/comment-search.component.d.ts.map +1 -1
  134. package/lib/annotations/comment-set/comment-set-header/comment-set-header.component.d.ts +3 -0
  135. package/lib/annotations/comment-set/comment-set-header/comment-set-header.component.d.ts.map +1 -1
  136. package/lib/annotations/comment-set/comment-set-render.service.d.ts +3 -0
  137. package/lib/annotations/comment-set/comment-set-render.service.d.ts.map +1 -1
  138. package/lib/annotations/comment-set/comment-set.component.d.ts +3 -0
  139. package/lib/annotations/comment-set/comment-set.component.d.ts.map +1 -1
  140. package/lib/annotations/comments-summary/comments-summary.component.d.ts +6 -3
  141. package/lib/annotations/comments-summary/comments-summary.component.d.ts.map +1 -1
  142. package/lib/annotations/pipes/date/date.pipe.d.ts +3 -0
  143. package/lib/annotations/pipes/date/date.pipe.d.ts.map +1 -1
  144. package/lib/annotations/pipes/filter/filter.pipe.d.ts +3 -0
  145. package/lib/annotations/pipes/filter/filter.pipe.d.ts.map +1 -1
  146. package/lib/annotations/pipes/unsnake/unsnake.pipe.d.ts +3 -0
  147. package/lib/annotations/pipes/unsnake/unsnake.pipe.d.ts.map +1 -1
  148. package/lib/annotations/services/annotation-api/annotation-api.service.d.ts +3 -0
  149. package/lib/annotations/services/annotation-api/annotation-api.service.d.ts.map +1 -1
  150. package/lib/annotations/services/bookmarks-api/bookmarks-api.service.d.ts +3 -0
  151. package/lib/annotations/services/bookmarks-api/bookmarks-api.service.d.ts.map +1 -1
  152. package/lib/annotations/services/tags/tags.services.d.ts +3 -0
  153. package/lib/annotations/services/tags/tags.services.d.ts.map +1 -1
  154. package/lib/annotations/tags/tags.component.d.ts +6 -3
  155. package/lib/annotations/tags/tags.component.d.ts.map +1 -1
  156. package/lib/bookmark/components/bookmark-icons.component.d.ts +3 -0
  157. package/lib/bookmark/components/bookmark-icons.component.d.ts.map +1 -1
  158. package/lib/icp/confirm-exit/confirm-action-dialog.component.d.ts +3 -0
  159. package/lib/icp/confirm-exit/confirm-action-dialog.component.d.ts.map +1 -1
  160. package/lib/icp/icp-follower.service.d.ts +3 -0
  161. package/lib/icp/icp-follower.service.d.ts.map +1 -1
  162. package/lib/icp/icp-presenter.service.d.ts +3 -0
  163. package/lib/icp/icp-presenter.service.d.ts.map +1 -1
  164. package/lib/icp/icp-session-api.service.d.ts +3 -0
  165. package/lib/icp/icp-session-api.service.d.ts.map +1 -1
  166. package/lib/icp/icp-update.service.d.ts +3 -0
  167. package/lib/icp/icp-update.service.d.ts.map +1 -1
  168. package/lib/icp/icp.service.d.ts +3 -0
  169. package/lib/icp/icp.service.d.ts.map +1 -1
  170. package/lib/icp/participants-list/participants-list.component.d.ts +3 -0
  171. package/lib/icp/participants-list/participants-list.component.d.ts.map +1 -1
  172. package/lib/icp/socket.service.d.ts +3 -0
  173. package/lib/icp/socket.service.d.ts.map +1 -1
  174. package/lib/media-viewer.component.d.ts +3 -0
  175. package/lib/media-viewer.component.d.ts.map +1 -1
  176. package/lib/media-viewer.module.d.ts +31 -0
  177. package/lib/media-viewer.module.d.ts.map +1 -1
  178. package/lib/print.service.d.ts +3 -0
  179. package/lib/print.service.d.ts.map +1 -1
  180. package/lib/redaction/components/redaction.component.d.ts +3 -0
  181. package/lib/redaction/components/redaction.component.d.ts.map +1 -1
  182. package/lib/redaction/services/redaction-api.service.d.ts +3 -0
  183. package/lib/redaction/services/redaction-api.service.d.ts.map +1 -1
  184. package/lib/shared/gov-uk-date/gov-uk-date.component.d.ts +3 -0
  185. package/lib/shared/gov-uk-date/gov-uk-date.component.d.ts.map +1 -1
  186. package/lib/shared/gov-uk-error-message/gov-uk-error-message.component.d.ts +3 -0
  187. package/lib/shared/gov-uk-error-message/gov-uk-error-message.component.d.ts.map +1 -1
  188. package/lib/shared/gov-uk-fieldset/gov-uk-fieldset.component.d.ts +3 -0
  189. package/lib/shared/gov-uk-fieldset/gov-uk-fieldset.component.d.ts.map +1 -1
  190. package/lib/shared/gov-uk-label/gov-uk-label.component.d.ts +3 -0
  191. package/lib/shared/gov-uk-label/gov-uk-label.component.d.ts.map +1 -1
  192. package/lib/shared/shared.module.d.ts +11 -0
  193. package/lib/shared/shared.module.d.ts.map +1 -1
  194. package/lib/shared/util/services/number.helper.service.d.ts +3 -0
  195. package/lib/shared/util/services/number.helper.service.d.ts.map +1 -1
  196. package/lib/store/actions/annotation.actions.d.ts +1 -1
  197. package/lib/store/actions/annotation.actions.d.ts.map +1 -1
  198. package/lib/store/actions/bookmark.actions.d.ts +1 -1
  199. package/lib/store/actions/bookmark.actions.d.ts.map +1 -1
  200. package/lib/store/actions/document.actions.d.ts +1 -1
  201. package/lib/store/actions/document.actions.d.ts.map +1 -1
  202. package/lib/store/actions/icp.actions.d.ts +1 -1
  203. package/lib/store/actions/icp.actions.d.ts.map +1 -1
  204. package/lib/store/actions/redaction.actions.d.ts +1 -1
  205. package/lib/store/actions/redaction.actions.d.ts.map +1 -1
  206. package/lib/store/actions/tag.actions.d.ts +1 -1
  207. package/lib/store/actions/tag.actions.d.ts.map +1 -1
  208. package/lib/store/effects/annotation.effects.d.ts +6 -3
  209. package/lib/store/effects/annotation.effects.d.ts.map +1 -1
  210. package/lib/store/effects/bookmarks.effects.d.ts +8 -5
  211. package/lib/store/effects/bookmarks.effects.d.ts.map +1 -1
  212. package/lib/store/effects/document.effects.d.ts +6 -3
  213. package/lib/store/effects/document.effects.d.ts.map +1 -1
  214. package/lib/store/effects/icp.effects.d.ts +5 -2
  215. package/lib/store/effects/icp.effects.d.ts.map +1 -1
  216. package/lib/store/effects/redaction.effects.d.ts +9 -6
  217. package/lib/store/effects/redaction.effects.d.ts.map +1 -1
  218. package/lib/store/selectors/annotation.selectors.d.ts +70 -27
  219. package/lib/store/selectors/annotation.selectors.d.ts.map +1 -1
  220. package/lib/store/selectors/bookmark.selectors.d.ts +18 -10
  221. package/lib/store/selectors/bookmark.selectors.d.ts.map +1 -1
  222. package/lib/store/selectors/document.selectors.d.ts +13 -11
  223. package/lib/store/selectors/document.selectors.d.ts.map +1 -1
  224. package/lib/store/selectors/icp.selectors.d.ts +9 -8
  225. package/lib/store/selectors/icp.selectors.d.ts.map +1 -1
  226. package/lib/store/selectors/redaction.selectors.d.ts +17 -11
  227. package/lib/store/selectors/redaction.selectors.d.ts.map +1 -1
  228. package/lib/store/selectors/tag.selectors.d.ts +14 -12
  229. package/lib/store/selectors/tag.selectors.d.ts.map +1 -1
  230. package/lib/toolbar/icp-toolbar/icp-toolbar.component.d.ts +3 -0
  231. package/lib/toolbar/icp-toolbar/icp-toolbar.component.d.ts.map +1 -1
  232. package/lib/toolbar/main-toolbar/main-toolbar.component.d.ts +4 -0
  233. package/lib/toolbar/main-toolbar/main-toolbar.component.d.ts.map +1 -1
  234. package/lib/toolbar/redaction-search-bar/redaction-search-bar.component.d.ts +5 -2
  235. package/lib/toolbar/redaction-search-bar/redaction-search-bar.component.d.ts.map +1 -1
  236. package/lib/toolbar/redaction-toolbar/redaction-toolbar.component.d.ts +3 -0
  237. package/lib/toolbar/redaction-toolbar/redaction-toolbar.component.d.ts.map +1 -1
  238. package/lib/toolbar/search-bar/search-bar.component.d.ts +3 -0
  239. package/lib/toolbar/search-bar/search-bar.component.d.ts.map +1 -1
  240. package/lib/toolbar/toolbar-button-visibility.service.d.ts +3 -0
  241. package/lib/toolbar/toolbar-button-visibility.service.d.ts.map +1 -1
  242. package/lib/toolbar/toolbar-event.service.d.ts +5 -2
  243. package/lib/toolbar/toolbar-event.service.d.ts.map +1 -1
  244. package/lib/toolbar/toolbar.module.d.ts +13 -0
  245. package/lib/toolbar/toolbar.module.d.ts.map +1 -1
  246. package/lib/viewers/convertible-content-viewer/convertible-content-viewer.component.d.ts +3 -0
  247. package/lib/viewers/convertible-content-viewer/convertible-content-viewer.component.d.ts.map +1 -1
  248. package/lib/viewers/convertible-content-viewer/document-conversion-api.service.d.ts +3 -0
  249. package/lib/viewers/convertible-content-viewer/document-conversion-api.service.d.ts.map +1 -1
  250. package/lib/viewers/grab-n-drag.directive.d.ts +3 -0
  251. package/lib/viewers/grab-n-drag.directive.d.ts.map +1 -1
  252. package/lib/viewers/image-viewer/image-viewer.component.d.ts +3 -0
  253. package/lib/viewers/image-viewer/image-viewer.component.d.ts.map +1 -1
  254. package/lib/viewers/multimedia-player/multimedia-player.component.d.ts +3 -0
  255. package/lib/viewers/multimedia-player/multimedia-player.component.d.ts.map +1 -1
  256. package/lib/viewers/pdf-viewer/pdf-js/pdf-js-wrapper.provider.d.ts +3 -0
  257. package/lib/viewers/pdf-viewer/pdf-js/pdf-js-wrapper.provider.d.ts.map +1 -1
  258. package/lib/viewers/pdf-viewer/pdf-viewer.component.d.ts +3 -0
  259. package/lib/viewers/pdf-viewer/pdf-viewer.component.d.ts.map +1 -1
  260. package/lib/viewers/pdf-viewer/side-bar/bookmarks/bookmarks.component.d.ts +5 -2
  261. package/lib/viewers/pdf-viewer/side-bar/bookmarks/bookmarks.component.d.ts.map +1 -1
  262. package/lib/viewers/pdf-viewer/side-bar/outline-item/outline-item.component.d.ts +3 -0
  263. package/lib/viewers/pdf-viewer/side-bar/outline-item/outline-item.component.d.ts.map +1 -1
  264. package/lib/viewers/pdf-viewer/side-bar/side-bar.component.d.ts +3 -0
  265. package/lib/viewers/pdf-viewer/side-bar/side-bar.component.d.ts.map +1 -1
  266. package/lib/viewers/rotation-persist/rotation-api.service.d.ts +3 -0
  267. package/lib/viewers/rotation-persist/rotation-api.service.d.ts.map +1 -1
  268. package/lib/viewers/rotation-persist/rotation-persist.directive.d.ts +3 -0
  269. package/lib/viewers/rotation-persist/rotation-persist.directive.d.ts.map +1 -1
  270. package/lib/viewers/unsupported-viewer/unsupported-viewer.component.d.ts +3 -0
  271. package/lib/viewers/unsupported-viewer/unsupported-viewer.component.d.ts.map +1 -1
  272. package/lib/viewers/viewer-event.service.d.ts +3 -0
  273. package/lib/viewers/viewer-event.service.d.ts.map +1 -1
  274. package/lib/viewers/viewer-util.service.d.ts +3 -0
  275. package/lib/viewers/viewer-util.service.d.ts.map +1 -1
  276. package/package.json +34 -22
  277. package/public_api.d.ts +1 -0
  278. package/public_api.d.ts.map +1 -1
  279. package/bundles/hmcts-media-viewer.umd.js +0 -7539
  280. package/bundles/hmcts-media-viewer.umd.js.map +0 -1
  281. package/bundles/hmcts-media-viewer.umd.min.js +0 -2
  282. package/bundles/hmcts-media-viewer.umd.min.js.map +0 -1
  283. package/esm2015/hmcts-media-viewer.js +0 -64
  284. package/esm2015/lib/annotations/annotation-set/annotation-create/box-highlight-create/box-highlight-create.component.js +0 -113
  285. package/esm2015/lib/annotations/annotation-set/annotation-create/highlight-create/highlight-create.directive.js +0 -111
  286. package/esm2015/lib/annotations/annotation-set/annotation-create/highlight-create/highlight-create.service.js +0 -61
  287. package/esm2015/lib/annotations/annotation-set/annotation-set.component.js +0 -47
  288. package/esm2015/lib/annotations/annotation-set/annotation-view/annotation-view.component.js +0 -86
  289. package/esm2015/lib/annotations/annotation-set/annotation-view/rectangle/rectangle.component.js +0 -108
  290. package/esm2015/lib/annotations/annotation-set/ctx-toolbar/ctx-toolbar.component.js +0 -107
  291. package/esm2015/lib/annotations/annotation-set/metadata-layer/metadata-layer.component.js +0 -81
  292. package/esm2015/lib/annotations/annotations.module.js +0 -103
  293. package/esm2015/lib/annotations/comment-set/comment/comment.component.js +0 -162
  294. package/esm2015/lib/annotations/comment-set/comment/comment.service.js +0 -47
  295. package/esm2015/lib/annotations/comment-set/comment/text-highlight/text-highlight.directive.js +0 -48
  296. package/esm2015/lib/annotations/comment-set/comment/textarea-auto-expand/textarea-auto-expand.directive.js +0 -31
  297. package/esm2015/lib/annotations/comment-set/comment-navigate/comments-navigate.component.js +0 -95
  298. package/esm2015/lib/annotations/comment-set/comment-set-header/comment-filter/comment-filter.component.js +0 -60
  299. package/esm2015/lib/annotations/comment-set/comment-set-header/comment-search/comment-search.component.js +0 -53
  300. package/esm2015/lib/annotations/comment-set/comment-set-header/comment-set-header.component.js +0 -68
  301. package/esm2015/lib/annotations/comment-set/comment-set-render.service.js +0 -51
  302. package/esm2015/lib/annotations/comment-set/comment-set.component.js +0 -110
  303. package/esm2015/lib/annotations/comments-summary/comments-summary.component.js +0 -106
  304. package/esm2015/lib/annotations/pipes/date/date.pipe.js +0 -22
  305. package/esm2015/lib/annotations/pipes/filter/filter.pipe.js +0 -28
  306. package/esm2015/lib/annotations/pipes/unsnake/unsnake.pipe.js +0 -12
  307. package/esm2015/lib/annotations/services/annotation-api/annotation-api.service.js +0 -59
  308. package/esm2015/lib/annotations/services/bookmarks-api/bookmarks-api.service.js +0 -46
  309. package/esm2015/lib/annotations/services/tags/tags.services.js +0 -36
  310. package/esm2015/lib/annotations/tags/tags.component.js +0 -52
  311. package/esm2015/lib/bookmark/components/bookmark-icons.component.js +0 -26
  312. package/esm2015/lib/icp/confirm-exit/confirm-action-dialog.component.js +0 -25
  313. package/esm2015/lib/icp/icp-follower.service.js +0 -63
  314. package/esm2015/lib/icp/icp-presenter.service.js +0 -57
  315. package/esm2015/lib/icp/icp-session-api.service.js +0 -22
  316. package/esm2015/lib/icp/icp-update.service.js +0 -56
  317. package/esm2015/lib/icp/icp.service.js +0 -98
  318. package/esm2015/lib/icp/participants-list/participants-list.component.js +0 -32
  319. package/esm2015/lib/icp/socket.service.js +0 -117
  320. package/esm2015/lib/media-viewer.component.js +0 -210
  321. package/esm2015/lib/media-viewer.module.js +0 -102
  322. package/esm2015/lib/print.service.js +0 -25
  323. package/esm2015/lib/redaction/components/redaction.component.js +0 -97
  324. package/esm2015/lib/redaction/services/redaction-api.service.js +0 -51
  325. package/esm2015/lib/shared/gov-uk-date/gov-uk-date.component.js +0 -21
  326. package/esm2015/lib/shared/gov-uk-error-message/gov-uk-error-message.component.js +0 -27
  327. package/esm2015/lib/shared/gov-uk-fieldset/gov-uk-fieldset.component.js +0 -42
  328. package/esm2015/lib/shared/gov-uk-label/gov-uk-label.component.js +0 -32
  329. package/esm2015/lib/shared/shared.module.js +0 -34
  330. package/esm2015/lib/shared/util/services/number.helper.service.js +0 -23
  331. package/esm2015/lib/store/effects/annotation.effects.js +0 -55
  332. package/esm2015/lib/store/effects/bookmarks.effects.js +0 -66
  333. package/esm2015/lib/store/effects/document.effects.js +0 -59
  334. package/esm2015/lib/store/effects/icp.effects.js +0 -37
  335. package/esm2015/lib/store/effects/redaction.effects.js +0 -94
  336. package/esm2015/lib/store/reducers/annotations.reducer.js +0 -115
  337. package/esm2015/lib/store/reducers/bookmarks.reducer.js +0 -80
  338. package/esm2015/lib/store/reducers/document.reducer.js +0 -100
  339. package/esm2015/lib/store/reducers/icp.reducer.js +0 -40
  340. package/esm2015/lib/store/reducers/redaction.reducer.js +0 -75
  341. package/esm2015/lib/store/reducers/tags.reducer.js +0 -67
  342. package/esm2015/lib/store/selectors/annotation.selectors.js +0 -84
  343. package/esm2015/lib/store/selectors/bookmark.selectors.js +0 -39
  344. package/esm2015/lib/store/selectors/icp.selectors.js +0 -18
  345. package/esm2015/lib/store/store-utils.js +0 -105
  346. package/esm2015/lib/toolbar/icp-toolbar/icp-toolbar.component.js +0 -43
  347. package/esm2015/lib/toolbar/main-toolbar/main-toolbar.component.js +0 -170
  348. package/esm2015/lib/toolbar/redaction-search-bar/redaction-search-bar.component.js +0 -201
  349. package/esm2015/lib/toolbar/redaction-toolbar/redaction-toolbar.component.js +0 -70
  350. package/esm2015/lib/toolbar/search-bar/search-bar.component.js +0 -102
  351. package/esm2015/lib/toolbar/toolbar-button-visibility.service.js +0 -92
  352. package/esm2015/lib/toolbar/toolbar.module.js +0 -45
  353. package/esm2015/lib/viewers/convertible-content-viewer/convertible-content-viewer.component.js +0 -72
  354. package/esm2015/lib/viewers/convertible-content-viewer/document-conversion-api.service.js +0 -23
  355. package/esm2015/lib/viewers/grab-n-drag.directive.js +0 -51
  356. package/esm2015/lib/viewers/image-viewer/image-viewer.component.js +0 -164
  357. package/esm2015/lib/viewers/multimedia-player/multimedia-player.component.js +0 -54
  358. package/esm2015/lib/viewers/pdf-viewer/pdf-js/pdf-js-wrapper.js +0 -203
  359. package/esm2015/lib/viewers/pdf-viewer/pdf-js/pdf-js-wrapper.provider.js +0 -43
  360. package/esm2015/lib/viewers/pdf-viewer/pdf-viewer.component.js +0 -220
  361. package/esm2015/lib/viewers/pdf-viewer/side-bar/bookmarks/bookmarks.component.js +0 -179
  362. package/esm2015/lib/viewers/pdf-viewer/side-bar/outline-item/outline-item.component.js +0 -44
  363. package/esm2015/lib/viewers/pdf-viewer/side-bar/side-bar.component.js +0 -72
  364. package/esm2015/lib/viewers/rotation-persist/rotation-api.service.js +0 -28
  365. package/esm2015/lib/viewers/rotation-persist/rotation-persist.directive.js +0 -67
  366. package/esm2015/lib/viewers/unsupported-viewer/unsupported-viewer.component.js +0 -47
  367. package/esm2015/lib/viewers/viewer-event.service.js +0 -30
  368. package/esm2015/lib/viewers/viewer-util.service.js +0 -23
  369. package/esm2015/public_api.js +0 -31
  370. package/fesm2015/hmcts-media-viewer.js +0 -6572
  371. package/fesm2015/hmcts-media-viewer.js.map +0 -1
  372. package/hmcts-media-viewer.d.ts +0 -69
  373. package/hmcts-media-viewer.metadata.json +0 -1
  374. package/lib/annotations/annotation-set/annotation-create/box-highlight-create/box-highlight-create.component.ngfactory.d.ts.map +0 -1
  375. package/lib/annotations/annotation-set/annotation-create/highlight-create/highlight-create.directive.ngfactory.d.ts.map +0 -1
  376. package/lib/annotations/annotation-set/annotation-create/highlight-create/highlight-create.service.ngfactory.d.ts.map +0 -1
  377. package/lib/annotations/annotation-set/annotation-set.component.ngfactory.d.ts.map +0 -1
  378. package/lib/annotations/annotation-set/annotation-view/annotation-view.component.ngfactory.d.ts.map +0 -1
  379. package/lib/annotations/annotation-set/annotation-view/rectangle/rectangle.component.ngfactory.d.ts.map +0 -1
  380. package/lib/annotations/annotation-set/ctx-toolbar/ctx-toolbar.component.ngfactory.d.ts.map +0 -1
  381. package/lib/annotations/annotation-set/metadata-layer/metadata-layer.component.ngfactory.d.ts.map +0 -1
  382. package/lib/annotations/annotations.module.ngfactory.d.ts.map +0 -1
  383. package/lib/annotations/comment-set/comment/comment.component.ngfactory.d.ts.map +0 -1
  384. package/lib/annotations/comment-set/comment/comment.service.ngfactory.d.ts.map +0 -1
  385. package/lib/annotations/comment-set/comment/text-highlight/text-highlight.directive.ngfactory.d.ts.map +0 -1
  386. package/lib/annotations/comment-set/comment/textarea-auto-expand/textarea-auto-expand.directive.ngfactory.d.ts.map +0 -1
  387. package/lib/annotations/comment-set/comment-navigate/comments-navigate.component.ngfactory.d.ts.map +0 -1
  388. package/lib/annotations/comment-set/comment-set-header/comment-filter/comment-filter.component.ngfactory.d.ts.map +0 -1
  389. package/lib/annotations/comment-set/comment-set-header/comment-search/comment-search.component.ngfactory.d.ts.map +0 -1
  390. package/lib/annotations/comment-set/comment-set-header/comment-set-header.component.ngfactory.d.ts.map +0 -1
  391. package/lib/annotations/comment-set/comment-set-render.service.ngfactory.d.ts.map +0 -1
  392. package/lib/annotations/comment-set/comment-set.component.ngfactory.d.ts.map +0 -1
  393. package/lib/annotations/comments-summary/comments-summary.component.ngfactory.d.ts.map +0 -1
  394. package/lib/annotations/pipes/date/date.pipe.ngfactory.d.ts.map +0 -1
  395. package/lib/annotations/pipes/filter/filter.pipe.ngfactory.d.ts.map +0 -1
  396. package/lib/annotations/pipes/unsnake/unsnake.pipe.ngfactory.d.ts.map +0 -1
  397. package/lib/annotations/services/annotation-api/annotation-api.service.ngfactory.d.ts.map +0 -1
  398. package/lib/annotations/services/bookmarks-api/bookmarks-api.service.ngfactory.d.ts.map +0 -1
  399. package/lib/annotations/services/tags/tags.services.ngfactory.d.ts.map +0 -1
  400. package/lib/annotations/tags/tags.component.ngfactory.d.ts.map +0 -1
  401. package/lib/bookmark/components/bookmark-icons.component.ngfactory.d.ts.map +0 -1
  402. package/lib/icp/confirm-exit/confirm-action-dialog.component.ngfactory.d.ts.map +0 -1
  403. package/lib/icp/icp-follower.service.ngfactory.d.ts.map +0 -1
  404. package/lib/icp/icp-presenter.service.ngfactory.d.ts.map +0 -1
  405. package/lib/icp/icp-session-api.service.ngfactory.d.ts.map +0 -1
  406. package/lib/icp/icp-update.service.ngfactory.d.ts.map +0 -1
  407. package/lib/icp/icp.service.ngfactory.d.ts.map +0 -1
  408. package/lib/icp/participants-list/participants-list.component.ngfactory.d.ts.map +0 -1
  409. package/lib/icp/socket.service.ngfactory.d.ts.map +0 -1
  410. package/lib/media-viewer.component.ngfactory.d.ts.map +0 -1
  411. package/lib/media-viewer.module.ngfactory.d.ts.map +0 -1
  412. package/lib/print.service.ngfactory.d.ts.map +0 -1
  413. package/lib/redaction/components/redaction.component.ngfactory.d.ts.map +0 -1
  414. package/lib/redaction/services/redaction-api.service.ngfactory.d.ts.map +0 -1
  415. package/lib/shared/gov-uk-date/gov-uk-date.component.ngfactory.d.ts.map +0 -1
  416. package/lib/shared/gov-uk-error-message/gov-uk-error-message.component.ngfactory.d.ts.map +0 -1
  417. package/lib/shared/gov-uk-fieldset/gov-uk-fieldset.component.ngfactory.d.ts.map +0 -1
  418. package/lib/shared/gov-uk-label/gov-uk-label.component.ngfactory.d.ts.map +0 -1
  419. package/lib/shared/shared.module.ngfactory.d.ts.map +0 -1
  420. package/lib/shared/util/services/number.helper.service.ngfactory.d.ts.map +0 -1
  421. package/lib/store/effects/annotation.effects.ngfactory.d.ts.map +0 -1
  422. package/lib/store/effects/bookmarks.effects.ngfactory.d.ts.map +0 -1
  423. package/lib/store/effects/document.effects.ngfactory.d.ts.map +0 -1
  424. package/lib/store/effects/icp.effects.ngfactory.d.ts.map +0 -1
  425. package/lib/store/effects/redaction.effects.ngfactory.d.ts.map +0 -1
  426. package/lib/toolbar/icp-toolbar/icp-toolbar.component.ngfactory.d.ts.map +0 -1
  427. package/lib/toolbar/main-toolbar/main-toolbar.component.ngfactory.d.ts.map +0 -1
  428. package/lib/toolbar/redaction-search-bar/redaction-search-bar.component.ngfactory.d.ts.map +0 -1
  429. package/lib/toolbar/redaction-search-bar/redaction-search-bar.component.scss.shim.ngstyle.d.ts.map +0 -1
  430. package/lib/toolbar/redaction-toolbar/redaction-toolbar.component.ngfactory.d.ts.map +0 -1
  431. package/lib/toolbar/search-bar/search-bar.component.ngfactory.d.ts.map +0 -1
  432. package/lib/toolbar/toolbar-button-visibility.service.ngfactory.d.ts.map +0 -1
  433. package/lib/toolbar/toolbar-event.service.ngfactory.d.ts.map +0 -1
  434. package/lib/toolbar/toolbar.module.ngfactory.d.ts.map +0 -1
  435. package/lib/viewers/convertible-content-viewer/convertible-content-viewer.component.ngfactory.d.ts.map +0 -1
  436. package/lib/viewers/convertible-content-viewer/document-conversion-api.service.ngfactory.d.ts.map +0 -1
  437. package/lib/viewers/grab-n-drag.directive.ngfactory.d.ts.map +0 -1
  438. package/lib/viewers/image-viewer/image-viewer.component.ngfactory.d.ts.map +0 -1
  439. package/lib/viewers/multimedia-player/multimedia-player.component.ngfactory.d.ts.map +0 -1
  440. package/lib/viewers/pdf-viewer/pdf-js/pdf-js-wrapper.provider.ngfactory.d.ts.map +0 -1
  441. package/lib/viewers/pdf-viewer/pdf-viewer.component.ngfactory.d.ts.map +0 -1
  442. package/lib/viewers/pdf-viewer/side-bar/bookmarks/bookmarks.component.ngfactory.d.ts.map +0 -1
  443. package/lib/viewers/pdf-viewer/side-bar/outline-item/outline-item.component.ngfactory.d.ts.map +0 -1
  444. package/lib/viewers/pdf-viewer/side-bar/side-bar.component.ngfactory.d.ts.map +0 -1
  445. package/lib/viewers/rotation-persist/rotation-api.service.ngfactory.d.ts.map +0 -1
  446. package/lib/viewers/rotation-persist/rotation-persist.directive.ngfactory.d.ts.map +0 -1
  447. package/lib/viewers/unsupported-viewer/unsupported-viewer.component.ngfactory.d.ts.map +0 -1
  448. package/lib/viewers/viewer-event.service.ngfactory.d.ts.map +0 -1
  449. package/lib/viewers/viewer-util.service.ngfactory.d.ts.map +0 -1
  450. /package/{esm2015/lib/annotations/annotation-set/annotation-set.model.js → esm2020/lib/annotations/annotation-set/annotation-set.model.mjs} +0 -0
  451. /package/{esm2015/lib/annotations/annotation-set/annotation-view/annotation.model.js → esm2020/lib/annotations/annotation-set/annotation-view/annotation.model.mjs} +0 -0
  452. /package/{esm2015/lib/annotations/annotation-set/annotation-view/rectangle/rectangle.model.js → esm2020/lib/annotations/annotation-set/annotation-view/rectangle/rectangle.model.mjs} +0 -0
  453. /package/{esm2015/lib/annotations/comment-set/comment/comment.model.js → esm2020/lib/annotations/comment-set/comment/comment.model.mjs} +0 -0
  454. /package/{esm2015/lib/annotations/models/api-persisted.model.js → esm2020/lib/annotations/models/api-persisted.model.mjs} +0 -0
  455. /package/{esm2015/lib/annotations/models/event-select.model.js → esm2020/lib/annotations/models/event-select.model.mjs} +0 -0
  456. /package/{esm2015/lib/annotations/models/tags.model.js → esm2020/lib/annotations/models/tags.model.mjs} +0 -0
  457. /package/{esm2015/lib/annotations/models/user.model.js → esm2020/lib/annotations/models/user.model.mjs} +0 -0
  458. /package/{esm2015/lib/icp/icp.events.js → esm2020/lib/icp/icp.events.mjs} +0 -0
  459. /package/{esm2015/lib/icp/icp.interfaces.js → esm2020/lib/icp/icp.interfaces.mjs} +0 -0
  460. /package/{esm2015/lib/redaction/services/redaction.model.js → esm2020/lib/redaction/services/redaction.model.mjs} +0 -0
  461. /package/{esm2015/lib/shared/util/helpers/html-templates.helper.js → esm2020/lib/shared/util/helpers/html-templates.helper.mjs} +0 -0
  462. /package/{esm2015/lib/store/actions/annotation.actions.js → esm2020/lib/store/actions/annotation.actions.mjs} +0 -0
  463. /package/{esm2015/lib/store/actions/bookmark.actions.js → esm2020/lib/store/actions/bookmark.actions.mjs} +0 -0
  464. /package/{esm2015/lib/store/actions/document.actions.js → esm2020/lib/store/actions/document.actions.mjs} +0 -0
  465. /package/{esm2015/lib/store/actions/icp.actions.js → esm2020/lib/store/actions/icp.actions.mjs} +0 -0
  466. /package/{esm2015/lib/store/actions/redaction.actions.js → esm2020/lib/store/actions/redaction.actions.mjs} +0 -0
  467. /package/{esm2015/lib/store/actions/tag.actions.js → esm2020/lib/store/actions/tag.actions.mjs} +0 -0
  468. /package/{esm2015/lib/store/effects/index.js → esm2020/lib/store/effects/index.mjs} +0 -0
  469. /package/{esm2015/lib/store/models/bookmarks.interface.js → esm2020/lib/store/models/bookmarks.interface.mjs} +0 -0
  470. /package/{esm2015/lib/store/models/filters.interface.js → esm2020/lib/store/models/filters.interface.mjs} +0 -0
  471. /package/{esm2015/lib/store/reducers/reducers.js → esm2020/lib/store/reducers/reducers.mjs} +0 -0
  472. /package/{esm2015/lib/toolbar/icp-event.service.js → esm2020/lib/toolbar/icp-event.service.mjs} +0 -0
  473. /package/{esm2015/lib/toolbar/redaction-search-bar/redaction-search.model.js → esm2020/lib/toolbar/redaction-search-bar/redaction-search.model.mjs} +0 -0
  474. /package/{esm2015/lib/viewers/pdf-viewer/side-bar/bookmarks/bookmarks.interfaces.js → esm2020/lib/viewers/pdf-viewer/side-bar/bookmarks/bookmarks.interfaces.mjs} +0 -0
  475. /package/{esm2015/lib/viewers/pdf-viewer/side-bar/outline-item/outline.model.js → esm2020/lib/viewers/pdf-viewer/side-bar/outline-item/outline.model.mjs} +0 -0
  476. /package/{esm2015/lib/viewers/rotation-persist/rotation.model.js → esm2020/lib/viewers/rotation-persist/rotation.model.mjs} +0 -0
  477. /package/{esm2015/lib/viewers/viewer-exception.model.js → esm2020/lib/viewers/viewer-exception.model.mjs} +0 -0
@@ -1,162 +0,0 @@
1
- import { Component, ElementRef, EventEmitter, Input, Output, ViewChild } from '@angular/core';
2
- import { CommentService } from './comment.service';
3
- import { TagsServices } from '../../services/tags/tags.services';
4
- import { distinctUntilChanged } from 'rxjs/operators';
5
- import { Store } from '@ngrx/store';
6
- import * as fromSelector from '../../../store/selectors/annotation.selectors';
7
- export class CommentComponent {
8
- constructor(store, commentService, tagsServices) {
9
- this.store = store;
10
- this.commentService = commentService;
11
- this.tagsServices = tagsServices;
12
- this.CHAR_LIMIT = 5000;
13
- this.totalPrevPagesHeight = 0;
14
- this.hasUnsavedChanges = false;
15
- this.commentClick = new EventEmitter();
16
- this.renderComments = new EventEmitter();
17
- this.delete = new EventEmitter();
18
- this.updated = new EventEmitter();
19
- this.changes = new EventEmitter();
20
- this.rotate = 0;
21
- this.zoom = 1;
22
- }
23
- ngOnInit() {
24
- this.subscriptions = this.store.select(fromSelector.getComponentSearchText)
25
- .pipe(distinctUntilChanged()).subscribe(searchString => this.searchString = searchString);
26
- this.reRenderComments();
27
- this.marginToComment$ = this.commentService.marginToCommentEmitter.asObservable();
28
- }
29
- ngAfterContentInit() {
30
- if (this.tagItems && this.tagItems.length) {
31
- this.tagsServices.updateTagItems(this.tagItems, this._comment.annotationId);
32
- }
33
- }
34
- ngOnDestroy() {
35
- this.subscriptions.unsubscribe();
36
- }
37
- set comment(comment) {
38
- this._comment = Object.assign({}, comment);
39
- this.page = this._comment.page;
40
- this.lastUpdate = comment.lastModifiedDate ? comment.lastModifiedDate : comment.createdDate;
41
- this.author = comment.createdByDetails;
42
- this.createdBy = comment.createdBy;
43
- this.editor = comment.lastModifiedByDetails;
44
- this.originalComment = comment.content;
45
- this.fullComment = this.originalComment;
46
- this.selected = this._comment.selected;
47
- this._editable = this._comment.editable;
48
- this.tagItems = this._comment.tags;
49
- const pageMarginBottom = 10;
50
- this.totalPrevPagesHeight = 0;
51
- for (let i = 0; i < this.page - 1; i++) {
52
- const height = this._comment.pages[i + 1] ? this._comment.pages[i + 1].styles.height : undefined;
53
- if (height) {
54
- this.totalPrevPagesHeight += height + pageMarginBottom;
55
- }
56
- }
57
- }
58
- get comment() {
59
- return this._comment;
60
- }
61
- set annotation(annotation) {
62
- this._rectangle = annotation.rectangles
63
- .reduce((prev, current) => prev.y < current.y ? prev : current);
64
- const actualHeight = this._comment.pages[this.page].styles.height / this.zoom;
65
- switch (this.rotate) {
66
- case 90:
67
- this.rectTop = this._rectangle.x;
68
- break;
69
- case 180:
70
- this.rectTop = actualHeight - (this._rectangle.y + this._rectangle.height);
71
- break;
72
- case 270:
73
- this.rectTop = actualHeight - (this._rectangle.x + this._rectangle.width);
74
- break;
75
- default: this.rectTop = this._rectangle.y;
76
- }
77
- this.rectLeft = this._rectangle.x;
78
- }
79
- get editable() {
80
- return this._editable;
81
- }
82
- onCommentChange(updatedComment) {
83
- this.hasUnsavedChanges =
84
- this.originalComment.substring(0, this.CHAR_LIMIT) !== updatedComment.substring(0, this.CHAR_LIMIT);
85
- this.commentService.onCommentChange(this.hasUnsavedChanges);
86
- }
87
- deleteOrCancel() {
88
- if (!this.editable) {
89
- this.delete.emit(this._comment);
90
- }
91
- else {
92
- this.hasUnsavedChanges = false;
93
- this._editable = false;
94
- this.fullComment = this.originalComment;
95
- this.changes.emit(false);
96
- if (!this.author && !this.fullComment) {
97
- this.delete.emit(this._comment);
98
- }
99
- }
100
- }
101
- editOrSave() {
102
- if (!this.editable) {
103
- this._editable = true;
104
- }
105
- else {
106
- this._comment.content = this.fullComment.substring(0, this.CHAR_LIMIT);
107
- const tags = this.tagsServices.getNewTags(this._comment.annotationId);
108
- const payload = {
109
- comment: this._comment,
110
- tags
111
- };
112
- this.updated.emit(payload);
113
- this.hasUnsavedChanges = false;
114
- this._editable = false;
115
- this.changes.emit(false);
116
- }
117
- }
118
- onCommentClick() {
119
- if (!this.selected) {
120
- this.selected = true;
121
- this._editable = false;
122
- this.commentClick.emit({ annotationId: this._comment.annotationId, editable: this._editable, selected: true });
123
- }
124
- }
125
- reRenderComments() {
126
- this.renderComments.emit(this._comment);
127
- }
128
- get commentTop() {
129
- return this.totalPrevPagesHeight + (this.rectTop * this.zoom);
130
- }
131
- get height() {
132
- return this.form.nativeElement.getBoundingClientRect().height / this.zoom;
133
- }
134
- }
135
- CommentComponent.decorators = [
136
- { type: Component, args: [{
137
- selector: 'mv-anno-comment',
138
- template: "<div #form (click)=\"onCommentClick()\" class=\"aui-comment\"\n [ngClass]=\"{'stylestoggle' : (marginToComment$ | async ) }\"\n [style.top.px]=\"commentTop\"\n [style.zIndex]=\"selected ? 100 : 0\">\n <div id=\"detailsWrapper {{index}}\" class=\"aui-comment__header\">\n <span *ngIf=\"author && !editor\" class=\"aui-comment__author\">\n {{ author.forename }} {{ author.surname }}\n </span>\n <span *ngIf=\"editor\" class=\"aui-comment__author\">\n {{ editor.forename }} {{ editor.surname }}\n </span>\n <time [hidden]=\"!selected && !this.editable\" class=\"aui-comment__meta\">\n {{ lastUpdate | momentDate: 'd MMMM y h:mm a' }}\n </time>\n </div>\n <mv-tags\n [tagItems]=\"tagItems\"\n [userId]=\"createdBy\"\n [editable]=\"editable\"\n [annoId]=\"_comment.annotationId\">\n </mv-tags>\n <textarea *ngIf=\"selected && editable\"\n #editableComment\n mvTextAreaAutoExpand\n type=\"text\"\n required\n name=\"content\"\n [maxlength]=\"CHAR_LIMIT\"\n class=\"aui-comment__content form-control mimic-focus edit-mode expanded\"\n [(ngModel)]=\"fullComment\"\n (ngModelChange)=\"reRenderComments(); onCommentChange($event);\"\n aria-label=\"comment\">\n </textarea>\n <p *ngIf=\"!editable\"\n mvTextHighlight class=\"commentText\" [textToHighlight]=\"searchString\">\n {{ fullComment }}\n </p>\n <div *ngIf=\"selected || this.editable || (!fullComment.length && (tagItems && !tagItems.length))\"\n class=\"aui-comment__footer commentBtns\">\n <button class=\"govuk-button\"\n type=\"button\" role=\"button\"\n (click)=\"editOrSave()\">\n {{ !editable ? 'Edit' : 'Save' }}\n </button>\n <button type=\"button\" role=\"button\"\n class=\"govuk-button govuk-button--secondary\"\n (click)=\"deleteOrCancel()\">\n {{ !editable ? 'Delete' : 'Cancel' }}\n </button>\n </div>\n <span class=\"aui-comment__private\">private</span>\n</div>\n"
139
- },] }
140
- ];
141
- /** @nocollapse */
142
- CommentComponent.ctorParameters = () => [
143
- { type: Store },
144
- { type: CommentService },
145
- { type: TagsServices }
146
- ];
147
- CommentComponent.propDecorators = {
148
- commentClick: [{ type: Output }],
149
- renderComments: [{ type: Output }],
150
- delete: [{ type: Output }],
151
- updated: [{ type: Output }],
152
- changes: [{ type: Output }],
153
- rotate: [{ type: Input }],
154
- zoom: [{ type: Input }],
155
- index: [{ type: Input }],
156
- page: [{ type: Input }],
157
- form: [{ type: ViewChild, args: ['form', { static: false },] }],
158
- editableComment: [{ type: ViewChild, args: ['editableComment', { static: false },] }],
159
- comment: [{ type: Input }],
160
- annotation: [{ type: Input }]
161
- };
162
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWVudC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tZWRpYS12aWV3ZXIvc3JjL2xpYi9hbm5vdGF0aW9ucy9jb21tZW50LXNldC9jb21tZW50L2NvbW1lbnQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCxTQUFTLEVBQ1QsVUFBVSxFQUNWLFlBQVksRUFDWixLQUFLLEVBR0wsTUFBTSxFQUNOLFNBQVMsRUFDVixNQUFNLGVBQWUsQ0FBQztBQUt2QixPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sbUJBQW1CLENBQUM7QUFFakQsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLG1DQUFtQyxDQUFDO0FBRS9ELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3RELE9BQU8sRUFBQyxLQUFLLEVBQUMsTUFBTSxhQUFhLENBQUM7QUFFbEMsT0FBTyxLQUFLLFlBQVksTUFBTSwrQ0FBK0MsQ0FBQztBQVE5RSxNQUFNLE9BQU8sZ0JBQWdCO0lBdUMzQixZQUNVLEtBQTBDLEVBQ2pDLGNBQThCLEVBQ3ZDLFlBQTBCO1FBRjFCLFVBQUssR0FBTCxLQUFLLENBQXFDO1FBQ2pDLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUN2QyxpQkFBWSxHQUFaLFlBQVksQ0FBYztRQXhDcEMsZUFBVSxHQUFHLElBQUksQ0FBQztRQVVsQix5QkFBb0IsR0FBRyxDQUFDLENBQUM7UUFJekIsc0JBQWlCLEdBQUcsS0FBSyxDQUFDO1FBUWhCLGlCQUFZLEdBQUcsSUFBSSxZQUFZLEVBQXVCLENBQUM7UUFDdkQsbUJBQWMsR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO1FBQzdDLFdBQU0sR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO1FBQ3JDLFlBQU8sR0FBRyxJQUFJLFlBQVksRUFBeUMsQ0FBQztRQUNwRSxZQUFPLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQUN2QyxXQUFNLEdBQUcsQ0FBQyxDQUFDO1FBQ1gsU0FBSSxHQUFHLENBQUMsQ0FBQztJQWFmLENBQUM7SUFHSixRQUFRO1FBQ04sSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsc0JBQXNCLENBQUM7YUFDeEUsSUFBSSxDQUFDLG9CQUFvQixFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsWUFBWSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsWUFBWSxHQUFHLFlBQVksQ0FBQyxDQUFDO1FBQzVGLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLHNCQUFzQixDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3BGLENBQUM7SUFFRCxrQkFBa0I7UUFDaEIsSUFBSSxJQUFJLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFO1lBQ3pDLElBQUksQ0FBQyxZQUFZLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsQ0FBQztTQUM3RTtJQUNILENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLGFBQWEsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNuQyxDQUFDO0lBRUQsSUFDSSxPQUFPLENBQUMsT0FBZ0I7UUFDMUIsSUFBSSxDQUFDLFFBQVEscUJBQU8sT0FBTyxDQUFDLENBQUM7UUFDN0IsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQztRQUMvQixJQUFJLENBQUMsVUFBVSxHQUFHLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDO1FBQzVGLElBQUksQ0FBQyxNQUFNLEdBQUcsT0FBTyxDQUFDLGdCQUFnQixDQUFDO1FBQ3ZDLElBQUksQ0FBQyxTQUFTLEdBQUcsT0FBTyxDQUFDLFNBQVMsQ0FBQztRQUNuQyxJQUFJLENBQUMsTUFBTSxHQUFHLE9BQU8sQ0FBQyxxQkFBcUIsQ0FBQztRQUM1QyxJQUFJLENBQUMsZUFBZSxHQUFHLE9BQU8sQ0FBQyxPQUFPLENBQUM7UUFDdkMsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDO1FBQ3hDLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUM7UUFDdkMsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQztRQUN4QyxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDO1FBQ25DLE1BQU0sZ0JBQWdCLEdBQUcsRUFBRSxDQUFDO1FBQzVCLElBQUksQ0FBQyxvQkFBb0IsR0FBRyxDQUFDLENBQUM7UUFDOUIsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLElBQUksQ0FBQyxJQUFJLEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFO1lBQ3RDLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztZQUNqRyxJQUFJLE1BQU0sRUFBRTtnQkFDVixJQUFJLENBQUMsb0JBQW9CLElBQUksTUFBTSxHQUFHLGdCQUFnQixDQUFDO2FBQ3hEO1NBQ0Y7SUFFSCxDQUFDO0lBRUQsSUFBSSxPQUFPO1FBQ1QsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxJQUNJLFVBQVUsQ0FBQyxVQUFzQjtRQUNuQyxJQUFJLENBQUMsVUFBVSxHQUFHLFVBQVUsQ0FBQyxVQUFVO2FBQ3BDLE1BQU0sQ0FBQyxDQUFDLElBQUksRUFBRSxPQUFPLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLEdBQUcsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNsRSxNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsTUFBTSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDO1FBQzlFLFFBQVEsSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUNuQixLQUFLLEVBQUU7Z0JBQUUsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQztnQkFDMUMsTUFBTTtZQUNOLEtBQUssR0FBRztnQkFBRSxJQUFJLENBQUMsT0FBTyxHQUFHLFlBQVksR0FBRyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLENBQUM7Z0JBQ3JGLE1BQU07WUFDTixLQUFLLEdBQUc7Z0JBQUUsSUFBSSxDQUFDLE9BQU8sR0FBRyxZQUFZLEdBQUcsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUNwRixNQUFNO1lBQ04sT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQztTQUMzQztRQUNELElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUVELElBQUksUUFBUTtRQUNWLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQztJQUN4QixDQUFDO0lBRUQsZUFBZSxDQUFDLGNBQWM7UUFDNUIsSUFBSSxDQUFDLGlCQUFpQjtZQUNwQixJQUFJLENBQUMsZUFBZSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLGNBQWMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUN0RyxJQUFJLENBQUMsY0FBYyxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsQ0FBQztJQUM5RCxDQUFDO0lBRUQsY0FBYztRQUNaLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2xCLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztTQUNqQzthQUFNO1lBQ0wsSUFBSSxDQUFDLGlCQUFpQixHQUFHLEtBQUssQ0FBQztZQUMvQixJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztZQUN2QixJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUM7WUFDeEMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDekIsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFO2dCQUNyQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7YUFDakM7U0FDRjtJQUNILENBQUM7SUFFTSxVQUFVO1FBQ2YsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDbEIsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUM7U0FDdkI7YUFBTTtZQUNMLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7WUFDdkUsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsQ0FBQztZQUN0RSxNQUFNLE9BQU8sR0FBRztnQkFDZCxPQUFPLEVBQUUsSUFBSSxDQUFDLFFBQVE7Z0JBQ3RCLElBQUk7YUFDTCxDQUFDO1lBQ0YsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDM0IsSUFBSSxDQUFDLGlCQUFpQixHQUFHLEtBQUssQ0FBQztZQUMvQixJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztZQUN2QixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUMxQjtJQUNILENBQUM7SUFFRCxjQUFjO1FBQ1osSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDbEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7WUFDckIsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7WUFDdkIsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsRUFBRSxZQUFZLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxZQUFZLEVBQUUsUUFBUSxFQUFFLElBQUksQ0FBQyxTQUFTLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7U0FDaEg7SUFDSCxDQUFDO0lBRUQsZ0JBQWdCO1FBQ2QsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQzFDLENBQUM7SUFFRCxJQUFJLFVBQVU7UUFDWixPQUFPLElBQUksQ0FBQyxvQkFBb0IsR0FBRyxDQUFDLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2hFLENBQUM7SUFHRCxJQUFJLE1BQU07UUFDUixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLHFCQUFxQixFQUFFLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUM7SUFDNUUsQ0FBQzs7O1lBNUtGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsaUJBQWlCO2dCQUMzQixzakVBQXVDO2FBQ3hDOzs7O1lBVE8sS0FBSztZQUxMLGNBQWM7WUFFZCxZQUFZOzs7MkJBcUNqQixNQUFNOzZCQUNOLE1BQU07cUJBQ04sTUFBTTtzQkFDTixNQUFNO3NCQUNOLE1BQU07cUJBQ04sS0FBSzttQkFDTCxLQUFLO29CQUNMLEtBQUs7bUJBQ0wsS0FBSzttQkFFTCxTQUFTLFNBQUMsTUFBTSxFQUFFLEVBQUMsTUFBTSxFQUFFLEtBQUssRUFBQzs4QkFDakMsU0FBUyxTQUFDLGlCQUFpQixFQUFFLEVBQUMsTUFBTSxFQUFFLEtBQUssRUFBQztzQkE0QjVDLEtBQUs7eUJBNEJMLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBZnRlckNvbnRlbnRJbml0LFxuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBPdXRwdXQsXG4gIFZpZXdDaGlsZFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Q29tbWVudH0gZnJvbSAnLi9jb21tZW50Lm1vZGVsJztcbmltcG9ydCB7VXNlcn0gZnJvbSAnLi4vLi4vbW9kZWxzL3VzZXIubW9kZWwnO1xuaW1wb3J0IHtSZWN0YW5nbGV9IGZyb20gJy4uLy4uL2Fubm90YXRpb24tc2V0L2Fubm90YXRpb24tdmlldy9yZWN0YW5nbGUvcmVjdGFuZ2xlLm1vZGVsJztcbmltcG9ydCB7U2VsZWN0aW9uQW5ub3RhdGlvbn0gZnJvbSAnLi4vLi4vbW9kZWxzL2V2ZW50LXNlbGVjdC5tb2RlbCc7XG5pbXBvcnQge0NvbW1lbnRTZXJ2aWNlfSBmcm9tICcuL2NvbW1lbnQuc2VydmljZSc7XG5pbXBvcnQge1RhZ3NNb2RlbH0gZnJvbSAnLi4vLi4vbW9kZWxzL3RhZ3MubW9kZWwnO1xuaW1wb3J0IHtUYWdzU2VydmljZXN9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3RhZ3MvdGFncy5zZXJ2aWNlcyc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGRpc3RpbmN0VW50aWxDaGFuZ2VkIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtTdG9yZX0gZnJvbSAnQG5ncngvc3RvcmUnO1xuaW1wb3J0ICogYXMgZnJvbVN0b3JlIGZyb20gJy4uLy4uLy4uL3N0b3JlL3JlZHVjZXJzL3JlZHVjZXJzJztcbmltcG9ydCAqIGFzIGZyb21TZWxlY3RvciBmcm9tICcuLi8uLi8uLi9zdG9yZS9zZWxlY3RvcnMvYW5ub3RhdGlvbi5zZWxlY3RvcnMnO1xuaW1wb3J0IHsgQW5ub3RhdGlvblNldCB9IGZyb20gJy4uLy4uL2Fubm90YXRpb24tc2V0L2Fubm90YXRpb24tc2V0Lm1vZGVsJztcbmltcG9ydCB7IEFubm90YXRpb24gfSBmcm9tICcuLi8uLi9hbm5vdGF0aW9uLXNldC9hbm5vdGF0aW9uLXZpZXcvYW5ub3RhdGlvbi5tb2RlbCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ212LWFubm8tY29tbWVudCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9jb21tZW50LmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBDb21tZW50Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3ksIEFmdGVyQ29udGVudEluaXQge1xuXG4gIENIQVJfTElNSVQgPSA1MDAwO1xuICBsYXN0VXBkYXRlOiBzdHJpbmc7XG4gIG9yaWdpbmFsQ29tbWVudDogc3RyaW5nO1xuICBmdWxsQ29tbWVudDogc3RyaW5nO1xuICBhdXRob3I6IFVzZXI7XG4gIGNyZWF0ZWRCeTogc3RyaW5nO1xuICBlZGl0b3I6IFVzZXI7XG4gIF9jb21tZW50OiBDb21tZW50O1xuICBfZWRpdGFibGU6IGJvb2xlYW47XG4gIF9yZWN0YW5nbGU7XG4gIHRvdGFsUHJldlBhZ2VzSGVpZ2h0ID0gMDtcbiAgcmVjdFRvcDtcbiAgcmVjdExlZnQ7XG4gIHBhZ2VIZWlnaHQ6IG51bWJlcjtcbiAgaGFzVW5zYXZlZENoYW5nZXMgPSBmYWxzZTtcbiAgc2VsZWN0ZWQ6IGJvb2xlYW47XG4gIHNlYXJjaFN0cmluZzogc3RyaW5nO1xuICBwdWJsaWMgdGFnSXRlbXM6IFRhZ3NNb2RlbFtdO1xuICBtYXJnaW5Ub0NvbW1lbnQkOiBPYnNlcnZhYmxlPGJvb2xlYW4+IDtcblxuXG5cbiAgQE91dHB1dCgpIGNvbW1lbnRDbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8U2VsZWN0aW9uQW5ub3RhdGlvbj4oKTtcbiAgQE91dHB1dCgpIHJlbmRlckNvbW1lbnRzID0gbmV3IEV2ZW50RW1pdHRlcjxDb21tZW50PigpO1xuICBAT3V0cHV0KCkgZGVsZXRlID0gbmV3IEV2ZW50RW1pdHRlcjxDb21tZW50PigpO1xuICBAT3V0cHV0KCkgdXBkYXRlZCA9IG5ldyBFdmVudEVtaXR0ZXI8e2NvbW1lbnQ6IENvbW1lbnQsIHRhZ3M6IFRhZ3NNb2RlbFtdfT4oKTtcbiAgQE91dHB1dCgpIGNoYW5nZXMgPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG4gIEBJbnB1dCgpIHJvdGF0ZSA9IDA7XG4gIEBJbnB1dCgpIHpvb20gPSAxO1xuICBASW5wdXQoKSBpbmRleDogbnVtYmVyO1xuICBASW5wdXQoKSBwYWdlOiBudW1iZXI7XG5cbiAgQFZpZXdDaGlsZCgnZm9ybScsIHtzdGF0aWM6IGZhbHNlfSkgZm9ybTogRWxlbWVudFJlZjtcbiAgQFZpZXdDaGlsZCgnZWRpdGFibGVDb21tZW50Jywge3N0YXRpYzogZmFsc2V9KSBlZGl0YWJsZUNvbW1lbnQ6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+O1xuXG4gIHByaXZhdGUgc3Vic2NyaXB0aW9uczogU3Vic2NyaXB0aW9uO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgc3RvcmU6IFN0b3JlPGZyb21TdG9yZS5Bbm5vdGF0aW9uU2V0U3RhdGU+LFxuICAgIHByaXZhdGUgcmVhZG9ubHkgY29tbWVudFNlcnZpY2U6IENvbW1lbnRTZXJ2aWNlLFxuICAgIHByaXZhdGUgdGFnc1NlcnZpY2VzOiBUYWdzU2VydmljZXNcbiAgKSB7fVxuXG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5zdWJzY3JpcHRpb25zID0gdGhpcy5zdG9yZS5zZWxlY3QoZnJvbVNlbGVjdG9yLmdldENvbXBvbmVudFNlYXJjaFRleHQpXG4gICAgICAucGlwZShkaXN0aW5jdFVudGlsQ2hhbmdlZCgpKS5zdWJzY3JpYmUoc2VhcmNoU3RyaW5nID0+IHRoaXMuc2VhcmNoU3RyaW5nID0gc2VhcmNoU3RyaW5nKTtcbiAgICB0aGlzLnJlUmVuZGVyQ29tbWVudHMoKTtcbiAgICB0aGlzLm1hcmdpblRvQ29tbWVudCQgPSB0aGlzLmNvbW1lbnRTZXJ2aWNlLm1hcmdpblRvQ29tbWVudEVtaXR0ZXIuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICBuZ0FmdGVyQ29udGVudEluaXQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMudGFnSXRlbXMgJiYgdGhpcy50YWdJdGVtcy5sZW5ndGgpIHtcbiAgICAgIHRoaXMudGFnc1NlcnZpY2VzLnVwZGF0ZVRhZ0l0ZW1zKHRoaXMudGFnSXRlbXMsIHRoaXMuX2NvbW1lbnQuYW5ub3RhdGlvbklkKTtcbiAgICB9XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMudW5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIHNldCBjb21tZW50KGNvbW1lbnQ6IENvbW1lbnQpIHtcbiAgICB0aGlzLl9jb21tZW50ID0gey4uLmNvbW1lbnR9O1xuICAgIHRoaXMucGFnZSA9IHRoaXMuX2NvbW1lbnQucGFnZTtcbiAgICB0aGlzLmxhc3RVcGRhdGUgPSBjb21tZW50Lmxhc3RNb2RpZmllZERhdGUgPyBjb21tZW50Lmxhc3RNb2RpZmllZERhdGUgOiBjb21tZW50LmNyZWF0ZWREYXRlO1xuICAgIHRoaXMuYXV0aG9yID0gY29tbWVudC5jcmVhdGVkQnlEZXRhaWxzO1xuICAgIHRoaXMuY3JlYXRlZEJ5ID0gY29tbWVudC5jcmVhdGVkQnk7XG4gICAgdGhpcy5lZGl0b3IgPSBjb21tZW50Lmxhc3RNb2RpZmllZEJ5RGV0YWlscztcbiAgICB0aGlzLm9yaWdpbmFsQ29tbWVudCA9IGNvbW1lbnQuY29udGVudDtcbiAgICB0aGlzLmZ1bGxDb21tZW50ID0gdGhpcy5vcmlnaW5hbENvbW1lbnQ7XG4gICAgdGhpcy5zZWxlY3RlZCA9IHRoaXMuX2NvbW1lbnQuc2VsZWN0ZWQ7XG4gICAgdGhpcy5fZWRpdGFibGUgPSB0aGlzLl9jb21tZW50LmVkaXRhYmxlO1xuICAgIHRoaXMudGFnSXRlbXMgPSB0aGlzLl9jb21tZW50LnRhZ3M7XG4gICAgY29uc3QgcGFnZU1hcmdpbkJvdHRvbSA9IDEwO1xuICAgIHRoaXMudG90YWxQcmV2UGFnZXNIZWlnaHQgPSAwO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5wYWdlIC0gMTsgaSsrKSB7XG4gICAgICBjb25zdCBoZWlnaHQgPSB0aGlzLl9jb21tZW50LnBhZ2VzW2kgKyAxXSA/IHRoaXMuX2NvbW1lbnQucGFnZXNbaSArIDFdLnN0eWxlcy5oZWlnaHQgOiB1bmRlZmluZWQ7XG4gICAgICBpZiAoaGVpZ2h0KSB7XG4gICAgICAgIHRoaXMudG90YWxQcmV2UGFnZXNIZWlnaHQgKz0gaGVpZ2h0ICsgcGFnZU1hcmdpbkJvdHRvbTtcbiAgICAgIH1cbiAgICB9XG5cbiAgfVxuXG4gIGdldCBjb21tZW50KCkge1xuICAgIHJldHVybiB0aGlzLl9jb21tZW50O1xuICB9XG5cbiAgQElucHV0KClcbiAgc2V0IGFubm90YXRpb24oYW5ub3RhdGlvbjogQW5ub3RhdGlvbikge1xuICAgIHRoaXMuX3JlY3RhbmdsZSA9IGFubm90YXRpb24ucmVjdGFuZ2xlc1xuICAgICAgLnJlZHVjZSgocHJldiwgY3VycmVudCkgPT4gcHJldi55IDwgY3VycmVudC55ID8gcHJldiA6IGN1cnJlbnQpO1xuICAgIGNvbnN0IGFjdHVhbEhlaWdodCA9IHRoaXMuX2NvbW1lbnQucGFnZXNbdGhpcy5wYWdlXS5zdHlsZXMuaGVpZ2h0IC8gdGhpcy56b29tO1xuICAgIHN3aXRjaCAodGhpcy5yb3RhdGUpIHtcbiAgICAgIGNhc2UgOTA6IHRoaXMucmVjdFRvcCA9IHRoaXMuX3JlY3RhbmdsZS54O1xuICAgICAgYnJlYWs7XG4gICAgICBjYXNlIDE4MDogdGhpcy5yZWN0VG9wID0gYWN0dWFsSGVpZ2h0IC0gKHRoaXMuX3JlY3RhbmdsZS55ICsgdGhpcy5fcmVjdGFuZ2xlLmhlaWdodCk7XG4gICAgICBicmVhaztcbiAgICAgIGNhc2UgMjcwOiB0aGlzLnJlY3RUb3AgPSBhY3R1YWxIZWlnaHQgLSAodGhpcy5fcmVjdGFuZ2xlLnggKyB0aGlzLl9yZWN0YW5nbGUud2lkdGgpO1xuICAgICAgYnJlYWs7XG4gICAgICBkZWZhdWx0OiB0aGlzLnJlY3RUb3AgPSB0aGlzLl9yZWN0YW5nbGUueTtcbiAgICB9XG4gICAgdGhpcy5yZWN0TGVmdCA9IHRoaXMuX3JlY3RhbmdsZS54O1xuICB9XG5cbiAgZ2V0IGVkaXRhYmxlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9lZGl0YWJsZTtcbiAgfVxuXG4gIG9uQ29tbWVudENoYW5nZSh1cGRhdGVkQ29tbWVudCkge1xuICAgIHRoaXMuaGFzVW5zYXZlZENoYW5nZXMgPVxuICAgICAgdGhpcy5vcmlnaW5hbENvbW1lbnQuc3Vic3RyaW5nKDAsIHRoaXMuQ0hBUl9MSU1JVCkgIT09IHVwZGF0ZWRDb21tZW50LnN1YnN0cmluZygwLCB0aGlzLkNIQVJfTElNSVQpO1xuICAgIHRoaXMuY29tbWVudFNlcnZpY2Uub25Db21tZW50Q2hhbmdlKHRoaXMuaGFzVW5zYXZlZENoYW5nZXMpO1xuICB9XG5cbiAgZGVsZXRlT3JDYW5jZWwoKSB7XG4gICAgaWYgKCF0aGlzLmVkaXRhYmxlKSB7XG4gICAgICB0aGlzLmRlbGV0ZS5lbWl0KHRoaXMuX2NvbW1lbnQpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmhhc1Vuc2F2ZWRDaGFuZ2VzID0gZmFsc2U7XG4gICAgICB0aGlzLl9lZGl0YWJsZSA9IGZhbHNlO1xuICAgICAgdGhpcy5mdWxsQ29tbWVudCA9IHRoaXMub3JpZ2luYWxDb21tZW50O1xuICAgICAgdGhpcy5jaGFuZ2VzLmVtaXQoZmFsc2UpO1xuICAgICAgaWYgKCF0aGlzLmF1dGhvciAmJiAhdGhpcy5mdWxsQ29tbWVudCkge1xuICAgICAgICB0aGlzLmRlbGV0ZS5lbWl0KHRoaXMuX2NvbW1lbnQpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBlZGl0T3JTYXZlKCkge1xuICAgIGlmICghdGhpcy5lZGl0YWJsZSkge1xuICAgICAgdGhpcy5fZWRpdGFibGUgPSB0cnVlO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLl9jb21tZW50LmNvbnRlbnQgPSB0aGlzLmZ1bGxDb21tZW50LnN1YnN0cmluZygwLCB0aGlzLkNIQVJfTElNSVQpO1xuICAgICAgY29uc3QgdGFncyA9IHRoaXMudGFnc1NlcnZpY2VzLmdldE5ld1RhZ3ModGhpcy5fY29tbWVudC5hbm5vdGF0aW9uSWQpO1xuICAgICAgY29uc3QgcGF5bG9hZCA9IHtcbiAgICAgICAgY29tbWVudDogdGhpcy5fY29tbWVudCxcbiAgICAgICAgdGFnc1xuICAgICAgfTtcbiAgICAgIHRoaXMudXBkYXRlZC5lbWl0KHBheWxvYWQpO1xuICAgICAgdGhpcy5oYXNVbnNhdmVkQ2hhbmdlcyA9IGZhbHNlO1xuICAgICAgdGhpcy5fZWRpdGFibGUgPSBmYWxzZTtcbiAgICAgIHRoaXMuY2hhbmdlcy5lbWl0KGZhbHNlKTtcbiAgICB9XG4gIH1cblxuICBvbkNvbW1lbnRDbGljaygpIHtcbiAgICBpZiAoIXRoaXMuc2VsZWN0ZWQpIHtcbiAgICAgIHRoaXMuc2VsZWN0ZWQgPSB0cnVlO1xuICAgICAgdGhpcy5fZWRpdGFibGUgPSBmYWxzZTtcbiAgICAgIHRoaXMuY29tbWVudENsaWNrLmVtaXQoeyBhbm5vdGF0aW9uSWQ6IHRoaXMuX2NvbW1lbnQuYW5ub3RhdGlvbklkLCBlZGl0YWJsZTogdGhpcy5fZWRpdGFibGUsIHNlbGVjdGVkOiB0cnVlIH0pO1xuICAgIH1cbiAgfVxuXG4gIHJlUmVuZGVyQ29tbWVudHMoKSB7XG4gICAgdGhpcy5yZW5kZXJDb21tZW50cy5lbWl0KHRoaXMuX2NvbW1lbnQpO1xuICB9XG5cbiAgZ2V0IGNvbW1lbnRUb3AoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy50b3RhbFByZXZQYWdlc0hlaWdodCArICh0aGlzLnJlY3RUb3AgKiB0aGlzLnpvb20pO1xuICB9XG5cblxuICBnZXQgaGVpZ2h0KCkge1xuICAgIHJldHVybiB0aGlzLmZvcm0ubmF0aXZlRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5oZWlnaHQgLyB0aGlzLnpvb207XG4gIH1cbn1cbiJdfQ==
@@ -1,47 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import { BehaviorSubject, Subject } from 'rxjs';
3
- // TODO: replace by NgRx
4
- export class CommentService {
5
- constructor() {
6
- this.unsavedChanges = new Subject();
7
- this.marginToCommentEmitter = new BehaviorSubject(false);
8
- }
9
- setCommentSet(commentSetComponent) {
10
- this.commentSetComponent = commentSetComponent;
11
- }
12
- onCommentChange(changes) {
13
- this.unsavedChanges.next(changes);
14
- }
15
- getUnsavedChanges() {
16
- return this.unsavedChanges.asObservable();
17
- }
18
- hasUnsavedComments(annotation) {
19
- if (annotation.comments.length > 0) {
20
- const comment = this.getComment(annotation);
21
- return comment.hasUnsavedChanges;
22
- }
23
- return false;
24
- }
25
- updateUnsavedCommentsStatus(annotation, hasUnsavedChanges) {
26
- const comment = this.getComment(annotation);
27
- comment.hasUnsavedChanges = hasUnsavedChanges;
28
- this.allCommentsSaved();
29
- }
30
- getComment(annotation) {
31
- return this.commentSetComponent.commentComponents
32
- .find(c => c.comment.annotationId === annotation.comments[0].annotationId);
33
- }
34
- resetCommentSet() {
35
- this.commentSetComponent = null;
36
- }
37
- allCommentsSaved() {
38
- this.onCommentChange(this.commentSetComponent.commentComponents.some(comment => comment.hasUnsavedChanges === true));
39
- }
40
- createMarginToCommentEvent(margin) {
41
- this.marginToCommentEmitter.next(margin);
42
- }
43
- }
44
- CommentService.decorators = [
45
- { type: Injectable }
46
- ];
47
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWVudC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWVkaWEtdmlld2VyL3NyYy9saWIvYW5ub3RhdGlvbnMvY29tbWVudC1zZXQvY29tbWVudC9jb21tZW50LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsZUFBZSxFQUFjLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUs1RCx3QkFBd0I7QUFFeEIsTUFBTSxPQUFPLGNBQWM7SUFEM0I7UUFHa0IsbUJBQWMsR0FBRyxJQUFJLE9BQU8sRUFBVyxDQUFDO1FBQ3hDLDJCQUFzQixHQUFHLElBQUksZUFBZSxDQUFVLEtBQUssQ0FBQyxDQUFDO0lBNkMvRSxDQUFDO0lBMUNDLGFBQWEsQ0FBQyxtQkFBbUI7UUFDL0IsSUFBSSxDQUFDLG1CQUFtQixHQUFHLG1CQUFtQixDQUFDO0lBQ2pELENBQUM7SUFFRCxlQUFlLENBQUMsT0FBZ0I7UUFDOUIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUVELGlCQUFpQjtRQUNmLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUM1QyxDQUFDO0lBRUQsa0JBQWtCLENBQUMsVUFBc0I7UUFDdkMsSUFBSSxVQUFVLENBQUMsUUFBUSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7WUFDbEMsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxVQUFVLENBQUMsQ0FBQztZQUM1QyxPQUFPLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQztTQUNsQztRQUNELE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUVELDJCQUEyQixDQUFDLFVBQXNCLEVBQUUsaUJBQTBCO1FBQzVFLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDNUMsT0FBTyxDQUFDLGlCQUFpQixHQUFHLGlCQUFpQixDQUFDO1FBQzlDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFRCxVQUFVLENBQUMsVUFBc0I7UUFDL0IsT0FBTyxJQUFJLENBQUMsbUJBQW1CLENBQUMsaUJBQWlCO2FBQzlDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsWUFBWSxLQUFLLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDL0UsQ0FBQztJQUVELGVBQWU7UUFDYixJQUFJLENBQUMsbUJBQW1CLEdBQUcsSUFBSSxDQUFDO0lBQ2xDLENBQUM7SUFFRCxnQkFBZ0I7UUFDZCxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxPQUFPLENBQUMsaUJBQWlCLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQztJQUN2SCxDQUFDO0lBRUQsMEJBQTBCLENBQUMsTUFBZTtRQUN4QyxJQUFJLENBQUMsc0JBQXNCLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQzNDLENBQUM7OztZQWhERixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlLCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBDb21tZW50U2V0Q29tcG9uZW50IH0gZnJvbSAnLi4vY29tbWVudC1zZXQuY29tcG9uZW50JztcbmltcG9ydCB7IEFubm90YXRpb24gfSBmcm9tICcuLi8uLi9hbm5vdGF0aW9uLXNldC9hbm5vdGF0aW9uLXZpZXcvYW5ub3RhdGlvbi5tb2RlbCc7XG5pbXBvcnQgeyBDb21tZW50Q29tcG9uZW50IH0gZnJvbSAnLi9jb21tZW50LmNvbXBvbmVudCc7XG5cbi8vIFRPRE86IHJlcGxhY2UgYnkgTmdSeFxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIENvbW1lbnRTZXJ2aWNlIHtcblxuICBwdWJsaWMgcmVhZG9ubHkgdW5zYXZlZENoYW5nZXMgPSBuZXcgU3ViamVjdDxib29sZWFuPigpO1xuICBwdWJsaWMgcmVhZG9ubHkgbWFyZ2luVG9Db21tZW50RW1pdHRlciA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuICBjb21tZW50U2V0Q29tcG9uZW50OiBDb21tZW50U2V0Q29tcG9uZW50O1xuXG4gIHNldENvbW1lbnRTZXQoY29tbWVudFNldENvbXBvbmVudCkge1xuICAgIHRoaXMuY29tbWVudFNldENvbXBvbmVudCA9IGNvbW1lbnRTZXRDb21wb25lbnQ7XG4gIH1cblxuICBvbkNvbW1lbnRDaGFuZ2UoY2hhbmdlczogYm9vbGVhbik6IHZvaWQge1xuICAgIHRoaXMudW5zYXZlZENoYW5nZXMubmV4dChjaGFuZ2VzKTtcbiAgfVxuXG4gIGdldFVuc2F2ZWRDaGFuZ2VzKCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIHJldHVybiB0aGlzLnVuc2F2ZWRDaGFuZ2VzLmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgaGFzVW5zYXZlZENvbW1lbnRzKGFubm90YXRpb246IEFubm90YXRpb24pOiBib29sZWFuIHtcbiAgICBpZiAoYW5ub3RhdGlvbi5jb21tZW50cy5sZW5ndGggPiAwKSB7XG4gICAgICBjb25zdCBjb21tZW50ID0gdGhpcy5nZXRDb21tZW50KGFubm90YXRpb24pO1xuICAgICAgcmV0dXJuIGNvbW1lbnQuaGFzVW5zYXZlZENoYW5nZXM7XG4gICAgfVxuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIHVwZGF0ZVVuc2F2ZWRDb21tZW50c1N0YXR1cyhhbm5vdGF0aW9uOiBBbm5vdGF0aW9uLCBoYXNVbnNhdmVkQ2hhbmdlczogYm9vbGVhbik6IHZvaWQge1xuICAgIGNvbnN0IGNvbW1lbnQgPSB0aGlzLmdldENvbW1lbnQoYW5ub3RhdGlvbik7XG4gICAgY29tbWVudC5oYXNVbnNhdmVkQ2hhbmdlcyA9IGhhc1Vuc2F2ZWRDaGFuZ2VzO1xuICAgIHRoaXMuYWxsQ29tbWVudHNTYXZlZCgpO1xuICB9XG5cbiAgZ2V0Q29tbWVudChhbm5vdGF0aW9uOiBBbm5vdGF0aW9uKTogQ29tbWVudENvbXBvbmVudCB7XG4gICAgcmV0dXJuIHRoaXMuY29tbWVudFNldENvbXBvbmVudC5jb21tZW50Q29tcG9uZW50c1xuICAgICAgLmZpbmQoYyA9PiBjLmNvbW1lbnQuYW5ub3RhdGlvbklkID09PSBhbm5vdGF0aW9uLmNvbW1lbnRzWzBdLmFubm90YXRpb25JZCk7XG4gIH1cblxuICByZXNldENvbW1lbnRTZXQoKTogdm9pZCB7XG4gICAgdGhpcy5jb21tZW50U2V0Q29tcG9uZW50ID0gbnVsbDtcbiAgfVxuXG4gIGFsbENvbW1lbnRzU2F2ZWQoKTogdm9pZCB7XG4gICAgdGhpcy5vbkNvbW1lbnRDaGFuZ2UodGhpcy5jb21tZW50U2V0Q29tcG9uZW50LmNvbW1lbnRDb21wb25lbnRzLnNvbWUoY29tbWVudCA9PiBjb21tZW50Lmhhc1Vuc2F2ZWRDaGFuZ2VzID09PSB0cnVlKSk7XG4gIH1cblxuICBjcmVhdGVNYXJnaW5Ub0NvbW1lbnRFdmVudChtYXJnaW46IGJvb2xlYW4pIHtcbiAgICB0aGlzLm1hcmdpblRvQ29tbWVudEVtaXR0ZXIubmV4dChtYXJnaW4pO1xuICB9XG59XG4iXX0=
@@ -1,48 +0,0 @@
1
- import { Directive, ElementRef, Input } from '@angular/core';
2
- export class TextHighlightDirective {
3
- constructor(element) {
4
- this.element = element;
5
- }
6
- ngAfterViewChecked() {
7
- if (this.textToHighlight) {
8
- this.highlightInputText(this.textToHighlight);
9
- }
10
- }
11
- highlightInputText(textToHighlight) {
12
- this.resetHighlight();
13
- this.textToHighlight = textToHighlight;
14
- const searchPattern = new RegExp(textToHighlight, 'gi');
15
- const hostElement = this.element.nativeElement;
16
- if (hostElement.innerHTML.match(searchPattern)) {
17
- hostElement.innerHTML = hostElement.innerHTML
18
- .replace(searchPattern, this.highlightPattern('$&'));
19
- }
20
- this.textToHighlight = undefined;
21
- }
22
- resetHighlight() {
23
- const hostElement = this.element.nativeElement;
24
- const searchPattern = new RegExp(this.highlightPattern('(.*?)'), 'gi');
25
- while (hostElement.innerHTML.match(searchPattern)) {
26
- const matchGroups = searchPattern.exec(hostElement.innerHTML);
27
- if (matchGroups) {
28
- hostElement.innerHTML = hostElement.innerHTML.replace(matchGroups[0], matchGroups[1]);
29
- }
30
- }
31
- }
32
- highlightPattern(dynamicText) {
33
- return '<span class="mvTextHighlight">' + dynamicText + '</span>';
34
- }
35
- }
36
- TextHighlightDirective.decorators = [
37
- { type: Directive, args: [{
38
- selector: '[mvTextHighlight]'
39
- },] }
40
- ];
41
- /** @nocollapse */
42
- TextHighlightDirective.ctorParameters = () => [
43
- { type: ElementRef }
44
- ];
45
- TextHighlightDirective.propDecorators = {
46
- textToHighlight: [{ type: Input }]
47
- };
48
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC1oaWdobGlnaHQuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWVkaWEtdmlld2VyL3NyYy9saWIvYW5ub3RhdGlvbnMvY29tbWVudC1zZXQvY29tbWVudC90ZXh0LWhpZ2hsaWdodC90ZXh0LWhpZ2hsaWdodC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFvQixTQUFTLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUsvRSxNQUFNLE9BQU8sc0JBQXNCO0lBSWpDLFlBQW9CLE9BQWdDO1FBQWhDLFlBQU8sR0FBUCxPQUFPLENBQXlCO0lBQUcsQ0FBQztJQUV4RCxrQkFBa0I7UUFDaEIsSUFBSSxJQUFJLENBQUMsZUFBZSxFQUFFO1lBQ3hCLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7U0FDL0M7SUFDSCxDQUFDO0lBRUQsa0JBQWtCLENBQUMsZUFBdUI7UUFDeEMsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3RCLElBQUksQ0FBQyxlQUFlLEdBQUcsZUFBZSxDQUFDO1FBQ3ZDLE1BQU0sYUFBYSxHQUFHLElBQUksTUFBTSxDQUFDLGVBQWUsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUN4RCxNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQztRQUMvQyxJQUFJLFdBQVcsQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxFQUFFO1lBQzlDLFdBQVcsQ0FBQyxTQUFTLEdBQUcsV0FBVyxDQUFDLFNBQVM7aUJBQzFDLE9BQU8sQ0FBQyxhQUFhLEVBQUUsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7U0FDeEQ7UUFDRCxJQUFJLENBQUMsZUFBZSxHQUFHLFNBQVMsQ0FBQztJQUNuQyxDQUFDO0lBRUQsY0FBYztRQUNaLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDO1FBQy9DLE1BQU0sYUFBYSxHQUFHLElBQUksTUFBTSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUN2RSxPQUFPLFdBQVcsQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxFQUFFO1lBQ2pELE1BQU0sV0FBVyxHQUFHLGFBQWEsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQzlELElBQUksV0FBVyxFQUFFO2dCQUNmLFdBQVcsQ0FBQyxTQUFTLEdBQUcsV0FBVyxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxFQUFFLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO2FBQ3ZGO1NBQ0Y7SUFDSCxDQUFDO0lBRU8sZ0JBQWdCLENBQUMsV0FBbUI7UUFDMUMsT0FBTyxnQ0FBZ0MsR0FBRyxXQUFXLEdBQUcsU0FBUyxDQUFDO0lBQ3BFLENBQUM7OztZQXhDRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLG1CQUFtQjthQUM5Qjs7OztZQUpxQyxVQUFVOzs7OEJBTzdDLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlclZpZXdDaGVja2VkLCBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1ttdlRleHRIaWdobGlnaHRdJ1xufSlcbmV4cG9ydCBjbGFzcyBUZXh0SGlnaGxpZ2h0RGlyZWN0aXZlIGltcGxlbWVudHMgQWZ0ZXJWaWV3Q2hlY2tlZCB7XG5cbiAgQElucHV0KCkgdGV4dFRvSGlnaGxpZ2h0OiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBlbGVtZW50OiBFbGVtZW50UmVmPEhUTUxFbGVtZW50Pikge31cblxuICBuZ0FmdGVyVmlld0NoZWNrZWQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMudGV4dFRvSGlnaGxpZ2h0KSB7XG4gICAgICB0aGlzLmhpZ2hsaWdodElucHV0VGV4dCh0aGlzLnRleHRUb0hpZ2hsaWdodCk7XG4gICAgfVxuICB9XG5cbiAgaGlnaGxpZ2h0SW5wdXRUZXh0KHRleHRUb0hpZ2hsaWdodDogc3RyaW5nKSB7XG4gICAgdGhpcy5yZXNldEhpZ2hsaWdodCgpO1xuICAgIHRoaXMudGV4dFRvSGlnaGxpZ2h0ID0gdGV4dFRvSGlnaGxpZ2h0O1xuICAgIGNvbnN0IHNlYXJjaFBhdHRlcm4gPSBuZXcgUmVnRXhwKHRleHRUb0hpZ2hsaWdodCwgJ2dpJyk7XG4gICAgY29uc3QgaG9zdEVsZW1lbnQgPSB0aGlzLmVsZW1lbnQubmF0aXZlRWxlbWVudDtcbiAgICBpZiAoaG9zdEVsZW1lbnQuaW5uZXJIVE1MLm1hdGNoKHNlYXJjaFBhdHRlcm4pKSB7XG4gICAgICBob3N0RWxlbWVudC5pbm5lckhUTUwgPSBob3N0RWxlbWVudC5pbm5lckhUTUxcbiAgICAgICAgLnJlcGxhY2Uoc2VhcmNoUGF0dGVybiwgdGhpcy5oaWdobGlnaHRQYXR0ZXJuKCckJicpKTtcbiAgICB9XG4gICAgdGhpcy50ZXh0VG9IaWdobGlnaHQgPSB1bmRlZmluZWQ7XG4gIH1cblxuICByZXNldEhpZ2hsaWdodCgpIHtcbiAgICBjb25zdCBob3N0RWxlbWVudCA9IHRoaXMuZWxlbWVudC5uYXRpdmVFbGVtZW50O1xuICAgIGNvbnN0IHNlYXJjaFBhdHRlcm4gPSBuZXcgUmVnRXhwKHRoaXMuaGlnaGxpZ2h0UGF0dGVybignKC4qPyknKSwgJ2dpJyk7XG4gICAgd2hpbGUgKGhvc3RFbGVtZW50LmlubmVySFRNTC5tYXRjaChzZWFyY2hQYXR0ZXJuKSkge1xuICAgICAgY29uc3QgbWF0Y2hHcm91cHMgPSBzZWFyY2hQYXR0ZXJuLmV4ZWMoaG9zdEVsZW1lbnQuaW5uZXJIVE1MKTtcbiAgICAgIGlmIChtYXRjaEdyb3Vwcykge1xuICAgICAgICBob3N0RWxlbWVudC5pbm5lckhUTUwgPSBob3N0RWxlbWVudC5pbm5lckhUTUwucmVwbGFjZShtYXRjaEdyb3Vwc1swXSwgbWF0Y2hHcm91cHNbMV0pO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgaGlnaGxpZ2h0UGF0dGVybihkeW5hbWljVGV4dDogc3RyaW5nKSB7XG4gICAgcmV0dXJuICc8c3BhbiBjbGFzcz1cIm12VGV4dEhpZ2hsaWdodFwiPicgKyBkeW5hbWljVGV4dCArICc8L3NwYW4+JztcbiAgfVxufVxuIl19
@@ -1,31 +0,0 @@
1
- import { Directive, ElementRef, HostListener } from '@angular/core';
2
- export class TextareaAutoExpandDirective {
3
- constructor(el) {
4
- this.el = el;
5
- }
6
- ngAfterContentChecked() {
7
- this.adjustHeight();
8
- }
9
- onMouseDown() {
10
- this.adjustHeight();
11
- }
12
- adjustHeight() {
13
- const nativeElement = this.el.nativeElement;
14
- nativeElement.style.overflow = 'hidden';
15
- nativeElement.style.height = 'auto';
16
- nativeElement.style.height = nativeElement.scrollHeight - 5 + 'px';
17
- }
18
- }
19
- TextareaAutoExpandDirective.decorators = [
20
- { type: Directive, args: [{
21
- selector: '[mvTextAreaAutoExpand]'
22
- },] }
23
- ];
24
- /** @nocollapse */
25
- TextareaAutoExpandDirective.ctorParameters = () => [
26
- { type: ElementRef }
27
- ];
28
- TextareaAutoExpandDirective.propDecorators = {
29
- onMouseDown: [{ type: HostListener, args: ['input',] }]
30
- };
31
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dGFyZWEtYXV0by1leHBhbmQuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWVkaWEtdmlld2VyL3NyYy9saWIvYW5ub3RhdGlvbnMvY29tbWVudC1zZXQvY29tbWVudC90ZXh0YXJlYS1hdXRvLWV4cGFuZC90ZXh0YXJlYS1hdXRvLWV4cGFuZC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUF1QixTQUFTLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUt6RixNQUFNLE9BQU8sMkJBQTJCO0lBRXRDLFlBQW9CLEVBQWM7UUFBZCxPQUFFLEdBQUYsRUFBRSxDQUFZO0lBQ2xDLENBQUM7SUFFRCxxQkFBcUI7UUFDbkIsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3RCLENBQUM7SUFFc0IsV0FBVztRQUNoQyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDdEIsQ0FBQztJQUVELFlBQVk7UUFDVixNQUFNLGFBQWEsR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQztRQUM1QyxhQUFhLENBQUMsS0FBSyxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUM7UUFDeEMsYUFBYSxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO1FBQ3BDLGFBQWEsQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLGFBQWEsQ0FBQyxZQUFZLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQztJQUNyRSxDQUFDOzs7WUFyQkYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSx3QkFBd0I7YUFDbkM7Ozs7WUFKd0MsVUFBVTs7OzBCQWNoRCxZQUFZLFNBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyQ29udGVudENoZWNrZWQsIERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgSG9zdExpc3RlbmVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1ttdlRleHRBcmVhQXV0b0V4cGFuZF0nXG59KVxuZXhwb3J0IGNsYXNzIFRleHRhcmVhQXV0b0V4cGFuZERpcmVjdGl2ZSBpbXBsZW1lbnRzIEFmdGVyQ29udGVudENoZWNrZWQge1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZWw6IEVsZW1lbnRSZWYpIHtcbiAgfVxuXG4gIG5nQWZ0ZXJDb250ZW50Q2hlY2tlZCgpOiB2b2lkIHtcbiAgICB0aGlzLmFkanVzdEhlaWdodCgpO1xuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignaW5wdXQnKSBvbk1vdXNlRG93bigpIHtcbiAgICB0aGlzLmFkanVzdEhlaWdodCgpO1xuICB9XG5cbiAgYWRqdXN0SGVpZ2h0KCk6IHZvaWQge1xuICAgIGNvbnN0IG5hdGl2ZUVsZW1lbnQgPSB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQ7XG4gICAgbmF0aXZlRWxlbWVudC5zdHlsZS5vdmVyZmxvdyA9ICdoaWRkZW4nO1xuICAgIG5hdGl2ZUVsZW1lbnQuc3R5bGUuaGVpZ2h0ID0gJ2F1dG8nO1xuICAgIG5hdGl2ZUVsZW1lbnQuc3R5bGUuaGVpZ2h0ID0gbmF0aXZlRWxlbWVudC5zY3JvbGxIZWlnaHQgLSA1ICsgJ3B4JztcbiAgfVxuXG59XG4iXX0=
@@ -1,95 +0,0 @@
1
- import { Component, Input, ViewEncapsulation } from '@angular/core';
2
- import { Store } from '@ngrx/store';
3
- import * as fromActions from '../../../store/actions/annotation.actions';
4
- import { ToolbarEventService } from '../../../toolbar/toolbar-event.service';
5
- export class CommentsNavigateComponent {
6
- constructor(store, toolbarEvents) {
7
- this.store = store;
8
- this.toolbarEvents = toolbarEvents;
9
- this.autoSelect = false;
10
- this.navigationList = [];
11
- this.index = 0;
12
- }
13
- ngOnChanges(changes) {
14
- if (changes.annotationList) {
15
- this.initNavigationList();
16
- }
17
- }
18
- initNavigationList() {
19
- this.index = 0;
20
- this.navigationList = [...this.annotationList || []]
21
- .map(annotation => ({
22
- content: annotation.comments[0].content,
23
- annotationId: annotation.id,
24
- page: annotation.page,
25
- rectangle: this.upperRectangle(annotation.rectangles),
26
- }))
27
- .sort(this.sortComments);
28
- if (this.autoSelect) {
29
- this.toolbarEvents.setPage(Number.parseInt(this.navigationList[0].page, 0));
30
- this.store.dispatch(new fromActions.SelectedAnnotation({
31
- annotationId: this.navigationList[0].annotationId,
32
- editable: false,
33
- selected: true
34
- }));
35
- }
36
- }
37
- sortComments(mappedCommentA, mappedCommentB) {
38
- if (mappedCommentA.page !== mappedCommentB.page) {
39
- return mappedCommentA.page - mappedCommentB.page;
40
- }
41
- else {
42
- const rectA = mappedCommentA.rectangle;
43
- const rectB = mappedCommentB.rectangle;
44
- if (rectA.y !== rectB.y) {
45
- return rectA.y - rectB.y;
46
- }
47
- else {
48
- return rectA.x - rectB.x;
49
- }
50
- }
51
- }
52
- nextItem() {
53
- this.index += 1;
54
- if (this.index === this.annotationList.length) {
55
- this.index = 0;
56
- }
57
- this.toolbarEvents.setPage(Number.parseInt(this.navigationList[this.index].page, 0));
58
- this.store.dispatch(new fromActions.SelectedAnnotation({
59
- annotationId: this.navigationList[this.index].annotationId, editable: false, selected: true
60
- }));
61
- }
62
- prevItem() {
63
- this.index -= 1;
64
- if (this.index < 0) {
65
- this.index = this.navigationList.length - 1;
66
- }
67
- this.toolbarEvents.setPage(Number.parseInt(this.navigationList[this.index].page, 0));
68
- this.store.dispatch(new fromActions.SelectedAnnotation({
69
- annotationId: this.navigationList[this.index].annotationId,
70
- editable: false,
71
- selected: true
72
- }));
73
- }
74
- upperRectangle(rectangles) {
75
- [...rectangles].sort((rect1, rect2) => rect1.y - rect2.y);
76
- return { x: rectangles[0].x, y: rectangles[0].y };
77
- }
78
- }
79
- CommentsNavigateComponent.decorators = [
80
- { type: Component, args: [{
81
- selector: 'mv-comments-navigate',
82
- template: "<p class=\"comment-search\">\n <span class=\"comment-search__item\">\n Showing {{ index + 1 }} of {{ navigationList.length }}\n </span>\n <a [routerLink]=\"\"\n class=\"comment-search__item\"\n title=\"Previous comment\"\n (click)=\"prevItem()\">Prev</a>\n <a [routerLink]=\"\"\n class=\"comment-search__item\"\n title=\"Next comment'\"\n (click)=\"nextItem()\">Next</a>\n</p>\n",
83
- encapsulation: ViewEncapsulation.None
84
- },] }
85
- ];
86
- /** @nocollapse */
87
- CommentsNavigateComponent.ctorParameters = () => [
88
- { type: Store },
89
- { type: ToolbarEventService }
90
- ];
91
- CommentsNavigateComponent.propDecorators = {
92
- annotationList: [{ type: Input }],
93
- autoSelect: [{ type: Input }]
94
- };
95
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWVudHMtbmF2aWdhdGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWVkaWEtdmlld2VyL3NyYy9saWIvYW5ub3RhdGlvbnMvY29tbWVudC1zZXQvY29tbWVudC1uYXZpZ2F0ZS9jb21tZW50cy1uYXZpZ2F0ZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQTRCLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRzlGLE9BQU8sRUFBQyxLQUFLLEVBQUMsTUFBTSxhQUFhLENBQUM7QUFFbEMsT0FBTyxLQUFLLFdBQVcsTUFBTSwyQ0FBMkMsQ0FBQztBQUN6RSxPQUFPLEVBQUMsbUJBQW1CLEVBQUMsTUFBTSx3Q0FBd0MsQ0FBQztBQU8zRSxNQUFNLE9BQU8seUJBQXlCO0lBUXBDLFlBQW9CLEtBQTBDLEVBQWtCLGFBQWtDO1FBQTlGLFVBQUssR0FBTCxLQUFLLENBQXFDO1FBQWtCLGtCQUFhLEdBQWIsYUFBYSxDQUFxQjtRQUx6RyxlQUFVLEdBQUcsS0FBSyxDQUFDO1FBRTVCLG1CQUFjLEdBQVUsRUFBRSxDQUFDO1FBQzNCLFVBQUssR0FBRyxDQUFDLENBQUM7SUFFMkcsQ0FBQztJQUV0SCxXQUFXLENBQUMsT0FBc0I7UUFDaEMsSUFBSSxPQUFPLENBQUMsY0FBYyxFQUFFO1lBQzFCLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO1NBQzNCO0lBQ0gsQ0FBQztJQUVELGtCQUFrQjtRQUNoQixJQUFJLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQztRQUNmLElBQUksQ0FBQyxjQUFjLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxjQUFjLElBQUksRUFBRSxDQUFDO2FBQ2pELEdBQUcsQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDbEIsT0FBTyxFQUFFLFVBQVUsQ0FBQyxRQUFR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LEVBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsWUFBWTtZQUMxRCxRQUFRLEVBQUUsS0FBSztZQUNmLFFBQVEsRUFBRSxJQUFJO1NBQ2YsQ0FBQyxDQUFDLENBQUM7SUFDTixDQUFDO0lBRUQsY0FBYyxDQUFDLFVBQXVCO1FBQ3BDLENBQUMsR0FBRyxVQUFVLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxLQUFLLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUMxRCxPQUFPLEVBQUUsQ0FBQyxFQUFFLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUNwRCxDQUFDOzs7WUFyRkYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxzQkFBc0I7Z0JBQ2hDLHFhQUFpRDtnQkFDakQsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7YUFDdEM7Ozs7WUFUTyxLQUFLO1lBR0wsbUJBQW1COzs7NkJBU3hCLEtBQUs7eUJBQ0wsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uQ2hhbmdlcywgU2ltcGxlQ2hhbmdlcywgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJlY3RhbmdsZSB9IGZyb20gJy4uLy4uL2Fubm90YXRpb24tc2V0L2Fubm90YXRpb24tdmlldy9yZWN0YW5nbGUvcmVjdGFuZ2xlLm1vZGVsJztcbmltcG9ydCB7IEFubm90YXRpb24gfSBmcm9tICcuLi8uLi9hbm5vdGF0aW9uLXNldC9hbm5vdGF0aW9uLXZpZXcvYW5ub3RhdGlvbi5tb2RlbCc7XG5pbXBvcnQge1N0b3JlfSBmcm9tICdAbmdyeC9zdG9yZSc7XG5pbXBvcnQgKiBhcyBmcm9tU3RvcmUgZnJvbSAnLi4vLi4vLi4vc3RvcmUvcmVkdWNlcnMvcmVkdWNlcnMnO1xuaW1wb3J0ICogYXMgZnJvbUFjdGlvbnMgZnJvbSAnLi4vLi4vLi4vc3RvcmUvYWN0aW9ucy9hbm5vdGF0aW9uLmFjdGlvbnMnO1xuaW1wb3J0IHtUb29sYmFyRXZlbnRTZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi90b29sYmFyL3Rvb2xiYXItZXZlbnQuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ212LWNvbW1lbnRzLW5hdmlnYXRlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2NvbW1lbnRzLW5hdmlnYXRlLmNvbXBvbmVudC5odG1sJyxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxufSlcbmV4cG9ydCBjbGFzcyBDb21tZW50c05hdmlnYXRlQ29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzIHtcblxuICBASW5wdXQoKSBwdWJsaWMgYW5ub3RhdGlvbkxpc3Q6IEFubm90YXRpb25bXTtcbiAgQElucHV0KCkgYXV0b1NlbGVjdCA9IGZhbHNlO1xuXG4gIG5hdmlnYXRpb25MaXN0OiBhbnlbXSA9IFtdO1xuICBpbmRleCA9IDA7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBzdG9yZTogU3RvcmU8ZnJvbVN0b3JlLkFubm90YXRpb25TZXRTdGF0ZT4sIHB1YmxpYyByZWFkb25seSB0b29sYmFyRXZlbnRzOiBUb29sYmFyRXZlbnRTZXJ2aWNlKSB7fVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICBpZiAoY2hhbmdlcy5hbm5vdGF0aW9uTGlzdCkge1xuICAgICAgdGhpcy5pbml0TmF2aWdhdGlvbkxpc3QoKTtcbiAgICB9XG4gIH1cblxuICBpbml0TmF2aWdhdGlvbkxpc3QoKTogdm9pZCB7XG4gICAgdGhpcy5pbmRleCA9IDA7XG4gICAgdGhpcy5uYXZpZ2F0aW9uTGlzdCA9IFsuLi50aGlzLmFubm90YXRpb25MaXN0IHx8IFtdXVxuICAgICAgLm1hcChhbm5vdGF0aW9uID0+ICh7XG4gICAgICAgIGNvbnRlbnQ6IGFubm90YXRpb24uY29tbWVudHNbMF0uY29udGVudCxcbiAgICAgICAgYW5ub3RhdGlvbklkOiBhbm5vdGF0aW9uLmlkLFxuICAgICAgICBwYWdlOiBhbm5vdGF0aW9uLnBhZ2UsXG4gICAgICAgIHJlY3RhbmdsZTogdGhpcy51cHBlclJlY3RhbmdsZShhbm5vdGF0aW9uLnJlY3RhbmdsZXMpLFxuICAgICAgfSkpXG4gICAgICAuc29ydCh0aGlzLnNvcnRDb21tZW50cyk7XG5cbiAgICBpZiAodGhpcy5hdXRvU2VsZWN0KSB7XG4gICAgICB0aGlzLnRvb2xiYXJFdmVudHMuc2V0UGFnZShOdW1iZXIucGFyc2VJbnQodGhpcy5uYXZpZ2F0aW9uTGlzdFswXS5wYWdlLCAwKSk7XG4gICAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKG5ldyBmcm9tQWN0aW9ucy5TZWxlY3RlZEFubm90YXRpb24oe1xuICAgICAgICBhbm5vdGF0aW9uSWQ6IHRoaXMubmF2aWdhdGlvbkxpc3RbMF0uYW5ub3RhdGlvbklkLFxuICAgICAgICBlZGl0YWJsZTogZmFsc2UsXG4gICAgICAgIHNlbGVjdGVkOiB0cnVlXG4gICAgICB9KSk7XG4gICAgfVxuICB9XG5cbiAgc29ydENvbW1lbnRzKG1hcHBlZENvbW1lbnRBLCBtYXBwZWRDb21tZW50Qikge1xuICAgIGlmIChtYXBwZWRDb21tZW50QS5wYWdlICE9PSBtYXBwZWRDb21tZW50Qi5wYWdlKSB7XG4gICAgICByZXR1cm4gbWFwcGVkQ29tbWVudEEucGFnZSAtIG1hcHBlZENvbW1lbnRCLnBhZ2U7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IHJlY3RBID0gbWFwcGVkQ29tbWVudEEucmVjdGFuZ2xlO1xuICAgICAgY29uc3QgcmVjdEIgPSBtYXBwZWRDb21tZW50Qi5yZWN0YW5nbGU7XG4gICAgICBpZiAocmVjdEEueSAhPT0gcmVjdEIueSkge1xuICAgICAgICByZXR1cm4gcmVjdEEueSAtIHJlY3RCLnk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gcmVjdEEueCAtIHJlY3RCLng7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgbmV4dEl0ZW0oKSB7XG4gICAgdGhpcy5pbmRleCArPSAxO1xuICAgIGlmICh0aGlzLmluZGV4ID09PSB0aGlzLmFubm90YXRpb25MaXN0Lmxlbmd0aCkge1xuICAgICAgdGhpcy5pbmRleCA9IDA7XG4gICAgfVxuXG4gICAgdGhpcy50b29sYmFyRXZlbnRzLnNldFBhZ2UoTnVtYmVyLnBhcnNlSW50KHRoaXMubmF2aWdhdGlvbkxpc3RbdGhpcy5pbmRleF0ucGFnZSwgMCkpO1xuICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2gobmV3IGZyb21BY3Rpb25zLlNlbGVjdGVkQW5ub3RhdGlvbih7XG4gICAgICBhbm5vdGF0aW9uSWQ6IHRoaXMubmF2aWdhdGlvbkxpc3RbdGhpcy5pbmRleF0uYW5ub3RhdGlvbklkLCBlZGl0YWJsZTogZmFsc2UsIHNlbGVjdGVkOiB0cnVlXG4gICAgfSkpO1xuICB9XG5cblxuICBwcmV2SXRlbSgpIHtcbiAgICB0aGlzLmluZGV4IC09IDE7XG4gICAgaWYgKHRoaXMuaW5kZXggPCAwKSB7XG4gICAgICB0aGlzLmluZGV4ID0gdGhpcy5uYXZpZ2F0aW9uTGlzdC5sZW5ndGggLSAxO1xuICAgIH1cbiAgICB0aGlzLnRvb2xiYXJFdmVudHMuc2V0UGFnZShOdW1iZXIucGFyc2VJbnQodGhpcy5uYXZpZ2F0aW9uTGlzdFt0aGlzLmluZGV4XS5wYWdlLCAwKSk7XG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChuZXcgZnJvbUFjdGlvbnMuU2VsZWN0ZWRBbm5vdGF0aW9uKHtcbiAgICAgIGFubm90YXRpb25JZDogdGhpcy5uYXZpZ2F0aW9uTGlzdFt0aGlzLmluZGV4XS5hbm5vdGF0aW9uSWQsXG4gICAgICBlZGl0YWJsZTogZmFsc2UsXG4gICAgICBzZWxlY3RlZDogdHJ1ZVxuICAgIH0pKTtcbiAgfVxuXG4gIHVwcGVyUmVjdGFuZ2xlKHJlY3RhbmdsZXM6IFJlY3RhbmdsZVtdKSB7XG4gICAgWy4uLnJlY3RhbmdsZXNdLnNvcnQoKHJlY3QxLCByZWN0MikgPT4gcmVjdDEueSAtIHJlY3QyLnkpO1xuICAgIHJldHVybiB7IHg6IHJlY3RhbmdsZXNbMF0ueCwgeTogcmVjdGFuZ2xlc1swXS55IH07XG4gIH1cbn1cbiJdfQ==
@@ -1,60 +0,0 @@
1
- import { Component, ViewEncapsulation } from '@angular/core';
2
- import { select, Store } from '@ngrx/store';
3
- import * as fromSelectors from '../../../../store/selectors/tag.selectors';
4
- import * as fromActions from '../../../../store/actions/tag.actions';
5
- import { FormBuilder, FormControl } from '@angular/forms';
6
- import { auditTime, tap } from 'rxjs/operators';
7
- export class CommentFilterComponent {
8
- constructor(store, fb) {
9
- this.store = store;
10
- this.fb = fb;
11
- this.isPreview = false;
12
- }
13
- ngOnInit() {
14
- this.tagGroup = this.fb.group({
15
- 'tagFilters': this.fb.group({}),
16
- });
17
- this.filter$ = this.store.pipe(select(fromSelectors.getTagFilters));
18
- this.$subscriptions = this.tagGroup.valueChanges.pipe(auditTime(5)).subscribe(value => {
19
- const tagFilters = value['tagFilters'];
20
- this.store.dispatch(new fromActions.AddFilterTags(tagFilters));
21
- });
22
- this.buildFrom();
23
- }
24
- buildFrom() {
25
- const checkboxes = this.tagGroup.get('tagFilters');
26
- this.allTags$ = this.store.pipe(select(fromSelectors.getAllTagsArr)).pipe(tap(tags => {
27
- this.tagGroup.reset();
28
- tags.forEach((value) => {
29
- checkboxes.addControl(value.key, new FormControl(false));
30
- });
31
- }));
32
- }
33
- onClearFilters() {
34
- this.tagGroup.reset();
35
- this.store.dispatch(new fromActions.ClearFilterTags());
36
- }
37
- ngOnDestroy() {
38
- this.$subscriptions.unsubscribe();
39
- }
40
- onRemoveFilter(tagName) {
41
- const checkboxes = this.tagGroup.get('tagFilters');
42
- checkboxes.controls[tagName].setValue(false);
43
- }
44
- onToggleFilterView() {
45
- this.isPreview = !this.isPreview;
46
- }
47
- }
48
- CommentFilterComponent.decorators = [
49
- { type: Component, args: [{
50
- selector: 'mv-comment-filter',
51
- template: "<div class=\"comment-filter\">\n <div class=\"hmcts-filter__content\">\n <div class=\"hmcts-filter__toggle-filters\">\n <p class=\"hmcts-filter__toggle-filters-link\"\n [ngClass]=\"{'govuk-accordion__section--expanded': isPreview}\"\n (click)=\"onToggleFilterView()\"><strong >Filter options</strong><span class=\"govuk-accordion__icon\"></span></p>\n </div>\n\n <ng-container *ngIf=\"(filter$ | async) as filters\">\n <div class=\"hmcts-filter__selected-heading\" *ngIf=\"filters.length\">\n <div class=\"hmcts-filter__heading-action\">\n <p><a (click)=\"onClearFilters()\"\n class=\"govuk-link govuk-link--no-visited-state\"\n [routerLink]=\"\">Clear filters</a></p>\n </div>\n </div>\n\n <h4 class=\"govuk-heading-s govuk-!-margin-bottom-0\" *ngIf=\"filters.length\">Tag filters</h4>\n\n <ul class=\"hmcts-filter-tags\" *ngIf=\"filters.length\">\n <li *ngFor=\"let tagName of filters\">\n <a class=\"hmcts-filter__tag\" [routerLink]=\"\" (click)=\"onRemoveFilter(tagName)\">\n <span class=\"govuk-visually-hidden\">Remove this filter</span>{{tagName | unsnake}}</a>\n </li>\n </ul>\n </ng-container >\n\n <div class=\"hmcts-filter__options\" [ngClass]=\"{'isVisible': isPreview}\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-label--s\" for=\"keywords\">\n Search Tags\n </label>\n <input class=\"govuk-input\" id=\"keywords\" name=\"keywords\" type=\"text\" [(ngModel)]=\"searchValue\">\n </div>\n\n <div class=\"govuk-form-group\">\n <div [formGroup]=\"tagGroup\">\n <fieldset class=\"govuk-fieldset\" formGroupName=\"tagFilters\">\n <legend class=\"govuk-fieldset__legend govuk-fieldset__legend--s\">\n Tags\n </legend>\n <div class=\"govuk-checkboxes--scroll\">\n <div class=\"govuk-checkboxes govuk-checkboxes--small\">\n <div class=\"govuk-checkboxes__item\" *ngFor=\"let item of (allTags$ | async) | filter: searchValue: 'key'\">\n <input [formControlName]=\"item.key\" [id]=\"item.key\" class=\"govuk-checkboxes__input\" [value]=\"false\"\n [attr.aria-describedby]=\"item.key\" type=\"checkbox\">\n <label class=\"govuk-label govuk-checkboxes__label\" [for]=\"item.key\">\n {{ item.key | unsnake}} ({{item.length}})\n </label>\n </div>\n </div>\n </div>\n </fieldset>\n </div>\n </div>\n </div>\n\n\n </div>\n</div>\n",
52
- encapsulation: ViewEncapsulation.None
53
- },] }
54
- ];
55
- /** @nocollapse */
56
- CommentFilterComponent.ctorParameters = () => [
57
- { type: Store },
58
- { type: FormBuilder }
59
- ];
60
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWVudC1maWx0ZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWVkaWEtdmlld2VyL3NyYy9saWIvYW5ub3RhdGlvbnMvY29tbWVudC1zZXQvY29tbWVudC1zZXQtaGVhZGVyL2NvbW1lbnQtZmlsdGVyL2NvbW1lbnQtZmlsdGVyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFxQixpQkFBaUIsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUU5RSxPQUFPLEVBQUMsTUFBTSxFQUFFLEtBQUssRUFBQyxNQUFNLGFBQWEsQ0FBQztBQUUxQyxPQUFPLEtBQUssYUFBYSxNQUFNLDJDQUEyQyxDQUFDO0FBQzNFLE9BQU8sS0FBSyxXQUFXLE1BQU0sdUNBQXVDLENBQUM7QUFFckUsT0FBTyxFQUFZLFdBQVcsRUFBRSxXQUFXLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUNuRSxPQUFPLEVBQUMsU0FBUyxFQUFFLEdBQUcsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBUTlDLE1BQU0sT0FBTyxzQkFBc0I7SUFPakMsWUFDVSxLQUE2QixFQUM3QixFQUFlO1FBRGYsVUFBSyxHQUFMLEtBQUssQ0FBd0I7UUFDN0IsT0FBRSxHQUFGLEVBQUUsQ0FBYTtRQUh6QixjQUFTLEdBQUcsS0FBSyxDQUFDO0lBR1UsQ0FBQztJQUU3QixRQUFRO1FBQ04sSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQztZQUM1QixZQUFZLEVBQUUsSUFBSSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO1NBQ2hDLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDO1FBQ3BFLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUNwRixNQUFNLFVBQVUsR0FBRyxLQUFLLENBQUMsWUFBWSxDQUFDLENBQUM7WUFDdkMsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxXQUFXLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUM7UUFDakUsQ0FBQyxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7SUFFbkIsQ0FBQztJQUVELFNBQVM7UUFDUCxNQUFNLFVBQVUsR0FBYyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUM5RCxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ25GLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDdEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO2dCQUNyQixVQUFVLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxHQUFHLEVBQUUsSUFBSSxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztZQUMzRCxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDTixDQUFDO0lBRUQsY0FBYztRQUNaLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDdEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxXQUFXLENBQUMsZUFBZSxFQUFFLENBQUMsQ0FBQztJQUN6RCxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxjQUFjLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDcEMsQ0FBQztJQUVELGNBQWMsQ0FBQyxPQUFPO1FBQ3BCLE1BQU0sVUFBVSxHQUFjLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQzlELFVBQVUsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQy9DLENBQUM7SUFFRCxrQkFBa0I7UUFDaEIsSUFBSSxDQUFDLFNBQVMsR0FBRyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDbkMsQ0FBQzs7O1lBdkRGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsbUJBQW1CO2dCQUM3Qix3bkZBQThDO2dCQUM5QyxhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTthQUN0Qzs7OztZQWJlLEtBQUs7WUFLRixXQUFXIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIE9uRGVzdHJveSwgT25Jbml0LCBWaWV3RW5jYXBzdWxhdGlvbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7c2VsZWN0LCBTdG9yZX0gZnJvbSAnQG5ncngvc3RvcmUnO1xuaW1wb3J0ICogYXMgZnJvbVN0b3JlIGZyb20gJy4uLy4uLy4uLy4uL3N0b3JlL3JlZHVjZXJzL3JlZHVjZXJzJztcbmltcG9ydCAqIGFzIGZyb21TZWxlY3RvcnMgZnJvbSAnLi4vLi4vLi4vLi4vc3RvcmUvc2VsZWN0b3JzL3RhZy5zZWxlY3RvcnMnO1xuaW1wb3J0ICogYXMgZnJvbUFjdGlvbnMgZnJvbSAnLi4vLi4vLi4vLi4vc3RvcmUvYWN0aW9ucy90YWcuYWN0aW9ucyc7XG5pbXBvcnQge09ic2VydmFibGUsIFN1YnNjcmlwdGlvbn0gZnJvbSAncnhqcyc7XG5pbXBvcnQge0Zvcm1Hcm91cCwgRm9ybUJ1aWxkZXIsIEZvcm1Db250cm9sfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge2F1ZGl0VGltZSwgdGFwfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbXYtY29tbWVudC1maWx0ZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vY29tbWVudC1maWx0ZXIuY29tcG9uZW50Lmh0bWwnLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXG59KVxuZXhwb3J0IGNsYXNzIENvbW1lbnRGaWx0ZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIHRhZ0dyb3VwOiBGb3JtR3JvdXA7XG4gICRzdWJzY3JpcHRpb25zOiBTdWJzY3JpcHRpb247XG4gIGZpbHRlciQ6IE9ic2VydmFibGU8c3RyaW5nW10+O1xuICBhbGxUYWdzJDogT2JzZXJ2YWJsZTxhbnk+O1xuICBzZWFyY2hWYWx1ZTogc3RyaW5nO1xuICBpc1ByZXZpZXcgPSBmYWxzZTtcbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBzdG9yZTogU3RvcmU8ZnJvbVN0b3JlLlN0YXRlPixcbiAgICBwcml2YXRlIGZiOiBGb3JtQnVpbGRlcikge31cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnRhZ0dyb3VwID0gdGhpcy5mYi5ncm91cCh7XG4gICAgICAndGFnRmlsdGVycyc6IHRoaXMuZmIuZ3JvdXAoe30pLFxuICAgIH0pO1xuICAgIHRoaXMuZmlsdGVyJCA9IHRoaXMuc3RvcmUucGlwZShzZWxlY3QoZnJvbVNlbGVjdG9ycy5nZXRUYWdGaWx0ZXJzKSk7XG4gICAgdGhpcy4kc3Vic2NyaXB0aW9ucyA9IHRoaXMudGFnR3JvdXAudmFsdWVDaGFuZ2VzLnBpcGUoYXVkaXRUaW1lKDUpKS5zdWJzY3JpYmUodmFsdWUgPT4ge1xuICAgICAgY29uc3QgdGFnRmlsdGVycyA9IHZhbHVlWyd0YWdGaWx0ZXJzJ107XG4gICAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKG5ldyBmcm9tQWN0aW9ucy5BZGRGaWx0ZXJUYWdzKHRhZ0ZpbHRlcnMpKTtcbiAgICB9KTtcbiAgICB0aGlzLmJ1aWxkRnJvbSgpO1xuXG4gIH1cblxuICBidWlsZEZyb20oKSB7XG4gICAgY29uc3QgY2hlY2tib3hlcyA9IDxGb3JtR3JvdXA+dGhpcy50YWdHcm91cC5nZXQoJ3RhZ0ZpbHRlcnMnKTtcbiAgICB0aGlzLmFsbFRhZ3MkID0gdGhpcy5zdG9yZS5waXBlKHNlbGVjdChmcm9tU2VsZWN0b3JzLmdldEFsbFRhZ3NBcnIpKS5waXBlKHRhcCh0YWdzID0+IHtcbiAgICAgIHRoaXMudGFnR3JvdXAucmVzZXQoKTtcbiAgICAgIHRhZ3MuZm9yRWFjaCgodmFsdWUpID0+IHtcbiAgICAgICAgY2hlY2tib3hlcy5hZGRDb250cm9sKHZhbHVlLmtleSwgbmV3IEZvcm1Db250cm9sKGZhbHNlKSk7XG4gICAgICB9KTtcbiAgICB9KSk7XG4gIH1cblxuICBvbkNsZWFyRmlsdGVycygpIHtcbiAgICB0aGlzLnRhZ0dyb3VwLnJlc2V0KCk7XG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChuZXcgZnJvbUFjdGlvbnMuQ2xlYXJGaWx0ZXJUYWdzKCkpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy4kc3Vic2NyaXB0aW9ucy51bnN1YnNjcmliZSgpO1xuICB9XG5cbiAgb25SZW1vdmVGaWx0ZXIodGFnTmFtZSkge1xuICAgIGNvbnN0IGNoZWNrYm94ZXMgPSA8Rm9ybUdyb3VwPnRoaXMudGFnR3JvdXAuZ2V0KCd0YWdGaWx0ZXJzJyk7XG4gICAgY2hlY2tib3hlcy5jb250cm9sc1t0YWdOYW1lXS5zZXRWYWx1ZShmYWxzZSk7XG4gIH1cblxuICBvblRvZ2dsZUZpbHRlclZpZXcoKSB7XG4gICAgdGhpcy5pc1ByZXZpZXcgPSAhdGhpcy5pc1ByZXZpZXc7XG4gIH1cblxuXG59XG4iXX0=
@@ -1,53 +0,0 @@
1
- import { Component, ElementRef, Input, ViewChild, ViewEncapsulation } from '@angular/core';
2
- import { Store } from '@ngrx/store';
3
- import * as fromActions from '../../../../store/actions/annotation.actions';
4
- export class CommentSearchComponent {
5
- constructor(store) {
6
- this.store = store;
7
- this.searchResults = [];
8
- this.searchIndex = 0;
9
- }
10
- ngAfterViewInit() {
11
- if (this.searchInput) {
12
- this.searchInput.nativeElement.focus();
13
- }
14
- }
15
- ngOnDestroy() {
16
- // TODO workaround for tab error
17
- setTimeout(() => { this.store.dispatch(new fromActions.SearchComment('')); }, 250);
18
- }
19
- searchComments(searchText) {
20
- this.clearSearch();
21
- if (searchText.length > 2) {
22
- this.searchString = searchText;
23
- this.searchResults = this.annotations
24
- .filter(annotation => annotation.comments.length > 0)
25
- .filter(annotation => annotation.comments[0].content.toLowerCase().includes(this.searchString.toLowerCase()));
26
- if (this.searchResults.length > 0) {
27
- this.store.dispatch(new fromActions.SearchComment(searchText));
28
- }
29
- }
30
- }
31
- clearSearch() {
32
- this.searchString = undefined;
33
- this.searchResults = [];
34
- this.searchIndex = 0;
35
- this.store.dispatch(new fromActions.SearchComment(''));
36
- }
37
- }
38
- CommentSearchComponent.decorators = [
39
- { type: Component, args: [{
40
- selector: 'mv-comment-search',
41
- template: "<input #searchInput type=\"text\"\n class=\"govuk-input comment-search__item\"\n id=\"search-comments-input\" name=\"searchString\"\n aria-label=\"search comments input\" [ngModel]=\"searchString\">\n<button type=\"button\"\n [class.govuk-button--disabled]=\"searchInput?.value.length <= 2\"\n class=\"govuk-button comment-search__item\"\n (click)=\"searchComments(searchInput.value.trim())\">Search</button>\n<ng-container *ngIf=\"searchResults.length > 0\">\n <mv-comments-navigate [annotationList]=\"searchResults\"></mv-comments-navigate>\n</ng-container>\n<ng-container *ngIf=\"searchString && searchResults?.length == 0\">\n <p class=\"comment-search__item\">\n No matches have been found\n </p>\n</ng-container>\n",
42
- encapsulation: ViewEncapsulation.None
43
- },] }
44
- ];
45
- /** @nocollapse */
46
- CommentSearchComponent.ctorParameters = () => [
47
- { type: Store }
48
- ];
49
- CommentSearchComponent.propDecorators = {
50
- annotations: [{ type: Input }],
51
- searchInput: [{ type: ViewChild, args: ['searchInput', { static: false },] }]
52
- };
53
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWVudC1zZWFyY2guY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWVkaWEtdmlld2VyL3NyYy9saWIvYW5ub3RhdGlvbnMvY29tbWVudC1zZXQvY29tbWVudC1zZXQtaGVhZGVyL2NvbW1lbnQtc2VhcmNoL2NvbW1lbnQtc2VhcmNoLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWlCLFNBQVMsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFhLFNBQVMsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVySCxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRXBDLE9BQU8sS0FBSyxXQUFXLE1BQU0sOENBQThDLENBQUM7QUFPNUUsTUFBTSxPQUFPLHNCQUFzQjtJQVVqQyxZQUFvQixLQUEwQztRQUExQyxVQUFLLEdBQUwsS0FBSyxDQUFxQztRQUg5RCxrQkFBYSxHQUFpQixFQUFFLENBQUM7UUFDakMsZ0JBQVcsR0FBRyxDQUFDLENBQUM7SUFFaUQsQ0FBQztJQUVsRSxlQUFlO1FBQ2IsSUFBSSxJQUFJLENBQUMsV0FBVyxFQUFFO1lBQ3BCLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFDLEtBQUssRUFBRSxDQUFDO1NBQ3hDO0lBQ0gsQ0FBQztJQUVELFdBQVc7UUFDVCxnQ0FBZ0M7UUFDaEMsVUFBVSxDQUFDLEdBQUcsRUFBRSxHQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLElBQUksV0FBVyxDQUFDLGFBQWEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQ3BGLENBQUM7SUFFRCxjQUFjLENBQUMsVUFBa0I7UUFDL0IsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ25CLElBQUksVUFBVSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7WUFDekIsSUFBSSxDQUFDLFlBQVksR0FBRyxVQUFVLENBQUM7WUFDL0IsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsV0FBVztpQkFDbEMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO2lCQUNwRCxNQUFNLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FDbkIsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsV0FBVyxFQUFFLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQzVGLElBQUksSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO2dCQUNqQyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUFJLFdBQVcsQ0FBQyxhQUFhLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQzthQUNoRTtTQUNGO0lBQ0gsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsWUFBWSxHQUFHLFNBQVMsQ0FBQztRQUM5QixJQUFJLENBQUMsYUFBYSxHQUFHLEVBQUUsQ0FBQztRQUN4QixJQUFJLENBQUMsV0FBVyxHQUFHLENBQUMsQ0FBQztRQUNyQixJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUFJLFdBQVcsQ0FBQyxhQUFhLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUN6RCxDQUFDOzs7WUEvQ0YsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxtQkFBbUI7Z0JBQzdCLHl3QkFBOEM7Z0JBQzlDLGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO2FBQ3RDOzs7O1lBUlEsS0FBSzs7OzBCQVdYLEtBQUs7MEJBRUwsU0FBUyxTQUFDLGFBQWEsRUFBRSxFQUFDLE1BQU0sRUFBRSxLQUFLLEVBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlclZpZXdJbml0LCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIElucHV0LCBPbkRlc3Ryb3ksIFZpZXdDaGlsZCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFubm90YXRpb24gfSBmcm9tICcuLi8uLi8uLi9hbm5vdGF0aW9uLXNldC9hbm5vdGF0aW9uLXZpZXcvYW5ub3RhdGlvbi5tb2RlbCc7XG5pbXBvcnQgeyBTdG9yZSB9IGZyb20gJ0BuZ3J4L3N0b3JlJztcbmltcG9ydCAqIGFzIGZyb21TdG9yZSBmcm9tICcuLi8uLi8uLi8uLi9zdG9yZS9yZWR1Y2Vycy9yZWR1Y2Vycyc7XG5pbXBvcnQgKiBhcyBmcm9tQWN0aW9ucyBmcm9tICcuLi8uLi8uLi8uLi9zdG9yZS9hY3Rpb25zL2Fubm90YXRpb24uYWN0aW9ucyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ212LWNvbW1lbnQtc2VhcmNoJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2NvbW1lbnQtc2VhcmNoLmNvbXBvbmVudC5odG1sJyxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxufSlcbmV4cG9ydCBjbGFzcyBDb21tZW50U2VhcmNoQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcblxuICBASW5wdXQoKSBwdWJsaWMgcmVhZG9ubHkgYW5ub3RhdGlvbnM6IEFubm90YXRpb25bXTtcblxuICBAVmlld0NoaWxkKCdzZWFyY2hJbnB1dCcsIHtzdGF0aWM6IGZhbHNlfSkgc2VhcmNoSW5wdXQ6IEVsZW1lbnRSZWY8SFRNTElucHV0RWxlbWVudD47XG5cbiAgc2VhcmNoU3RyaW5nOiBzdHJpbmc7XG4gIHNlYXJjaFJlc3VsdHM6IEFubm90YXRpb25bXSA9IFtdO1xuICBzZWFyY2hJbmRleCA9IDA7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBzdG9yZTogU3RvcmU8ZnJvbVN0b3JlLkFubm90YXRpb25TZXRTdGF0ZT4pIHt9XG5cbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnNlYXJjaElucHV0KSB7XG4gICAgICB0aGlzLnNlYXJjaElucHV0Lm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcbiAgICB9XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAvLyBUT0RPIHdvcmthcm91bmQgZm9yIHRhYiBlcnJvclxuICAgIHNldFRpbWVvdXQoKCkgPT4ge3RoaXMuc3RvcmUuZGlzcGF0Y2gobmV3IGZyb21BY3Rpb25zLlNlYXJjaENvbW1lbnQoJycpKTsgfSwgMjUwKTtcbiAgfVxuXG4gIHNlYXJjaENvbW1lbnRzKHNlYXJjaFRleHQ6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMuY2xlYXJTZWFyY2goKTtcbiAgICBpZiAoc2VhcmNoVGV4dC5sZW5ndGggPiAyKSB7XG4gICAgICB0aGlzLnNlYXJjaFN0cmluZyA9IHNlYXJjaFRleHQ7XG4gICAgICB0aGlzLnNlYXJjaFJlc3VsdHMgPSB0aGlzLmFubm90YXRpb25zXG4gICAgICAgIC5maWx0ZXIoYW5ub3RhdGlvbiA9PiBhbm5vdGF0aW9uLmNvbW1lbnRzLmxlbmd0aCA+IDApXG4gICAgICAgIC5maWx0ZXIoYW5ub3RhdGlvbiA9PlxuICAgICAgICAgIGFubm90YXRpb24uY29tbWVudHNbMF0uY29udGVudC50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKHRoaXMuc2VhcmNoU3RyaW5nLnRvTG93ZXJDYXNlKCkpKTtcbiAgICAgIGlmICh0aGlzLnNlYXJjaFJlc3VsdHMubGVuZ3RoID4gMCkge1xuICAgICAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKG5ldyBmcm9tQWN0aW9ucy5TZWFyY2hDb21tZW50KHNlYXJjaFRleHQpKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBjbGVhclNlYXJjaCgpIHtcbiAgICB0aGlzLnNlYXJjaFN0cmluZyA9IHVuZGVmaW5lZDtcbiAgICB0aGlzLnNlYXJjaFJlc3VsdHMgPSBbXTtcbiAgICB0aGlzLnNlYXJjaEluZGV4ID0gMDtcbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKG5ldyBmcm9tQWN0aW9ucy5TZWFyY2hDb21tZW50KCcnKSk7XG4gIH1cbn1cbiJdfQ==