@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
@@ -0,0 +1,116 @@
1
+ import { Component, EventEmitter, Input, Output, ViewChild } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "../../../../toolbar/toolbar-event.service";
4
+ import * as i2 from "../../annotation-create/highlight-create/highlight-create.service";
5
+ import * as i3 from "@angular/common";
6
+ import * as i4 from "mutable-div";
7
+ export class RectangleComponent {
8
+ set annoRect(annoRect) {
9
+ this._annoRect = { ...annoRect };
10
+ this.height = +(annoRect.height * this.zoom).toFixed(2);
11
+ this.width = +(annoRect.width * this.zoom).toFixed(2);
12
+ this.left = +(annoRect.x * this.zoom).toFixed(2);
13
+ this.top = +(annoRect.y * this.zoom).toFixed(2);
14
+ }
15
+ get annoRect() {
16
+ return this._annoRect;
17
+ }
18
+ constructor(toolbarEvents, highlightService) {
19
+ this.toolbarEvents = toolbarEvents;
20
+ this.highlightService = highlightService;
21
+ this.selectEvent = new EventEmitter();
22
+ this.updateEvent = new EventEmitter();
23
+ this.subscriptions = [];
24
+ this.enableGrabNDrag = false;
25
+ }
26
+ ngOnChanges(changes) {
27
+ if (changes.rotate) {
28
+ this.adjustForRotation(this.rotate);
29
+ }
30
+ }
31
+ ngAfterViewInit() {
32
+ this.subscriptions.push(this.toolbarEvents.grabNDrag.subscribe(grabNDrag => this.enableGrabNDrag = grabNDrag));
33
+ }
34
+ ngOnDestroy() {
35
+ this.subscriptions.filter(subscription => !subscription.closed)
36
+ .forEach(subscription => subscription.unsubscribe());
37
+ }
38
+ set selected(selected) {
39
+ this._selected = selected;
40
+ if (this._selected && this.viewRect) {
41
+ this.viewRect.nativeElement.focus();
42
+ }
43
+ }
44
+ get selected() {
45
+ return this._selected;
46
+ }
47
+ onClick() {
48
+ this.selectEvent.emit(this.annoRect);
49
+ }
50
+ onUpdate(viewRect) {
51
+ const { offsetHeight, offsetWidth, offsetTop, offsetLeft } = viewRect;
52
+ if (this.hasRectangleChanged(viewRect)) {
53
+ let rectangle = this.highlightService
54
+ .applyRotation(this.pageHeight, this.pageWidth, offsetHeight, offsetWidth, offsetTop, offsetLeft, this.rotate, this.zoom);
55
+ rectangle = { ...this.annoRect, ...rectangle };
56
+ this.updateEvent.emit({ ...rectangle });
57
+ }
58
+ }
59
+ adjustForRotation(rotation) {
60
+ const { top, left, height, width } = this;
61
+ switch (rotation) {
62
+ case 90:
63
+ this.width = height;
64
+ this.height = width;
65
+ this.left = this.pageWidth - top - height;
66
+ this.top = left;
67
+ break;
68
+ case 180:
69
+ this.left = this.pageWidth - left - width;
70
+ this.top = this.pageHeight - top - height;
71
+ break;
72
+ case 270:
73
+ this.width = height;
74
+ this.height = width;
75
+ this.left = top;
76
+ this.top = this.pageHeight - left - width;
77
+ break;
78
+ }
79
+ }
80
+ hasRectangleChanged(viewRect) {
81
+ return this.left !== viewRect.offsetLeft ||
82
+ this.top !== viewRect.offsetTop ||
83
+ this.width !== viewRect.offsetWidth ||
84
+ this.height !== viewRect.offsetHeight;
85
+ }
86
+ }
87
+ /** @nocollapse */ RectangleComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: RectangleComponent, deps: [{ token: i1.ToolbarEventService }, { token: i2.HighlightCreateService }], target: i0.ɵɵFactoryTarget.Component });
88
+ /** @nocollapse */ RectangleComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: RectangleComponent, selector: "mv-anno-rectangle", inputs: { color: "color", zoom: "zoom", rotate: "rotate", editable: "editable", pageHeight: "pageHeight", pageWidth: "pageWidth", annoRect: "annoRect", selected: "selected" }, outputs: { selectEvent: "selectEvent", updateEvent: "updateEvent" }, viewQueries: [{ propertyName: "viewRect", first: true, predicate: ["rectElement"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div *ngIf=\"editable; else nonEditable\">\n <div #rectElement\n class=\"rectangle\"\n draggable\n resizable\n [tabindex]=\"annoRect.id\"\n [ngClass]=\"{ 'selected': selected, 'grabNDrag': enableGrabNDrag }\"\n [style.backgroundColor]=\"'#' + color\"\n [style.width]=\"width + 'px'\"\n [style.height]=\"height + 'px'\"\n [style.left]=\"left + 'px'\"\n [style.top]=\"top + 'px'\"\n [rotate]=\"0\"\n [selected]=\"selected\"\n (click)=\"onClick()\"\n (stopped)=\"onUpdate(rectElement)\">\n </div>\n</div>\n<ng-template #nonEditable>\n <div #rectElement\n class=\"rectangle\"\n [tabindex]=\"annoRect.id\"\n [ngClass]=\"{ 'selected': selected }\"\n [style.backgroundColor]=\"'#' + color\"\n [style.width]=\"width + 'px'\"\n [style.height]=\"height+ 'px'\"\n [style.left]=\"left + 'px'\"\n [style.top]=\"top + 'px'\"\n (click)=\"onClick()\">\n </div>\n</ng-template>\n", dependencies: [{ kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.ɵa, selector: "[draggable]", inputs: ["rotate"], outputs: ["coordinates", "stopped"] }, { kind: "directive", type: i4.ɵb, selector: "[resizable]", inputs: ["rotate", "selected"], outputs: ["stopped"] }] });
89
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: RectangleComponent, decorators: [{
90
+ type: Component,
91
+ args: [{ selector: 'mv-anno-rectangle', template: "<div *ngIf=\"editable; else nonEditable\">\n <div #rectElement\n class=\"rectangle\"\n draggable\n resizable\n [tabindex]=\"annoRect.id\"\n [ngClass]=\"{ 'selected': selected, 'grabNDrag': enableGrabNDrag }\"\n [style.backgroundColor]=\"'#' + color\"\n [style.width]=\"width + 'px'\"\n [style.height]=\"height + 'px'\"\n [style.left]=\"left + 'px'\"\n [style.top]=\"top + 'px'\"\n [rotate]=\"0\"\n [selected]=\"selected\"\n (click)=\"onClick()\"\n (stopped)=\"onUpdate(rectElement)\">\n </div>\n</div>\n<ng-template #nonEditable>\n <div #rectElement\n class=\"rectangle\"\n [tabindex]=\"annoRect.id\"\n [ngClass]=\"{ 'selected': selected }\"\n [style.backgroundColor]=\"'#' + color\"\n [style.width]=\"width + 'px'\"\n [style.height]=\"height+ 'px'\"\n [style.left]=\"left + 'px'\"\n [style.top]=\"top + 'px'\"\n (click)=\"onClick()\">\n </div>\n</ng-template>\n" }]
92
+ }], ctorParameters: function () { return [{ type: i1.ToolbarEventService }, { type: i2.HighlightCreateService }]; }, propDecorators: { color: [{
93
+ type: Input
94
+ }], zoom: [{
95
+ type: Input
96
+ }], rotate: [{
97
+ type: Input
98
+ }], editable: [{
99
+ type: Input
100
+ }], pageHeight: [{
101
+ type: Input
102
+ }], pageWidth: [{
103
+ type: Input
104
+ }], selectEvent: [{
105
+ type: Output
106
+ }], updateEvent: [{
107
+ type: Output
108
+ }], viewRect: [{
109
+ type: ViewChild,
110
+ args: ['rectElement', { static: false }]
111
+ }], annoRect: [{
112
+ type: Input
113
+ }], selected: [{
114
+ type: Input
115
+ }] } });
116
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVjdGFuZ2xlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21lZGlhLXZpZXdlci9zcmMvbGliL2Fubm90YXRpb25zL2Fubm90YXRpb24tc2V0L2Fubm90YXRpb24tdmlldy9yZWN0YW5nbGUvcmVjdGFuZ2xlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21lZGlhLXZpZXdlci9zcmMvbGliL2Fubm90YXRpb25zL2Fubm90YXRpb24tc2V0L2Fubm90YXRpb24tdmlldy9yZWN0YW5nbGUvcmVjdGFuZ2xlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCxTQUFTLEVBRVQsWUFBWSxFQUNaLEtBQUssRUFHTCxNQUFNLEVBRU4sU0FBUyxFQUNWLE1BQU0sZUFBZSxDQUFDOzs7Ozs7QUFVdkIsTUFBTSxPQUFPLGtCQUFrQjtJQXdCN0IsSUFDSSxRQUFRLENBQUMsUUFBbUI7UUFDOUIsSUFBSSxDQUFDLFNBQVMsR0FBRyxFQUFFLEdBQUcsUUFBUSxFQUFFLENBQUM7UUFDakMsSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsUUFBUSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3hELElBQUksQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUN0RCxJQUFJLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDakQsSUFBSSxDQUFDLEdBQUcsR0FBRyxDQUFDLENB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QUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBRUksV0FBVztzQkFBcEIsTUFBTTtnQkFDRyxXQUFXO3NCQUFwQixNQUFNO2dCQUVvQyxRQUFRO3NCQUFsRCxTQUFTO3VCQUFDLGFBQWEsRUFBRSxFQUFDLE1BQU0sRUFBRSxLQUFLLEVBQUM7Z0JBYXJDLFFBQVE7c0JBRFgsS0FBSztnQkFtQ0YsUUFBUTtzQkFEWCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPbkNoYW5nZXMsXG4gIE9uRGVzdHJveSxcbiAgT3V0cHV0LFxuICBTaW1wbGVDaGFuZ2VzLFxuICBWaWV3Q2hpbGRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSZWN0YW5nbGUgfSBmcm9tICcuL3JlY3RhbmdsZS5tb2RlbCc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFRvb2xiYXJFdmVudFNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi8uLi90b29sYmFyL3Rvb2xiYXItZXZlbnQuc2VydmljZSc7XG5pbXBvcnQgeyBIaWdobGlnaHRDcmVhdGVTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vYW5ub3RhdGlvbi1jcmVhdGUvaGlnaGxpZ2h0LWNyZWF0ZS9oaWdobGlnaHQtY3JlYXRlLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdtdi1hbm5vLXJlY3RhbmdsZScsXG4gIHRlbXBsYXRlVXJsOiAnLi9yZWN0YW5nbGUuY29tcG9uZW50Lmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIFJlY3RhbmdsZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcywgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcblxuICBASW5wdXQoKSBjb2xvcjogU3RyaW5nO1xuICBASW5wdXQoKSB6b29tOiBudW1iZXI7XG4gIEBJbnB1dCgpIHJvdGF0ZTogbnVtYmVyO1xuICBASW5wdXQoKSBlZGl0YWJsZTogYm9vbGVhbjtcbiAgQElucHV0KCkgcGFnZUhlaWdodDogbnVtYmVyO1xuICBASW5wdXQoKSBwYWdlV2lkdGg6IG51bWJlcjtcblxuICBAT3V0cHV0KCkgc2VsZWN0RXZlbnQgPSBuZXcgRXZlbnRFbWl0dGVyPFJlY3RhbmdsZT4oKTtcbiAgQE91dHB1dCgpIHVwZGF0ZUV2ZW50ID0gbmV3IEV2ZW50RW1pdHRlcjxSZWN0YW5nbGU+KCk7XG5cbiAgQFZpZXdDaGlsZCgncmVjdEVsZW1lbnQnLCB7c3RhdGljOiBmYWxzZX0pIHZpZXdSZWN0OiBFbGVtZW50UmVmO1xuXG4gIHByaXZhdGUgc3Vic2NyaXB0aW9uczogU3Vic2NyaXB0aW9uW10gPSBbXTtcbiAgX3NlbGVjdGVkOiBib29sZWFuO1xuICBlbmFibGVHcmFiTkRyYWcgPSBmYWxzZTtcblxuICBoZWlnaHQ6IG51bWJlcjtcbiAgd2lkdGg6IG51bWJlcjtcbiAgdG9wOiBudW1iZXI7XG4gIGxlZnQ6IG51bWJlcjtcblxuICBfYW5ub1JlY3Q6IFJlY3RhbmdsZTtcbiAgQElucHV0KClcbiAgc2V0IGFubm9SZWN0KGFubm9SZWN0OiBSZWN0YW5nbGUpIHtcbiAgICB0aGlzLl9hbm5vUmVjdCA9IHsgLi4uYW5ub1JlY3QgfTtcbiAgICB0aGlzLmhlaWdodCA9ICsoYW5ub1JlY3QuaGVpZ2h0ICogdGhpcy56b29tKS50b0ZpeGVkKDIpO1xuICAgIHRoaXMud2lkdGggPSArKGFubm9SZWN0LndpZHRoICogdGhpcy56b29tKS50b0ZpeGVkKDIpO1xuICAgIHRoaXMubGVmdCA9ICsoYW5ub1JlY3QueCAqIHRoaXMuem9vbSkudG9GaXhlZCgyKTtcbiAgICB0aGlzLnRvcCA9ICsoYW5ub1JlY3QueSAqIHRoaXMuem9vbSkudG9GaXhlZCgyKTtcbiAgfVxuXG4gIGdldCBhbm5vUmVjdCgpIHtcbiAgICByZXR1cm4gdGhpcy5fYW5ub1JlY3Q7XG4gIH1cblxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgdG9vbGJhckV2ZW50czogVG9vbGJhckV2ZW50U2VydmljZSxcbiAgICAgICAgICAgICAgcHJpdmF0ZSByZWFkb25seSBoaWdobGlnaHRTZXJ2aWNlOiBIaWdobGlnaHRDcmVhdGVTZXJ2aWNlKSB7fVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICBpZiAoY2hhbmdlcy5yb3RhdGUpIHtcbiAgICAgIHRoaXMuYWRqdXN0Rm9yUm90YXRpb24odGhpcy5yb3RhdGUpO1xuICAgIH1cbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMucHVzaChcbiAgICAgIHRoaXMudG9vbGJhckV2ZW50cy5ncmFiTkRyYWcuc3Vic2NyaWJlKGdyYWJORHJhZyA9PiB0aGlzLmVuYWJsZUdyYWJORHJhZyA9IGdyYWJORHJhZylcbiAgICApO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5zdWJzY3JpcHRpb25zLmZpbHRlcihzdWJzY3JpcHRpb24gPT4gIXN1YnNjcmlwdGlvbi5jbG9zZWQpXG4gICAgICAuZm9yRWFjaChzdWJzY3JpcHRpb24gPT4gc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCkpO1xuICB9XG5cbiAgQElucHV0KClcbiAgc2V0IHNlbGVjdGVkKHNlbGVjdGVkOiBib29sZWFuKSB7XG4gICAgdGhpcy5fc2VsZWN0ZWQgPSBzZWxlY3RlZDtcbiAgICBpZiAodGhpcy5fc2VsZWN0ZWQgJiYgdGhpcy52aWV3UmVjdCkge1xuICAgICAgdGhpcy52aWV3UmVjdC5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XG4gICAgfVxuICB9XG5cbiAgZ2V0IHNlbGVjdGVkKCkge1xuICAgIHJldHVybiB0aGlzLl9zZWxlY3RlZDtcbiAgfVxuXG4gIG9uQ2xpY2soKSB7XG4gICAgdGhpcy5zZWxlY3RFdmVudC5lbWl0KHRoaXMuYW5ub1JlY3QpO1xuICB9XG5cbiAgb25VcGRhdGUodmlld1JlY3Q6IGFueSkge1xuICAgIGNvbnN0IHsgb2Zmc2V0SGVpZ2h0LCBvZmZzZXRXaWR0aCwgb2Zmc2V0VG9wLCBvZmZzZXRMZWZ0IH0gPSB2aWV3UmVjdDtcbiAgICBpZiAodGhpcy5oYXNSZWN0YW5nbGVDaGFuZ2VkKHZpZXdSZWN0KSkge1xuICAgICAgbGV0IHJlY3RhbmdsZSA9IHRoaXMuaGlnaGxpZ2h0U2VydmljZVxuICAgICAgICAuYXBwbHlSb3RhdGlvbih0aGlzLnBhZ2VIZWlnaHQsIHRoaXMucGFnZVdpZHRoLCBvZmZzZXRIZWlnaHQsIG9mZnNldFdpZHRoLCBvZmZzZXRUb3AsIG9mZnNldExlZnQsIHRoaXMucm90YXRlLCB0aGlzLnpvb20pO1xuICAgICAgcmVjdGFuZ2xlID0geyAuLi50aGlzLmFubm9SZWN0LCAuLi5yZWN0YW5nbGUgfTtcbiAgICAgIHRoaXMudXBkYXRlRXZlbnQuZW1pdCh7IC4uLnJlY3RhbmdsZSB9KTtcbiAgICB9XG4gIH1cblxuICBhZGp1c3RGb3JSb3RhdGlvbihyb3RhdGlvbjogbnVtYmVyKSB7XG4gICAgY29uc3QgeyB0b3AsIGxlZnQsIGhlaWdodCwgd2lkdGggfSA9IHRoaXM7XG4gICAgc3dpdGNoIChyb3RhdGlvbikge1xuICAgICAgY2FzZSA5MDpcbiAgICAgICAgdGhpcy53aWR0aCA9IGhlaWdodDtcbiAgICAgICAgdGhpcy5oZWlnaHQgPSB3aWR0aDtcbiAgICAgICAgdGhpcy5sZWZ0ID0gdGhpcy5wYWdlV2lkdGggIC0gdG9wIC0gaGVpZ2h0O1xuICAgICAgICB0aGlzLnRvcCA9IGxlZnQ7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAxODA6XG4gICAgICAgIHRoaXMubGVmdCA9IHRoaXMucGFnZVdpZHRoIC0gbGVmdCAtIHdpZHRoO1xuICAgICAgICB0aGlzLnRvcCA9IHRoaXMucGFnZUhlaWdodCAtIHRvcCAtIGhlaWdodDtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlIDI3MDpcbiAgICAgICAgdGhpcy53aWR0aCA9IGhlaWdodDtcbiAgICAgICAgdGhpcy5oZWlnaHQgPSB3aWR0aDtcbiAgICAgICAgdGhpcy5sZWZ0ID0gdG9wO1xuICAgICAgICB0aGlzLnRvcCA9IHRoaXMucGFnZUhlaWdodCAtIGxlZnQgLSB3aWR0aDtcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuICB9XG5cbiAgaGFzUmVjdGFuZ2xlQ2hhbmdlZCh2aWV3UmVjdCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmxlZnQgIT09IHZpZXdSZWN0Lm9mZnNldExlZnQgfHxcbiAgICAgIHRoaXMudG9wICE9PSB2aWV3UmVjdC5vZmZzZXRUb3AgfHxcbiAgICAgIHRoaXMud2lkdGggIT09IHZpZXdSZWN0Lm9mZnNldFdpZHRoIHx8XG4gICAgICB0aGlzLmhlaWdodCAhPT0gdmlld1JlY3Qub2Zmc2V0SGVpZ2h0O1xuICB9XG59XG4iLCI8ZGl2ICpuZ0lmPVwiZWRpdGFibGU7IGVsc2Ugbm9uRWRpdGFibGVcIj5cbiAgPGRpdiAjcmVjdEVsZW1lbnRcbiAgICAgICBjbGFzcz1cInJlY3RhbmdsZVwiXG4gICAgICAgZHJhZ2dhYmxlXG4gICAgICAgcmVzaXphYmxlXG4gICAgICAgW3RhYmluZGV4XT1cImFubm9SZWN0LmlkXCJcbiAgICAgICBbbmdDbGFzc109XCJ7ICdzZWxlY3RlZCc6IHNlbGVjdGVkLCAnZ3JhYk5EcmFnJzogZW5hYmxlR3JhYk5EcmFnIH1cIlxuICAgICAgIFtzdHlsZS5iYWNrZ3JvdW5kQ29sb3JdPVwiJyMnICsgY29sb3JcIlxuICAgICAgIFtzdHlsZS53aWR0aF09XCJ3aWR0aCArICdweCdcIlxuICAgICAgIFtzdHlsZS5oZWlnaHRdPVwiaGVpZ2h0ICsgJ3B4J1wiXG4gICAgICAgW3N0eWxlLmxlZnRdPVwibGVmdCArICdweCdcIlxuICAgICAgIFtzdHlsZS50b3BdPVwidG9wICsgJ3B4J1wiXG4gICAgICAgW3JvdGF0ZV09XCIwXCJcbiAgICAgICBbc2VsZWN0ZWRdPVwic2VsZWN0ZWRcIlxuICAgICAgIChjbGljayk9XCJvbkNsaWNrKClcIlxuICAgICAgIChzdG9wcGVkKT1cIm9uVXBkYXRlKHJlY3RFbGVtZW50KVwiPlxuICA8L2Rpdj5cbjwvZGl2PlxuPG5nLXRlbXBsYXRlICNub25FZGl0YWJsZT5cbiAgPGRpdiAjcmVjdEVsZW1lbnRcbiAgICAgICBjbGFzcz1cInJlY3RhbmdsZVwiXG4gICAgICAgW3RhYmluZGV4XT1cImFubm9SZWN0LmlkXCJcbiAgICAgICBbbmdDbGFzc109XCJ7ICdzZWxlY3RlZCc6IHNlbGVjdGVkIH1cIlxuICAgICAgIFtzdHlsZS5iYWNrZ3JvdW5kQ29sb3JdPVwiJyMnICsgY29sb3JcIlxuICAgICAgIFtzdHlsZS53aWR0aF09XCJ3aWR0aCArICdweCdcIlxuICAgICAgIFtzdHlsZS5oZWlnaHRdPVwiaGVpZ2h0KyAncHgnXCJcbiAgICAgICBbc3R5bGUubGVmdF09XCJsZWZ0ICsgJ3B4J1wiXG4gICAgICAgW3N0eWxlLnRvcF09XCJ0b3AgKyAncHgnXCJcbiAgICAgICAoY2xpY2spPVwib25DbGljaygpXCI+XG4gIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
@@ -0,0 +1,118 @@
1
+ import { Component, EventEmitter, Input, Output } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "@angular/common";
4
+ export class CtxToolbarComponent {
5
+ constructor() {
6
+ this.createHighlightEvent = new EventEmitter();
7
+ this.deleteHighlightEvent = new EventEmitter();
8
+ this.addOrEditCommentEvent = new EventEmitter();
9
+ this.createBookmarkEvent = new EventEmitter();
10
+ this.defaultHeight = 70;
11
+ this.defaultWidth = 300;
12
+ }
13
+ ngOnChanges(changes) {
14
+ this.setRectangle();
15
+ this.top = this.popupTop();
16
+ this.left = this.popupLeft();
17
+ }
18
+ set rectangles(rectangles) {
19
+ if (rectangles) {
20
+ this._rectangles = rectangles;
21
+ this.setRectangle();
22
+ }
23
+ }
24
+ get rectangles() {
25
+ return this._rectangles;
26
+ }
27
+ createHighlight() {
28
+ this.createHighlightEvent.emit();
29
+ this.rectangle = undefined;
30
+ }
31
+ deleteHighlight() {
32
+ this.deleteHighlightEvent.emit();
33
+ }
34
+ addOrEditComment() {
35
+ this.addOrEditCommentEvent.emit();
36
+ setTimeout(() => {
37
+ if (!location.hash) {
38
+ document.getElementById('viewerContainer').scrollBy(0, 1);
39
+ }
40
+ }, 10);
41
+ }
42
+ createBookmark() {
43
+ this.createBookmarkEvent.emit(this.rectangle);
44
+ this.rectangle = undefined;
45
+ }
46
+ setRectangle() {
47
+ const rectangle = this.rectangles
48
+ .reduce((prev, current) => prev.y < current.y ? prev : current);
49
+ this.rectangle = { ...rectangle };
50
+ switch (this.rotate) {
51
+ case 90:
52
+ this.rectangle.width = rectangle.height;
53
+ this.rectangle.height = rectangle.width;
54
+ this.rectangle.x = (this.pageWidth / this.zoom) - rectangle.y - rectangle.height;
55
+ this.rectangle.y = rectangle.x;
56
+ break;
57
+ case 180:
58
+ this.rectangle.x = (this.pageWidth / this.zoom) - rectangle.x - rectangle.width;
59
+ this.rectangle.y = (this.pageHeight / this.zoom) - rectangle.y - rectangle.height;
60
+ break;
61
+ case 270:
62
+ this.rectangle.width = rectangle.height;
63
+ this.rectangle.height = rectangle.width;
64
+ this.rectangle.x = rectangle.y;
65
+ this.rectangle.y = (this.pageHeight / this.zoom) - rectangle.x - rectangle.width;
66
+ break;
67
+ }
68
+ }
69
+ popupTop() {
70
+ const popupTop = this.rectangle.y * this.zoom - this.defaultHeight;
71
+ return popupTop <= 0 ? this.defaultHeight : popupTop;
72
+ }
73
+ popupLeft() {
74
+ const popupLeft = (this.rectangle.x + (this.rectangle.width / 2)) * this.zoom - (this.defaultWidth / 2);
75
+ if (popupLeft <= 0) {
76
+ return 0;
77
+ }
78
+ else if (popupLeft >= this.pageWidth - this.defaultWidth) {
79
+ return this.pageWidth - this.defaultWidth;
80
+ }
81
+ else {
82
+ return popupLeft;
83
+ }
84
+ }
85
+ }
86
+ /** @nocollapse */ CtxToolbarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: CtxToolbarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
87
+ /** @nocollapse */ CtxToolbarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: CtxToolbarComponent, selector: "mv-ctx-toolbar", inputs: { zoom: "zoom", rotate: "rotate", pageHeight: "pageHeight", pageWidth: "pageWidth", canHighlight: "canHighlight", canBookmark: "canBookmark", canComment: "canComment", canDelete: "canDelete", rectangles: "rectangles" }, outputs: { createHighlightEvent: "createHighlightEvent", deleteHighlightEvent: "deleteHighlightEvent", addOrEditCommentEvent: "addOrEditCommentEvent", createBookmarkEvent: "createBookmarkEvent" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"toolbar\" *ngIf=\"rectangle\"\n [style.top.px]=\"top\"\n [style.left.px]=\"left\">\n <button *ngIf=\"canHighlight\"\n type=\"button\" title=\"Highlight\"\n class=\"aui__toolbar-button aui__toolbar-button--comments contextual-btn leftButton aui__toolbar-button-highlight\"\n (mousedown)=\"createHighlight()\">\n <span>Highlight</span>\n </button>\n <button *ngIf=\"canDelete\"\n type=\"button\" title=\"Delete\"\n class=\"aui__toolbar-button aui__toolbar-button--comments contextual-btn leftButton\"\n (mousedown)=\"deleteHighlight()\">\n <span>Remove</span>\n </button>\n <button *ngIf=\"canComment\"\n type=\"button\" title=\"Comment\"\n class=\"aui__toolbar-button aui__toolbar-button--comments contextual-btn rightButton aui__toolbar-button-comment\"\n (mousedown)=\"addOrEditComment()\">\n <span>Comment</span></button>\n <button *ngIf=\"canBookmark\"\n type=\"button\" title=\"Bookmark\"\n class=\"aui__toolbar-button aui__toolbar-button--comments contextual-btn rightButton aui__toolbar-button-bookmark\"\n id=\"bookmarkButton\"\n (mousedown)=\"createBookmark()\">\n <span>Bookmark</span></button>\n <div class=\"arrow-down\">\n <div class=\"inner-triangle\"></div>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
88
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: CtxToolbarComponent, decorators: [{
89
+ type: Component,
90
+ args: [{ selector: 'mv-ctx-toolbar', template: "<div class=\"toolbar\" *ngIf=\"rectangle\"\n [style.top.px]=\"top\"\n [style.left.px]=\"left\">\n <button *ngIf=\"canHighlight\"\n type=\"button\" title=\"Highlight\"\n class=\"aui__toolbar-button aui__toolbar-button--comments contextual-btn leftButton aui__toolbar-button-highlight\"\n (mousedown)=\"createHighlight()\">\n <span>Highlight</span>\n </button>\n <button *ngIf=\"canDelete\"\n type=\"button\" title=\"Delete\"\n class=\"aui__toolbar-button aui__toolbar-button--comments contextual-btn leftButton\"\n (mousedown)=\"deleteHighlight()\">\n <span>Remove</span>\n </button>\n <button *ngIf=\"canComment\"\n type=\"button\" title=\"Comment\"\n class=\"aui__toolbar-button aui__toolbar-button--comments contextual-btn rightButton aui__toolbar-button-comment\"\n (mousedown)=\"addOrEditComment()\">\n <span>Comment</span></button>\n <button *ngIf=\"canBookmark\"\n type=\"button\" title=\"Bookmark\"\n class=\"aui__toolbar-button aui__toolbar-button--comments contextual-btn rightButton aui__toolbar-button-bookmark\"\n id=\"bookmarkButton\"\n (mousedown)=\"createBookmark()\">\n <span>Bookmark</span></button>\n <div class=\"arrow-down\">\n <div class=\"inner-triangle\"></div>\n </div>\n</div>\n" }]
91
+ }], ctorParameters: function () { return []; }, propDecorators: { zoom: [{
92
+ type: Input
93
+ }], rotate: [{
94
+ type: Input
95
+ }], pageHeight: [{
96
+ type: Input
97
+ }], pageWidth: [{
98
+ type: Input
99
+ }], canHighlight: [{
100
+ type: Input
101
+ }], canBookmark: [{
102
+ type: Input
103
+ }], canComment: [{
104
+ type: Input
105
+ }], canDelete: [{
106
+ type: Input
107
+ }], createHighlightEvent: [{
108
+ type: Output
109
+ }], deleteHighlightEvent: [{
110
+ type: Output
111
+ }], addOrEditCommentEvent: [{
112
+ type: Output
113
+ }], createBookmarkEvent: [{
114
+ type: Output
115
+ }], rectangles: [{
116
+ type: Input
117
+ }] } });
118
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3R4LXRvb2xiYXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWVkaWEtdmlld2VyL3NyYy9saWIvYW5ub3RhdGlvbnMvYW5ub3RhdGlvbi1zZXQvY3R4LXRvb2xiYXIvY3R4LXRvb2xiYXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWVkaWEtdmlld2VyL3NyYy9saWIvYW5ub3RhdGlvbnMvYW5ub3RhdGlvbi1zZXQvY3R4LXRvb2xiYXIvY3R4LXRvb2xiYXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUVMLE1BQU0sRUFFUCxNQUFNLGVBQWUsQ0FBQzs7O0FBT3ZCLE1BQU0sT0FBTyxtQkFBbUI7SUF5QjlCO1FBVlUseUJBQW9CLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUMxQyx5QkFBb0IsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQzFDLDBCQUFxQixHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFDM0Msd0JBQW1CLEdBQUcsSUFBSSxZQUFZLEVBQWEsQ0FBQztRQVE1RCxJQUFJLENBQUMsYUFBYSxHQUFHLEVBQUUsQ0FBQztRQUN4QixJQUFJLENBQUMsWUFBWSxHQUFHLEdBQUcsQ0FBQztJQUMxQixDQUFDO0lBRUQsV0FBVyxDQUFDLE9BQXNCO1FBQ2hDLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUNwQixJQUFJLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUMzQixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUMvQixDQUFDO0lBRUQsSUFBYSxVQUFVLENBQUMsVUFBdUI7UUFDN0MsSUFBSSxVQUFVLEVBQUU7WUFDZCxJQUFJLENBQUMsV0FB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Z0JBRUksb0JBQW9CO3NCQUE3QixNQUFNO2dCQUNHLG9CQUFvQjtzQkFBN0IsTUFBTTtnQkFDRyxxQkFBcUI7c0JBQTlCLE1BQU07Z0JBQ0csbUJBQW1CO3NCQUE1QixNQUFNO2dCQWtCTSxVQUFVO3NCQUF0QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT25DaGFuZ2VzLFxuICBPdXRwdXQsXG4gIFNpbXBsZUNoYW5nZXNcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSZWN0YW5nbGUgfSBmcm9tICcuLi9hbm5vdGF0aW9uLXZpZXcvcmVjdGFuZ2xlL3JlY3RhbmdsZS5tb2RlbCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ212LWN0eC10b29sYmFyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2N0eC10b29sYmFyLmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBDdHhUb29sYmFyQ29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzIHtcblxuICByZWFkb25seSBkZWZhdWx0SGVpZ2h0O1xuICByZWFkb25seSBkZWZhdWx0V2lkdGg7XG5cbiAgQElucHV0KCkgem9vbTtcbiAgQElucHV0KCkgcm90YXRlO1xuICBASW5wdXQoKSBwYWdlSGVpZ2h0OiBudW1iZXI7XG4gIEBJbnB1dCgpIHBhZ2VXaWR0aDogbnVtYmVyO1xuXG4gIEBJbnB1dCgpIGNhbkhpZ2hsaWdodDogYm9vbGVhbjtcbiAgQElucHV0KCkgY2FuQm9va21hcms6IGJvb2xlYW47XG4gIEBJbnB1dCgpIGNhbkNvbW1lbnQ6IGJvb2xlYW47XG4gIEBJbnB1dCgpIGNhbkRlbGV0ZTogYm9vbGVhbjtcblxuICBAT3V0cHV0KCkgY3JlYXRlSGlnaGxpZ2h0RXZlbnQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBPdXRwdXQoKSBkZWxldGVIaWdobGlnaHRFdmVudCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQE91dHB1dCgpIGFkZE9yRWRpdENvbW1lbnRFdmVudCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQE91dHB1dCgpIGNyZWF0ZUJvb2ttYXJrRXZlbnQgPSBuZXcgRXZlbnRFbWl0dGVyPFJlY3RhbmdsZT4oKTtcblxuICByZWN0YW5nbGU6IFJlY3RhbmdsZTtcbiAgX3JlY3RhbmdsZXM6IFJlY3RhbmdsZVtdO1xuICB0b3A6IG51bWJlcjtcbiAgbGVmdDogbnVtYmVyO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHRoaXMuZGVmYXVsdEhlaWdodCA9IDcwO1xuICAgIHRoaXMuZGVmYXVsdFdpZHRoID0gMzAwO1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xuICAgIHRoaXMuc2V0UmVjdGFuZ2xlKCk7XG4gICAgdGhpcy50b3AgPSB0aGlzLnBvcHVwVG9wKCk7XG4gICAgdGhpcy5sZWZ0ID0gdGhpcy5wb3B1cExlZnQoKTtcbiAgfVxuXG4gIEBJbnB1dCgpIHNldCByZWN0YW5nbGVzKHJlY3RhbmdsZXM6IFJlY3RhbmdsZVtdKSB7XG4gICAgaWYgKHJlY3RhbmdsZXMpIHtcbiAgICAgIHRoaXMuX3JlY3RhbmdsZXMgPSByZWN0YW5nbGVzO1xuICAgICAgdGhpcy5zZXRSZWN0YW5nbGUoKTtcbiAgICB9XG4gIH1cblxuICBnZXQgcmVjdGFuZ2xlcygpIHtcbiAgICByZXR1cm4gdGhpcy5fcmVjdGFuZ2xlcztcbiAgfVxuXG4gIGNyZWF0ZUhpZ2hsaWdodCgpIHtcbiAgICB0aGlzLmNyZWF0ZUhpZ2hsaWdodEV2ZW50LmVtaXQoKTtcbiAgICB0aGlzLnJlY3RhbmdsZSA9IHVuZGVmaW5lZDtcbiAgfVxuXG4gIGRlbGV0ZUhpZ2hsaWdodCgpIHtcbiAgICB0aGlzLmRlbGV0ZUhpZ2hsaWdodEV2ZW50LmVtaXQoKTtcbiAgfVxuXG4gIGFkZE9yRWRpdENvbW1lbnQoKSB7XG4gICAgdGhpcy5hZGRPckVkaXRDb21tZW50RXZlbnQuZW1pdCgpO1xuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgaWYgKCFsb2NhdGlvbi5oYXNoKSB7XG4gICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd2aWV3ZXJDb250YWluZXInKS5zY3JvbGxCeSgwLCAxKTtcbiAgICAgIH1cbiAgICB9LCAxMCk7XG4gIH1cblxuICBjcmVhdGVCb29rbWFyaygpIHtcbiAgICB0aGlzLmNyZWF0ZUJvb2ttYXJrRXZlbnQuZW1pdCh0aGlzLnJlY3RhbmdsZSk7XG4gICAgdGhpcy5yZWN0YW5nbGUgPSB1bmRlZmluZWQ7XG4gIH1cblxuICBzZXRSZWN0YW5nbGUoKSB7XG4gICAgY29uc3QgcmVjdGFuZ2xlID0gdGhpcy5yZWN0YW5nbGVzXG4gICAgICAucmVkdWNlKChwcmV2LCBjdXJyZW50KSA9PiBwcmV2LnkgPCBjdXJyZW50LnkgPyBwcmV2IDogY3VycmVudCk7XG4gICAgdGhpcy5yZWN0YW5nbGUgPSAgeyAuLi5yZWN0YW5nbGUgfTtcbiAgICBzd2l0Y2ggKHRoaXMucm90YXRlKSB7XG4gICAgICBjYXNlIDkwOlxuICAgICAgICB0aGlzLnJlY3RhbmdsZS53aWR0aCA9IHJlY3RhbmdsZS5oZWlnaHQ7XG4gICAgICAgIHRoaXMucmVjdGFuZ2xlLmhlaWdodCA9IHJlY3RhbmdsZS53aWR0aDtcbiAgICAgICAgdGhpcy5yZWN0YW5nbGUueCA9ICh0aGlzLnBhZ2VXaWR0aCAvIHRoaXMuem9vbSkgLSByZWN0YW5nbGUueSAtIHJlY3RhbmdsZS5oZWlnaHQ7XG4gICAgICAgIHRoaXMucmVjdGFuZ2xlLnkgPSByZWN0YW5nbGUueDtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlIDE4MDpcbiAgICAgICAgdGhpcy5yZWN0YW5nbGUueCA9ICh0aGlzLnBhZ2VXaWR0aCAvIHRoaXMuem9vbSkgLSByZWN0YW5nbGUueCAtIHJlY3RhbmdsZS53aWR0aDtcbiAgICAgICAgdGhpcy5yZWN0YW5nbGUueSA9ICh0aGlzLnBhZ2VIZWlnaHQgLyB0aGlzLnpvb20pIC0gcmVjdGFuZ2xlLnkgLSByZWN0YW5nbGUuaGVpZ2h0O1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgMjcwOlxuICAgICAgICB0aGlzLnJlY3RhbmdsZS53aWR0aCA9IHJlY3RhbmdsZS5oZWlnaHQ7XG4gICAgICAgIHRoaXMucmVjdGFuZ2xlLmhlaWdodCA9IHJlY3RhbmdsZS53aWR0aDtcbiAgICAgICAgdGhpcy5yZWN0YW5nbGUueCA9IHJlY3RhbmdsZS55O1xuICAgICAgICB0aGlzLnJlY3RhbmdsZS55ID0gKHRoaXMucGFnZUhlaWdodCAvIHRoaXMuem9vbSkgLSByZWN0YW5nbGUueCAtIHJlY3RhbmdsZS53aWR0aDtcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuICB9XG5cbiAgcG9wdXBUb3AoKSB7XG4gICAgY29uc3QgcG9wdXBUb3AgPSB0aGlzLnJlY3RhbmdsZS55ICogdGhpcy56b29tIC0gdGhpcy5kZWZhdWx0SGVpZ2h0O1xuICAgIHJldHVybiBwb3B1cFRvcCA8PSAwID8gdGhpcy5kZWZhdWx0SGVpZ2h0IDogcG9wdXBUb3A7XG4gIH1cblxuICBwb3B1cExlZnQoKSB7XG4gICAgY29uc3QgcG9wdXBMZWZ0ID0gKHRoaXMucmVjdGFuZ2xlLnggKyAodGhpcy5yZWN0YW5nbGUud2lkdGggLyAyKSkgKiB0aGlzLnpvb20gLSAodGhpcy5kZWZhdWx0V2lkdGggLyAyKTtcbiAgICBpZiAocG9wdXBMZWZ0IDw9IDApIHtcbiAgICAgIHJldHVybiAwO1xuICAgIH0gZWxzZSBpZiAocG9wdXBMZWZ0ID49IHRoaXMucGFnZVdpZHRoIC0gdGhpcy5kZWZhdWx0V2lkdGgpIHtcbiAgICAgIHJldHVybiB0aGlzLnBhZ2VXaWR0aCAtIHRoaXMuZGVmYXVsdFdpZHRoO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gcG9wdXBMZWZ0O1xuICAgIH1cbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cInRvb2xiYXJcIiAqbmdJZj1cInJlY3RhbmdsZVwiXG4gICAgIFtzdHlsZS50b3AucHhdPVwidG9wXCJcbiAgICAgW3N0eWxlLmxlZnQucHhdPVwibGVmdFwiPlxuICA8YnV0dG9uICpuZ0lmPVwiY2FuSGlnaGxpZ2h0XCJcbiAgICAgICAgICB0eXBlPVwiYnV0dG9uXCIgdGl0bGU9XCJIaWdobGlnaHRcIlxuICAgICAgICAgIGNsYXNzPVwiYXVpX190b29sYmFyLWJ1dHRvbiBhdWlfX3Rvb2xiYXItYnV0dG9uLS1jb21tZW50cyBjb250ZXh0dWFsLWJ0biBsZWZ0QnV0dG9uIGF1aV9fdG9vbGJhci1idXR0b24taGlnaGxpZ2h0XCJcbiAgICAgICAgICAobW91c2Vkb3duKT1cImNyZWF0ZUhpZ2hsaWdodCgpXCI+XG4gICAgPHNwYW4+SGlnaGxpZ2h0PC9zcGFuPlxuICA8L2J1dHRvbj5cbiAgPGJ1dHRvbiAqbmdJZj1cImNhbkRlbGV0ZVwiXG4gICAgICAgICAgdHlwZT1cImJ1dHRvblwiIHRpdGxlPVwiRGVsZXRlXCJcbiAgICAgICAgICBjbGFzcz1cImF1aV9fdG9vbGJhci1idXR0b24gYXVpX190b29sYmFyLWJ1dHRvbi0tY29tbWVudHMgY29udGV4dHVhbC1idG4gbGVmdEJ1dHRvblwiXG4gICAgICAgICAgKG1vdXNlZG93bik9XCJkZWxldGVIaWdobGlnaHQoKVwiPlxuICAgIDxzcGFuPlJlbW92ZTwvc3Bhbj5cbiAgPC9idXR0b24+XG4gIDxidXR0b24gKm5nSWY9XCJjYW5Db21tZW50XCJcbiAgICAgICAgICB0eXBlPVwiYnV0dG9uXCIgdGl0bGU9XCJDb21tZW50XCJcbiAgICAgICAgICBjbGFzcz1cImF1aV9fdG9vbGJhci1idXR0b24gYXVpX190b29sYmFyLWJ1dHRvbi0tY29tbWVudHMgY29udGV4dHVhbC1idG4gcmlnaHRCdXR0b24gYXVpX190b29sYmFyLWJ1dHRvbi1jb21tZW50XCJcbiAgICAgICAgICAobW91c2Vkb3duKT1cImFkZE9yRWRpdENvbW1lbnQoKVwiPlxuICAgIDxzcGFuPkNvbW1lbnQ8L3NwYW4+PC9idXR0b24+XG4gIDxidXR0b24gKm5nSWY9XCJjYW5Cb29rbWFya1wiXG4gICAgICAgICAgdHlwZT1cImJ1dHRvblwiIHRpdGxlPVwiQm9va21hcmtcIlxuICAgICAgICAgIGNsYXNzPVwiYXVpX190b29sYmFyLWJ1dHRvbiBhdWlfX3Rvb2xiYXItYnV0dG9uLS1jb21tZW50cyBjb250ZXh0dWFsLWJ0biByaWdodEJ1dHRvbiBhdWlfX3Rvb2xiYXItYnV0dG9uLWJvb2ttYXJrXCJcbiAgICAgICAgICBpZD1cImJvb2ttYXJrQnV0dG9uXCJcbiAgICAgICAgICAobW91c2Vkb3duKT1cImNyZWF0ZUJvb2ttYXJrKClcIj5cbiAgICA8c3Bhbj5Cb29rbWFyazwvc3Bhbj48L2J1dHRvbj5cbiAgPGRpdiBjbGFzcz1cImFycm93LWRvd25cIj5cbiAgICA8ZGl2IGNsYXNzPVwiaW5uZXItdHJpYW5nbGVcIj48L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
@@ -0,0 +1,87 @@
1
+ import { Component, Input } from '@angular/core';
2
+ import { take } from 'rxjs/operators';
3
+ import { select } from '@ngrx/store';
4
+ import { v4 as uuid } from 'uuid';
5
+ import * as fromDocument from '../../../store/selectors/document.selectors';
6
+ import * as fromSelectors from '../../../store/selectors/annotation.selectors';
7
+ import { CreateBookmark } from '../../../store/actions/bookmark.actions';
8
+ import * as fromBookmarks from '../../../store/selectors/bookmark.selectors';
9
+ import * as i0 from "@angular/core";
10
+ import * as i1 from "@ngrx/store";
11
+ import * as i2 from "../annotation-create/highlight-create/highlight-create.service";
12
+ import * as i3 from "../../../toolbar/toolbar-event.service";
13
+ import * as i4 from "../../../viewers/viewer-event.service";
14
+ import * as i5 from "@angular/common";
15
+ import * as i6 from "../annotation-create/box-highlight-create/box-highlight-create.component";
16
+ import * as i7 from "../annotation-set.component";
17
+ import * as i8 from "../ctx-toolbar/ctx-toolbar.component";
18
+ export class MetadataLayerComponent {
19
+ constructor(store, highlightService, toolbarEvents, viewerEvents) {
20
+ this.store = store;
21
+ this.highlightService = highlightService;
22
+ this.toolbarEvents = toolbarEvents;
23
+ this.viewerEvents = viewerEvents;
24
+ this.pages = []; // todo add type
25
+ this.drawMode = false;
26
+ }
27
+ ngOnInit() {
28
+ this.$subscriptions = this.store.pipe(select(fromDocument.getPages))
29
+ .subscribe(pages => this.pages = Object.values(pages));
30
+ this.annoPages$ = this.store.pipe(select(fromSelectors.getPageEntities));
31
+ this.$subscriptions
32
+ .add(this.toolbarEvents.drawModeSubject.subscribe(drawMode => this.drawMode = drawMode))
33
+ .add(this.viewerEvents.textHighlight.subscribe(highlight => this.showContextToolbar(highlight)))
34
+ .add(this.viewerEvents.ctxToolbarCleared.subscribe(() => this.clearContextToolbar()));
35
+ }
36
+ ngOnDestroy() {
37
+ this.$subscriptions.unsubscribe();
38
+ }
39
+ showContextToolbar(highlight) {
40
+ this.highlightPage = highlight.page;
41
+ this.rectangles = highlight.rectangles;
42
+ if (this.rectangles) {
43
+ this.toolbarEvents.highlightModeSubject.next(false);
44
+ }
45
+ }
46
+ clearContextToolbar() {
47
+ this.rectangles = undefined;
48
+ }
49
+ createHighlight() {
50
+ this.highlightService.saveAnnotation(this.rectangles, this.highlightPage);
51
+ this.highlightService.resetHighlight();
52
+ this.rectangles = undefined;
53
+ }
54
+ createBookmark(rectangle) {
55
+ this.store.pipe(select(fromBookmarks.getBookmarkInfo), take(1))
56
+ .subscribe((bookmarkInfo) => {
57
+ const selection = window.getSelection().toString();
58
+ this.store.dispatch(new CreateBookmark({
59
+ ...bookmarkInfo,
60
+ name: selection.length > 0 ? selection.substr(0, 30) : 'new bookmark',
61
+ id: uuid(),
62
+ pageNumber: this.highlightPage - 1,
63
+ xCoordinate: rectangle.x,
64
+ yCoordinate: rectangle.y
65
+ }));
66
+ this.toolbarEvents.toggleSideBar(true);
67
+ this.toolbarEvents.toggleSideBarView(false);
68
+ this.highlightService.resetHighlight();
69
+ this.rectangles = undefined;
70
+ });
71
+ }
72
+ saveAnnotation({ rectangles, page }) {
73
+ this.highlightService.saveAnnotation(rectangles, page);
74
+ this.toolbarEvents.drawModeSubject.next(false);
75
+ }
76
+ }
77
+ /** @nocollapse */ MetadataLayerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: MetadataLayerComponent, deps: [{ token: i1.Store }, { token: i2.HighlightCreateService }, { token: i3.ToolbarEventService }, { token: i4.ViewerEventService }], target: i0.ɵɵFactoryTarget.Component });
78
+ /** @nocollapse */ MetadataLayerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: MetadataLayerComponent, selector: "mv-metadata-layer", inputs: { zoom: "zoom", rotate: "rotate" }, ngImport: i0, template: "<div class=\"pageContainer\">\n <div *ngFor=\"let page of pages; index as i\"\n class=\"pageContainer__page\"\n [ngStyle]=\"{\n 'width.px': page.styles.width,\n 'height.px': page.styles.height\n }\"\n [ngClass]=\"{ 'pageContainer__page--draw' : drawMode }\">\n <mv-box-highlight-create\n [page]=\"i + 1\"\n [pageHeight]=\"page.styles.height\"\n [pageWidth]=\"page.styles.width\"\n [rotate]=\"rotate\"\n [zoom]=\"zoom\"\n (saveSelection)=\"saveAnnotation($event)\">\n </mv-box-highlight-create>\n <mv-ctx-toolbar *ngIf=\"rectangles && highlightPage === (i + 1)\"\n [rectangles]=\"rectangles\"\n [canBookmark]=\"true\" [canHighlight]=\"true\"\n [zoom]=\"zoom\"\n [rotate]=\"rotate\"\n [pageHeight]=\"page.styles.height\"\n [pageWidth]=\"page.styles.width\"\n (createBookmarkEvent)=\"createBookmark($event)\"\n (createHighlightEvent)=\"createHighlight()\">\n </mv-ctx-toolbar>\n <div class=\"pageContainer__page-item\">\n <mv-annotation-set *ngIf=\"(annoPages$ | async) as annoPages\"\n [zoom]=\"zoom\"\n [rotate]=\"rotate\"\n [pageHeight]=\"page.styles.height\"\n [pageWidth]=\"page.styles.width\"\n [page]=\"i\" [annotations]=\"annoPages[i + 1]\"></mv-annotation-set>\n </div>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i5.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i6.BoxHighlightCreateComponent, selector: "mv-box-highlight-create", inputs: ["page", "pageHeight", "pageWidth", "rotate", "zoom", "container"], outputs: ["saveSelection"] }, { kind: "component", type: i7.AnnotationSetComponent, selector: "mv-annotation-set", inputs: ["page", "annotations", "zoom", "rotate", "pageHeight", "pageWidth"] }, { kind: "component", type: i8.CtxToolbarComponent, selector: "mv-ctx-toolbar", inputs: ["zoom", "rotate", "pageHeight", "pageWidth", "canHighlight", "canBookmark", "canComment", "canDelete", "rectangles"], outputs: ["createHighlightEvent", "deleteHighlightEvent", "addOrEditCommentEvent", "createBookmarkEvent"] }, { kind: "pipe", type: i5.AsyncPipe, name: "async" }] });
79
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: MetadataLayerComponent, decorators: [{
80
+ type: Component,
81
+ args: [{ selector: 'mv-metadata-layer', template: "<div class=\"pageContainer\">\n <div *ngFor=\"let page of pages; index as i\"\n class=\"pageContainer__page\"\n [ngStyle]=\"{\n 'width.px': page.styles.width,\n 'height.px': page.styles.height\n }\"\n [ngClass]=\"{ 'pageContainer__page--draw' : drawMode }\">\n <mv-box-highlight-create\n [page]=\"i + 1\"\n [pageHeight]=\"page.styles.height\"\n [pageWidth]=\"page.styles.width\"\n [rotate]=\"rotate\"\n [zoom]=\"zoom\"\n (saveSelection)=\"saveAnnotation($event)\">\n </mv-box-highlight-create>\n <mv-ctx-toolbar *ngIf=\"rectangles && highlightPage === (i + 1)\"\n [rectangles]=\"rectangles\"\n [canBookmark]=\"true\" [canHighlight]=\"true\"\n [zoom]=\"zoom\"\n [rotate]=\"rotate\"\n [pageHeight]=\"page.styles.height\"\n [pageWidth]=\"page.styles.width\"\n (createBookmarkEvent)=\"createBookmark($event)\"\n (createHighlightEvent)=\"createHighlight()\">\n </mv-ctx-toolbar>\n <div class=\"pageContainer__page-item\">\n <mv-annotation-set *ngIf=\"(annoPages$ | async) as annoPages\"\n [zoom]=\"zoom\"\n [rotate]=\"rotate\"\n [pageHeight]=\"page.styles.height\"\n [pageWidth]=\"page.styles.width\"\n [page]=\"i\" [annotations]=\"annoPages[i + 1]\"></mv-annotation-set>\n </div>\n </div>\n</div>\n" }]
82
+ }], ctorParameters: function () { return [{ type: i1.Store }, { type: i2.HighlightCreateService }, { type: i3.ToolbarEventService }, { type: i4.ViewerEventService }]; }, propDecorators: { zoom: [{
83
+ type: Input
84
+ }], rotate: [{
85
+ type: Input
86
+ }] } });
87
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWV0YWRhdGEtbGF5ZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWVkaWEtdmlld2VyL3NyYy9saWIvYW5ub3RhdGlvbnMvYW5ub3RhdGlvbi1zZXQvbWV0YWRhdGEtbGF5ZXIvbWV0YWRhdGEtbGF5ZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWVkaWEtdmlld2VyL3NyYy9saWIvYW5ub3RhdGlvbnMvYW5ub3RhdGlvbi1zZXQvbWV0YWRhdGEtbGF5ZXIvbWV0YWRhdGEtbGF5ZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBRXBFLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN0QyxPQUFPLEVBQUUsTUFBTSxFQUFTLE1BQU0sYUFBYSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxFQUFFLElBQUksSUFBSSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBR2xDLE9BQU8sS0FBSyxZQUFZLE1BQU0sNkNBQTZDLENBQUM7QUFDNUUsT0FBTyxLQUFLLGFBQWEsTUFBTSwrQ0FBK0MsQ0FBQztBQUcvRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDekUsT0FBTyxLQUFLLGFBQWEsTUFBTSw2Q0FBNkMsQ0FBQzs7Ozs7Ozs7OztBQVE3RSxNQUFNLE9BQU8sc0JBQXNCO0lBY2pDLFlBQ1UsS0FBMEMsRUFDakMsZ0JBQXdDLEVBQ3hDLGFBQWtDLEVBQ2xDLFlBQWdDO1FBSHpDLFVBQUssR0FBTCxLQUFLLENBQXFDO1FBQ2pDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBd0I7UUFDeEMsa0JBQWEsR0FBYixhQUFhLENBQXFCO1FBQ2xDLGlCQUFZLEdBQVosWUFBWSxDQUFvQjtRQWJuRCxV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Q0FBQyxDQUFDO1lBQ1gsSUFBSSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDdkMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUM1QyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDdkMsSUFBSSxDQUFDLFVBQVUsR0FBRyxTQUFTLENBQUM7UUFFOUIsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsY0FBYyxDQUFDLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBMEM7UUFDekUsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGNBQWMsQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDdkQsSUFBSSxDQUFDLGFBQWEsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2pELENBQUM7O3NJQTVFVSxzQkFBc0I7MEhBQXRCLHNCQUFzQixxR0NwQm5DLHloREFvQ0E7MkZEaEJhLHNCQUFzQjtrQkFKbEMsU0FBUzsrQkFDRSxtQkFBbUI7b01BS3BCLElBQUk7c0JBQVosS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YWtlIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgc2VsZWN0LCBTdG9yZSB9IGZyb20gJ0BuZ3J4L3N0b3JlJztcbmltcG9ydCB7IHY0IGFzIHV1aWQgfSBmcm9tICd1dWlkJztcblxuaW1wb3J0ICogYXMgZnJvbVN0b3JlIGZyb20gJy4uLy4uLy4uL3N0b3JlL3JlZHVjZXJzL3JlZHVjZXJzJztcbmltcG9ydCAqIGFzIGZyb21Eb2N1bWVudCBmcm9tICcuLi8uLi8uLi9zdG9yZS9zZWxlY3RvcnMvZG9jdW1lbnQuc2VsZWN0b3JzJztcbmltcG9ydCAqIGFzIGZyb21TZWxlY3RvcnMgZnJvbSAnLi4vLi4vLi4vc3RvcmUvc2VsZWN0b3JzL2Fubm90YXRpb24uc2VsZWN0b3JzJztcbmltcG9ydCB7IEhpZ2hsaWdodENyZWF0ZVNlcnZpY2UgfSBmcm9tICcuLi9hbm5vdGF0aW9uLWNyZWF0ZS9oaWdobGlnaHQtY3JlYXRlL2hpZ2hsaWdodC1jcmVhdGUuc2VydmljZSc7XG5pbXBvcnQgeyBSZWN0YW5nbGUgfSBmcm9tICcuLi9hbm5vdGF0aW9uLXZpZXcvcmVjdGFuZ2xlL3JlY3RhbmdsZS5tb2RlbCc7XG5pbXBvcnQgeyBDcmVhdGVCb29rbWFyayB9IGZyb20gJy4uLy4uLy4uL3N0b3JlL2FjdGlvbnMvYm9va21hcmsuYWN0aW9ucyc7XG5pbXBvcnQgKiBhcyBmcm9tQm9va21hcmtzIGZyb20gJy4uLy4uLy4uL3N0b3JlL3NlbGVjdG9ycy9ib29rbWFyay5zZWxlY3RvcnMnO1xuaW1wb3J0IHsgVG9vbGJhckV2ZW50U2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3Rvb2xiYXIvdG9vbGJhci1ldmVudC5zZXJ2aWNlJztcbmltcG9ydCB7IEhpZ2hsaWdodCwgVmlld2VyRXZlbnRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vdmlld2Vycy92aWV3ZXItZXZlbnQuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ212LW1ldGFkYXRhLWxheWVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL21ldGFkYXRhLWxheWVyLmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBNZXRhZGF0YUxheWVyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuXG4gIEBJbnB1dCgpIHpvb206IG51bWJlcjtcbiAgQElucHV0KCkgcm90YXRlOiBudW1iZXI7XG5cbiAgcGFnZXM6IGFueVtdID0gW107IC8vIHRvZG8gYWRkIHR5cGVcbiAgYW5ub1BhZ2VzJDogT2JzZXJ2YWJsZTxhbnk+OyAvLyB0b2RvIGFkZCB0eXBlXG5cbiAgZHJhd01vZGUgPSBmYWxzZTtcbiAgaGlnaGxpZ2h0UGFnZTogbnVtYmVyO1xuICByZWN0YW5nbGVzOiBSZWN0YW5nbGVbXTtcblxuICBwcml2YXRlICRzdWJzY3JpcHRpb25zOiBTdWJzY3JpcHRpb247XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBzdG9yZTogU3RvcmU8ZnJvbVN0b3JlLkFubm90YXRpb25TZXRTdGF0ZT4sXG4gICAgcHJpdmF0ZSByZWFkb25seSBoaWdobGlnaHRTZXJ2aWNlOiBIaWdobGlnaHRDcmVhdGVTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgdG9vbGJhckV2ZW50czogVG9vbGJhckV2ZW50U2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHZpZXdlckV2ZW50czogVmlld2VyRXZlbnRTZXJ2aWNlKSB7IH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLiRzdWJzY3JpcHRpb25zID0gdGhpcy5zdG9yZS5waXBlKHNlbGVjdChmcm9tRG9jdW1lbnQuZ2V0UGFnZXMpKVxuICAgICAgLnN1YnNjcmliZShwYWdlcyA9PiB0aGlzLnBhZ2VzID0gT2JqZWN0LnZhbHVlcyhwYWdlcykpO1xuICAgIHRoaXMuYW5ub1BhZ2VzJCA9IHRoaXMuc3RvcmUucGlwZShzZWxlY3QoZnJvbVNlbGVjdG9ycy5nZXRQYWdlRW50aXRpZXMpKTtcblxuICAgIHRoaXMuJHN1YnNjcmlwdGlvbnNcbiAgICAgIC5hZGQodGhpcy50b29sYmFyRXZlbnRzLmRyYXdNb2RlU3ViamVjdC5zdWJzY3JpYmUoZHJhd01vZGUgPT4gdGhpcy5kcmF3TW9kZSA9IGRyYXdNb2RlKSlcbiAgICAgIC5hZGQodGhpcy52aWV3ZXJFdmVudHMudGV4dEhpZ2hsaWdodC5zdWJzY3JpYmUoaGlnaGxpZ2h0ID0+IHRoaXMuc2hvd0NvbnRleHRUb29sYmFyKGhpZ2hsaWdodCkpKVxuICAgICAgLmFkZCh0aGlzLnZpZXdlckV2ZW50cy5jdHhUb29sYmFyQ2xlYXJlZC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5jbGVhckNvbnRleHRUb29sYmFyKCkpKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuJHN1YnNjcmlwdGlvbnMudW5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIHNob3dDb250ZXh0VG9vbGJhcihoaWdobGlnaHQ6IEhpZ2hsaWdodCkge1xuICAgIHRoaXMuaGlnaGxpZ2h0UGFnZSA9IGhpZ2hsaWdodC5wYWdlO1xuICAgIHRoaXMucmVjdGFuZ2xlcyA9IGhpZ2hsaWdodC5yZWN0YW5nbGVzO1xuICAgIGlmICh0aGlzLnJlY3RhbmdsZXMpIHtcbiAgICAgIHRoaXMudG9vbGJhckV2ZW50cy5oaWdobGlnaHRNb2RlU3ViamVjdC5uZXh0KGZhbHNlKTtcbiAgICB9XG4gIH1cblxuICBjbGVhckNvbnRleHRUb29sYmFyKCkge1xuICAgIHRoaXMucmVjdGFuZ2xlcyA9IHVuZGVmaW5lZDtcbiAgfVxuXG4gIGNyZWF0ZUhpZ2hsaWdodCgpIHtcbiAgICB0aGlzLmhpZ2hsaWdodFNlcnZpY2Uuc2F2ZUFubm90YXRpb24odGhpcy5yZWN0YW5nbGVzLCB0aGlzLmhpZ2hsaWdodFBhZ2UpO1xuICAgIHRoaXMuaGlnaGxpZ2h0U2VydmljZS5yZXNldEhpZ2hsaWdodCgpO1xuICAgIHRoaXMucmVjdGFuZ2xlcyA9IHVuZGVmaW5lZDtcbiAgfVxuXG4gIGNyZWF0ZUJvb2ttYXJrKHJlY3RhbmdsZTogUmVjdGFuZ2xlKSB7XG4gICAgdGhpcy5zdG9yZS5waXBlKHNlbGVjdChmcm9tQm9va21hcmtzLmdldEJvb2ttYXJrSW5mbyksIHRha2UoMSkpXG4gICAgICAuc3Vic2NyaWJlKChib29rbWFya0luZm8pID0+IHtcbiAgICAgICAgY29uc3Qgc2VsZWN0aW9uID0gd2luZG93LmdldFNlbGVjdGlvbigpLnRvU3RyaW5nKCk7XG4gICAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2gobmV3IENyZWF0ZUJvb2ttYXJrKHtcbiAgICAgICAgICAuLi5ib29rbWFya0luZm8sXG4gICAgICAgICAgbmFtZTogc2VsZWN0aW9uLmxlbmd0aCA+IDAgPyBzZWxlY3Rpb24uc3Vic3RyKDAsIDMwKSA6ICduZXcgYm9va21hcmsnLFxuICAgICAgICAgIGlkOiB1dWlkKCksXG4gICAgICAgICAgcGFnZU51bWJlcjogdGhpcy5oaWdobGlnaHRQYWdlIC0gMSxcbiAgICAgICAgICB4Q29vcmRpbmF0ZTogcmVjdGFuZ2xlLngsXG4gICAgICAgICAgeUNvb3JkaW5hdGU6IHJlY3RhbmdsZS55XG4gICAgICAgIH0gYXMgYW55KSk7XG4gICAgICAgIHRoaXMudG9vbGJhckV2ZW50cy50b2dnbGVTaWRlQmFyKHRydWUpO1xuICAgICAgICB0aGlzLnRvb2xiYXJFdmVudHMudG9nZ2xlU2lkZUJhclZpZXcoZmFsc2UpO1xuICAgICAgICB0aGlzLmhpZ2hsaWdodFNlcnZpY2UucmVzZXRIaWdobGlnaHQoKTtcbiAgICAgICAgdGhpcy5yZWN0YW5nbGVzID0gdW5kZWZpbmVkO1xuXG4gICAgICB9KTtcbiAgfVxuXG4gIHNhdmVBbm5vdGF0aW9uKHsgcmVjdGFuZ2xlcywgcGFnZSB9OiB7IHJlY3RhbmdsZXM6IFJlY3RhbmdsZVtdLCBwYWdlOiBhbnkgfSkge1xuICAgIHRoaXMuaGlnaGxpZ2h0U2VydmljZS5zYXZlQW5ub3RhdGlvbihyZWN0YW5nbGVzLCBwYWdlKTtcbiAgICB0aGlzLnRvb2xiYXJFdmVudHMuZHJhd01vZGVTdWJqZWN0Lm5leHQoZmFsc2UpO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwicGFnZUNvbnRhaW5lclwiPlxuICA8ZGl2ICAqbmdGb3I9XCJsZXQgcGFnZSBvZiBwYWdlczsgIGluZGV4IGFzIGlcIlxuICAgICAgIGNsYXNzPVwicGFnZUNvbnRhaW5lcl9fcGFnZVwiXG4gICAgICAgW25nU3R5bGVdPVwie1xuICAgICAgICd3aWR0aC5weCc6IHBhZ2Uuc3R5bGVzLndpZHRoLFxuICAgICAgICdoZWlnaHQucHgnOiBwYWdlLnN0eWxlcy5oZWlnaHRcbiAgICAgICB9XCJcbiAgICAgICBbbmdDbGFzc109XCJ7ICdwYWdlQ29udGFpbmVyX19wYWdlLS1kcmF3JyA6IGRyYXdNb2RlIH1cIj5cbiAgICA8bXYtYm94LWhpZ2hsaWdodC1jcmVhdGVcbiAgICAgIFtwYWdlXT1cImkgKyAxXCJcbiAgICAgIFtwYWdlSGVpZ2h0XT1cInBhZ2Uuc3R5bGVzLmhlaWdodFwiXG4gICAgICBbcGFnZVdpZHRoXT1cInBhZ2Uuc3R5bGVzLndpZHRoXCJcbiAgICAgIFtyb3RhdGVdPVwicm90YXRlXCJcbiAgICAgIFt6b29tXT1cInpvb21cIlxuICAgICAgKHNhdmVTZWxlY3Rpb24pPVwic2F2ZUFubm90YXRpb24oJGV2ZW50KVwiPlxuICAgIDwvbXYtYm94LWhpZ2hsaWdodC1jcmVhdGU+XG4gICAgPG12LWN0eC10b29sYmFyICpuZ0lmPVwicmVjdGFuZ2xlcyAmJiBoaWdobGlnaHRQYWdlID09PSAoaSArIDEpXCJcbiAgICAgICAgICAgICAgICAgICAgW3JlY3RhbmdsZXNdPVwicmVjdGFuZ2xlc1wiXG4gICAgICAgICAgICAgICAgICAgIFtjYW5Cb29rbWFya109XCJ0cnVlXCIgW2NhbkhpZ2hsaWdodF09XCJ0cnVlXCJcbiAgICAgICAgICAgICAgICAgICAgW3pvb21dPVwiem9vbVwiXG4gICAgICAgICAgICAgICAgICAgIFtyb3RhdGVdPVwicm90YXRlXCJcbiAgICAgICAgICAgICAgICAgICAgW3BhZ2VIZWlnaHRdPVwicGFnZS5zdHlsZXMuaGVpZ2h0XCJcbiAgICAgICAgICAgICAgICAgICAgW3BhZ2VXaWR0aF09XCJwYWdlLnN0eWxlcy53aWR0aFwiXG4gICAgICAgICAgICAgICAgICAgIChjcmVhdGVCb29rbWFya0V2ZW50KT1cImNyZWF0ZUJvb2ttYXJrKCRldmVudClcIlxuICAgICAgICAgICAgICAgICAgICAoY3JlYXRlSGlnaGxpZ2h0RXZlbnQpPVwiY3JlYXRlSGlnaGxpZ2h0KClcIj5cbiAgICA8L212LWN0eC10b29sYmFyPlxuICAgIDxkaXYgY2xhc3M9XCJwYWdlQ29udGFpbmVyX19wYWdlLWl0ZW1cIj5cbiAgICAgIDxtdi1hbm5vdGF0aW9uLXNldCAqbmdJZj1cIihhbm5vUGFnZXMkIHwgYXN5bmMpIGFzIGFubm9QYWdlc1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgW3pvb21dPVwiem9vbVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgW3JvdGF0ZV09XCJyb3RhdGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgIFtwYWdlSGVpZ2h0XT1cInBhZ2Uuc3R5bGVzLmhlaWdodFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgW3BhZ2VXaWR0aF09XCJwYWdlLnN0eWxlcy53aWR0aFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgW3BhZ2VdPVwiaVwiIFthbm5vdGF0aW9uc109XCJhbm5vUGFnZXNbaSArIDFdXCI+PC9tdi1hbm5vdGF0aW9uLXNldD5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
@@ -0,0 +1,158 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { FormsModule, ReactiveFormsModule } from '@angular/forms';
4
+ import { HttpClientModule } from '@angular/common/http';
5
+ import { A11yModule } from '@angular/cdk/a11y';
6
+ import { RouterModule } from '@angular/router';
7
+ import { MutableDivModule } from 'mutable-div';
8
+ import { TagInputModule } from 'ngx-chips';
9
+ import { NgxDatatableModule } from '@swimlane/ngx-datatable';
10
+ import { AnnotationApiService } from './services/annotation-api/annotation-api.service';
11
+ import { AnnotationViewComponent } from './annotation-set/annotation-view/annotation-view.component';
12
+ import { AnnotationSetComponent } from './annotation-set/annotation-set.component';
13
+ import { RectangleComponent } from './annotation-set/annotation-view/rectangle/rectangle.component';
14
+ import { CommentComponent } from './comment-set/comment/comment.component';
15
+ import { CtxToolbarComponent } from './annotation-set/ctx-toolbar/ctx-toolbar.component';
16
+ import { CommentSetComponent } from './comment-set/comment-set.component';
17
+ import { TextareaAutoExpandDirective } from './comment-set/comment/textarea-auto-expand/textarea-auto-expand.directive';
18
+ import { CommentsSummaryComponent } from './comments-summary/comments-summary.component';
19
+ import { CommentSetRenderService } from './comment-set/comment-set-render.service';
20
+ import { BoxHighlightCreateComponent } from './annotation-set/annotation-create/box-highlight-create/box-highlight-create.component';
21
+ import { HighlightCreateService } from './annotation-set/annotation-create/highlight-create/highlight-create.service';
22
+ import { CommentSetHeaderComponent } from './comment-set/comment-set-header/comment-set-header.component';
23
+ import { CommentSearchComponent } from './comment-set/comment-set-header/comment-search/comment-search.component';
24
+ import { TextHighlightDirective } from './comment-set/comment/text-highlight/text-highlight.directive';
25
+ import { TagsComponent } from './tags/tags.component';
26
+ import { TagsServices } from './services/tags/tags.services';
27
+ import { CommentsNavigateComponent } from './comment-set/comment-navigate/comments-navigate.component';
28
+ import { CommentFilterComponent } from './comment-set/comment-set-header/comment-filter/comment-filter.component';
29
+ import { MomentDatePipe } from './pipes/date/date.pipe';
30
+ import { BookmarksApiService } from './services/bookmarks-api/bookmarks-api.service';
31
+ import { FilterPipe } from './pipes/filter/filter.pipe';
32
+ import { UnsnakePipe } from './pipes/unsnake/unsnake.pipe';
33
+ import { SharedModule } from '../shared/shared.module';
34
+ import { MetadataLayerComponent } from './annotation-set/metadata-layer/metadata-layer.component';
35
+ import { CommentService } from './comment-set/comment/comment.service';
36
+ import * as i0 from "@angular/core";
37
+ export class AnnotationsModule {
38
+ }
39
+ /** @nocollapse */ AnnotationsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: AnnotationsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
40
+ /** @nocollapse */ AnnotationsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: AnnotationsModule, declarations: [MetadataLayerComponent,
41
+ AnnotationViewComponent,
42
+ BoxHighlightCreateComponent,
43
+ AnnotationSetComponent,
44
+ RectangleComponent,
45
+ CommentComponent,
46
+ CommentSetHeaderComponent,
47
+ CommentSearchComponent,
48
+ TextHighlightDirective,
49
+ CtxToolbarComponent,
50
+ CommentSetComponent,
51
+ CommentsNavigateComponent,
52
+ TextareaAutoExpandDirective,
53
+ CommentsSummaryComponent,
54
+ TagsComponent,
55
+ MomentDatePipe,
56
+ CommentFilterComponent,
57
+ FilterPipe,
58
+ UnsnakePipe], imports: [A11yModule,
59
+ CommonModule,
60
+ FormsModule,
61
+ HttpClientModule,
62
+ MutableDivModule,
63
+ TagInputModule,
64
+ RouterModule,
65
+ ReactiveFormsModule,
66
+ NgxDatatableModule,
67
+ SharedModule], exports: [AnnotationViewComponent,
68
+ BoxHighlightCreateComponent,
69
+ AnnotationSetComponent,
70
+ CommentSetComponent,
71
+ CommentSetHeaderComponent,
72
+ CommentSearchComponent,
73
+ CommentsSummaryComponent,
74
+ TagsComponent,
75
+ CommentFilterComponent,
76
+ MomentDatePipe,
77
+ FilterPipe,
78
+ UnsnakePipe,
79
+ MetadataLayerComponent] });
80
+ /** @nocollapse */ AnnotationsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: AnnotationsModule, providers: [
81
+ AnnotationApiService,
82
+ BookmarksApiService,
83
+ CommentSetRenderService,
84
+ HighlightCreateService,
85
+ CommentService,
86
+ TagsServices
87
+ ], imports: [A11yModule,
88
+ CommonModule,
89
+ FormsModule,
90
+ HttpClientModule,
91
+ MutableDivModule,
92
+ TagInputModule,
93
+ RouterModule,
94
+ ReactiveFormsModule,
95
+ NgxDatatableModule,
96
+ SharedModule] });
97
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: AnnotationsModule, decorators: [{
98
+ type: NgModule,
99
+ args: [{
100
+ imports: [
101
+ A11yModule,
102
+ CommonModule,
103
+ FormsModule,
104
+ HttpClientModule,
105
+ MutableDivModule,
106
+ TagInputModule,
107
+ RouterModule,
108
+ ReactiveFormsModule,
109
+ NgxDatatableModule,
110
+ SharedModule
111
+ ],
112
+ declarations: [
113
+ MetadataLayerComponent,
114
+ AnnotationViewComponent,
115
+ BoxHighlightCreateComponent,
116
+ AnnotationSetComponent,
117
+ RectangleComponent,
118
+ CommentComponent,
119
+ CommentSetHeaderComponent,
120
+ CommentSearchComponent,
121
+ TextHighlightDirective,
122
+ CtxToolbarComponent,
123
+ CommentSetComponent,
124
+ CommentsNavigateComponent,
125
+ TextareaAutoExpandDirective,
126
+ CommentsSummaryComponent,
127
+ TagsComponent,
128
+ MomentDatePipe,
129
+ CommentFilterComponent,
130
+ FilterPipe,
131
+ UnsnakePipe
132
+ ],
133
+ providers: [
134
+ AnnotationApiService,
135
+ BookmarksApiService,
136
+ CommentSetRenderService,
137
+ HighlightCreateService,
138
+ CommentService,
139
+ TagsServices
140
+ ],
141
+ exports: [
142
+ AnnotationViewComponent,
143
+ BoxHighlightCreateComponent,
144
+ AnnotationSetComponent,
145
+ CommentSetComponent,
146
+ CommentSetHeaderComponent,
147
+ CommentSearchComponent,
148
+ CommentsSummaryComponent,
149
+ TagsComponent,
150
+ CommentFilterComponent,
151
+ MomentDatePipe,
152
+ FilterPipe,
153
+ UnsnakePipe,
154
+ MetadataLayerComponent
155
+ ]
156
+ }]
157
+ }] });
158
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ub3RhdGlvbnMubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWVkaWEtdmlld2VyL3NyYy9saWIvYW5ub3RhdGlvbnMvYW5ub3RhdGlvbnMubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBQyxXQUFXLEVBQUUsbUJBQW1CLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUNoRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDL0MsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRS9DLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUMvQyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQzNDLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBRTNELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQ3hGLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDREQUE0RCxDQUFDO0FBQ3JHLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQ25GLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGdFQUFnRSxDQUFDO0FBQ3BHLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQzNFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLG9EQUFvRCxDQUFDO0FBQ3pGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQzFFLE9BQU8s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LHNCQUFzQjt3QkFDdEIsdUJBQXVCO3dCQUN2QiwyQkFBMkI7d0JBQzNCLHNCQUFzQjt3QkFDdEIsa0JBQWtCO3dCQUNsQixnQkFBZ0I7d0JBQ2hCLHlCQUF5Qjt3QkFDekIsc0JBQXNCO3dCQUN0QixzQkFBc0I7d0JBQ3RCLG1CQUFtQjt3QkFDbkIsbUJBQW1CO3dCQUNuQix5QkFBeUI7d0JBQ3pCLDJCQUEyQjt3QkFDM0Isd0JBQXdCO3dCQUN4QixhQUFhO3dCQUNiLGNBQWM7d0JBQ2Qsc0JBQXNCO3dCQUN0QixVQUFVO3dCQUNWLFdBQVc7cUJBQ2Q7b0JBQ0QsU0FBUyxFQUFFO3dCQUNQLG9CQUFvQjt3QkFDcEIsbUJBQW1CO3dCQUNuQix1QkFBdUI7d0JBQ3ZCLHNCQUFzQjt3QkFDdEIsY0FBYzt3QkFDZCxZQUFZO3FCQUNmO29CQUNELE9BQU8sRUFBRTt3QkFDTCx1QkFBdUI7d0JBQ3ZCLDJCQUEyQjt3QkFDM0Isc0JBQXNCO3dCQUN0QixtQkFBbUI7d0JBQ25CLHlCQUF5Qjt3QkFDekIsc0JBQXNCO3dCQUN0Qix3QkFBd0I7d0JBQ3hCLGFBQWE7d0JBQ2Isc0JBQXNCO3dCQUN0QixjQUFjO3dCQUNkLFVBQVU7d0JBQ1YsV0FBVzt3QkFDWCxzQkFBc0I7cUJBQ3pCO2lCQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge0Zvcm1zTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBIdHRwQ2xpZW50TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgQTExeU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9hMTF5JztcbmltcG9ydCB7IFJvdXRlck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5cbmltcG9ydCB7IE11dGFibGVEaXZNb2R1bGUgfSBmcm9tICdtdXRhYmxlLWRpdic7XG5pbXBvcnQgeyBUYWdJbnB1dE1vZHVsZSB9IGZyb20gJ25neC1jaGlwcyc7XG5pbXBvcnQge05neERhdGF0YWJsZU1vZHVsZX0gZnJvbSAnQHN3aW1sYW5lL25neC1kYXRhdGFibGUnO1xuXG5pbXBvcnQgeyBBbm5vdGF0aW9uQXBpU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvYW5ub3RhdGlvbi1hcGkvYW5ub3RhdGlvbi1hcGkuc2VydmljZSc7XG5pbXBvcnQgeyBBbm5vdGF0aW9uVmlld0NvbXBvbmVudCB9IGZyb20gJy4vYW5ub3RhdGlvbi1zZXQvYW5ub3RhdGlvbi12aWV3L2Fubm90YXRpb24tdmlldy5jb21wb25lbnQnO1xuaW1wb3J0IHsgQW5ub3RhdGlvblNldENvbXBvbmVudCB9IGZyb20gJy4vYW5ub3RhdGlvbi1zZXQvYW5ub3RhdGlvbi1zZXQuY29tcG9uZW50JztcbmltcG9ydCB7IFJlY3RhbmdsZUNvbXBvbmVudCB9IGZyb20gJy4vYW5ub3RhdGlvbi1zZXQvYW5ub3RhdGlvbi12aWV3L3JlY3RhbmdsZS9yZWN0YW5nbGUuY29tcG9uZW50JztcbmltcG9ydCB7IENvbW1lbnRDb21wb25lbnQgfSBmcm9tICcuL2NvbW1lbnQtc2V0L2NvbW1lbnQvY29tbWVudC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ3R4VG9vbGJhckNvbXBvbmVudCB9IGZyb20gJy4vYW5ub3RhdGlvbi1zZXQvY3R4LXRvb2xiYXIvY3R4LXRvb2xiYXIuY29tcG9uZW50JztcbmltcG9ydCB7IENvbW1lbnRTZXRDb21wb25lbnQgfSBmcm9tICcuL2NvbW1lbnQtc2V0L2NvbW1lbnQtc2V0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUZXh0YXJlYUF1dG9FeHBhbmREaXJlY3RpdmUgfSBmcm9tICcuL2NvbW1lbnQtc2V0L2NvbW1lbnQvdGV4dGFyZWEtYXV0by1leHBhbmQvdGV4dGFyZWEtYXV0by1leHBhbmQuZGlyZWN0aXZlJztcbmltcG9ydCB7IENvbW1lbnRzU3VtbWFyeUNvbXBvbmVudCB9IGZyb20gJy4vY29tbWVudHMtc3VtbWFyeS9jb21tZW50cy1zdW1tYXJ5LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDb21tZW50U2V0UmVuZGVyU2VydmljZSB9IGZyb20gJy4vY29tbWVudC1zZXQvY29tbWVudC1zZXQtcmVuZGVyLnNlcnZpY2UnO1xuaW1wb3J0IHsgQm94SGlnaGxpZ2h0Q3JlYXRlQ29tcG9uZW50IH0gZnJvbSAnLi9hbm5vdGF0aW9uLXNldC9hbm5vdGF0aW9uLWNyZWF0ZS9ib3gtaGlnaGxpZ2h0LWNyZWF0ZS9ib3gtaGlnaGxpZ2h0LWNyZWF0ZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgSGlnaGxpZ2h0Q3JlYXRlU2VydmljZSB9IGZyb20gJy4vYW5ub3RhdGlvbi1zZXQvYW5ub3RhdGlvbi1jcmVhdGUvaGlnaGxpZ2h0LWNyZWF0ZS9oaWdobGlnaHQtY3JlYXRlLnNlcnZpY2UnO1xuaW1wb3J0IHsgQ29tbWVudFNldEhlYWRlckNvbXBvbmVudCB9IGZyb20gJy4vY29tbWVudC1zZXQvY29tbWVudC1zZXQtaGVhZGVyL2NvbW1lbnQtc2V0LWhlYWRlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ29tbWVudFNlYXJjaENvbXBvbmVudCB9IGZyb20gJy4vY29tbWVudC1zZXQvY29tbWVudC1zZXQtaGVhZGVyL2NvbW1lbnQtc2VhcmNoL2NvbW1lbnQtc2VhcmNoLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUZXh0SGlnaGxpZ2h0RGlyZWN0aXZlIH0gZnJvbSAnLi9jb21tZW50LXNldC9jb21tZW50L3RleHQtaGlnaGxpZ2h0L3RleHQtaGlnaGxpZ2h0LmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBUYWdzQ29tcG9uZW50IH0gZnJvbSAnLi90YWdzL3RhZ3MuY29tcG9uZW50JztcbmltcG9ydCB7IFRhZ3NTZXJ2aWNlcyB9IGZyb20gJy4vc2VydmljZXMvdGFncy90YWdzLnNlcnZpY2VzJztcbmltcG9ydCB7IENvbW1lbnRzTmF2aWdhdGVDb21wb25lbnQgfSBmcm9tICcuL2NvbW1lbnQtc2V0L2NvbW1lbnQtbmF2aWdhdGUvY29tbWVudHMtbmF2aWdhdGUuY29tcG9uZW50JztcbmltcG9ydCB7Q29tbWVudEZpbHRlckNvbXBvbmVudH0gZnJvbSAnLi9jb21tZW50LXNldC9jb21tZW50LXNldC1oZWFkZXIvY29tbWVudC1maWx0ZXIvY29tbWVudC1maWx0ZXIuY29tcG9uZW50JztcbmltcG9ydCB7TW9tZW50RGF0ZVBpcGV9IGZyb20gJy4vcGlwZXMvZGF0ZS9kYXRlLnBpcGUnO1xuaW1wb3J0IHsgQm9va21hcmtzQXBpU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvYm9va21hcmtzLWFwaS9ib29rbWFya3MtYXBpLnNlcnZpY2UnO1xuaW1wb3J0IHtGaWx0ZXJQaXBlfSBmcm9tICcuL3BpcGVzL2ZpbHRlci9maWx0ZXIucGlwZSc7XG5pbXBvcnQge1Vuc25ha2VQaXBlfSBmcm9tICcuL3BpcGVzL3Vuc25ha2UvdW5zbmFrZS5waXBlJztcbmltcG9ydCB7U2hhcmVkTW9kdWxlfSBmcm9tICcuLi9zaGFyZWQvc2hhcmVkLm1vZHVsZSc7XG5pbXBvcnQgeyBNZXRhZGF0YUxheWVyQ29tcG9uZW50IH0gZnJvbSAnLi9hbm5vdGF0aW9uLXNldC9tZXRhZGF0YS1sYXllci9tZXRhZGF0YS1sYXllci5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ29tbWVudFNlcnZpY2UgfSBmcm9tICcuL2NvbW1lbnQtc2V0L2NvbW1lbnQvY29tbWVudC5zZXJ2aWNlJztcblxuQE5nTW9kdWxlKHtcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIEExMXlNb2R1bGUsXG4gICAgICAgIENvbW1vbk1vZHVsZSxcbiAgICAgICAgRm9ybXNNb2R1bGUsXG4gICAgICAgIEh0dHBDbGllbnRNb2R1bGUsXG4gICAgICAgIE11dGFibGVEaXZNb2R1bGUsXG4gICAgICAgIFRhZ0lucHV0TW9kdWxlLFxuICAgICAgICBSb3V0ZXJNb2R1bGUsXG4gICAgICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gICAgICAgIE5neERhdGF0YWJsZU1vZHVsZSxcbiAgICAgICAgU2hhcmVkTW9kdWxlXG4gICAgXSxcbiAgICBkZWNsYXJhdGlvbnM6IFtcbiAgICAgICAgTWV0YWRhdGFMYXllckNvbXBvbmVudCxcbiAgICAgICAgQW5ub3RhdGlvblZpZXdDb21wb25lbnQsXG4gICAgICAgIEJveEhpZ2hsaWdodENyZWF0ZUNvbXBvbmVudCxcbiAgICAgICAgQW5ub3RhdGlvblNldENvbXBvbmVudCxcbiAgICAgICAgUmVjdGFuZ2xlQ29tcG9uZW50LFxuICAgICAgICBDb21tZW50Q29tcG9uZW50LFxuICAgICAgICBDb21tZW50U2V0SGVhZGVyQ29tcG9uZW50LFxuICAgICAgICBDb21tZW50U2VhcmNoQ29tcG9uZW50LFxuICAgICAgICBUZXh0SGlnaGxpZ2h0RGlyZWN0aXZlLFxuICAgICAgICBDdHhUb29sYmFyQ29tcG9uZW50LFxuICAgICAgICBDb21tZW50U2V0Q29tcG9uZW50LFxuICAgICAgICBDb21tZW50c05hdmlnYXRlQ29tcG9uZW50LFxuICAgICAgICBUZXh0YXJlYUF1dG9FeHBhbmREaXJlY3RpdmUsXG4gICAgICAgIENvbW1lbnRzU3VtbWFyeUNvbXBvbmVudCxcbiAgICAgICAgVGFnc0NvbXBvbmVudCxcbiAgICAgICAgTW9tZW50RGF0ZVBpcGUsXG4gICAgICAgIENvbW1lbnRGaWx0ZXJDb21wb25lbnQsXG4gICAgICAgIEZpbHRlclBpcGUsXG4gICAgICAgIFVuc25ha2VQaXBlXG4gICAgXSxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgQW5ub3RhdGlvbkFwaVNlcnZpY2UsXG4gICAgICAgIEJvb2ttYXJrc0FwaVNlcnZpY2UsXG4gICAgICAgIENvbW1lbnRTZXRSZW5kZXJTZXJ2aWNlLFxuICAgICAgICBIaWdobGlnaHRDcmVhdGVTZXJ2aWNlLFxuICAgICAgICBDb21tZW50U2VydmljZSxcbiAgICAgICAgVGFnc1NlcnZpY2VzXG4gICAgXSxcbiAgICBleHBvcnRzOiBbXG4gICAgICAgIEFubm90YXRpb25WaWV3Q29tcG9uZW50LFxuICAgICAgICBCb3hIaWdobGlnaHRDcmVhdGVDb21wb25lbnQsXG4gICAgICAgIEFubm90YXRpb25TZXRDb21wb25lbnQsXG4gICAgICAgIENvbW1lbnRTZXRDb21wb25lbnQsXG4gICAgICAgIENvbW1lbnRTZXRIZWFkZXJDb21wb25lbnQsXG4gICAgICAgIENvbW1lbnRTZWFyY2hDb21wb25lbnQsXG4gICAgICAgIENvbW1lbnRzU3VtbWFyeUNvbXBvbmVudCxcbiAgICAgICAgVGFnc0NvbXBvbmVudCxcbiAgICAgICAgQ29tbWVudEZpbHRlckNvbXBvbmVudCxcbiAgICAgICAgTW9tZW50RGF0ZVBpcGUsXG4gICAgICAgIEZpbHRlclBpcGUsXG4gICAgICAgIFVuc25ha2VQaXBlLFxuICAgICAgICBNZXRhZGF0YUxheWVyQ29tcG9uZW50XG4gICAgXVxufSlcbmV4cG9ydCBjbGFzcyBBbm5vdGF0aW9uc01vZHVsZSB7IH1cbiJdfQ==