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