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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (477) hide show
  1. package/assets/all.scss +1 -1
  2. package/assets/sass/tags.scss +1 -1
  3. package/assets/sass/toolbar/main-toolbar.scss +7 -6
  4. package/esm2020/hmcts-media-viewer.mjs +5 -0
  5. package/esm2020/lib/annotations/annotation-set/annotation-create/box-highlight-create/box-highlight-create.component.mjs +116 -0
  6. package/esm2020/lib/annotations/annotation-set/annotation-create/highlight-create/highlight-create.directive.mjs +109 -0
  7. package/esm2020/lib/annotations/annotation-set/annotation-create/highlight-create/highlight-create.service.mjs +75 -0
  8. package/esm2020/lib/annotations/annotation-set/annotation-set.component.mjs +50 -0
  9. package/esm2020/lib/annotations/annotation-set/annotation-view/annotation-view.component.mjs +94 -0
  10. package/esm2020/lib/annotations/annotation-set/annotation-view/rectangle/rectangle.component.mjs +116 -0
  11. package/esm2020/lib/annotations/annotation-set/ctx-toolbar/ctx-toolbar.component.mjs +118 -0
  12. package/esm2020/lib/annotations/annotation-set/metadata-layer/metadata-layer.component.mjs +87 -0
  13. package/esm2020/lib/annotations/annotations.module.mjs +158 -0
  14. package/esm2020/lib/annotations/comment-set/comment/comment.component.mjs +176 -0
  15. package/esm2020/lib/annotations/comment-set/comment/comment.service.mjs +50 -0
  16. package/esm2020/lib/annotations/comment-set/comment/text-highlight/text-highlight.directive.mjs +47 -0
  17. package/esm2020/lib/annotations/comment-set/comment/textarea-auto-expand/textarea-auto-expand.directive.mjs +31 -0
  18. package/esm2020/lib/annotations/comment-set/comment-navigate/comments-navigate.component.mjs +91 -0
  19. package/esm2020/lib/annotations/comment-set/comment-set-header/comment-filter/comment-filter.component.mjs +61 -0
  20. package/esm2020/lib/annotations/comment-set/comment-set-header/comment-search/comment-search.component.mjs +53 -0
  21. package/esm2020/lib/annotations/comment-set/comment-set-header/comment-set-header.component.mjs +68 -0
  22. package/esm2020/lib/annotations/comment-set/comment-set-render.service.mjs +54 -0
  23. package/esm2020/lib/annotations/comment-set/comment-set.component.mjs +123 -0
  24. package/esm2020/lib/annotations/comments-summary/comments-summary.component.mjs +113 -0
  25. package/esm2020/lib/annotations/pipes/date/date.pipe.mjs +26 -0
  26. package/esm2020/lib/annotations/pipes/filter/filter.pipe.mjs +32 -0
  27. package/esm2020/lib/annotations/pipes/unsnake/unsnake.pipe.mjs +16 -0
  28. package/esm2020/lib/annotations/services/annotation-api/annotation-api.service.mjs +58 -0
  29. package/esm2020/lib/annotations/services/bookmarks-api/bookmarks-api.service.mjs +45 -0
  30. package/esm2020/lib/annotations/services/tags/tags.services.mjs +41 -0
  31. package/esm2020/lib/annotations/tags/tags.component.mjs +53 -0
  32. package/esm2020/lib/bookmark/components/bookmark-icons.component.mjs +25 -0
  33. package/esm2020/lib/icp/confirm-exit/confirm-action-dialog.component.mjs +22 -0
  34. package/esm2020/lib/icp/icp-follower.service.mjs +60 -0
  35. package/esm2020/lib/icp/icp-presenter.service.mjs +55 -0
  36. package/esm2020/lib/icp/icp-session-api.service.mjs +21 -0
  37. package/esm2020/lib/icp/icp-update.service.mjs +57 -0
  38. package/esm2020/lib/icp/icp.service.mjs +93 -0
  39. package/esm2020/lib/icp/participants-list/participants-list.component.mjs +30 -0
  40. package/esm2020/lib/icp/socket.service.mjs +118 -0
  41. package/esm2020/lib/media-viewer.component.mjs +244 -0
  42. package/esm2020/lib/media-viewer.module.mjs +151 -0
  43. package/esm2020/lib/print.service.mjs +30 -0
  44. package/esm2020/lib/redaction/components/redaction.component.mjs +91 -0
  45. package/esm2020/lib/redaction/services/redaction-api.service.mjs +50 -0
  46. package/esm2020/lib/shared/gov-uk-date/gov-uk-date.component.mjs +28 -0
  47. package/esm2020/lib/shared/gov-uk-error-message/gov-uk-error-message.component.mjs +34 -0
  48. package/esm2020/lib/shared/gov-uk-fieldset/gov-uk-fieldset.component.mjs +63 -0
  49. package/esm2020/lib/shared/gov-uk-label/gov-uk-label.component.mjs +44 -0
  50. package/esm2020/lib/shared/shared.module.mjs +53 -0
  51. package/esm2020/lib/shared/util/services/number.helper.service.mjs +23 -0
  52. package/{esm2015/lib/store/bookmarks-store-utils.js → esm2020/lib/store/bookmarks-store-utils.mjs} +1 -3
  53. package/esm2020/lib/store/effects/annotation.effects.mjs +44 -0
  54. package/esm2020/lib/store/effects/bookmarks.effects.mjs +44 -0
  55. package/esm2020/lib/store/effects/document.effects.mjs +44 -0
  56. package/esm2020/lib/store/effects/icp.effects.mjs +26 -0
  57. package/esm2020/lib/store/effects/redaction.effects.mjs +67 -0
  58. package/esm2020/lib/store/reducers/annotations.reducer.mjs +183 -0
  59. package/esm2020/lib/store/reducers/bookmarks.reducer.mjs +116 -0
  60. package/esm2020/lib/store/reducers/document.reducer.mjs +135 -0
  61. package/esm2020/lib/store/reducers/icp.reducer.mjs +56 -0
  62. package/esm2020/lib/store/reducers/redaction.reducer.mjs +116 -0
  63. package/esm2020/lib/store/reducers/tags.reducer.mjs +93 -0
  64. package/esm2020/lib/store/selectors/annotation.selectors.mjs +81 -0
  65. package/esm2020/lib/store/selectors/bookmark.selectors.mjs +36 -0
  66. package/{esm2015/lib/store/selectors/document.selectors.js → esm2020/lib/store/selectors/document.selectors.mjs} +3 -6
  67. package/esm2020/lib/store/selectors/icp.selectors.mjs +13 -0
  68. package/{esm2015/lib/store/selectors/redaction.selectors.js → esm2020/lib/store/selectors/redaction.selectors.mjs} +6 -10
  69. package/{esm2015/lib/store/selectors/tag.selectors.js → esm2020/lib/store/selectors/tag.selectors.mjs} +4 -7
  70. package/esm2020/lib/store/store-utils.mjs +131 -0
  71. package/esm2020/lib/toolbar/icp-toolbar/icp-toolbar.component.mjs +41 -0
  72. package/esm2020/lib/toolbar/main-toolbar/main-toolbar.component.mjs +188 -0
  73. package/esm2020/lib/toolbar/redaction-search-bar/redaction-search-bar.component.mjs +199 -0
  74. package/esm2020/lib/toolbar/redaction-toolbar/redaction-toolbar.component.mjs +66 -0
  75. package/esm2020/lib/toolbar/search-bar/search-bar.component.mjs +105 -0
  76. package/esm2020/lib/toolbar/toolbar-button-visibility.service.mjs +94 -0
  77. package/{esm2015/lib/toolbar/toolbar-event.service.js → esm2020/lib/toolbar/toolbar-event.service.mjs} +7 -5
  78. package/esm2020/lib/toolbar/toolbar.module.mjs +67 -0
  79. package/esm2020/lib/viewers/convertible-content-viewer/convertible-content-viewer.component.mjs +78 -0
  80. package/esm2020/lib/viewers/convertible-content-viewer/document-conversion-api.service.mjs +22 -0
  81. package/esm2020/lib/viewers/grab-n-drag.directive.mjs +57 -0
  82. package/esm2020/lib/viewers/image-viewer/image-viewer.component.mjs +166 -0
  83. package/esm2020/lib/viewers/multimedia-player/multimedia-player.component.mjs +58 -0
  84. package/esm2020/lib/viewers/pdf-viewer/pdf-js/pdf-js-wrapper.mjs +193 -0
  85. package/esm2020/lib/viewers/pdf-viewer/pdf-js/pdf-js-wrapper.provider.mjs +40 -0
  86. package/esm2020/lib/viewers/pdf-viewer/pdf-viewer.component.mjs +230 -0
  87. package/esm2020/lib/viewers/pdf-viewer/side-bar/bookmarks/bookmarks.component.mjs +192 -0
  88. package/esm2020/lib/viewers/pdf-viewer/side-bar/outline-item/outline-item.component.mjs +49 -0
  89. package/esm2020/lib/viewers/pdf-viewer/side-bar/side-bar.component.mjs +77 -0
  90. package/esm2020/lib/viewers/rotation-persist/rotation-api.service.mjs +27 -0
  91. package/esm2020/lib/viewers/rotation-persist/rotation-persist.directive.mjs +64 -0
  92. package/esm2020/lib/viewers/unsupported-viewer/unsupported-viewer.component.mjs +49 -0
  93. package/esm2020/lib/viewers/viewer-event.service.mjs +30 -0
  94. package/esm2020/lib/viewers/viewer-util.service.mjs +20 -0
  95. package/esm2020/public_api.mjs +32 -0
  96. package/fesm2015/hmcts-media-viewer.mjs +6602 -0
  97. package/fesm2015/hmcts-media-viewer.mjs.map +1 -0
  98. package/fesm2020/hmcts-media-viewer.mjs +6893 -0
  99. package/fesm2020/hmcts-media-viewer.mjs.map +1 -0
  100. package/hmcts-media-viewer.d.ts.map +1 -1
  101. package/index.d.ts +6 -0
  102. package/lib/annotations/annotation-set/annotation-create/box-highlight-create/box-highlight-create.component.d.ts +3 -0
  103. package/lib/annotations/annotation-set/annotation-create/box-highlight-create/box-highlight-create.component.d.ts.map +1 -1
  104. package/lib/annotations/annotation-set/annotation-create/highlight-create/highlight-create.directive.d.ts +3 -0
  105. package/lib/annotations/annotation-set/annotation-create/highlight-create/highlight-create.directive.d.ts.map +1 -1
  106. package/lib/annotations/annotation-set/annotation-create/highlight-create/highlight-create.service.d.ts +3 -0
  107. package/lib/annotations/annotation-set/annotation-create/highlight-create/highlight-create.service.d.ts.map +1 -1
  108. package/lib/annotations/annotation-set/annotation-set.component.d.ts +3 -0
  109. package/lib/annotations/annotation-set/annotation-set.component.d.ts.map +1 -1
  110. package/lib/annotations/annotation-set/annotation-view/annotation-view.component.d.ts +3 -0
  111. package/lib/annotations/annotation-set/annotation-view/annotation-view.component.d.ts.map +1 -1
  112. package/lib/annotations/annotation-set/annotation-view/rectangle/rectangle.component.d.ts +5 -2
  113. package/lib/annotations/annotation-set/annotation-view/rectangle/rectangle.component.d.ts.map +1 -1
  114. package/lib/annotations/annotation-set/ctx-toolbar/ctx-toolbar.component.d.ts +3 -0
  115. package/lib/annotations/annotation-set/ctx-toolbar/ctx-toolbar.component.d.ts.map +1 -1
  116. package/lib/annotations/annotation-set/metadata-layer/metadata-layer.component.d.ts +3 -0
  117. package/lib/annotations/annotation-set/metadata-layer/metadata-layer.component.d.ts.map +1 -1
  118. package/lib/annotations/annotations.module.d.ts +32 -0
  119. package/lib/annotations/annotations.module.d.ts.map +1 -1
  120. package/lib/annotations/comment-set/comment/comment.component.d.ts +3 -0
  121. package/lib/annotations/comment-set/comment/comment.component.d.ts.map +1 -1
  122. package/lib/annotations/comment-set/comment/comment.service.d.ts +5 -2
  123. package/lib/annotations/comment-set/comment/comment.service.d.ts.map +1 -1
  124. package/lib/annotations/comment-set/comment/text-highlight/text-highlight.directive.d.ts +3 -0
  125. package/lib/annotations/comment-set/comment/text-highlight/text-highlight.directive.d.ts.map +1 -1
  126. package/lib/annotations/comment-set/comment/textarea-auto-expand/textarea-auto-expand.directive.d.ts +3 -0
  127. package/lib/annotations/comment-set/comment/textarea-auto-expand/textarea-auto-expand.directive.d.ts.map +1 -1
  128. package/lib/annotations/comment-set/comment-navigate/comments-navigate.component.d.ts +3 -0
  129. package/lib/annotations/comment-set/comment-navigate/comments-navigate.component.d.ts.map +1 -1
  130. package/lib/annotations/comment-set/comment-set-header/comment-filter/comment-filter.component.d.ts +6 -3
  131. package/lib/annotations/comment-set/comment-set-header/comment-filter/comment-filter.component.d.ts.map +1 -1
  132. package/lib/annotations/comment-set/comment-set-header/comment-search/comment-search.component.d.ts +3 -0
  133. package/lib/annotations/comment-set/comment-set-header/comment-search/comment-search.component.d.ts.map +1 -1
  134. package/lib/annotations/comment-set/comment-set-header/comment-set-header.component.d.ts +3 -0
  135. package/lib/annotations/comment-set/comment-set-header/comment-set-header.component.d.ts.map +1 -1
  136. package/lib/annotations/comment-set/comment-set-render.service.d.ts +3 -0
  137. package/lib/annotations/comment-set/comment-set-render.service.d.ts.map +1 -1
  138. package/lib/annotations/comment-set/comment-set.component.d.ts +3 -0
  139. package/lib/annotations/comment-set/comment-set.component.d.ts.map +1 -1
  140. package/lib/annotations/comments-summary/comments-summary.component.d.ts +6 -3
  141. package/lib/annotations/comments-summary/comments-summary.component.d.ts.map +1 -1
  142. package/lib/annotations/pipes/date/date.pipe.d.ts +3 -0
  143. package/lib/annotations/pipes/date/date.pipe.d.ts.map +1 -1
  144. package/lib/annotations/pipes/filter/filter.pipe.d.ts +3 -0
  145. package/lib/annotations/pipes/filter/filter.pipe.d.ts.map +1 -1
  146. package/lib/annotations/pipes/unsnake/unsnake.pipe.d.ts +3 -0
  147. package/lib/annotations/pipes/unsnake/unsnake.pipe.d.ts.map +1 -1
  148. package/lib/annotations/services/annotation-api/annotation-api.service.d.ts +3 -0
  149. package/lib/annotations/services/annotation-api/annotation-api.service.d.ts.map +1 -1
  150. package/lib/annotations/services/bookmarks-api/bookmarks-api.service.d.ts +3 -0
  151. package/lib/annotations/services/bookmarks-api/bookmarks-api.service.d.ts.map +1 -1
  152. package/lib/annotations/services/tags/tags.services.d.ts +3 -0
  153. package/lib/annotations/services/tags/tags.services.d.ts.map +1 -1
  154. package/lib/annotations/tags/tags.component.d.ts +6 -3
  155. package/lib/annotations/tags/tags.component.d.ts.map +1 -1
  156. package/lib/bookmark/components/bookmark-icons.component.d.ts +3 -0
  157. package/lib/bookmark/components/bookmark-icons.component.d.ts.map +1 -1
  158. package/lib/icp/confirm-exit/confirm-action-dialog.component.d.ts +3 -0
  159. package/lib/icp/confirm-exit/confirm-action-dialog.component.d.ts.map +1 -1
  160. package/lib/icp/icp-follower.service.d.ts +3 -0
  161. package/lib/icp/icp-follower.service.d.ts.map +1 -1
  162. package/lib/icp/icp-presenter.service.d.ts +3 -0
  163. package/lib/icp/icp-presenter.service.d.ts.map +1 -1
  164. package/lib/icp/icp-session-api.service.d.ts +3 -0
  165. package/lib/icp/icp-session-api.service.d.ts.map +1 -1
  166. package/lib/icp/icp-update.service.d.ts +3 -0
  167. package/lib/icp/icp-update.service.d.ts.map +1 -1
  168. package/lib/icp/icp.service.d.ts +3 -0
  169. package/lib/icp/icp.service.d.ts.map +1 -1
  170. package/lib/icp/participants-list/participants-list.component.d.ts +3 -0
  171. package/lib/icp/participants-list/participants-list.component.d.ts.map +1 -1
  172. package/lib/icp/socket.service.d.ts +3 -0
  173. package/lib/icp/socket.service.d.ts.map +1 -1
  174. package/lib/media-viewer.component.d.ts +3 -0
  175. package/lib/media-viewer.component.d.ts.map +1 -1
  176. package/lib/media-viewer.module.d.ts +31 -0
  177. package/lib/media-viewer.module.d.ts.map +1 -1
  178. package/lib/print.service.d.ts +3 -0
  179. package/lib/print.service.d.ts.map +1 -1
  180. package/lib/redaction/components/redaction.component.d.ts +3 -0
  181. package/lib/redaction/components/redaction.component.d.ts.map +1 -1
  182. package/lib/redaction/services/redaction-api.service.d.ts +3 -0
  183. package/lib/redaction/services/redaction-api.service.d.ts.map +1 -1
  184. package/lib/shared/gov-uk-date/gov-uk-date.component.d.ts +3 -0
  185. package/lib/shared/gov-uk-date/gov-uk-date.component.d.ts.map +1 -1
  186. package/lib/shared/gov-uk-error-message/gov-uk-error-message.component.d.ts +3 -0
  187. package/lib/shared/gov-uk-error-message/gov-uk-error-message.component.d.ts.map +1 -1
  188. package/lib/shared/gov-uk-fieldset/gov-uk-fieldset.component.d.ts +3 -0
  189. package/lib/shared/gov-uk-fieldset/gov-uk-fieldset.component.d.ts.map +1 -1
  190. package/lib/shared/gov-uk-label/gov-uk-label.component.d.ts +3 -0
  191. package/lib/shared/gov-uk-label/gov-uk-label.component.d.ts.map +1 -1
  192. package/lib/shared/shared.module.d.ts +11 -0
  193. package/lib/shared/shared.module.d.ts.map +1 -1
  194. package/lib/shared/util/services/number.helper.service.d.ts +3 -0
  195. package/lib/shared/util/services/number.helper.service.d.ts.map +1 -1
  196. package/lib/store/actions/annotation.actions.d.ts +1 -1
  197. package/lib/store/actions/annotation.actions.d.ts.map +1 -1
  198. package/lib/store/actions/bookmark.actions.d.ts +1 -1
  199. package/lib/store/actions/bookmark.actions.d.ts.map +1 -1
  200. package/lib/store/actions/document.actions.d.ts +1 -1
  201. package/lib/store/actions/document.actions.d.ts.map +1 -1
  202. package/lib/store/actions/icp.actions.d.ts +1 -1
  203. package/lib/store/actions/icp.actions.d.ts.map +1 -1
  204. package/lib/store/actions/redaction.actions.d.ts +1 -1
  205. package/lib/store/actions/redaction.actions.d.ts.map +1 -1
  206. package/lib/store/actions/tag.actions.d.ts +1 -1
  207. package/lib/store/actions/tag.actions.d.ts.map +1 -1
  208. package/lib/store/effects/annotation.effects.d.ts +6 -3
  209. package/lib/store/effects/annotation.effects.d.ts.map +1 -1
  210. package/lib/store/effects/bookmarks.effects.d.ts +8 -5
  211. package/lib/store/effects/bookmarks.effects.d.ts.map +1 -1
  212. package/lib/store/effects/document.effects.d.ts +6 -3
  213. package/lib/store/effects/document.effects.d.ts.map +1 -1
  214. package/lib/store/effects/icp.effects.d.ts +5 -2
  215. package/lib/store/effects/icp.effects.d.ts.map +1 -1
  216. package/lib/store/effects/redaction.effects.d.ts +9 -6
  217. package/lib/store/effects/redaction.effects.d.ts.map +1 -1
  218. package/lib/store/selectors/annotation.selectors.d.ts +70 -27
  219. package/lib/store/selectors/annotation.selectors.d.ts.map +1 -1
  220. package/lib/store/selectors/bookmark.selectors.d.ts +18 -10
  221. package/lib/store/selectors/bookmark.selectors.d.ts.map +1 -1
  222. package/lib/store/selectors/document.selectors.d.ts +13 -11
  223. package/lib/store/selectors/document.selectors.d.ts.map +1 -1
  224. package/lib/store/selectors/icp.selectors.d.ts +9 -8
  225. package/lib/store/selectors/icp.selectors.d.ts.map +1 -1
  226. package/lib/store/selectors/redaction.selectors.d.ts +17 -11
  227. package/lib/store/selectors/redaction.selectors.d.ts.map +1 -1
  228. package/lib/store/selectors/tag.selectors.d.ts +14 -12
  229. package/lib/store/selectors/tag.selectors.d.ts.map +1 -1
  230. package/lib/toolbar/icp-toolbar/icp-toolbar.component.d.ts +3 -0
  231. package/lib/toolbar/icp-toolbar/icp-toolbar.component.d.ts.map +1 -1
  232. package/lib/toolbar/main-toolbar/main-toolbar.component.d.ts +4 -0
  233. package/lib/toolbar/main-toolbar/main-toolbar.component.d.ts.map +1 -1
  234. package/lib/toolbar/redaction-search-bar/redaction-search-bar.component.d.ts +5 -2
  235. package/lib/toolbar/redaction-search-bar/redaction-search-bar.component.d.ts.map +1 -1
  236. package/lib/toolbar/redaction-toolbar/redaction-toolbar.component.d.ts +3 -0
  237. package/lib/toolbar/redaction-toolbar/redaction-toolbar.component.d.ts.map +1 -1
  238. package/lib/toolbar/search-bar/search-bar.component.d.ts +3 -0
  239. package/lib/toolbar/search-bar/search-bar.component.d.ts.map +1 -1
  240. package/lib/toolbar/toolbar-button-visibility.service.d.ts +3 -0
  241. package/lib/toolbar/toolbar-button-visibility.service.d.ts.map +1 -1
  242. package/lib/toolbar/toolbar-event.service.d.ts +5 -2
  243. package/lib/toolbar/toolbar-event.service.d.ts.map +1 -1
  244. package/lib/toolbar/toolbar.module.d.ts +13 -0
  245. package/lib/toolbar/toolbar.module.d.ts.map +1 -1
  246. package/lib/viewers/convertible-content-viewer/convertible-content-viewer.component.d.ts +3 -0
  247. package/lib/viewers/convertible-content-viewer/convertible-content-viewer.component.d.ts.map +1 -1
  248. package/lib/viewers/convertible-content-viewer/document-conversion-api.service.d.ts +3 -0
  249. package/lib/viewers/convertible-content-viewer/document-conversion-api.service.d.ts.map +1 -1
  250. package/lib/viewers/grab-n-drag.directive.d.ts +3 -0
  251. package/lib/viewers/grab-n-drag.directive.d.ts.map +1 -1
  252. package/lib/viewers/image-viewer/image-viewer.component.d.ts +3 -0
  253. package/lib/viewers/image-viewer/image-viewer.component.d.ts.map +1 -1
  254. package/lib/viewers/multimedia-player/multimedia-player.component.d.ts +3 -0
  255. package/lib/viewers/multimedia-player/multimedia-player.component.d.ts.map +1 -1
  256. package/lib/viewers/pdf-viewer/pdf-js/pdf-js-wrapper.provider.d.ts +3 -0
  257. package/lib/viewers/pdf-viewer/pdf-js/pdf-js-wrapper.provider.d.ts.map +1 -1
  258. package/lib/viewers/pdf-viewer/pdf-viewer.component.d.ts +3 -0
  259. package/lib/viewers/pdf-viewer/pdf-viewer.component.d.ts.map +1 -1
  260. package/lib/viewers/pdf-viewer/side-bar/bookmarks/bookmarks.component.d.ts +5 -2
  261. package/lib/viewers/pdf-viewer/side-bar/bookmarks/bookmarks.component.d.ts.map +1 -1
  262. package/lib/viewers/pdf-viewer/side-bar/outline-item/outline-item.component.d.ts +3 -0
  263. package/lib/viewers/pdf-viewer/side-bar/outline-item/outline-item.component.d.ts.map +1 -1
  264. package/lib/viewers/pdf-viewer/side-bar/side-bar.component.d.ts +3 -0
  265. package/lib/viewers/pdf-viewer/side-bar/side-bar.component.d.ts.map +1 -1
  266. package/lib/viewers/rotation-persist/rotation-api.service.d.ts +3 -0
  267. package/lib/viewers/rotation-persist/rotation-api.service.d.ts.map +1 -1
  268. package/lib/viewers/rotation-persist/rotation-persist.directive.d.ts +3 -0
  269. package/lib/viewers/rotation-persist/rotation-persist.directive.d.ts.map +1 -1
  270. package/lib/viewers/unsupported-viewer/unsupported-viewer.component.d.ts +3 -0
  271. package/lib/viewers/unsupported-viewer/unsupported-viewer.component.d.ts.map +1 -1
  272. package/lib/viewers/viewer-event.service.d.ts +3 -0
  273. package/lib/viewers/viewer-event.service.d.ts.map +1 -1
  274. package/lib/viewers/viewer-util.service.d.ts +3 -0
  275. package/lib/viewers/viewer-util.service.d.ts.map +1 -1
  276. package/package.json +34 -22
  277. package/public_api.d.ts +1 -0
  278. package/public_api.d.ts.map +1 -1
  279. package/bundles/hmcts-media-viewer.umd.js +0 -7539
  280. package/bundles/hmcts-media-viewer.umd.js.map +0 -1
  281. package/bundles/hmcts-media-viewer.umd.min.js +0 -2
  282. package/bundles/hmcts-media-viewer.umd.min.js.map +0 -1
  283. package/esm2015/hmcts-media-viewer.js +0 -64
  284. package/esm2015/lib/annotations/annotation-set/annotation-create/box-highlight-create/box-highlight-create.component.js +0 -113
  285. package/esm2015/lib/annotations/annotation-set/annotation-create/highlight-create/highlight-create.directive.js +0 -111
  286. package/esm2015/lib/annotations/annotation-set/annotation-create/highlight-create/highlight-create.service.js +0 -61
  287. package/esm2015/lib/annotations/annotation-set/annotation-set.component.js +0 -47
  288. package/esm2015/lib/annotations/annotation-set/annotation-view/annotation-view.component.js +0 -86
  289. package/esm2015/lib/annotations/annotation-set/annotation-view/rectangle/rectangle.component.js +0 -108
  290. package/esm2015/lib/annotations/annotation-set/ctx-toolbar/ctx-toolbar.component.js +0 -107
  291. package/esm2015/lib/annotations/annotation-set/metadata-layer/metadata-layer.component.js +0 -81
  292. package/esm2015/lib/annotations/annotations.module.js +0 -103
  293. package/esm2015/lib/annotations/comment-set/comment/comment.component.js +0 -162
  294. package/esm2015/lib/annotations/comment-set/comment/comment.service.js +0 -47
  295. package/esm2015/lib/annotations/comment-set/comment/text-highlight/text-highlight.directive.js +0 -48
  296. package/esm2015/lib/annotations/comment-set/comment/textarea-auto-expand/textarea-auto-expand.directive.js +0 -31
  297. package/esm2015/lib/annotations/comment-set/comment-navigate/comments-navigate.component.js +0 -95
  298. package/esm2015/lib/annotations/comment-set/comment-set-header/comment-filter/comment-filter.component.js +0 -60
  299. package/esm2015/lib/annotations/comment-set/comment-set-header/comment-search/comment-search.component.js +0 -53
  300. package/esm2015/lib/annotations/comment-set/comment-set-header/comment-set-header.component.js +0 -68
  301. package/esm2015/lib/annotations/comment-set/comment-set-render.service.js +0 -51
  302. package/esm2015/lib/annotations/comment-set/comment-set.component.js +0 -110
  303. package/esm2015/lib/annotations/comments-summary/comments-summary.component.js +0 -106
  304. package/esm2015/lib/annotations/pipes/date/date.pipe.js +0 -22
  305. package/esm2015/lib/annotations/pipes/filter/filter.pipe.js +0 -28
  306. package/esm2015/lib/annotations/pipes/unsnake/unsnake.pipe.js +0 -12
  307. package/esm2015/lib/annotations/services/annotation-api/annotation-api.service.js +0 -59
  308. package/esm2015/lib/annotations/services/bookmarks-api/bookmarks-api.service.js +0 -46
  309. package/esm2015/lib/annotations/services/tags/tags.services.js +0 -36
  310. package/esm2015/lib/annotations/tags/tags.component.js +0 -52
  311. package/esm2015/lib/bookmark/components/bookmark-icons.component.js +0 -26
  312. package/esm2015/lib/icp/confirm-exit/confirm-action-dialog.component.js +0 -25
  313. package/esm2015/lib/icp/icp-follower.service.js +0 -63
  314. package/esm2015/lib/icp/icp-presenter.service.js +0 -57
  315. package/esm2015/lib/icp/icp-session-api.service.js +0 -22
  316. package/esm2015/lib/icp/icp-update.service.js +0 -56
  317. package/esm2015/lib/icp/icp.service.js +0 -98
  318. package/esm2015/lib/icp/participants-list/participants-list.component.js +0 -32
  319. package/esm2015/lib/icp/socket.service.js +0 -117
  320. package/esm2015/lib/media-viewer.component.js +0 -210
  321. package/esm2015/lib/media-viewer.module.js +0 -102
  322. package/esm2015/lib/print.service.js +0 -25
  323. package/esm2015/lib/redaction/components/redaction.component.js +0 -97
  324. package/esm2015/lib/redaction/services/redaction-api.service.js +0 -51
  325. package/esm2015/lib/shared/gov-uk-date/gov-uk-date.component.js +0 -21
  326. package/esm2015/lib/shared/gov-uk-error-message/gov-uk-error-message.component.js +0 -27
  327. package/esm2015/lib/shared/gov-uk-fieldset/gov-uk-fieldset.component.js +0 -42
  328. package/esm2015/lib/shared/gov-uk-label/gov-uk-label.component.js +0 -32
  329. package/esm2015/lib/shared/shared.module.js +0 -34
  330. package/esm2015/lib/shared/util/services/number.helper.service.js +0 -23
  331. package/esm2015/lib/store/effects/annotation.effects.js +0 -55
  332. package/esm2015/lib/store/effects/bookmarks.effects.js +0 -66
  333. package/esm2015/lib/store/effects/document.effects.js +0 -59
  334. package/esm2015/lib/store/effects/icp.effects.js +0 -37
  335. package/esm2015/lib/store/effects/redaction.effects.js +0 -94
  336. package/esm2015/lib/store/reducers/annotations.reducer.js +0 -115
  337. package/esm2015/lib/store/reducers/bookmarks.reducer.js +0 -80
  338. package/esm2015/lib/store/reducers/document.reducer.js +0 -100
  339. package/esm2015/lib/store/reducers/icp.reducer.js +0 -40
  340. package/esm2015/lib/store/reducers/redaction.reducer.js +0 -75
  341. package/esm2015/lib/store/reducers/tags.reducer.js +0 -67
  342. package/esm2015/lib/store/selectors/annotation.selectors.js +0 -84
  343. package/esm2015/lib/store/selectors/bookmark.selectors.js +0 -39
  344. package/esm2015/lib/store/selectors/icp.selectors.js +0 -18
  345. package/esm2015/lib/store/store-utils.js +0 -105
  346. package/esm2015/lib/toolbar/icp-toolbar/icp-toolbar.component.js +0 -43
  347. package/esm2015/lib/toolbar/main-toolbar/main-toolbar.component.js +0 -170
  348. package/esm2015/lib/toolbar/redaction-search-bar/redaction-search-bar.component.js +0 -201
  349. package/esm2015/lib/toolbar/redaction-toolbar/redaction-toolbar.component.js +0 -70
  350. package/esm2015/lib/toolbar/search-bar/search-bar.component.js +0 -102
  351. package/esm2015/lib/toolbar/toolbar-button-visibility.service.js +0 -92
  352. package/esm2015/lib/toolbar/toolbar.module.js +0 -45
  353. package/esm2015/lib/viewers/convertible-content-viewer/convertible-content-viewer.component.js +0 -72
  354. package/esm2015/lib/viewers/convertible-content-viewer/document-conversion-api.service.js +0 -23
  355. package/esm2015/lib/viewers/grab-n-drag.directive.js +0 -51
  356. package/esm2015/lib/viewers/image-viewer/image-viewer.component.js +0 -164
  357. package/esm2015/lib/viewers/multimedia-player/multimedia-player.component.js +0 -54
  358. package/esm2015/lib/viewers/pdf-viewer/pdf-js/pdf-js-wrapper.js +0 -203
  359. package/esm2015/lib/viewers/pdf-viewer/pdf-js/pdf-js-wrapper.provider.js +0 -43
  360. package/esm2015/lib/viewers/pdf-viewer/pdf-viewer.component.js +0 -220
  361. package/esm2015/lib/viewers/pdf-viewer/side-bar/bookmarks/bookmarks.component.js +0 -179
  362. package/esm2015/lib/viewers/pdf-viewer/side-bar/outline-item/outline-item.component.js +0 -44
  363. package/esm2015/lib/viewers/pdf-viewer/side-bar/side-bar.component.js +0 -72
  364. package/esm2015/lib/viewers/rotation-persist/rotation-api.service.js +0 -28
  365. package/esm2015/lib/viewers/rotation-persist/rotation-persist.directive.js +0 -67
  366. package/esm2015/lib/viewers/unsupported-viewer/unsupported-viewer.component.js +0 -47
  367. package/esm2015/lib/viewers/viewer-event.service.js +0 -30
  368. package/esm2015/lib/viewers/viewer-util.service.js +0 -23
  369. package/esm2015/public_api.js +0 -31
  370. package/fesm2015/hmcts-media-viewer.js +0 -6572
  371. package/fesm2015/hmcts-media-viewer.js.map +0 -1
  372. package/hmcts-media-viewer.d.ts +0 -69
  373. package/hmcts-media-viewer.metadata.json +0 -1
  374. package/lib/annotations/annotation-set/annotation-create/box-highlight-create/box-highlight-create.component.ngfactory.d.ts.map +0 -1
  375. package/lib/annotations/annotation-set/annotation-create/highlight-create/highlight-create.directive.ngfactory.d.ts.map +0 -1
  376. package/lib/annotations/annotation-set/annotation-create/highlight-create/highlight-create.service.ngfactory.d.ts.map +0 -1
  377. package/lib/annotations/annotation-set/annotation-set.component.ngfactory.d.ts.map +0 -1
  378. package/lib/annotations/annotation-set/annotation-view/annotation-view.component.ngfactory.d.ts.map +0 -1
  379. package/lib/annotations/annotation-set/annotation-view/rectangle/rectangle.component.ngfactory.d.ts.map +0 -1
  380. package/lib/annotations/annotation-set/ctx-toolbar/ctx-toolbar.component.ngfactory.d.ts.map +0 -1
  381. package/lib/annotations/annotation-set/metadata-layer/metadata-layer.component.ngfactory.d.ts.map +0 -1
  382. package/lib/annotations/annotations.module.ngfactory.d.ts.map +0 -1
  383. package/lib/annotations/comment-set/comment/comment.component.ngfactory.d.ts.map +0 -1
  384. package/lib/annotations/comment-set/comment/comment.service.ngfactory.d.ts.map +0 -1
  385. package/lib/annotations/comment-set/comment/text-highlight/text-highlight.directive.ngfactory.d.ts.map +0 -1
  386. package/lib/annotations/comment-set/comment/textarea-auto-expand/textarea-auto-expand.directive.ngfactory.d.ts.map +0 -1
  387. package/lib/annotations/comment-set/comment-navigate/comments-navigate.component.ngfactory.d.ts.map +0 -1
  388. package/lib/annotations/comment-set/comment-set-header/comment-filter/comment-filter.component.ngfactory.d.ts.map +0 -1
  389. package/lib/annotations/comment-set/comment-set-header/comment-search/comment-search.component.ngfactory.d.ts.map +0 -1
  390. package/lib/annotations/comment-set/comment-set-header/comment-set-header.component.ngfactory.d.ts.map +0 -1
  391. package/lib/annotations/comment-set/comment-set-render.service.ngfactory.d.ts.map +0 -1
  392. package/lib/annotations/comment-set/comment-set.component.ngfactory.d.ts.map +0 -1
  393. package/lib/annotations/comments-summary/comments-summary.component.ngfactory.d.ts.map +0 -1
  394. package/lib/annotations/pipes/date/date.pipe.ngfactory.d.ts.map +0 -1
  395. package/lib/annotations/pipes/filter/filter.pipe.ngfactory.d.ts.map +0 -1
  396. package/lib/annotations/pipes/unsnake/unsnake.pipe.ngfactory.d.ts.map +0 -1
  397. package/lib/annotations/services/annotation-api/annotation-api.service.ngfactory.d.ts.map +0 -1
  398. package/lib/annotations/services/bookmarks-api/bookmarks-api.service.ngfactory.d.ts.map +0 -1
  399. package/lib/annotations/services/tags/tags.services.ngfactory.d.ts.map +0 -1
  400. package/lib/annotations/tags/tags.component.ngfactory.d.ts.map +0 -1
  401. package/lib/bookmark/components/bookmark-icons.component.ngfactory.d.ts.map +0 -1
  402. package/lib/icp/confirm-exit/confirm-action-dialog.component.ngfactory.d.ts.map +0 -1
  403. package/lib/icp/icp-follower.service.ngfactory.d.ts.map +0 -1
  404. package/lib/icp/icp-presenter.service.ngfactory.d.ts.map +0 -1
  405. package/lib/icp/icp-session-api.service.ngfactory.d.ts.map +0 -1
  406. package/lib/icp/icp-update.service.ngfactory.d.ts.map +0 -1
  407. package/lib/icp/icp.service.ngfactory.d.ts.map +0 -1
  408. package/lib/icp/participants-list/participants-list.component.ngfactory.d.ts.map +0 -1
  409. package/lib/icp/socket.service.ngfactory.d.ts.map +0 -1
  410. package/lib/media-viewer.component.ngfactory.d.ts.map +0 -1
  411. package/lib/media-viewer.module.ngfactory.d.ts.map +0 -1
  412. package/lib/print.service.ngfactory.d.ts.map +0 -1
  413. package/lib/redaction/components/redaction.component.ngfactory.d.ts.map +0 -1
  414. package/lib/redaction/services/redaction-api.service.ngfactory.d.ts.map +0 -1
  415. package/lib/shared/gov-uk-date/gov-uk-date.component.ngfactory.d.ts.map +0 -1
  416. package/lib/shared/gov-uk-error-message/gov-uk-error-message.component.ngfactory.d.ts.map +0 -1
  417. package/lib/shared/gov-uk-fieldset/gov-uk-fieldset.component.ngfactory.d.ts.map +0 -1
  418. package/lib/shared/gov-uk-label/gov-uk-label.component.ngfactory.d.ts.map +0 -1
  419. package/lib/shared/shared.module.ngfactory.d.ts.map +0 -1
  420. package/lib/shared/util/services/number.helper.service.ngfactory.d.ts.map +0 -1
  421. package/lib/store/effects/annotation.effects.ngfactory.d.ts.map +0 -1
  422. package/lib/store/effects/bookmarks.effects.ngfactory.d.ts.map +0 -1
  423. package/lib/store/effects/document.effects.ngfactory.d.ts.map +0 -1
  424. package/lib/store/effects/icp.effects.ngfactory.d.ts.map +0 -1
  425. package/lib/store/effects/redaction.effects.ngfactory.d.ts.map +0 -1
  426. package/lib/toolbar/icp-toolbar/icp-toolbar.component.ngfactory.d.ts.map +0 -1
  427. package/lib/toolbar/main-toolbar/main-toolbar.component.ngfactory.d.ts.map +0 -1
  428. package/lib/toolbar/redaction-search-bar/redaction-search-bar.component.ngfactory.d.ts.map +0 -1
  429. package/lib/toolbar/redaction-search-bar/redaction-search-bar.component.scss.shim.ngstyle.d.ts.map +0 -1
  430. package/lib/toolbar/redaction-toolbar/redaction-toolbar.component.ngfactory.d.ts.map +0 -1
  431. package/lib/toolbar/search-bar/search-bar.component.ngfactory.d.ts.map +0 -1
  432. package/lib/toolbar/toolbar-button-visibility.service.ngfactory.d.ts.map +0 -1
  433. package/lib/toolbar/toolbar-event.service.ngfactory.d.ts.map +0 -1
  434. package/lib/toolbar/toolbar.module.ngfactory.d.ts.map +0 -1
  435. package/lib/viewers/convertible-content-viewer/convertible-content-viewer.component.ngfactory.d.ts.map +0 -1
  436. package/lib/viewers/convertible-content-viewer/document-conversion-api.service.ngfactory.d.ts.map +0 -1
  437. package/lib/viewers/grab-n-drag.directive.ngfactory.d.ts.map +0 -1
  438. package/lib/viewers/image-viewer/image-viewer.component.ngfactory.d.ts.map +0 -1
  439. package/lib/viewers/multimedia-player/multimedia-player.component.ngfactory.d.ts.map +0 -1
  440. package/lib/viewers/pdf-viewer/pdf-js/pdf-js-wrapper.provider.ngfactory.d.ts.map +0 -1
  441. package/lib/viewers/pdf-viewer/pdf-viewer.component.ngfactory.d.ts.map +0 -1
  442. package/lib/viewers/pdf-viewer/side-bar/bookmarks/bookmarks.component.ngfactory.d.ts.map +0 -1
  443. package/lib/viewers/pdf-viewer/side-bar/outline-item/outline-item.component.ngfactory.d.ts.map +0 -1
  444. package/lib/viewers/pdf-viewer/side-bar/side-bar.component.ngfactory.d.ts.map +0 -1
  445. package/lib/viewers/rotation-persist/rotation-api.service.ngfactory.d.ts.map +0 -1
  446. package/lib/viewers/rotation-persist/rotation-persist.directive.ngfactory.d.ts.map +0 -1
  447. package/lib/viewers/unsupported-viewer/unsupported-viewer.component.ngfactory.d.ts.map +0 -1
  448. package/lib/viewers/viewer-event.service.ngfactory.d.ts.map +0 -1
  449. package/lib/viewers/viewer-util.service.ngfactory.d.ts.map +0 -1
  450. /package/{esm2015/lib/annotations/annotation-set/annotation-set.model.js → esm2020/lib/annotations/annotation-set/annotation-set.model.mjs} +0 -0
  451. /package/{esm2015/lib/annotations/annotation-set/annotation-view/annotation.model.js → esm2020/lib/annotations/annotation-set/annotation-view/annotation.model.mjs} +0 -0
  452. /package/{esm2015/lib/annotations/annotation-set/annotation-view/rectangle/rectangle.model.js → esm2020/lib/annotations/annotation-set/annotation-view/rectangle/rectangle.model.mjs} +0 -0
  453. /package/{esm2015/lib/annotations/comment-set/comment/comment.model.js → esm2020/lib/annotations/comment-set/comment/comment.model.mjs} +0 -0
  454. /package/{esm2015/lib/annotations/models/api-persisted.model.js → esm2020/lib/annotations/models/api-persisted.model.mjs} +0 -0
  455. /package/{esm2015/lib/annotations/models/event-select.model.js → esm2020/lib/annotations/models/event-select.model.mjs} +0 -0
  456. /package/{esm2015/lib/annotations/models/tags.model.js → esm2020/lib/annotations/models/tags.model.mjs} +0 -0
  457. /package/{esm2015/lib/annotations/models/user.model.js → esm2020/lib/annotations/models/user.model.mjs} +0 -0
  458. /package/{esm2015/lib/icp/icp.events.js → esm2020/lib/icp/icp.events.mjs} +0 -0
  459. /package/{esm2015/lib/icp/icp.interfaces.js → esm2020/lib/icp/icp.interfaces.mjs} +0 -0
  460. /package/{esm2015/lib/redaction/services/redaction.model.js → esm2020/lib/redaction/services/redaction.model.mjs} +0 -0
  461. /package/{esm2015/lib/shared/util/helpers/html-templates.helper.js → esm2020/lib/shared/util/helpers/html-templates.helper.mjs} +0 -0
  462. /package/{esm2015/lib/store/actions/annotation.actions.js → esm2020/lib/store/actions/annotation.actions.mjs} +0 -0
  463. /package/{esm2015/lib/store/actions/bookmark.actions.js → esm2020/lib/store/actions/bookmark.actions.mjs} +0 -0
  464. /package/{esm2015/lib/store/actions/document.actions.js → esm2020/lib/store/actions/document.actions.mjs} +0 -0
  465. /package/{esm2015/lib/store/actions/icp.actions.js → esm2020/lib/store/actions/icp.actions.mjs} +0 -0
  466. /package/{esm2015/lib/store/actions/redaction.actions.js → esm2020/lib/store/actions/redaction.actions.mjs} +0 -0
  467. /package/{esm2015/lib/store/actions/tag.actions.js → esm2020/lib/store/actions/tag.actions.mjs} +0 -0
  468. /package/{esm2015/lib/store/effects/index.js → esm2020/lib/store/effects/index.mjs} +0 -0
  469. /package/{esm2015/lib/store/models/bookmarks.interface.js → esm2020/lib/store/models/bookmarks.interface.mjs} +0 -0
  470. /package/{esm2015/lib/store/models/filters.interface.js → esm2020/lib/store/models/filters.interface.mjs} +0 -0
  471. /package/{esm2015/lib/store/reducers/reducers.js → esm2020/lib/store/reducers/reducers.mjs} +0 -0
  472. /package/{esm2015/lib/toolbar/icp-event.service.js → esm2020/lib/toolbar/icp-event.service.mjs} +0 -0
  473. /package/{esm2015/lib/toolbar/redaction-search-bar/redaction-search.model.js → esm2020/lib/toolbar/redaction-search-bar/redaction-search.model.mjs} +0 -0
  474. /package/{esm2015/lib/viewers/pdf-viewer/side-bar/bookmarks/bookmarks.interfaces.js → esm2020/lib/viewers/pdf-viewer/side-bar/bookmarks/bookmarks.interfaces.mjs} +0 -0
  475. /package/{esm2015/lib/viewers/pdf-viewer/side-bar/outline-item/outline.model.js → esm2020/lib/viewers/pdf-viewer/side-bar/outline-item/outline.model.mjs} +0 -0
  476. /package/{esm2015/lib/viewers/rotation-persist/rotation.model.js → esm2020/lib/viewers/rotation-persist/rotation.model.mjs} +0 -0
  477. /package/{esm2015/lib/viewers/viewer-exception.model.js → esm2020/lib/viewers/viewer-exception.model.mjs} +0 -0
@@ -1,37 +0,0 @@
1
- import { __decorate, __metadata } from "tslib";
2
- import { Injectable } from '@angular/core';
3
- import { Actions, Effect, ofType } from '@ngrx/effects';
4
- import { catchError, exhaustMap, map, switchMap } from 'rxjs/operators';
5
- import { of } from 'rxjs';
6
- import { IcpSessionApiService } from '../../icp/icp-session-api.service';
7
- import { IcpUpdateService } from '../../icp/icp-update.service';
8
- import * as icpActions from '../actions/icp.actions';
9
- export class IcpEffects {
10
- constructor(actions$, icpApiService, icpUpdateService) {
11
- this.actions$ = actions$;
12
- this.icpApiService = icpApiService;
13
- this.icpUpdateService = icpUpdateService;
14
- this.loadIcpSession$ = this.actions$.pipe(ofType(icpActions.LOAD_ICP_SESSION), map((action) => action.payload), exhaustMap((caseId) => this.icpApiService.loadSession(caseId)
15
- .pipe(map(res => new icpActions.JoinIcpSocketSession(res)), catchError(error => of(new icpActions.LoadIcpSessionFailure(error))))));
16
- this.joinIcpSocketSession$ = this.actions$.pipe(ofType(icpActions.JOIN_ICP_SOCKET_SESSION), map((action) => action.payload), switchMap((res) => this.icpUpdateService.joinSession(res.username, res.session)
17
- .pipe(map(participants => new icpActions.IcpSocketSessionJoined({ session: res.session, participantInfo: participants })))));
18
- }
19
- }
20
- IcpEffects.decorators = [
21
- { type: Injectable }
22
- ];
23
- /** @nocollapse */
24
- IcpEffects.ctorParameters = () => [
25
- { type: Actions },
26
- { type: IcpSessionApiService },
27
- { type: IcpUpdateService }
28
- ];
29
- __decorate([
30
- Effect(),
31
- __metadata("design:type", Object)
32
- ], IcpEffects.prototype, "loadIcpSession$", void 0);
33
- __decorate([
34
- Effect(),
35
- __metadata("design:type", Object)
36
- ], IcpEffects.prototype, "joinIcpSocketSession$", void 0);
37
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNwLmVmZmVjdHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tZWRpYS12aWV3ZXIvc3JjL2xpYi9zdG9yZS9lZmZlY3RzL2ljcC5lZmZlY3RzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN4RCxPQUFPLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEUsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMxQixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUN6RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNoRSxPQUFPLEtBQUssVUFBVSxNQUFNLHdCQUF3QixDQUFFO0FBSXRELE1BQU0sT0FBTyxVQUFVO0lBRXJCLFlBQW9CLFFBQWlCLEVBQ2pCLGFBQW1DLEVBQ25DLGdCQUFrQztRQUZsQyxhQUFRLEdBQVIsUUFBUSxDQUFTO1FBQ2pCLGtCQUFhLEdBQWIsYUFBYSxDQUFzQjtRQUNuQyxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBR3RELG9CQUFlLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQ2xDLE1BQU0sQ0FBQyxVQUFVLENBQUMsZ0JBQWdCLENBQUMsRUFDbkMsR0FBRyxDQUFDLENBQUMsTUFBaUMsRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxFQUMxRCxVQUFVLENBQUMsQ0FBQyxNQUFjLEVBQUUsRUFBRSxDQUM1QixJQUFJLENBQUMsYUFBYSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUM7YUFDbkMsSUFBSSxDQUNILEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLElBQUksVUFBVSxDQUFDLG9CQUFvQixDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQ3BELFVBQVUsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxJQUFJLFVBQVUsQ0FBQyxxQkFBcUIsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQ3JFLENBQ0osQ0FBQyxDQUFDO1FBSUwsMEJBQXFCLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQ3hDLE1BQU0sQ0FBQyxVQUFVLENBQUMsdUJBQXVCLENBQUMsRUFDMUMsR0FBRyxDQUFDLENBQUMsTUFBdUMsRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxFQUNoRSxTQUFTLENBQUMsQ0FBQyxHQUE0QyxFQUFFLEVBQUUsQ0FDekQsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsUUFBUSxFQUFFLEdBQUcsQ0FBQyxPQUFPLENBQUM7YUFDekQsSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUMsRUFBRSxDQUFDLElBQUksVUFBVSxDQUFDLHNCQUFzQixDQUFDLEVBQUMsT0FBTyxFQUFFLEdBQUcsQ0FBQyxPQUFPLEVBQUUsZUFBZSxFQUFFLFlBQVksRUFBQyxDQUFDLENBQUMsQ0FBQyxDQUMzSCxDQUFDLENBQUM7SUF0Qm9ELENBQUM7OztZQUwzRCxVQUFVOzs7O1lBUkYsT0FBTztZQUdQLG9CQUFvQjtZQUNwQixnQkFBZ0I7O0FBWXZCO0lBREMsTUFBTSxFQUFFOzttREFVSjtBQUlMO0lBREMsTUFBTSxFQUFFOzt5REFPSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFjdGlvbnMsIEVmZmVjdCwgb2ZUeXBlIH0gZnJvbSAnQG5ncngvZWZmZWN0cyc7XG5pbXBvcnQgeyBjYXRjaEVycm9yLCBleGhhdXN0TWFwLCBtYXAsIHN3aXRjaE1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBJY3BTZXNzaW9uQXBpU2VydmljZSB9IGZyb20gJy4uLy4uL2ljcC9pY3Atc2Vzc2lvbi1hcGkuc2VydmljZSc7XG5pbXBvcnQgeyBJY3BVcGRhdGVTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vaWNwL2ljcC11cGRhdGUuc2VydmljZSc7XG5pbXBvcnQgKiBhcyBpY3BBY3Rpb25zIGZyb20gJy4uL2FjdGlvbnMvaWNwLmFjdGlvbnMnIDtcbmltcG9ydCB7IEljcFNlc3Npb24gfSBmcm9tICcuLi8uLi9pY3AvaWNwLmludGVyZmFjZXMnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgSWNwRWZmZWN0cyB7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBhY3Rpb25zJDogQWN0aW9ucyxcbiAgICAgICAgICAgICAgcHJpdmF0ZSBpY3BBcGlTZXJ2aWNlOiBJY3BTZXNzaW9uQXBpU2VydmljZSxcbiAgICAgICAgICAgICAgcHJpdmF0ZSBpY3BVcGRhdGVTZXJ2aWNlOiBJY3BVcGRhdGVTZXJ2aWNlKSB7fVxuXG4gIEBFZmZlY3QoKVxuICBsb2FkSWNwU2Vzc2lvbiQgPSB0aGlzLmFjdGlvbnMkLnBpcGUoXG4gICAgb2ZUeXBlKGljcEFjdGlvbnMuTE9BRF9JQ1BfU0VTU0lPTiksXG4gICAgbWFwKChhY3Rpb246IGljcEFjdGlvbnMuTG9hZEljcFNlc3Npb24pID0+IGFjdGlvbi5wYXlsb2FkKSxcbiAgICBleGhhdXN0TWFwKChjYXNlSWQ6IHN0cmluZykgPT5cbiAgICAgIHRoaXMuaWNwQXBpU2VydmljZS5sb2FkU2Vzc2lvbihjYXNlSWQpXG4gICAgICAgIC5waXBlKFxuICAgICAgICAgIG1hcChyZXMgPT4gbmV3IGljcEFjdGlvbnMuSm9pbkljcFNvY2tldFNlc3Npb24ocmVzKSksXG4gICAgICAgICAgY2F0Y2hFcnJvcihlcnJvciA9PiBvZihuZXcgaWNwQWN0aW9ucy5Mb2FkSWNwU2Vzc2lvbkZhaWx1cmUoZXJyb3IpKSlcbiAgICAgICAgKVxuICAgICkpO1xuXG5cbiAgQEVmZmVjdCgpXG4gIGpvaW5JY3BTb2NrZXRTZXNzaW9uJCA9IHRoaXMuYWN0aW9ucyQucGlwZShcbiAgICBvZlR5cGUoaWNwQWN0aW9ucy5KT0lOX0lDUF9TT0NLRVRfU0VTU0lPTiksXG4gICAgbWFwKChhY3Rpb246IGljcEFjdGlvbnMuSm9pbkljcFNvY2tldFNlc3Npb24pID0+IGFjdGlvbi5wYXlsb2FkKSxcbiAgICBzd2l0Y2hNYXAoKHJlczoge3VzZXJuYW1lOiBzdHJpbmcsIHNlc3Npb246IEljcFNlc3Npb259KSA9PlxuICAgICAgdGhpcy5pY3BVcGRhdGVTZXJ2aWNlLmpvaW5TZXNzaW9uKHJlcy51c2VybmFtZSwgcmVzLnNlc3Npb24pXG4gICAgICAgIC5waXBlKG1hcChwYXJ0aWNpcGFudHMgPT4gbmV3IGljcEFjdGlvbnMuSWNwU29ja2V0U2Vzc2lvbkpvaW5lZCh7c2Vzc2lvbjogcmVzLnNlc3Npb24sIHBhcnRpY2lwYW50SW5mbzogcGFydGljaXBhbnRzfSkpKVxuICAgICkpO1xufVxuIl19
@@ -1,94 +0,0 @@
1
- import { __decorate, __metadata } from "tslib";
2
- import { Injectable } from '@angular/core';
3
- import { Actions, Effect, ofType } from '@ngrx/effects';
4
- import { catchError, exhaustMap, map, switchMap, tap } from 'rxjs/operators';
5
- import { of } from 'rxjs';
6
- import { RedactionApiService } from '../../redaction/services/redaction-api.service';
7
- import * as redactionActions from '../actions/redaction.actions';
8
- import { ToolbarEventService } from '../../toolbar/toolbar-event.service';
9
- export class RedactionEffects {
10
- constructor(actions$, redactionApiService, toolbarEvents) {
11
- this.actions$ = actions$;
12
- this.redactionApiService = redactionApiService;
13
- this.toolbarEvents = toolbarEvents;
14
- this.loadRedactions$ = this.actions$.pipe(ofType(redactionActions.LOAD_REDACTIONS), map((action) => action.payload), switchMap((documentId) => {
15
- return this.redactionApiService.getRedactions(documentId).pipe(map(resp => {
16
- return new redactionActions.LoadRedactionSuccess(resp.body);
17
- }), catchError(error => {
18
- return of(new redactionActions.LoadRedactionFailure(error));
19
- }));
20
- }));
21
- this.saveRedaction$ = this.actions$.pipe(ofType(redactionActions.SAVE_REDACTION), map((action) => action.payload), exhaustMap((redaction) => {
22
- return this.redactionApiService.saveRedaction(redaction).pipe(map(resp => {
23
- return new redactionActions.SaveRedactionSuccess(resp);
24
- }), catchError(error => {
25
- return of(new redactionActions.SaveRedactionFailure(error));
26
- }));
27
- }));
28
- this.saveBulkRedaction$ = this.actions$.pipe(ofType(redactionActions.SAVE_BULK_REDACTION), map((action) => action.payload), exhaustMap((redaction) => {
29
- return this.redactionApiService.saveBulkRedaction(redaction).pipe(tap(() => this.toolbarEvents.redactAllInProgressSubject.next(false))).pipe(map(resp => {
30
- return new redactionActions.SaveBulkRedactionSuccess(resp);
31
- }), catchError(error => {
32
- return of(new redactionActions.SaveBulkRedactionFailure(error));
33
- }));
34
- }));
35
- this.deleteRedaction$ = this.actions$.pipe(ofType(redactionActions.DELETE_REDACTION), map((action) => action.payload), exhaustMap((redactionPayload) => {
36
- return this.redactionApiService.deleteRedaction(redactionPayload).pipe(map(() => {
37
- return new redactionActions.DeleteRedactionSuccess(redactionPayload);
38
- }), catchError(error => {
39
- return of(new redactionActions.DeleteRedactionFailure(error));
40
- }));
41
- }));
42
- this.redact$ = this.actions$.pipe(ofType(redactionActions.REDACT), map((action) => action.payload), exhaustMap((redactionPayload) => {
43
- return this.redactionApiService.redact(redactionPayload).pipe(map((result) => {
44
- const header = result.headers.get('content-disposition').split('filename=');
45
- const filename = header.length > 1 ? header[1].replace(/"/g, '')
46
- : `redacted-document-${redactionPayload.documentId}`;
47
- return new redactionActions.RedactSuccess({ blob: result.body, filename });
48
- }), catchError(error => {
49
- return of(new redactionActions.RedactFailure(error));
50
- }));
51
- }));
52
- this.unmarkAll$ = this.actions$.pipe(ofType(redactionActions.UNMARK_ALL), map((action) => action.payload), exhaustMap((documentId) => {
53
- return this.redactionApiService.deleteAllMarkers(documentId).pipe(map(result => {
54
- return new redactionActions.UnmarkAllSuccess();
55
- }), catchError(error => {
56
- return of(new redactionActions.DeleteRedactionFailure(error));
57
- }));
58
- }));
59
- }
60
- }
61
- RedactionEffects.decorators = [
62
- { type: Injectable }
63
- ];
64
- /** @nocollapse */
65
- RedactionEffects.ctorParameters = () => [
66
- { type: Actions },
67
- { type: RedactionApiService },
68
- { type: ToolbarEventService }
69
- ];
70
- __decorate([
71
- Effect(),
72
- __metadata("design:type", Object)
73
- ], RedactionEffects.prototype, "loadRedactions$", void 0);
74
- __decorate([
75
- Effect(),
76
- __metadata("design:type", Object)
77
- ], RedactionEffects.prototype, "saveRedaction$", void 0);
78
- __decorate([
79
- Effect(),
80
- __metadata("design:type", Object)
81
- ], RedactionEffects.prototype, "saveBulkRedaction$", void 0);
82
- __decorate([
83
- Effect(),
84
- __metadata("design:type", Object)
85
- ], RedactionEffects.prototype, "deleteRedaction$", void 0);
86
- __decorate([
87
- Effect(),
88
- __metadata("design:type", Object)
89
- ], RedactionEffects.prototype, "redact$", void 0);
90
- __decorate([
91
- Effect(),
92
- __metadata("design:type", Object)
93
- ], RedactionEffects.prototype, "unmarkAll$", void 0);
94
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVkYWN0aW9uLmVmZmVjdHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tZWRpYS12aWV3ZXIvc3JjL2xpYi9zdG9yZS9lZmZlY3RzL3JlZGFjdGlvbi5lZmZlY3RzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN4RCxPQUFPLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdFLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDMUIsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFDckYsT0FBTyxLQUFLLGdCQUFnQixNQUFNLDhCQUE4QixDQUFDO0FBRWpFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBRzFFLE1BQU0sT0FBTyxnQkFBZ0I7SUFDM0IsWUFDVSxRQUFpQixFQUNqQixtQkFBd0MsRUFDeEMsYUFBa0M7UUFGbEMsYUFBUSxHQUFSLFFBQVEsQ0FBUztRQUNqQix3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXFCO1FBQ3hDLGtCQUFhLEdBQWIsYUFBYSxDQUFxQjtRQUk1QyxvQkFBZSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUNsQyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsZUFBZSxDQUFDLEVBQ3hDLEdBQUcsQ0FBQyxDQUFDLE1BQXVDLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsRUFDaEUsU0FBUyxDQUFDLENBQUMsVUFBVSxFQUFFLEVBQUU7WUFDdkIsT0FBTyxJQUFJLENBQUMsbUJBQW1CLENBQUMsYUFB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RyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FDN0IsTUFBTSxDQUFDLGdCQUFnQixDQUFDLFVBQVUsQ0FBQyxFQUNuQyxHQUFHLENBQUMsQ0FBQyxNQUFrQyxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLEVBQzNELFVBQVUsQ0FBQyxDQUFDLFVBQVUsRUFBRSxFQUFFO1lBQ3hCLE9BQU8sSUFBSSxDQUFDLG1CQUFtQixDQUFDLGdCQUFnQixDQUFDLFVBQVUsQ0FBQyxDQUFDLElBQUksQ0FDL0QsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFO2dCQUNYLE9BQU8sSUFBSSxnQkFBZ0IsQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1lBQ2pELENBQUMsQ0FBQyxFQUNGLFVBQVUsQ0FBQyxLQUFLLENBQUMsRUFBRTtnQkFDakIsT0FBTyxFQUFFLENBQUMsSUFBSSxnQkFBZ0IsQ0FBQyxzQkFBc0IsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1lBQ2hFLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDUixDQUFDLENBQUMsQ0FBQyxDQUFDO0lBdkZGLENBQUM7OztZQU5OLFVBQVU7Ozs7WUFSRixPQUFPO1lBR1AsbUJBQW1CO1lBR25CLG1CQUFtQjs7QUFXMUI7SUFEQyxNQUFNLEVBQUU7O3lEQVlIO0FBR047SUFEQyxNQUFNLEVBQUU7O3dEQVlIO0FBR047SUFEQyxNQUFNLEVBQUU7OzREQVlIO0FBR047SUFEQyxNQUFNLEVBQUU7OzBEQVlIO0FBR047SUFEQyxNQUFNLEVBQUU7O2lEQWVIO0FBR047SUFEQyxNQUFNLEVBQUU7O29EQVlIIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWN0aW9ucywgRWZmZWN0LCBvZlR5cGUgfSBmcm9tICdAbmdyeC9lZmZlY3RzJztcbmltcG9ydCB7IGNhdGNoRXJyb3IsIGV4aGF1c3RNYXAsIG1hcCwgc3dpdGNoTWFwLCB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBvZiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgUmVkYWN0aW9uQXBpU2VydmljZSB9IGZyb20gJy4uLy4uL3JlZGFjdGlvbi9zZXJ2aWNlcy9yZWRhY3Rpb24tYXBpLnNlcnZpY2UnO1xuaW1wb3J0ICogYXMgcmVkYWN0aW9uQWN0aW9ucyBmcm9tICcuLi9hY3Rpb25zL3JlZGFjdGlvbi5hY3Rpb25zJztcbmltcG9ydCB7IEh0dHBSZXNwb25zZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IFRvb2xiYXJFdmVudFNlcnZpY2UgfSBmcm9tICcuLi8uLi90b29sYmFyL3Rvb2xiYXItZXZlbnQuc2VydmljZSc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBSZWRhY3Rpb25FZmZlY3RzIHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBhY3Rpb25zJDogQWN0aW9ucyxcbiAgICBwcml2YXRlIHJlZGFjdGlvbkFwaVNlcnZpY2U6IFJlZGFjdGlvbkFwaVNlcnZpY2UsXG4gICAgcHJpdmF0ZSB0b29sYmFyRXZlbnRzOiBUb29sYmFyRXZlbnRTZXJ2aWNlXG4gICkgeyB9XG5cbiAgQEVmZmVjdCgpXG4gIGxvYWRSZWRhY3Rpb25zJCA9IHRoaXMuYWN0aW9ucyQucGlwZShcbiAgICBvZlR5cGUocmVkYWN0aW9uQWN0aW9ucy5MT0FEX1JFREFDVElPTlMpLFxuICAgIG1hcCgoYWN0aW9uOiByZWRhY3Rpb25BY3Rpb25zLkxvYWRSZWRhY3Rpb25zKSA9PiBhY3Rpb24ucGF5bG9hZCksXG4gICAgc3dpdGNoTWFwKChkb2N1bWVudElkKSA9PiB7XG4gICAgICByZXR1cm4gdGhpcy5yZWRhY3Rpb25BcGlTZXJ2aWNlLmdldFJlZGFjdGlvbnMoZG9jdW1lbnRJZCkucGlwZShcbiAgICAgICAgbWFwKHJlc3AgPT4ge1xuICAgICAgICAgIHJldHVybiBuZXcgcmVkYWN0aW9uQWN0aW9ucy5Mb2FkUmVkYWN0aW9uU3VjY2VzcyhyZXNwLmJvZHkpO1xuICAgICAgICB9KSxcbiAgICAgICAgY2F0Y2hFcnJvcihlcnJvciA9PiB7XG4gICAgICAgICAgcmV0dXJuIG9mKG5ldyByZWRhY3Rpb25BY3Rpb25zLkxvYWRSZWRhY3Rpb25GYWlsdXJlKGVycm9yKSk7XG4gICAgICAgIH0pKTtcbiAgICB9KSk7XG5cbiAgQEVmZmVjdCgpXG4gIHNhdmVSZWRhY3Rpb24kID0gdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgIG9mVHlwZShyZWRhY3Rpb25BY3Rpb25zLlNBVkVfUkVEQUNUSU9OKSxcbiAgICBtYXAoKGFjdGlvbjogcmVkYWN0aW9uQWN0aW9ucy5TYXZlUmVkYWN0aW9uKSA9PiBhY3Rpb24ucGF5bG9hZCksXG4gICAgZXhoYXVzdE1hcCgocmVkYWN0aW9uKSA9PiB7XG4gICAgICByZXR1cm4gdGhpcy5yZWRhY3Rpb25BcGlTZXJ2aWNlLnNhdmVSZWRhY3Rpb24ocmVkYWN0aW9uKS5waXBlKFxuICAgICAgICBtYXAocmVzcCA9PiB7XG4gICAgICAgICAgcmV0dXJuIG5ldyByZWRhY3Rpb25BY3Rpb25zLlNhdmVSZWRhY3Rpb25TdWNjZXNzKHJlc3ApO1xuICAgICAgICB9KSxcbiAgICAgICAgY2F0Y2hFcnJvcihlcnJvciA9PiB7XG4gICAgICAgICAgcmV0dXJuIG9mKG5ldyByZWRhY3Rpb25BY3Rpb25zLlNhdmVSZWRhY3Rpb25GYWlsdXJlKGVycm9yKSk7XG4gICAgICAgIH0pKTtcbiAgICB9KSk7XG5cbiAgQEVmZmVjdCgpXG4gIHNhdmVCdWxrUmVkYWN0aW9uJCA9IHRoaXMuYWN0aW9ucyQucGlwZShcbiAgICBvZlR5cGUocmVkYWN0aW9uQWN0aW9ucy5TQVZFX0JVTEtfUkVEQUNUSU9OKSxcbiAgICBtYXAoKGFjdGlvbjogcmVkYWN0aW9uQWN0aW9ucy5TYXZlUmVkYWN0aW9uKSA9PiBhY3Rpb24ucGF5bG9hZCksXG4gICAgZXhoYXVzdE1hcCgocmVkYWN0aW9uKSA9PiB7XG4gICAgICByZXR1cm4gdGhpcy5yZWRhY3Rpb25BcGlTZXJ2aWNlLnNhdmVCdWxrUmVkYWN0aW9uKHJlZGFjdGlvbikucGlwZShcbiAgICAgICAgdGFwKCgpID0+IHRoaXMudG9vbGJhckV2ZW50cy5yZWRhY3RBbGxJblByb2dyZXNzU3ViamVjdC5uZXh0KGZhbHNlKSkpLnBpcGUobWFwKHJlc3AgPT4ge1xuICAgICAgICAgIHJldHVybiBuZXcgcmVkYWN0aW9uQWN0aW9ucy5TYXZlQnVsa1JlZGFjdGlvblN1Y2Nlc3MocmVzcCk7XG4gICAgICAgIH0pLFxuICAgICAgICAgIGNhdGNoRXJyb3IoZXJyb3IgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIG9mKG5ldyByZWRhY3Rpb25BY3Rpb25zLlNhdmVCdWxrUmVkYWN0aW9uRmFpbHVyZShlcnJvcikpO1xuICAgICAgICAgIH0pKTtcbiAgICB9KSk7XG5cbiAgQEVmZmVjdCgpXG4gIGRlbGV0ZVJlZGFjdGlvbiQgPSB0aGlzLmFjdGlvbnMkLnBpcGUoXG4gICAgb2ZUeXBlKHJlZGFjdGlvbkFjdGlvbnMuREVMRVRFX1JFREFDVElPTiksXG4gICAgbWFwKChhY3Rpb246IHJlZGFjdGlvbkFjdGlvbnMuRGVsZXRlUmVkYWN0aW9uKSA9PiBhY3Rpb24ucGF5bG9hZCksXG4gICAgZXhoYXVzdE1hcCgocmVkYWN0aW9uUGF5bG9hZCkgPT4ge1xuICAgICAgcmV0dXJuIHRoaXMucmVkYWN0aW9uQXBpU2VydmljZS5kZWxldGVSZWRhY3Rpb24ocmVkYWN0aW9uUGF5bG9hZCkucGlwZShcbiAgICAgICAgbWFwKCgpID0+IHtcbiAgICAgICAgICByZXR1cm4gbmV3IHJlZGFjdGlvbkFjdGlvbnMuRGVsZXRlUmVkYWN0aW9uU3VjY2VzcyhyZWRhY3Rpb25QYXlsb2FkKTtcbiAgICAgICAgfSksXG4gICAgICAgIGNhdGNoRXJyb3IoZXJyb3IgPT4ge1xuICAgICAgICAgIHJldHVybiBvZihuZXcgcmVkYWN0aW9uQWN0aW9ucy5EZWxldGVSZWRhY3Rpb25GYWlsdXJlKGVycm9yKSk7XG4gICAgICAgIH0pKTtcbiAgICB9KSk7XG5cbiAgQEVmZmVjdCgpXG4gIHJlZGFjdCQgPSB0aGlzLmFjdGlvbnMkLnBpcGUoXG4gICAgb2ZUeXBlKHJlZGFjdGlvbkFjdGlvbnMuUkVEQUNUKSxcbiAgICBtYXAoKGFjdGlvbjogcmVkYWN0aW9uQWN0aW9ucy5SZWRhY3QpID0+IGFjdGlvbi5wYXlsb2FkKSxcbiAgICBleGhhdXN0TWFwKChyZWRhY3Rpb25QYXlsb2FkKSA9PiB7XG4gICAgICByZXR1cm4gdGhpcy5yZWRhY3Rpb25BcGlTZXJ2aWNlLnJlZGFjdChyZWRhY3Rpb25QYXlsb2FkKS5waXBlKFxuICAgICAgICBtYXAoKHJlc3VsdDogSHR0cFJlc3BvbnNlPEJsb2I+KSA9PiB7XG4gICAgICAgICAgY29uc3QgaGVhZGVyID0gcmVzdWx0LmhlYWRlcnMuZ2V0KCdjb250ZW50LWRpc3Bvc2l0aW9uJykuc3BsaXQoJ2ZpbGVuYW1lPScpO1xuICAgICAgICAgIGNvbnN0IGZpbGVuYW1lID0gaGVhZGVyLmxlbmd0aCA+IDEgPyBoZWFkZXJbMV0ucmVwbGFjZSgvXCIvZywgJycpXG4gICAgICAgICAgICA6IGByZWRhY3RlZC1kb2N1bWVudC0ke3JlZGFjdGlvblBheWxvYWQuZG9jdW1lbnRJZH1gO1xuICAgICAgICAgIHJldHVybiBuZXcgcmVkYWN0aW9uQWN0aW9ucy5SZWRhY3RTdWNjZXNzKHsgYmxvYjogcmVzdWx0LmJvZHksIGZpbGVuYW1lIH0pO1xuICAgICAgICB9KSxcbiAgICAgICAgY2F0Y2hFcnJvcihlcnJvciA9PiB7XG4gICAgICAgICAgcmV0dXJuIG9mKG5ldyByZWRhY3Rpb25BY3Rpb25zLlJlZGFjdEZhaWx1cmUoZXJyb3IpKTtcbiAgICAgICAgfSkpO1xuICAgIH0pKTtcblxuICBARWZmZWN0KClcbiAgdW5tYXJrQWxsJCA9IHRoaXMuYWN0aW9ucyQucGlwZShcbiAgICBvZlR5cGUocmVkYWN0aW9uQWN0aW9ucy5VTk1BUktfQUxMKSxcbiAgICBtYXAoKGFjdGlvbjogcmVkYWN0aW9uQWN0aW9ucy5Vbm1hcmtBbGwpID0+IGFjdGlvbi5wYXlsb2FkKSxcbiAgICBleGhhdXN0TWFwKChkb2N1bWVudElkKSA9PiB7XG4gICAgICByZXR1cm4gdGhpcy5yZWRhY3Rpb25BcGlTZXJ2aWNlLmRlbGV0ZUFsbE1hcmtlcnMoZG9jdW1lbnRJZCkucGlwZShcbiAgICAgICAgbWFwKHJlc3VsdCA9PiB7XG4gICAgICAgICAgcmV0dXJuIG5ldyByZWRhY3Rpb25BY3Rpb25zLlVubWFya0FsbFN1Y2Nlc3MoKTtcbiAgICAgICAgfSksXG4gICAgICAgIGNhdGNoRXJyb3IoZXJyb3IgPT4ge1xuICAgICAgICAgIHJldHVybiBvZihuZXcgcmVkYWN0aW9uQWN0aW9ucy5EZWxldGVSZWRhY3Rpb25GYWlsdXJlKGVycm9yKSk7XG4gICAgICAgIH0pKTtcbiAgICB9KSk7XG59XG5cbiJdfQ==
@@ -1,115 +0,0 @@
1
- import uuid from 'uuid/v4';
2
- import * as fromAnnotations from '../actions/annotation.actions';
3
- import { StoreUtils } from '../store-utils';
4
- export const initialState = {
5
- annotationSet: {},
6
- annotationEntities: {},
7
- commentEntities: {},
8
- annotationPageEntities: {},
9
- selectedAnnotation: null,
10
- commentSearchQueries: { commentSearch: '' },
11
- commentSummaryFilters: { hasFilter: false, filters: {} },
12
- loading: false,
13
- loaded: false,
14
- };
15
- export function reducer(state = initialState, action) {
16
- switch (action.type) {
17
- case fromAnnotations.LOAD_ANNOTATION_SET: {
18
- const annotationSet = Object.assign(Object.assign({}, state.annotationSet), { documentId: action.payload });
19
- return Object.assign(Object.assign({}, initialState), { annotationSet, loading: true });
20
- }
21
- case fromAnnotations.LOAD_ANNOTATION_SET_SUCCESS:
22
- case fromAnnotations.LOAD_ANNOTATION_SET_FAIL: {
23
- const annotationSet = action.payload.status === 200 ? action.payload.body : Object.assign(Object.assign({}, state.annotationSet), { annotations: [], id: uuid() });
24
- const annotationEntities = StoreUtils.generateAnnotationEntities(annotationSet.annotations);
25
- const annotationPageEntities = StoreUtils.groupByKeyEntities(annotationSet.annotations, 'page');
26
- const commentEntities = StoreUtils.generateCommentsEntities(annotationSet.annotations);
27
- return Object.assign(Object.assign({}, state), { annotationSet,
28
- annotationEntities,
29
- annotationPageEntities,
30
- commentEntities, loading: false, loaded: true });
31
- }
32
- case fromAnnotations.SAVE_ANNOTATION_SUCCESS: {
33
- const anno = action.payload;
34
- const annEntities = Object.assign(Object.assign({}, state.annotationEntities), { [anno.id]: anno });
35
- const annotArray = Object.keys(annEntities).map(key => annEntities[key]);
36
- const annotationEntities = StoreUtils.generateAnnotationEntities(annotArray);
37
- const annotationPageEntities = StoreUtils.groupByKeyEntities(annotArray, 'page');
38
- const commentEntities = StoreUtils.generateCommentsEntities(annotArray);
39
- const selectedAnnotation = Object.assign(Object.assign({}, state.selectedAnnotation), { annotationId: anno.id, editable: false });
40
- return Object.assign(Object.assign({}, state), { annotationEntities,
41
- annotationPageEntities,
42
- commentEntities,
43
- selectedAnnotation, loading: false, loaded: true });
44
- }
45
- case fromAnnotations.DELETE_ANNOTATION_SUCCESS: {
46
- const id = action.payload;
47
- const page = state.annotationEntities[id].page;
48
- const annotationEntities = Object.assign({}, state.annotationEntities);
49
- delete annotationEntities[id];
50
- const pageAnnotationsRemoved = [
51
- ...state.annotationPageEntities[page].filter(anno => anno.id !== id)
52
- ];
53
- const annotationPageEntities = Object.assign(Object.assign({}, state.annotationPageEntities), { [page]: pageAnnotationsRemoved });
54
- const commentEntities = Object.assign({}, state.commentEntities);
55
- if (state.commentEntities[id]) {
56
- delete commentEntities[id];
57
- }
58
- return Object.assign(Object.assign({}, state), { annotationEntities,
59
- annotationPageEntities,
60
- commentEntities });
61
- }
62
- case fromAnnotations.ADD_OR_EDIT_COMMENT: {
63
- const comment = {
64
- [action.payload.annotationId]: action.payload
65
- };
66
- const comments = Object.assign(Object.assign({}, state.commentEntities), comment);
67
- return Object.assign(Object.assign({}, state), { commentEntities: comments });
68
- }
69
- case fromAnnotations.SELECT_ANNOTATION: {
70
- const payload = action.payload;
71
- const commentEntity = Object.assign(Object.assign({}, state.commentEntities[payload.annotationId]), { editable: payload.editable, selected: payload.selected });
72
- const resetCommentEntSelect = StoreUtils.resetCommentEntSelect(Object.assign({}, state.commentEntities));
73
- const commentEntities = payload.annotationId && state.commentEntities[payload.annotationId] ? Object.assign(Object.assign({}, resetCommentEntSelect), { [payload.annotationId]: commentEntity }) : Object.assign({}, resetCommentEntSelect);
74
- return Object.assign(Object.assign({}, state), { commentEntities, selectedAnnotation: action.payload });
75
- }
76
- case fromAnnotations.SEARCH_COMMENT: {
77
- const commentSearchQueries = Object.assign(Object.assign({}, state.commentSearchQueries), { commentSearch: action.payload });
78
- const commentEntities = StoreUtils.resetCommentEntSelect(Object.assign({}, state.commentEntities));
79
- return Object.assign(Object.assign({}, state), { commentEntities,
80
- commentSearchQueries });
81
- }
82
- case fromAnnotations.APPLY_COMMENT_SUMMARY_FILTER: {
83
- const payload = action.payload;
84
- const hasTagFilter = () => {
85
- let isFiltered = false;
86
- if (payload.tagFilters) {
87
- Object.keys(payload.tagFilters).map(filter => {
88
- if (payload.tagFilters[filter] && !isFiltered) {
89
- isFiltered = true;
90
- }
91
- });
92
- }
93
- return isFiltered;
94
- };
95
- const hasFilter = (hasTagFilter() || !!payload.dateRangeFrom || !!payload.dateRangeTo);
96
- const commentSummaryFilters = {
97
- hasFilter,
98
- filters: payload
99
- };
100
- return Object.assign(Object.assign({}, state), { commentSummaryFilters: commentSummaryFilters });
101
- }
102
- case fromAnnotations.CLEAR_COMMENT_SUMMARY_FILTER: {
103
- return Object.assign(Object.assign({}, state), { commentSummaryFilters: Object.assign({}, initialState.commentSummaryFilters) });
104
- }
105
- }
106
- return state;
107
- }
108
- export const getAnnoSet = (state) => state.annotationSet;
109
- export const getCommentEnts = (state) => state.commentEntities;
110
- export const getAnnoPageEnt = (state) => state.annotationPageEntities;
111
- export const getAnnoEnt = (state) => state.annotationEntities;
112
- export const getSelectedAnno = (state) => state.selectedAnnotation;
113
- export const commentSearchQ = (state) => state.commentSearchQueries;
114
- export const getSummaryFilters = (state) => state.commentSummaryFilters;
115
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ub3RhdGlvbnMucmVkdWNlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21lZGlhLXZpZXdlci9zcmMvbGliL3N0b3JlL3JlZHVjZXJzL2Fubm90YXRpb25zLnJlZHVjZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxJQUFJLE1BQU0sU0FBUyxDQUFDO0FBQzNCLE9BQU8sS0FBSyxlQUFlLE1BQU0sK0JBQStCLENBQUM7QUFHakUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBZ0I1QyxNQUFNLENBQUMsTUFBTSxZQUFZLEdBQXVCO0lBQzlDLGFBQWEsRUFBRSxFQUFFO0lBQ2pCLGtCQUFrQixFQUFFLEVBQUU7SUFDdEIsZUFBZSxFQUFFLEVBQUU7SUFDbkIsc0JBQXNCLEVBQUUsRUFBRTtJQUMxQixrQkFBa0IsRUFBRSxJQUFJO0lBQ3hCLG9CQUFvQixFQUFFLEVBQUMsYUFBYSxFQUFFLEVBQUUsRUFBQztJQUN6QyxxQkFBcUIsRUFBRSxFQUFDLFNBQVMsRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLEVBQUUsRUFBQztJQUN0RCxPQUFPLEVBQUUsS0FBSztJQUNkLE1BQU0sRUFBRSxLQUFLO0NBQ2QsQ0FBQztBQUVGLE1BQU0sVUFBVSxPQUFPLENBQ3JCLEtBQUssR0FBRyxZQUFZLEVBQ3BCLE1BQTBDO0lBRTFDLFFBQVEsTUFBTSxDQUFDLElBQUksRUFBRTtRQUVuQixLQUFLLGVBQWUsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1lBQ3hDLE1BQU0sYUFBYSxtQ0FDZCxLQUFLLENBQUMsYUFBYSxLQUN0QixVQUFVLEVBQUUsTUFBTSxDQUFDLE9BQU8sR0FDM0IsQ0FBQztZQUNGLHVDQUNLLFlBQVksS0FDZixhQUFhLEVBQ2IsT0FBTyxFQUFFLElBQUksSUFDYjtTQUNIO1FBQ0QsS0FBSyxlQUFlLENBQUMsMkJBQTJCLENBQUM7UUFDakQsS0FBSyxlQUFl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cUIsb0JBQU8sWUFBWSxDQUFDLHFCQUFxQixLQUM5RDtTQUNIO0tBQ0Y7SUFHRCxPQUFPLEtBQUssQ0FBQztBQUNmLENBQUM7QUFFRCxNQUFNLENBQUMsTUFBTSxVQUFVLEdBQUcsQ0FBQyxLQUF5QixFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDO0FBQzdFLE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBRyxDQUFDLEtBQXlCLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxlQUFlLENBQUM7QUFDbkYsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHLENBQUMsS0FBeUIsRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLHNCQUFzQixDQUFDO0FBQzFGLE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBRyxDQUFDLEtBQXlCLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQztBQUNsRixNQUFNLENBQUMsTUFBTSxlQUFlLEdBQUcsQ0FBQyxLQUF5QixFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsa0JBQWtCLENBQUM7QUFDdkYsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHLENBQUMsS0FBeUIsRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLG9CQUFvQixDQUFDO0FBQ3hGLE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLENBQUMsS0FBeUIsRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLHFCQUFxQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHV1aWQgZnJvbSAndXVpZC92NCc7XG5pbXBvcnQgKiBhcyBmcm9tQW5ub3RhdGlvbnMgZnJvbSAnLi4vYWN0aW9ucy9hbm5vdGF0aW9uLmFjdGlvbnMnO1xuaW1wb3J0IHsgQW5ub3RhdGlvbiB9IGZyb20gJy4uLy4uL2Fubm90YXRpb25zL2Fubm90YXRpb24tc2V0L2Fubm90YXRpb24tdmlldy9hbm5vdGF0aW9uLm1vZGVsJztcbmltcG9ydCB7IENvbW1lbnQgfSBmcm9tICcuLi8uLi9hbm5vdGF0aW9ucy9jb21tZW50LXNldC9jb21tZW50L2NvbW1lbnQubW9kZWwnO1xuaW1wb3J0IHsgU3RvcmVVdGlscyB9IGZyb20gJy4uL3N0b3JlLXV0aWxzJztcbmltcG9ydCB7IFNlbGVjdGlvbkFubm90YXRpb24gfSBmcm9tICcuLi8uLi9hbm5vdGF0aW9ucy9tb2RlbHMvZXZlbnQtc2VsZWN0Lm1vZGVsJztcbmltcG9ydCB7IEZpbHRlcnMgfSBmcm9tICcuLi9tb2RlbHMvZmlsdGVycy5pbnRlcmZhY2UnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEFubm90YXRpb25TZXRTdGF0ZSB7XG4gIGFubm90YXRpb25TZXQ6IGFueTtcbiAgYW5ub3RhdGlvbkVudGl0aWVzOiB7W2lkOiBzdHJpbmddOiBhbnl9O1xuICBhbm5vdGF0aW9uUGFnZUVudGl0aWVzOiB7W2lkOiBzdHJpbmddOiBBbm5vdGF0aW9uW119O1xuICBjb21tZW50RW50aXRpZXM6IHtbaWQ6IHN0cmluZ106IENvbW1lbnR9O1xuICBzZWxlY3RlZEFubm90YXRpb246IFNlbGVjdGlvbkFubm90YXRpb247XG4gIGNvbW1lbnRTZWFyY2hRdWVyaWVzOiB7IGNvbW1lbnRTZWFyY2g6IHN0cmluZyB9O1xuICBjb21tZW50U3VtbWFyeUZpbHRlcnM6IHtoYXNGaWx0ZXI6IGJvb2xlYW47IGZpbHRlcnM6IEZpbHRlcnN9O1xuICBsb2FkZWQ6IGJvb2xlYW47XG4gIGxvYWRpbmc6IGJvb2xlYW47XG59XG5cbmV4cG9ydCBjb25zdCBpbml0aWFsU3RhdGU6IEFubm90YXRpb25TZXRTdGF0ZSA9IHtcbiAgYW5ub3RhdGlvblNldDoge30sXG4gIGFubm90YXRpb25FbnRpdGllczoge30sXG4gIGNvbW1lbnRFbnRpdGllczoge30sXG4gIGFubm90YXRpb25QYWdlRW50aXRpZXM6IHt9LFxuICBzZWxlY3RlZEFubm90YXRpb246IG51bGwsXG4gIGNvbW1lbnRTZWFyY2hRdWVyaWVzOiB7Y29tbWVudFNlYXJjaDogJyd9LFxuICBjb21tZW50U3VtbWFyeUZpbHRlcnM6IHtoYXNGaWx0ZXI6IGZhbHNlLCBmaWx0ZXJzOiB7fX0sXG4gIGxvYWRpbmc6IGZhbHNlLFxuICBsb2FkZWQ6IGZhbHNlLFxufTtcblxuZXhwb3J0IGZ1bmN0aW9uIHJlZHVjZXIgKFxuICBzdGF0ZSA9IGluaXRpYWxTdGF0ZSxcbiAgYWN0aW9uOiBmcm9tQW5ub3RhdGlvbnMuQW5ub3RhdGlvbnNBY3Rpb25zXG4pOiBBbm5vdGF0aW9uU2V0U3RhdGUge1xuICBzd2l0Y2ggKGFjdGlvbi50eXBlKSB7XG5cbiAgICBjYXNlIGZyb21Bbm5vdGF0aW9ucy5MT0FEX0FOTk9UQVRJT05fU0VUOiB7XG4gICAgICBjb25zdCBhbm5vdGF0aW9uU2V0ID0ge1xuICAgICAgICAuLi5zdGF0ZS5hbm5vdGF0aW9uU2V0LFxuICAgICAgICBkb2N1bWVudElkOiBhY3Rpb24ucGF5bG9hZFxuICAgICAgfTtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIC4uLmluaXRpYWxTdGF0ZSxcbiAgICAgICAgYW5ub3RhdGlvblNldCxcbiAgICAgICAgbG9hZGluZzogdHJ1ZVxuICAgICAgfTtcbiAgICB9XG4gICAgY2FzZSBmcm9tQW5ub3RhdGlvbnMuTE9BRF9BTk5PVEFUSU9OX1NFVF9TVUNDRVNTOlxuICAgIGNhc2UgZnJvbUFubm90YXRpb25zLkxPQURfQU5OT1RBVElPTl9TRVRfRkFJTDoge1xuICAgICAgY29uc3QgYW5ub3RhdGlvblNldCA9IGFjdGlvbi5wYXlsb2FkLnN0YXR1cyA9PT0gMjAwID8gYWN0aW9uLnBheWxvYWQuYm9keSA6XG4gICAgICAgIHtcbiAgICAgICAgICAuLi5zdGF0ZS5hbm5vdGF0aW9uU2V0LFxuICAgICAgICAgIGFubm90YXRpb25zOiBbXSxcbiAgICAgICAgICBpZDogdXVpZCgpXG4gICAgICAgIH07XG4gICAgICBjb25zdCBhbm5vdGF0aW9uRW50aXRpZXMgPSBTdG9yZVV0aWxzLmdlbmVyYXRlQW5ub3RhdGlvbkVudGl0aWVzKGFubm90YXRpb25TZXQuYW5ub3RhdGlvbnMpO1xuICAgICAgY29uc3QgYW5ub3RhdGlvblBhZ2VFbnRpdGllcyA9IFN0b3JlVXRpbHMuZ3JvdXBCeUtleUVudGl0aWVzKGFubm90YXRpb25TZXQuYW5ub3RhdGlvbnMsICdwYWdlJyk7XG4gICAgICBjb25zdCBjb21tZW50RW50aXRpZXMgPSBTdG9yZVV0aWxzLmdlbmVyYXRlQ29tbWVudHNFbnRpdGllcyhhbm5vdGF0aW9uU2V0LmFubm90YXRpb25zKTtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIC4uLnN0YXRlLFxuICAgICAgICBhbm5vdGF0aW9uU2V0LFxuICAgICAgICBhbm5vdGF0aW9uRW50aXRpZXMsXG4gICAgICAgIGFubm90YXRpb25QYWdlRW50aXRpZXMsXG4gICAgICAgIGNvbW1lbnRFbnRpdGllcyxcbiAgICAgICAgbG9hZGluZzogZmFsc2UsXG4gICAgICAgIGxvYWRlZDogdHJ1ZVxuICAgICAgfTtcbiAgICB9XG5cbiAgICBjYXNlIGZyb21Bbm5vdGF0aW9ucy5TQVZFX0FOTk9UQVRJT05fU1VDQ0VTUzoge1xuICAgICAgY29uc3QgYW5ubyA9IGFjdGlvbi5wYXlsb2FkO1xuICAgICAgY29uc3QgYW5uRW50aXRpZXMgPSB7XG4gICAgICAgIC4uLnN0YXRlLmFubm90YXRpb25FbnRpdGllcyxcbiAgICAgICAgW2Fubm8uaWRdOiBhbm5vXG4gICAgICB9O1xuICAgICAgY29uc3QgYW5ub3RBcnJheSA9IE9iamVjdC5rZXlzKGFubkVudGl0aWVzKS5tYXAoa2V5ID0+IGFubkVudGl0aWVzW2tleV0pO1xuICAgICAgY29uc3QgYW5ub3RhdGlvbkVudGl0aWVzID0gU3RvcmVVdGlscy5nZW5lcmF0ZUFubm90YXRpb25FbnRpdGllcyhhbm5vdEFycmF5KTtcbiAgICAgIGNvbnN0IGFubm90YXRpb25QYWdlRW50aXRpZXMgPSBTdG9yZVV0aWxzLmdyb3VwQnlLZXlFbnRpdGllcyhhbm5vdEFycmF5LCAncGFnZScpO1xuICAgICAgY29uc3QgY29tbWVudEVudGl0aWVzID0gU3RvcmVVdGlscy5nZW5lcmF0ZUNvbW1lbnRzRW50aXRpZXMoYW5ub3RBcnJheSk7XG4gICAgICBjb25zdCBzZWxlY3RlZEFubm90YXRpb24gPSB7XG4gICAgICAgIC4uLnN0YXRlLnNlbGVjdGVkQW5ub3RhdGlvbixcbiAgICAgICAgYW5ub3RhdGlvbklkIDogYW5uby5pZCxcbiAgICAgICAgZWRpdGFibGU6IGZhbHNlXG4gICAgICB9O1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgLi4uc3RhdGUsXG4gICAgICAgIGFubm90YXRpb25FbnRpdGllcyxcbiAgICAgICAgYW5ub3RhdGlvblBhZ2VFbnRpdGllcyxcbiAgICAgICAgY29tbWVudEVudGl0aWVzLFxuICAgICAgICBzZWxlY3RlZEFubm90YXRpb24sXG4gICAgICAgIGxvYWRpbmc6IGZhbHNlLFxuICAgICAgICBsb2FkZWQ6IHRydWVcbiAgICAgIH07XG4gICAgfVxuXG4gICAgY2FzZSBmcm9tQW5ub3RhdGlvbnMuREVMRVRFX0FOTk9UQVRJT05fU1VDQ0VTUzoge1xuICAgICAgY29uc3QgaWQgPSBhY3Rpb24ucGF5bG9hZDtcbiAgICAgIGNvbnN0IHBhZ2UgPSBzdGF0ZS5hbm5vdGF0aW9uRW50aXRpZXNbaWRdLnBhZ2U7XG4gICAgICBjb25zdCBhbm5vdGF0aW9uRW50aXRpZXMgPSB7XG4gICAgICAgIC4uLnN0YXRlLmFubm90YXRpb25FbnRpdGllc1xuICAgICAgfTtcbiAgICAgIGRlbGV0ZSBhbm5vdGF0aW9uRW50aXRpZXNbaWRdO1xuICAgICAgY29uc3QgcGFnZUFubm90YXRpb25zUmVtb3ZlZCA9IFtcbiAgICAgICAgLi4uc3RhdGUuYW5ub3RhdGlvblBhZ2VFbnRpdGllc1twYWdlXS5maWx0ZXIoYW5ubyA9PiBhbm5vLmlkICE9PSBpZClcbiAgICAgIF07XG4gICAgICBjb25zdCBhbm5vdGF0aW9uUGFnZUVudGl0aWVzID0ge1xuICAgICAgICAuLi5zdGF0ZS5hbm5vdGF0aW9uUGFnZUVudGl0aWVzLFxuICAgICAgICBbcGFnZV06IHBhZ2VBbm5vdGF0aW9uc1JlbW92ZWRcbiAgICAgIH07XG4gICAgICBjb25zdCBjb21tZW50RW50aXRpZXMgPSB7XG4gICAgICAgIC4uLnN0YXRlLmNvbW1lbnRFbnRpdGllc1xuICAgICAgfTtcbiAgICAgIGlmIChzdGF0ZS5jb21tZW50RW50aXRpZXNbaWRdKSB7XG4gICAgICAgIGRlbGV0ZSBjb21tZW50RW50aXRpZXNbaWRdO1xuICAgICAgfVxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgLi4uc3RhdGUsXG4gICAgICAgIGFubm90YXRpb25FbnRpdGllcyxcbiAgICAgICAgYW5ub3RhdGlvblBhZ2VFbnRpdGllcyxcbiAgICAgICAgY29tbWVudEVudGl0aWVzXG4gICAgICB9O1xuICAgIH1cblxuICAgIGNhc2UgZnJvbUFubm90YXRpb25zLkFERF9PUl9FRElUX0NPTU1FTlQ6IHtcbiAgICAgIGNvbnN0IGNvbW1lbnQgPSB7XG4gICAgICAgIFthY3Rpb24ucGF5bG9hZC5hbm5vdGF0aW9uSWRdOiBhY3Rpb24ucGF5bG9hZFxuICAgICAgfTtcbiAgICAgIGNvbnN0IGNvbW1lbnRzID0ge1xuICAgICAgICAuLi5zdGF0ZS5jb21tZW50RW50aXRpZXMsXG4gICAgICAgIC4uLmNvbW1lbnRcbiAgICAgIH07XG4gICAgICByZXR1cm4ge1xuICAgICAgICAuLi5zdGF0ZSxcbiAgICAgICAgY29tbWVudEVudGl0aWVzOiBjb21tZW50c1xuICAgICAgfTtcbiAgICB9XG5cbiAgICBjYXNlIGZyb21Bbm5vdGF0aW9ucy5TRUxFQ1RfQU5OT1RBVElPTjoge1xuICAgICAgY29uc3QgcGF5bG9hZCA9IGFjdGlvbi5wYXlsb2FkO1xuICAgICAgY29uc3QgY29tbWVudEVudGl0eSA9IHtcbiAgICAgICAgLi4uc3RhdGUuY29tbWVudEVudGl0aWVzW3BheWxvYWQuYW5ub3RhdGlvbklkXSxcbiAgICAgICAgZWRpdGFibGU6IHBheWxvYWQuZWRpdGFibGUsXG4gICAgICAgIHNlbGVjdGVkOiBwYXlsb2FkLnNlbGVjdGVkXG4gICAgICB9O1xuXG4gICAgICBjb25zdCByZXNldENvbW1lbnRFbnRTZWxlY3QgPSBTdG9yZVV0aWxzLnJlc2V0Q29tbWVudEVudFNlbGVjdCh7Li4uc3RhdGUuY29tbWVudEVudGl0aWVzfSk7XG5cbiAgICAgIGNvbnN0IGNvbW1lbnRFbnRpdGllcyA9IHBheWxvYWQuYW5ub3RhdGlvbklkICYmIHN0YXRlLmNvbW1lbnRFbnRpdGllc1twYXlsb2FkLmFubm90YXRpb25JZF0gPyB7XG4gICAgICAgIC4uLnJlc2V0Q29tbWVudEVudFNlbGVjdCxcbiAgICAgIFtwYXlsb2FkLmFubm90YXRpb25JZF06IGNvbW1lbnRFbnRpdHlcbiAgICAgIH0gOiB7Li4ucmVzZXRDb21tZW50RW50U2VsZWN0fTtcblxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgLi4uc3RhdGUsXG4gICAgICAgIGNvbW1lbnRFbnRpdGllcyxcbiAgICAgICAgc2VsZWN0ZWRBbm5vdGF0aW9uOiBhY3Rpb24ucGF5bG9hZFxuICAgICAgfTtcbiAgICB9XG5cbiAgICBjYXNlIGZyb21Bbm5vdGF0aW9ucy5TRUFSQ0hfQ09NTUVOVDoge1xuICAgICAgY29uc3QgY29tbWVudFNlYXJjaFF1ZXJpZXMgPSB7XG4gICAgICAgIC4uLnN0YXRlLmNvbW1lbnRTZWFyY2hRdWVyaWVzLFxuICAgICAgICBjb21tZW50U2VhcmNoOiBhY3Rpb24ucGF5bG9hZFxuICAgICAgfTtcblxuICAgICAgY29uc3QgY29tbWVudEVudGl0aWVzID0gU3RvcmVVdGlscy5yZXNldENvbW1lbnRFbnRTZWxlY3Qoey4uLnN0YXRlLmNvbW1lbnRFbnRpdGllc30pO1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgLi4uc3RhdGUsXG4gICAgICAgIGNvbW1lbnRFbnRpdGllcyxcbiAgICAgICAgY29tbWVudFNlYXJjaFF1ZXJpZXNcbiAgICAgIH07XG4gICAgfVxuXG4gICAgY2FzZSBmcm9tQW5ub3RhdGlvbnMuQVBQTFlfQ09NTUVOVF9TVU1NQVJZX0ZJTFRFUjoge1xuICAgICAgY29uc3QgcGF5bG9hZCA9IGFjdGlvbi5wYXlsb2FkO1xuICAgICAgY29uc3QgaGFzVGFnRmlsdGVyID0gKCkgPT4ge1xuICAgICAgICBsZXQgaXNGaWx0ZXJlZCA9IGZhbHNlO1xuICAgICAgICBpZiAocGF5bG9hZC50YWdGaWx0ZXJzKSB7XG4gICAgICAgICAgT2JqZWN0LmtleXMocGF5bG9hZC50YWdGaWx0ZXJzKS5tYXAoZmlsdGVyID0+IHtcbiAgICAgICAgICAgIGlmIChwYXlsb2FkLnRhZ0ZpbHRlcnNbZmlsdGVyXSAmJiAhaXNGaWx0ZXJlZCkge1xuICAgICAgICAgICAgICBpc0ZpbHRlcmVkID0gdHJ1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gaXNGaWx0ZXJlZDtcbiAgICAgIH07XG4gICAgICBjb25zdCBoYXNGaWx0ZXIgPSAoaGFzVGFnRmlsdGVyKCkgfHwgISFwYXlsb2FkLmRhdGVSYW5nZUZyb20gfHwgISFwYXlsb2FkLmRhdGVSYW5nZVRvKTtcbiAgICAgIGNvbnN0IGNvbW1lbnRTdW1tYXJ5RmlsdGVycyA9IHtcbiAgICAgICAgaGFzRmlsdGVyLFxuICAgICAgICBmaWx0ZXJzOiBwYXlsb2FkXG4gICAgICB9O1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgLi4uc3RhdGUsXG4gICAgICAgIGNvbW1lbnRTdW1tYXJ5RmlsdGVyczogY29tbWVudFN1bW1hcnlGaWx0ZXJzXG4gICAgICB9O1xuICAgIH1cblxuICAgIGNhc2UgZnJvbUFubm90YXRpb25zLkNMRUFSX0NPTU1FTlRfU1VNTUFSWV9GSUxURVI6IHtcblxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgLi4uc3RhdGUsXG4gICAgICAgIGNvbW1lbnRTdW1tYXJ5RmlsdGVycyA6IHsuLi5pbml0aWFsU3RhdGUuY29tbWVudFN1bW1hcnlGaWx0ZXJzfVxuICAgICAgfTtcbiAgICB9XG4gIH1cblxuXG4gIHJldHVybiBzdGF0ZTtcbn1cblxuZXhwb3J0IGNvbnN0IGdldEFubm9TZXQgPSAoc3RhdGU6IEFubm90YXRpb25TZXRTdGF0ZSkgPT4gc3RhdGUuYW5ub3RhdGlvblNldDtcbmV4cG9ydCBjb25zdCBnZXRDb21tZW50RW50cyA9IChzdGF0ZTogQW5ub3RhdGlvblNldFN0YXRlKSA9PiBzdGF0ZS5jb21tZW50RW50aXRpZXM7XG5leHBvcnQgY29uc3QgZ2V0QW5ub1BhZ2VFbnQgPSAoc3RhdGU6IEFubm90YXRpb25TZXRTdGF0ZSkgPT4gc3RhdGUuYW5ub3RhdGlvblBhZ2VFbnRpdGllcztcbmV4cG9ydCBjb25zdCBnZXRBbm5vRW50ID0gKHN0YXRlOiBBbm5vdGF0aW9uU2V0U3RhdGUpID0+IHN0YXRlLmFubm90YXRpb25FbnRpdGllcztcbmV4cG9ydCBjb25zdCBnZXRTZWxlY3RlZEFubm8gPSAoc3RhdGU6IEFubm90YXRpb25TZXRTdGF0ZSkgPT4gc3RhdGUuc2VsZWN0ZWRBbm5vdGF0aW9uO1xuZXhwb3J0IGNvbnN0IGNvbW1lbnRTZWFyY2hRID0gKHN0YXRlOiBBbm5vdGF0aW9uU2V0U3RhdGUpID0+IHN0YXRlLmNvbW1lbnRTZWFyY2hRdWVyaWVzO1xuZXhwb3J0IGNvbnN0IGdldFN1bW1hcnlGaWx0ZXJzID0gKHN0YXRlOiBBbm5vdGF0aW9uU2V0U3RhdGUpID0+IHN0YXRlLmNvbW1lbnRTdW1tYXJ5RmlsdGVycztcbiJdfQ==
@@ -1,80 +0,0 @@
1
- import * as fromBookmarks from '../actions/bookmark.actions';
2
- import { StoreUtils } from '../store-utils';
3
- import { generateBookmarkEntities } from '../bookmarks-store-utils';
4
- export const initialBookmarksState = {
5
- bookmarks: [],
6
- bookmarkEntities: {},
7
- bookmarkPageEntities: {},
8
- editableBookmark: undefined,
9
- loaded: false,
10
- loading: false
11
- };
12
- export function bookmarksReducer(state = initialBookmarksState, action) {
13
- switch (action.type) {
14
- case fromBookmarks.LOAD_BOOKMARKS: {
15
- return Object.assign(Object.assign({}, state), { loading: true });
16
- }
17
- case fromBookmarks.LOAD_BOOKMARKS_SUCCESS:
18
- case fromBookmarks.LOAD_BOOKMARKS_FAIL: {
19
- const bookmarks = action.payload.status === 200 ? action.payload.body : [];
20
- const bookmarkEntities = generateBookmarkEntities(bookmarks);
21
- const bookmarkPageEntities = StoreUtils.groupByKeyEntities(bookmarks, 'pageNumber');
22
- return Object.assign(Object.assign({}, state), { bookmarks,
23
- bookmarkEntities,
24
- bookmarkPageEntities, loaded: true });
25
- }
26
- case fromBookmarks.CREATE_BOOKMARK_SUCCESS: {
27
- const bookmark = action.payload;
28
- const bookmarkEntities = Object.assign(Object.assign({}, state.bookmarkEntities), { [bookmark.id]: bookmark });
29
- const bookmarkArray = Object.keys(bookmarkEntities).map(key => bookmarkEntities[key]);
30
- const bookmarkPageEntities = StoreUtils.groupByKeyEntities(bookmarkArray, 'pageNumber');
31
- const editableBookmark = bookmark.id;
32
- return Object.assign(Object.assign({}, state), { bookmarkEntities,
33
- editableBookmark,
34
- bookmarkPageEntities, loading: false, loaded: true });
35
- }
36
- case fromBookmarks.MOVE_BOOKMARK_SUCCESS: {
37
- const movedBookmarks = generateBookmarkEntities(action.payload);
38
- const bookmarkEntities = Object.assign(Object.assign({}, state.bookmarkEntities), movedBookmarks);
39
- return Object.assign(Object.assign({}, state), { bookmarkEntities, loading: false, loaded: true });
40
- }
41
- case fromBookmarks.DELETE_BOOKMARK_SUCCESS: {
42
- const bookmarkIds = action.payload;
43
- const bookmarkEntities = Object.assign({}, state.bookmarkEntities);
44
- const bookmarkPageEntities = Object.assign({}, state.bookmarkPageEntities);
45
- const removeBookmarksByPage = {};
46
- bookmarkIds.forEach(bookmarkId => {
47
- if (removeBookmarksByPage[bookmarkEntities[bookmarkId].pageNumber] !== undefined &&
48
- removeBookmarksByPage[bookmarkEntities[bookmarkId].pageNumber].length > 0) {
49
- removeBookmarksByPage[bookmarkEntities[bookmarkId].pageNumber].push(bookmarkId);
50
- }
51
- else {
52
- removeBookmarksByPage[bookmarkEntities[bookmarkId].pageNumber] = [bookmarkId];
53
- }
54
- delete bookmarkEntities[bookmarkId];
55
- });
56
- Object.entries(removeBookmarksByPage).forEach(([pageNumber, bmrkIds]) => {
57
- bookmarkPageEntities[pageNumber]
58
- = bookmarkPageEntities[pageNumber].filter(bookmark => !bmrkIds.includes(bookmark.id));
59
- });
60
- return Object.assign(Object.assign({}, state), { bookmarkEntities,
61
- bookmarkPageEntities, loading: false, loaded: true });
62
- }
63
- case fromBookmarks.UPDATE_BOOKMARK_SUCCESS: {
64
- const bookmark = action.payload;
65
- const bookmarkEntities = Object.assign(Object.assign({}, state.bookmarkEntities), { [bookmark.id]: Object.assign({}, bookmark) });
66
- const bookmarkArray = Object.keys(bookmarkEntities).map(key => bookmarkEntities[key]);
67
- const bookmarkPageEntities = StoreUtils.groupByKeyEntities(bookmarkArray, 'pageNumber');
68
- const editableBookmark = undefined;
69
- return Object.assign(Object.assign({}, state), { bookmarkEntities,
70
- editableBookmark,
71
- bookmarkPageEntities, loading: false, loaded: true });
72
- }
73
- }
74
- return state;
75
- }
76
- export const getBookmarks = (state) => state.bookmarks;
77
- export const getBookmarkEnts = (state) => state.bookmarkEntities;
78
- export const getBookmarkPageEnt = (state) => state.bookmarkPageEntities;
79
- export const getEditBookmark = (state) => state.editableBookmark;
80
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm9va21hcmtzLnJlZHVjZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tZWRpYS12aWV3ZXIvc3JjL2xpYi9zdG9yZS9yZWR1Y2Vycy9ib29rbWFya3MucmVkdWNlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssYUFBYSxNQUFNLDZCQUE2QixDQUFDO0FBRTdELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM1QyxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQVdwRSxNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FBbUI7SUFDbkQsU0FBUyxFQUFFLEVBQUU7SUFDYixnQkFBZ0IsRUFBRSxFQUFFO0lBQ3BCLG9CQUFvQixFQUFFLEVBQUU7SUFDeEIsZ0JBQWdCLEVBQUUsU0FBUztJQUMzQixNQUFNLEVBQUUsS0FBSztJQUNiLE9BQU8sRUFBRSxLQUFLO0NBQ2YsQ0FBQztBQUVGLE1BQU0sVUFBVSxnQkFBZ0IsQ0FBRSxLQUFLLEdBQUcscUJBQXFCLEVBQzdCLE1BQXNDO0lBRXRFLFFBQVEsTUFBTSxDQUFDLElBQUksRUFBRTtRQUVuQixLQUFLLGFBQWEsQ0FBQyxjQUFjLENBQUMsQ0FBQztZQUNqQyx1Q0FDSyxLQUFLLEtBQ1IsT0FBTyxFQUFFLElBQUksSUFDYjtTQUNIO1FBRUQsS0FBSyxhQUFhLENBQUMsc0JBQXNCLENBQUM7UUFDMUMsS0FBSyxhQUFhLENBQUMsbUJBQW1CLENBQUMsQ0FBQztZQUN0QyxNQUFNLFNBQVMsR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQU0sS0FBSyxHQUFHLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDM0UsTUFBTSxnQkFBZ0IsR0FBRyx3QkFBd0IsQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUM3RCxNQUFN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ZSxHQUFHLENBQUMsS0FBcUIsRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLGdCQUFnQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgZnJvbUJvb2ttYXJrcyBmcm9tICcuLi9hY3Rpb25zL2Jvb2ttYXJrLmFjdGlvbnMnO1xuaW1wb3J0IHsgQm9va21hcmsgfSBmcm9tICcuLi8uLi92aWV3ZXJzL3BkZi12aWV3ZXIvc2lkZS1iYXIvYm9va21hcmtzL2Jvb2ttYXJrcy5pbnRlcmZhY2VzJztcbmltcG9ydCB7IFN0b3JlVXRpbHMgfSBmcm9tICcuLi9zdG9yZS11dGlscyc7XG5pbXBvcnQgeyBnZW5lcmF0ZUJvb2ttYXJrRW50aXRpZXMgfSBmcm9tICcuLi9ib29rbWFya3Mtc3RvcmUtdXRpbHMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEJvb2ttYXJrc1N0YXRlIHtcbiAgYm9va21hcmtzOiBCb29rbWFya1tdO1xuICBib29rbWFya0VudGl0aWVzOiB7IFtpZDogc3RyaW5nXTogQm9va21hcmsgfTtcbiAgYm9va21hcmtQYWdlRW50aXRpZXM6IHtbaWQ6IHN0cmluZ106IGFueX07XG4gIGVkaXRhYmxlQm9va21hcms6IHN0cmluZztcbiAgbG9hZGVkOiBib29sZWFuO1xuICBsb2FkaW5nOiBib29sZWFuO1xufVxuXG5leHBvcnQgY29uc3QgaW5pdGlhbEJvb2ttYXJrc1N0YXRlOiBCb29rbWFya3NTdGF0ZSA9IHtcbiAgYm9va21hcmtzOiBbXSxcbiAgYm9va21hcmtFbnRpdGllczoge30sXG4gIGJvb2ttYXJrUGFnZUVudGl0aWVzOiB7fSxcbiAgZWRpdGFibGVCb29rbWFyazogdW5kZWZpbmVkLFxuICBsb2FkZWQ6IGZhbHNlLFxuICBsb2FkaW5nOiBmYWxzZVxufTtcblxuZXhwb3J0IGZ1bmN0aW9uIGJvb2ttYXJrc1JlZHVjZXIgKHN0YXRlID0gaW5pdGlhbEJvb2ttYXJrc1N0YXRlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFjdGlvbjogZnJvbUJvb2ttYXJrcy5Cb29rbWFya3NBY3Rpb25zKTogQm9va21hcmtzU3RhdGUge1xuXG4gIHN3aXRjaCAoYWN0aW9uLnR5cGUpIHtcblxuICAgIGNhc2UgZnJvbUJvb2ttYXJrcy5MT0FEX0JPT0tNQVJLUzoge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgLi4uc3RhdGUsXG4gICAgICAgIGxvYWRpbmc6IHRydWVcbiAgICAgIH07XG4gICAgfVxuXG4gICAgY2FzZSBmcm9tQm9va21hcmtzLkxPQURfQk9PS01BUktTX1NVQ0NFU1M6XG4gICAgY2FzZSBmcm9tQm9va21hcmtzLkxPQURfQk9PS01BUktTX0ZBSUw6IHtcbiAgICAgIGNvbnN0IGJvb2ttYXJrcyA9IGFjdGlvbi5wYXlsb2FkLnN0YXR1cyA9PT0gMjAwID8gYWN0aW9uLnBheWxvYWQuYm9keSA6IFtdO1xuICAgICAgY29uc3QgYm9va21hcmtFbnRpdGllcyA9IGdlbmVyYXRlQm9va21hcmtFbnRpdGllcyhib29rbWFya3MpO1xuICAgICAgY29uc3QgYm9va21hcmtQYWdlRW50aXRpZXMgPSBTdG9yZVV0aWxzLmdyb3VwQnlLZXlFbnRpdGllcyhib29rbWFya3MsICdwYWdlTnVtYmVyJyk7XG5cbiAgICAgIHJldHVybiB7XG4gICAgICAgIC4uLnN0YXRlLFxuICAgICAgICBib29rbWFya3MsXG4gICAgICAgIGJvb2ttYXJrRW50aXRpZXMsXG4gICAgICAgIGJvb2ttYXJrUGFnZUVudGl0aWVzLFxuICAgICAgICBsb2FkZWQ6IHRydWVcbiAgICAgIH07XG4gICAgfVxuXG4gICAgY2FzZSBmcm9tQm9va21hcmtzLkNSRUFURV9CT09LTUFSS19TVUNDRVNTOiB7XG4gICAgICBjb25zdCBib29rbWFyazogQm9va21hcmsgPSBhY3Rpb24ucGF5bG9hZDtcbiAgICAgIGNvbnN0IGJvb2ttYXJrRW50aXRpZXMgPSB7XG4gICAgICAgIC4uLnN0YXRlLmJvb2ttYXJrRW50aXRpZXMsXG4gICAgICAgIFtib29rbWFyay5pZF06IGJvb2ttYXJrLFxuICAgICAgfTtcbiAgICAgIGNvbnN0IGJvb2ttYXJrQXJyYXkgPSBPYmplY3Qua2V5cyhib29rbWFya0VudGl0aWVzKS5tYXAoa2V5ID0+IGJvb2ttYXJrRW50aXRpZXNba2V5XSk7XG4gICAgICBjb25zdCBib29rbWFya1BhZ2VFbnRpdGllcyA9IFN0b3JlVXRpbHMuZ3JvdXBCeUtleUVudGl0aWVzKGJvb2ttYXJrQXJyYXksICdwYWdlTnVtYmVyJyk7XG4gICAgICBjb25zdCBlZGl0YWJsZUJvb2ttYXJrID0gYm9va21hcmsuaWQ7XG4gICAgICByZXR1cm4ge1xuICAgICAgICAuLi5zdGF0ZSxcbiAgICAgICAgYm9va21hcmtFbnRpdGllcyxcbiAgICAgICAgZWRpdGFibGVCb29rbWFyayxcbiAgICAgICAgYm9va21hcmtQYWdlRW50aXRpZXMsXG4gICAgICAgIGxvYWRpbmc6IGZhbHNlLFxuICAgICAgICBsb2FkZWQ6IHRydWVcbiAgICAgIH07XG4gICAgfVxuXG4gICAgY2FzZSBmcm9tQm9va21hcmtzLk1PVkVfQk9PS01BUktfU1VDQ0VTUzoge1xuICAgICAgY29uc3QgbW92ZWRCb29rbWFya3MgPSBnZW5lcmF0ZUJvb2ttYXJrRW50aXRpZXMoYWN0aW9uLnBheWxvYWQpO1xuICAgICAgY29uc3QgYm9va21hcmtFbnRpdGllcyA9IHtcbiAgICAgICAgLi4uc3RhdGUuYm9va21hcmtFbnRpdGllcyxcbiAgICAgICAgLi4ubW92ZWRCb29rbWFya3NcbiAgICAgIH07XG4gICAgICByZXR1cm4ge1xuICAgICAgICAuLi5zdGF0ZSxcbiAgICAgICAgYm9va21hcmtFbnRpdGllcyxcbiAgICAgICAgbG9hZGluZzogZmFsc2UsXG4gICAgICAgIGxvYWRlZDogdHJ1ZVxuICAgICAgfTtcbiAgICB9XG5cbiAgICBjYXNlIGZyb21Cb29rbWFya3MuREVMRVRFX0JPT0tNQVJLX1NVQ0NFU1M6IHtcbiAgICAgIGNvbnN0IGJvb2ttYXJrSWRzOiBzdHJpbmdbXSA9IGFjdGlvbi5wYXlsb2FkO1xuICAgICAgY29uc3QgYm9va21hcmtFbnRpdGllcyA9IHsgLi4uc3RhdGUuYm9va21hcmtFbnRpdGllcyB9O1xuICAgICAgY29uc3QgYm9va21hcmtQYWdlRW50aXRpZXMgPSB7IC4uLnN0YXRlLmJvb2ttYXJrUGFnZUVudGl0aWVzIH07XG4gICAgICBjb25zdCByZW1vdmVCb29rbWFya3NCeVBhZ2U6IHtbcGFnZU51bWJlcjogbnVtYmVyXTogc3RyaW5nW119ID0ge307XG4gICAgICBib29rbWFya0lkcy5mb3JFYWNoKGJvb2ttYXJrSWQgPT4ge1xuICAgICAgICBpZiAocmVtb3ZlQm9va21hcmtzQnlQYWdlW2Jvb2ttYXJrRW50aXRpZXNbYm9va21hcmtJZF0ucGFnZU51bWJlcl0gIT09IHVuZGVmaW5lZCAmJlxuICAgICAgICAgIHJlbW92ZUJvb2ttYXJrc0J5UGFnZVtib29rbWFya0VudGl0aWVzW2Jvb2ttYXJrSWRdLnBhZ2VOdW1iZXJdLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICByZW1vdmVCb29rbWFya3NCeVBhZ2VbYm9va21hcmtFbnRpdGllc1tib29rbWFya0lkXS5wYWdlTnVtYmVyXS5wdXNoKGJvb2ttYXJrSWQpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHJlbW92ZUJvb2ttYXJrc0J5UGFnZVtib29rbWFya0VudGl0aWVzW2Jvb2ttYXJrSWRdLnBhZ2VOdW1iZXJdID0gW2Jvb2ttYXJrSWRdO1xuICAgICAgICB9XG4gICAgICAgIGRlbGV0ZSBib29rbWFya0VudGl0aWVzW2Jvb2ttYXJrSWRdO1xuICAgICAgfSk7XG5cbiAgICAgIE9iamVjdC5lbnRyaWVzKHJlbW92ZUJvb2ttYXJrc0J5UGFnZSkuZm9yRWFjaChcbiAgICAgICAgKFtwYWdlTnVtYmVyLCBibXJrSWRzXSkgPT4ge1xuICAgICAgICAgIGJvb2ttYXJrUGFnZUVudGl0aWVzW3BhZ2VOdW1iZXJdXG4gICAgICAgICAgPSBib29rbWFya1BhZ2VFbnRpdGllc1twYWdlTnVtYmVyXS5maWx0ZXIoYm9va21hcmsgPT4gIWJtcmtJZHMuaW5jbHVkZXMoYm9va21hcmsuaWQpKTtcbiAgICAgICAgfVxuICAgICAgKTtcblxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgLi4uc3RhdGUsXG4gICAgICAgIGJvb2ttYXJrRW50aXRpZXMsXG4gICAgICAgIGJvb2ttYXJrUGFnZUVudGl0aWVzLFxuICAgICAgICBsb2FkaW5nOiBmYWxzZSxcbiAgICAgICAgbG9hZGVkOiB0cnVlXG4gICAgICB9O1xuICAgIH1cblxuICAgIGNhc2UgZnJvbUJvb2ttYXJrcy5VUERBVEVfQk9PS01BUktfU1VDQ0VTUzoge1xuICAgICAgY29uc3QgYm9va21hcms6IEJvb2ttYXJrID0gYWN0aW9uLnBheWxvYWQ7XG4gICAgICBjb25zdCBib29rbWFya0VudGl0aWVzID0ge1xuICAgICAgICAuLi5zdGF0ZS5ib29rbWFya0VudGl0aWVzLFxuICAgICAgICBbYm9va21hcmsuaWRdOiB7IC4uLmJvb2ttYXJrIH1cbiAgICAgIH07XG4gICAgICBjb25zdCBib29rbWFya0FycmF5ID0gT2JqZWN0LmtleXMoYm9va21hcmtFbnRpdGllcykubWFwKGtleSA9PiBib29rbWFya0VudGl0aWVzW2tleV0pO1xuICAgICAgY29uc3QgYm9va21hcmtQYWdlRW50aXRpZXMgPSBTdG9yZVV0aWxzLmdyb3VwQnlLZXlFbnRpdGllcyhib29rbWFya0FycmF5LCAncGFnZU51bWJlcicpO1xuICAgICAgY29uc3QgZWRpdGFibGVCb29rbWFyayA9IHVuZGVmaW5lZDtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIC4uLnN0YXRlLFxuICAgICAgICBib29rbWFya0VudGl0aWVzLFxuICAgICAgICBlZGl0YWJsZUJvb2ttYXJrLFxuICAgICAgICBib29rbWFya1BhZ2VFbnRpdGllcyxcbiAgICAgICAgbG9hZGluZzogZmFsc2UsXG4gICAgICAgIGxvYWRlZDogdHJ1ZVxuICAgICAgfTtcbiAgICB9XG4gIH1cbiAgcmV0dXJuIHN0YXRlO1xufVxuXG5leHBvcnQgY29uc3QgZ2V0Qm9va21hcmtzID0gKHN0YXRlOiBCb29rbWFya3NTdGF0ZSkgPT4gc3RhdGUuYm9va21hcmtzO1xuZXhwb3J0IGNvbnN0IGdldEJvb2ttYXJrRW50cyA9IChzdGF0ZTogQm9va21hcmtzU3RhdGUpID0+IHN0YXRlLmJvb2ttYXJrRW50aXRpZXM7XG5leHBvcnQgY29uc3QgZ2V0Qm9va21hcmtQYWdlRW50ID0gKHN0YXRlOiBCb29rbWFya3NTdGF0ZSkgPT4gc3RhdGUuYm9va21hcmtQYWdlRW50aXRpZXM7XG5leHBvcnQgY29uc3QgZ2V0RWRpdEJvb2ttYXJrID0gKHN0YXRlOiBCb29rbWFya3NTdGF0ZSkgPT4gc3RhdGUuZWRpdGFibGVCb29rbWFyaztcbiJdfQ==
@@ -1,100 +0,0 @@
1
- import * as fromActions from '../actions/document.actions';
2
- export const initialDocumentState = {
3
- convertedDocument: undefined,
4
- documentId: undefined,
5
- pdfPosition: undefined,
6
- pages: {},
7
- hasDifferentPageSize: false,
8
- rotation: undefined,
9
- rotationLoaded: false,
10
- loading: false,
11
- loaded: false
12
- };
13
- export function docReducer(state = initialDocumentState, action) {
14
- switch (action.type) {
15
- case fromActions.CONVERT_SUCCESS: {
16
- const convertedDocument = {
17
- url: action.payload,
18
- error: undefined
19
- };
20
- return Object.assign(Object.assign({}, state), { convertedDocument });
21
- }
22
- case fromActions.CONVERT_FAIL: {
23
- const convertedDocument = {
24
- url: undefined,
25
- error: action.payload
26
- };
27
- return Object.assign(Object.assign({}, state), { convertedDocument });
28
- }
29
- case fromActions.CLEAR_CONVERT_DOC_URL: {
30
- const convertedDocument = undefined;
31
- return Object.assign(Object.assign({}, state), { convertedDocument });
32
- }
33
- case fromActions.LOAD_ROTATION: {
34
- return Object.assign(Object.assign({}, state), { rotationLoaded: false });
35
- }
36
- case fromActions.LOAD_ROTATION_SUCCESS: {
37
- const metadata = action.payload;
38
- const rotation = metadata ? metadata.rotationAngle : 0;
39
- return Object.assign(Object.assign({}, state), { rotation, rotationLoaded: true });
40
- }
41
- case fromActions.LOAD_ROTATION_FAIL: {
42
- return Object.assign(Object.assign({}, state), { rotation: 0, rotationLoaded: true });
43
- }
44
- case fromActions.SAVE_ROTATION_SUCCESS: {
45
- const metadata = action.payload;
46
- const rotation = metadata.rotationAngle;
47
- return Object.assign(Object.assign({}, state), { rotation });
48
- }
49
- case fromActions.SET_DOCUMENT_ID: {
50
- return Object.assign(Object.assign({}, state), { documentId: action.payload });
51
- }
52
- case fromActions.ADD_PAGES: {
53
- const payload = action.payload;
54
- let pages = {};
55
- let pageHeight;
56
- let pageWidth;
57
- let hasDifferentPageSize = state.hasDifferentPageSize;
58
- payload.forEach(page => {
59
- if (!hasDifferentPageSize && pageHeight && pageWidth &&
60
- (pageHeight !== page.div['scrollHeight'] || pageWidth !== page.div['scrollWidth'])) {
61
- hasDifferentPageSize = true;
62
- }
63
- else {
64
- pageHeight = page.div['scrollHeight'];
65
- pageWidth = page.div['scrollWidth'];
66
- }
67
- const styles = {
68
- left: page.div['offsetLeft'],
69
- height: page.div['scrollHeight'],
70
- width: page.div['scrollWidth']
71
- };
72
- const scaleRotation = {
73
- scale: page.scale,
74
- rotation: page.rotation
75
- };
76
- const p = {
77
- styles,
78
- scaleRotation,
79
- viewportScale: page.viewportScale
80
- };
81
- pages = Object.assign(Object.assign({}, pages), { [page.id]: p });
82
- });
83
- return Object.assign(Object.assign({}, state), { pages,
84
- hasDifferentPageSize });
85
- }
86
- case fromActions.POSITION_UPDATED: {
87
- const pdfPosition = action.payload;
88
- return Object.assign(Object.assign({}, state), { pdfPosition });
89
- }
90
- }
91
- return state;
92
- }
93
- export const getDocPages = (state) => state.pages;
94
- export const getDocId = (state) => state.documentId;
95
- export const getPdfPos = (state) => state.pdfPosition;
96
- export const getHasDifferentPageSizes = (state) => state.hasDifferentPageSize;
97
- export const getRotation = (state) => state.rotation;
98
- export const rotationLoaded = (state) => state.rotationLoaded;
99
- export const getConvertedDocument = (state) => state.convertedDocument;
100
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQucmVkdWNlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21lZGlhLXZpZXdlci9zcmMvbGliL3N0b3JlL3JlZHVjZXJzL2RvY3VtZW50LnJlZHVjZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLFdBQVcsTUFBTSw2QkFBNkIsQ0FBQztBQWdDM0QsTUFBTSxDQUFDLE1BQU0sb0JBQW9CLEdBQWtCO0lBQ2pELGlCQUFpQixFQUFFLFNBQVM7SUFDNUIsVUFBVSxFQUFFLFNBQVM7SUFDckIsV0FBVyxFQUFFLFNBQVM7SUFDdEIsS0FBSyxFQUFFLEVBQUU7SUFDVCxvQkFBb0IsRUFBRSxLQUFLO0lBQzNCLFFBQVEsRUFBRSxTQUFTO0lBQ25CLGNBQWMsRUFBRSxLQUFLO0lBQ3JCLE9BQU8sRUFBRSxLQUFLO0lBQ2QsTUFBTSxFQUFFLEtBQUs7Q0FDZCxDQUFDO0FBRUYsTUFBTSxVQUFVLFVBQVUsQ0FBRSxLQUFLLEdBQUcsb0JBQW9CLEVBQzVCLE1BQW1DO0lBRTdELFFBQVEsTUFBTSxDQUFDLElBQUksRUFBRTtRQUVuQixLQUFLLFdBQVcsQ0FBQyxlQUFlLENBQUMsQ0FBQztZQUNoQyxNQUFNLGlCQUFpQixHQUFHO2dCQUN4QixHQUFHLEVBQUUsTUFBTSxDQUFDLE9BQU87Z0JBQ25CLEtBQUssRUFBRSxTQUFTO2FBQ2pCLENBQUM7WUFDRix1Q0FDSyxLQUFLLEtBQ1IsaUJBQWlCLElBQ2pCO1NBQ0g7UUFFRCxLQUFLLFdBQVcsQ0FBQyxZQUFZLENBQUMsQ0FBQztZQUM3QixNQUFNLGlCQUFpQixHQUFHO2dCQUN4QixHQUFHLEVBQUUsU0FBUztnQkFDZCxLQUFLLEVBQUUsTUFBTSxDQUFDLE9BQU87YUFDdEIsQ0FBQztZQUNGLHVDQUNLLEtBQUssS0FDUixpQkFBaUIsSUFDakI7U0FDSDtRQUVELEtBQUssV0FBVyxDQUFDLHFCQUFxQixDQUFDLENBQUM7WUFD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LE1BQU0sV0FBVyxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUM7WUFDbkMsdUNBQ0ssS0FBSyxLQUNSLFdBQVcsSUFDWDtTQUNIO0tBQ0Y7SUFDRCxPQUFPLEtBQUssQ0FBQztBQUNmLENBQUM7QUFDRCxNQUFNLENBQUMsTUFBTSxXQUFXLEdBQUcsQ0FBQyxLQUFvQixFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDO0FBQ2pFLE1BQU0sQ0FBQyxNQUFNLFFBQVEsR0FBRyxDQUFDLEtBQW9CLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUM7QUFDbkUsTUFBTSxDQUFDLE1BQU0sU0FBUyxHQUFHLENBQUMsS0FBb0IsRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQztBQUNyRSxNQUFNLENBQUMsTUFBTSx3QkFBd0IsR0FBRyxDQUFDLEtBQW9CLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxvQkFBb0IsQ0FBQztBQUM3RixNQUFNLENBQUMsTUFBTSxXQUFXLEdBQUcsQ0FBQyxLQUFvQixFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDO0FBQ3BFLE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBRyxDQUFDLEtBQW9CLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxjQUFjLENBQUM7QUFDN0UsTUFBTSxDQUFDLE1BQU0sb0JBQW9CLEdBQUcsQ0FBQyxLQUFvQixFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsaUJBQWlCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBmcm9tQWN0aW9ucyBmcm9tICcuLi9hY3Rpb25zL2RvY3VtZW50LmFjdGlvbnMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIERvY3VtZW50U3RhdGUge1xuICBjb252ZXJ0ZWREb2N1bWVudDoge1xuICAgIHVybDogc3RyaW5nO1xuICAgIGVycm9yOiBzdHJpbmc7XG4gIH07XG4gIGRvY3VtZW50SWQ6IHN0cmluZztcbiAgcGRmUG9zaXRpb246IFBkZlBvc2l0aW9uO1xuICBwYWdlczoge1tpZDogc3RyaW5nXTogRG9jdW1lbnRQYWdlc307XG4gIGhhc0RpZmZlcmVudFBhZ2VTaXplOiBib29sZWFuO1xuICByb3RhdGlvbjogbnVtYmVyO1xuICByb3RhdGlvbkxvYWRlZDogYm9vbGVhbjtcbiAgbG9hZGVkOiBib29sZWFuO1xuICBsb2FkaW5nOiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIERvY3VtZW50UGFnZXMge1xuIG51bWJlck9mUGFnZXM6IG51bWJlcjtcbiBzdHlsZXM6IHsgbGVmdDogbnVtYmVyLCBoZWlnaHQ6IG51bWJlciwgd2lkdGg6IG51bWJlciB9O1xuIHNjYWxlUm90YXRpb246IHsgc2NhbGU6IHN0cmluZzsgcm90YXRpb246IHN0cmluZyB9O1xuIHZpZXdwb3J0U2NhbGU6IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQZGZQb3NpdGlvbiB7XG4gIHBhZ2VOdW1iZXI6IG51bWJlcjtcbiAgc2NhbGU6IG51bWJlcjtcbiAgdG9wOiBudW1iZXI7XG4gIGxlZnQ6IG51bWJlcjtcbiAgcm90YXRpb246IG51bWJlcjtcbn1cblxuZXhwb3J0IGNvbnN0IGluaXRpYWxEb2N1bWVudFN0YXRlOiBEb2N1bWVudFN0YXRlID0ge1xuICBjb252ZXJ0ZWREb2N1bWVudDogdW5kZWZpbmVkLFxuICBkb2N1bWVudElkOiB1bmRlZmluZWQsXG4gIHBkZlBvc2l0aW9uOiB1bmRlZmluZWQsXG4gIHBhZ2VzOiB7fSxcbiAgaGFzRGlmZmVyZW50UGFnZVNpemU6IGZhbHNlLFxuICByb3RhdGlvbjogdW5kZWZpbmVkLFxuICByb3RhdGlvbkxvYWRlZDogZmFsc2UsXG4gIGxvYWRpbmc6IGZhbHNlLFxuICBsb2FkZWQ6IGZhbHNlXG59O1xuXG5leHBvcnQgZnVuY3Rpb24gZG9jUmVkdWNlciAoc3RhdGUgPSBpbml0aWFsRG9jdW1lbnRTdGF0ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhY3Rpb246IGZyb21BY3Rpb25zLkRvY3VtZW50QWN0aW9ucyk6IERvY3VtZW50U3RhdGUge1xuXG4gIHN3aXRjaCAoYWN0aW9uLnR5cGUpIHtcblxuICAgIGNhc2UgZnJvbUFjdGlvbnMuQ09OVkVSVF9TVUNDRVNTOiB7XG4gICAgICBjb25zdCBjb252ZXJ0ZWREb2N1bWVudCA9IHtcbiAgICAgICAgdXJsOiBhY3Rpb24ucGF5bG9hZCxcbiAgICAgICAgZXJyb3I6IHVuZGVmaW5lZFxuICAgICAgfTtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIC4uLnN0YXRlLFxuICAgICAgICBjb252ZXJ0ZWREb2N1bWVudFxuICAgICAgfTtcbiAgICB9XG5cbiAgICBjYXNlIGZyb21BY3Rpb25zLkNPTlZFUlRfRkFJTDoge1xuICAgICAgY29uc3QgY29udmVydGVkRG9jdW1lbnQgPSB7XG4gICAgICAgIHVybDogdW5kZWZpbmVkLFxuICAgICAgICBlcnJvcjogYWN0aW9uLnBheWxvYWRcbiAgICAgIH07XG4gICAgICByZXR1cm4ge1xuICAgICAgICAuLi5zdGF0ZSxcbiAgICAgICAgY29udmVydGVkRG9jdW1lbnRcbiAgICAgIH07XG4gICAgfVxuXG4gICAgY2FzZSBmcm9tQWN0aW9ucy5DTEVBUl9DT05WRVJUX0RPQ19VUkw6IHtcbiAgICAgIGNvbnN0IGNvbnZlcnRlZERvY3VtZW50ID0gdW5kZWZpbmVkO1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgLi4uc3RhdGUsXG4gICAgICAgIGNvbnZlcnRlZERvY3VtZW50XG4gICAgICB9O1xuICAgIH1cblxuICAgIGNhc2UgZnJvbUFjdGlvbnMuTE9BRF9ST1RBVElPTjoge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgLi4uc3RhdGUsXG4gICAgICAgIHJvdGF0aW9uTG9hZGVkOiBmYWxzZVxuICAgICAgfTtcbiAgICB9XG5cbiAgICBjYXNlIGZyb21BY3Rpb25zLkxPQURfUk9UQVRJT05fU1VDQ0VTUzoge1xuICAgICAgY29uc3QgbWV0YWRhdGEgPSBhY3Rpb24ucGF5bG9hZDtcbiAgICAgIGNvbnN0IHJvdGF0aW9uID0gbWV0YWRhdGEgPyBtZXRhZGF0YS5yb3RhdGlvbkFuZ2xlIDogMDtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIC4uLnN0YXRlLFxuICAgICAgICByb3RhdGlvbixcbiAgICAgICAgcm90YXRpb25Mb2FkZWQ6IHRydWVcbiAgICAgIH07XG4gICAgfVxuXG4gICAgY2FzZSBmcm9tQWN0aW9ucy5MT0FEX1JPVEFUSU9OX0ZBSUw6IHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIC4uLnN0YXRlLFxuICAgICAgICByb3RhdGlvbjogMCxcbiAgICAgICAgcm90YXRpb25Mb2FkZWQ6IHRydWVcbiAgICAgIH07XG4gICAgfVxuXG4gICAgY2FzZSBmcm9tQWN0aW9ucy5TQVZFX1JPVEFUSU9OX1NVQ0NFU1M6IHtcbiAgICAgIGNvbnN0IG1ldGFkYXRhID0gYWN0aW9uLnBheWxvYWQ7XG4gICAgICBjb25zdCByb3RhdGlvbiA9IG1ldGFkYXRhLnJvdGF0aW9uQW5nbGU7XG4gICAgICByZXR1cm4ge1xuICAgICAgICAuLi5zdGF0ZSxcbiAgICAgICAgcm90YXRpb25cbiAgICAgIH07XG4gICAgfVxuXG4gICAgY2FzZSBmcm9tQWN0aW9ucy5TRVRfRE9DVU1FTlRfSUQgOiB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICAuLi5zdGF0ZSxcbiAgICAgICAgZG9jdW1lbnRJZDogYWN0aW9uLnBheWxvYWRcbiAgICAgIH07XG4gICAgfVxuXG4gICAgY2FzZSBmcm9tQWN0aW9ucy5BRERfUEFHRVM6IHtcbiAgICAgIGNvbnN0IHBheWxvYWQgPSBhY3Rpb24ucGF5bG9hZDtcbiAgICAgIGxldCBwYWdlcyA9IHt9O1xuICAgICAgbGV0IHBhZ2VIZWlnaHQ7XG4gICAgICBsZXQgcGFnZVdpZHRoO1xuICAgICAgbGV0IGhhc0RpZmZlcmVudFBhZ2VTaXplID0gc3RhdGUuaGFzRGlmZmVyZW50UGFnZVNpemU7XG4gICAgICBwYXlsb2FkLmZvckVhY2gocGFnZSA9PiB7XG4gICAgICAgIGlmICghaGFzRGlmZmVyZW50UGFnZVNpemUgJiYgcGFnZUhlaWdodCAmJiBwYWdlV2lkdGggJiZcbiAgICAgICAgICAocGFnZUhlaWdodCAhPT0gcGFnZS5kaXZbJ3Njcm9sbEhlaWdodCddIHx8IHBhZ2VXaWR0aCAhPT0gcGFnZS5kaXZbJ3Njcm9sbFdpZHRoJ10pKSB7XG4gICAgICAgICAgICBoYXNEaWZmZXJlbnRQYWdlU2l6ZSA9IHRydWU7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgcGFnZUhlaWdodCA9IHBhZ2UuZGl2WydzY3JvbGxIZWlnaHQnXTtcbiAgICAgICAgICBwYWdlV2lkdGggPSBwYWdlLmRpdlsnc2Nyb2xsV2lkdGgnXTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBzdHlsZXMgPSB7XG4gICAgICAgICAgbGVmdDogcGFnZS5kaXZbJ29mZnNldExlZnQnXSxcbiAgICAgICAgICBoZWlnaHQ6IHBhZ2UuZGl2WydzY3JvbGxIZWlnaHQnXSxcbiAgICAgICAgICB3aWR0aDogcGFnZS5kaXZbJ3Njcm9sbFdpZHRoJ11cbiAgICAgICAgfTtcblxuICAgICAgICBjb25zdCBzY2FsZVJvdGF0aW9uID0ge1xuICAgICAgICAgIHNjYWxlOiBwYWdlLnNjYWxlLFxuICAgICAgICAgIHJvdGF0aW9uOiBwYWdlLnJvdGF0aW9uXG4gICAgICAgIH07XG5cbiAgICAgICAgY29uc3QgcCA9IHtcbiAgICAgICAgICBzdHlsZXMsXG4gICAgICAgICAgc2NhbGVSb3RhdGlvbixcbiAgICAgICAgICB2aWV3cG9ydFNjYWxlOiBwYWdlLnZpZXdwb3J0U2NhbGVcbiAgICAgICAgfTtcblxuICAgICAgICBwYWdlcyA9IHtcbiAgICAgICAgICAuLi5wYWdlcyxcbiAgICAgICAgICBbcGFnZS5pZF06IHBcbiAgICAgICAgfTtcblxuICAgICAgfSk7XG4gICAgICByZXR1cm4ge1xuICAgICAgICAuLi5zdGF0ZSxcbiAgICAgICAgcGFnZXMsXG4gICAgICAgIGhhc0RpZmZlcmVudFBhZ2VTaXplXG4gICAgICB9O1xuICAgIH1cblxuICAgIGNhc2UgZnJvbUFjdGlvbnMuUE9TSVRJT05fVVBEQVRFRDoge1xuICAgICAgY29uc3QgcGRmUG9zaXRpb24gPSBhY3Rpb24ucGF5bG9hZDtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIC4uLnN0YXRlLFxuICAgICAgICBwZGZQb3NpdGlvblxuICAgICAgfTtcbiAgICB9XG4gIH1cbiAgcmV0dXJuIHN0YXRlO1xufVxuZXhwb3J0IGNvbnN0IGdldERvY1BhZ2VzID0gKHN0YXRlOiBEb2N1bWVudFN0YXRlKSA9PiBzdGF0ZS5wYWdlcztcbmV4cG9ydCBjb25zdCBnZXREb2NJZCA9IChzdGF0ZTogRG9jdW1lbnRTdGF0ZSkgPT4gc3RhdGUuZG9jdW1lbnRJZDtcbmV4cG9ydCBjb25zdCBnZXRQZGZQb3MgPSAoc3RhdGU6IERvY3VtZW50U3RhdGUpID0+IHN0YXRlLnBkZlBvc2l0aW9uO1xuZXhwb3J0IGNvbnN0IGdldEhhc0RpZmZlcmVudFBhZ2VTaXplcyA9IChzdGF0ZTogRG9jdW1lbnRTdGF0ZSkgPT4gc3RhdGUuaGFzRGlmZmVyZW50UGFnZVNpemU7XG5leHBvcnQgY29uc3QgZ2V0Um90YXRpb24gPSAoc3RhdGU6IERvY3VtZW50U3RhdGUpID0+IHN0YXRlLnJvdGF0aW9uO1xuZXhwb3J0IGNvbnN0IHJvdGF0aW9uTG9hZGVkID0gKHN0YXRlOiBEb2N1bWVudFN0YXRlKSA9PiBzdGF0ZS5yb3RhdGlvbkxvYWRlZDtcbmV4cG9ydCBjb25zdCBnZXRDb252ZXJ0ZWREb2N1bWVudCA9IChzdGF0ZTogRG9jdW1lbnRTdGF0ZSkgPT4gc3RhdGUuY29udmVydGVkRG9jdW1lbnQ7XG4iXX0=
@@ -1,40 +0,0 @@
1
- import * as fromIcpActions from '../actions/icp.actions';
2
- export const initialIcpSessionState = {
3
- session: null,
4
- presenter: null,
5
- client: null,
6
- participants: []
7
- };
8
- export function icpReducer(state = initialIcpSessionState, action) {
9
- switch (action.type) {
10
- case fromIcpActions.SET_CASE_ID: {
11
- const caseId = action.payload;
12
- const session = Object.assign(Object.assign({}, state.session), { caseId });
13
- return Object.assign(Object.assign({}, state), { session });
14
- }
15
- case fromIcpActions.ICP_SOCKET_SESSION_JOINED: {
16
- const session = action.payload.session;
17
- const participantInfo = action.payload.participantInfo;
18
- return Object.assign(Object.assign({}, state), { session, client: participantInfo.client, presenter: participantInfo.presenter });
19
- }
20
- case fromIcpActions.ICP_PARTICIPANT_LIST_UPDATED: {
21
- const updatedParticipants = action.payload;
22
- const participants = Object.keys(updatedParticipants)
23
- .map(id => ({ id: id, username: updatedParticipants[id] }));
24
- return Object.assign(Object.assign({}, state), { participants });
25
- }
26
- case fromIcpActions.ICP_PRESENTER_UPDATED: {
27
- const presenter = action.payload;
28
- return Object.assign(Object.assign({}, state), { presenter });
29
- }
30
- case fromIcpActions.LEAVE_ICP_SOCKET_SESSION: {
31
- return Object.assign(Object.assign({}, state), initialIcpSessionState);
32
- }
33
- }
34
- return state;
35
- }
36
- export const getIcpSession = (state) => state.session;
37
- export const getPresenter = (state) => state.presenter;
38
- export const getClient = (state) => state.client;
39
- export const getParticipants = (state) => state.participants;
40
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNwLnJlZHVjZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tZWRpYS12aWV3ZXIvc3JjL2xpYi9zdG9yZS9yZWR1Y2Vycy9pY3AucmVkdWNlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssY0FBYyxNQUFNLHdCQUF3QixDQUFDO0FBR3pELE1BQU0sQ0FBQyxNQUFNLHNCQUFzQixHQUFhO0lBQzlDLE9BQU8sRUFBRSxJQUFJO0lBQ2IsU0FBUyxFQUFFLElBQUk7SUFDZixNQUFNLEVBQUUsSUFBSTtJQUNaLFlBQVksRUFBRSxFQUFFO0NBQ2pCLENBQUM7QUFFRixNQUFNLFVBQVUsVUFBVSxDQUFFLEtBQUssR0FBRyxzQkFBc0IsRUFDeEIsTUFBaUM7SUFFakUsUUFBUSxNQUFNLENBQUMsSUFBSSxFQUFFO1FBRW5CLEtBQUssY0FBYyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1lBQy9CLE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUM7WUFDOUIsTUFBTSxPQUFPLG1DQUFPLEtBQUssQ0FBQyxPQUFPLEtBQUUsTUFBTSxHQUFDLENBQUM7WUFDM0MsdUNBQ0ssS0FBSyxLQUNSLE9BQU8sSUFDUDtTQUNIO1FBRUQsS0FBSyxjQUFjLENBQUMseUJBQXlCLENBQUMsQ0FBQztZQUM3QyxNQUFNLE9BQU8sR0FBZSxNQUFNLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQztZQUNuRCxNQUFNLGVBQWUsR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLGVBQWUsQ0FBQztZQUN2RCx1Q0FDSyxLQUFLLEtBQ1IsT0FBTyxFQUNQLE1BQU0sRUFBRSxlQUFlLENBQUMsTUFBTSxFQUM5QixTQUFTLEVBQUUsZUFBZSxDQUFDLFNBQVMsSUFDcEM7U0FDSDtRQUVELEtBQUssY0FBYyxDQUFDLDRCQUE0QixDQUFDLENBQUM7WUFDaEQsTUFBTSxtQkFBbUIsR0FBUSxNQUFNLENBQUMsT0FBTyxDQUFDO1lBQ2hELE1BQU0sWUFBWSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsbUJBQW1CLENBQUM7aUJBQ2xELEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLFFBQVEsRUFBRSxtQkFBbUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUM5RCx1Q0FDSyxLQUFLLEtBQ1IsWUFBWSxJQUNaO1NBQ0g7UUFFRCxLQUFLLGNBQWMsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO1lBQ3pDLE1BQU0sU0FBUyxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUM7WUFDakMsdUNBQ0ssS0FBSyxLQUFFLFNBQVMsSUFDbkI7U0FDSDtRQUVELEtBQUssY0FBYyxDQUFDLHdCQUF3QixDQUFDLENBQUM7WUFDNUMsdUNBQ0ssS0FBSyxHQUNMLHNCQUFzQixFQUN6QjtTQUNIO0tBQ0Y7SUFDRCxPQUFPLEtBQUssQ0FBQztBQUNmLENBQUM7QUFFRCxNQUFNLENBQUMsTUFBTSxhQUFhLEdBQUcsQ0FBQyxLQUFlLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUM7QUFDaEUsTUFBTSxDQUFDLE1BQU0sWUFBWSxHQUFHLENBQUMsS0FBZSxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDO0FBQ2pFLE1BQU0sQ0FBQyxNQUFNLFNBQVMsR0FBRyxDQUFDLEtBQWUsRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQztBQUMzRCxNQUFNLENBQUMsTUFBTSxlQUFlLEdBQUcsQ0FBQyxLQUFlLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBmcm9tSWNwQWN0aW9ucyBmcm9tICcuLi9hY3Rpb25zL2ljcC5hY3Rpb25zJztcbmltcG9ydCB7IEljcFNlc3Npb24sIEljcFN0YXRlIH0gZnJvbSAnLi4vLi4vaWNwL2ljcC5pbnRlcmZhY2VzJztcblxuZXhwb3J0IGNvbnN0IGluaXRpYWxJY3BTZXNzaW9uU3RhdGU6IEljcFN0YXRlID0ge1xuICBzZXNzaW9uOiBudWxsLFxuICBwcmVzZW50ZXI6IG51bGwsXG4gIGNsaWVudDogbnVsbCxcbiAgcGFydGljaXBhbnRzOiBbXVxufTtcblxuZXhwb3J0IGZ1bmN0aW9uIGljcFJlZHVjZXIgKHN0YXRlID0gaW5pdGlhbEljcFNlc3Npb25TdGF0ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhY3Rpb246IGZyb21JY3BBY3Rpb25zLkljcEFjdGlvbnMpOiBJY3BTdGF0ZSB7XG5cbiAgc3dpdGNoIChhY3Rpb24udHlwZSkge1xuXG4gICAgY2FzZSBmcm9tSWNwQWN0aW9ucy5TRVRfQ0FTRV9JRDoge1xuICAgICAgY29uc3QgY2FzZUlkID0gYWN0aW9uLnBheWxvYWQ7XG4gICAgICBjb25zdCBzZXNzaW9uID0gey4uLnN0YXRlLnNlc3Npb24sIGNhc2VJZH07XG4gICAgICByZXR1cm4ge1xuICAgICAgICAuLi5zdGF0ZSxcbiAgICAgICAgc2Vzc2lvblxuICAgICAgfTtcbiAgICB9XG5cbiAgICBjYXNlIGZyb21JY3BBY3Rpb25zLklDUF9TT0NLRVRfU0VTU0lPTl9KT0lORUQ6IHtcbiAgICAgIGNvbnN0IHNlc3Npb246IEljcFNlc3Npb24gPSBhY3Rpb24ucGF5bG9hZC5zZXNzaW9uO1xuICAgICAgY29uc3QgcGFydGljaXBhbnRJbmZvID0gYWN0aW9uLnBheWxvYWQucGFydGljaXBhbnRJbmZvO1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgLi4uc3RhdGUsXG4gICAgICAgIHNlc3Npb24sXG4gICAgICAgIGNsaWVudDogcGFydGljaXBhbnRJbmZvLmNsaWVudCxcbiAgICAgICAgcHJlc2VudGVyOiBwYXJ0aWNpcGFudEluZm8ucHJlc2VudGVyLFxuICAgICAgfTtcbiAgICB9XG5cbiAgICBjYXNlIGZyb21JY3BBY3Rpb25zLklDUF9QQVJUSUNJUEFOVF9MSVNUX1VQREFURUQ6IHtcbiAgICAgIGNvbnN0IHVwZGF0ZWRQYXJ0aWNpcGFudHM6IGFueSA9IGFjdGlvbi5wYXlsb2FkO1xuICAgICAgY29uc3QgcGFydGljaXBhbnRzID0gT2JqZWN0LmtleXModXBkYXRlZFBhcnRpY2lwYW50cylcbiAgICAgICAgLm1hcChpZCA9PiAoeyBpZDogaWQsIHVzZXJuYW1lOiB1cGRhdGVkUGFydGljaXBhbnRzW2lkXSB9KSk7XG4gICAgICByZXR1cm4ge1xuICAgICAgICAuLi5zdGF0ZSxcbiAgICAgICAgcGFydGljaXBhbnRzXG4gICAgICB9O1xuICAgIH1cblxuICAgIGNhc2UgZnJvbUljcEFjdGlvbnMuSUNQX1BSRVNFTlRFUl9VUERBVEVEOiB7XG4gICAgICBjb25zdCBwcmVzZW50ZXIgPSBhY3Rpb24ucGF5bG9hZDtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIC4uLnN0YXRlLCBwcmVzZW50ZXJcbiAgICAgIH07XG4gICAgfVxuXG4gICAgY2FzZSBmcm9tSWNwQWN0aW9ucy5MRUFWRV9JQ1BfU09DS0VUX1NFU1NJT046IHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIC4uLnN0YXRlLFxuICAgICAgICAuLi5pbml0aWFsSWNwU2Vzc2lvblN0YXRlXG4gICAgICB9O1xuICAgIH1cbiAgfVxuICByZXR1cm4gc3RhdGU7XG59XG5cbmV4cG9ydCBjb25zdCBnZXRJY3BTZXNzaW9uID0gKHN0YXRlOiBJY3BTdGF0ZSkgPT4gc3RhdGUuc2Vzc2lvbjtcbmV4cG9ydCBjb25zdCBnZXRQcmVzZW50ZXIgPSAoc3RhdGU6IEljcFN0YXRlKSA9PiBzdGF0ZS5wcmVzZW50ZXI7XG5leHBvcnQgY29uc3QgZ2V0Q2xpZW50ID0gKHN0YXRlOiBJY3BTdGF0ZSkgPT4gc3RhdGUuY2xpZW50O1xuZXhwb3J0IGNvbnN0IGdldFBhcnRpY2lwYW50cyA9IChzdGF0ZTogSWNwU3RhdGUpID0+IHN0YXRlLnBhcnRpY2lwYW50cztcbiJdfQ==