@atlaskit/media-viewer 54.8.21 → 54.8.23

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 (538) hide show
  1. package/CHANGELOG.md +78 -0
  2. package/dist/cjs/ArchiveViewerError.js +28 -0
  3. package/dist/cjs/DownloadButton.js +39 -0
  4. package/dist/cjs/DownloadButtonProps.js +5 -0
  5. package/dist/cjs/DownloadItem.js +66 -0
  6. package/dist/cjs/DownloadItemProps.js +5 -0
  7. package/dist/cjs/ErrorViewDownloadButton.js +31 -0
  8. package/dist/cjs/ItemViewerBase.js +523 -0
  9. package/dist/cjs/MediaViewerError.js +35 -0
  10. package/dist/cjs/ToolbarDownloadButton.js +35 -0
  11. package/dist/cjs/analytics/events/operational/createDownloadFailedEventPayload.js +40 -0
  12. package/dist/cjs/analytics/events/operational/createDownloadSucceededEventPayload.js +31 -0
  13. package/dist/cjs/analytics/events/operational/download.js +1 -57
  14. package/dist/cjs/analytics/events/operational/loadFailed.js +10 -7
  15. package/dist/cjs/analytics/events/operational/previewTooLarge.js +4 -4
  16. package/dist/cjs/analytics/events/operational/previewUnsupported.js +2 -2
  17. package/dist/cjs/analytics/events/operational/zipEntryLoadFailed.js +10 -8
  18. package/dist/cjs/analytics/events/operational/zipEntryLoadSucceeded.js +4 -4
  19. package/dist/cjs/analytics/events/ui/createNavigatedEvent.js +22 -0
  20. package/dist/cjs/analytics/events/ui/downloadButtonClicked.js +2 -2
  21. package/dist/cjs/analytics/events/ui/failedPreviewDownloadButtonClicked.js +4 -4
  22. package/dist/cjs/analytics/events/ui/inputFromSource.js +12 -0
  23. package/dist/cjs/analytics/events/ui/navigated.js +1 -23
  24. package/dist/cjs/analytics/fireAnalytics.js +13 -0
  25. package/dist/cjs/analytics/getFileAttributes.js +33 -0
  26. package/dist/cjs/analytics/index.js +1 -45
  27. package/dist/cjs/analytics/ufoExperiences.js +1 -1
  28. package/dist/cjs/buildImgErrorDiagnostics.js +50 -0
  29. package/dist/cjs/buildVideoErrorDiagnostics.js +66 -0
  30. package/dist/cjs/classifyFailedSrc.js +25 -0
  31. package/dist/cjs/components/{media-viewer.js → media-viewer-base.js} +4 -20
  32. package/dist/cjs/components/media-viewer-error-boundary.js +2 -2
  33. package/dist/cjs/components/media-viewer-with-media-client.js +23 -0
  34. package/dist/cjs/createItemDownloader.js +37 -0
  35. package/dist/cjs/download.js +4 -174
  36. package/dist/cjs/downloadIcon.js +14 -0
  37. package/dist/cjs/errorMessage.js +14 -22
  38. package/dist/cjs/errorMessageWithAnalytics.js +13 -0
  39. package/dist/cjs/errors.js +1 -212
  40. package/dist/cjs/getErrorDetail.js +18 -0
  41. package/dist/cjs/getErrorMessageFromError.js +15 -0
  42. package/dist/cjs/getPrimaryErrorReason.js +10 -0
  43. package/dist/cjs/getRequestMetadata.js +14 -0
  44. package/dist/cjs/getSecondaryErrorReason.js +17 -0
  45. package/dist/cjs/header.js +23 -23
  46. package/dist/cjs/headerWithIntl.js +9 -0
  47. package/dist/cjs/isArchiveViewerError.js +10 -0
  48. package/dist/cjs/isExternalImageItem.js +10 -0
  49. package/dist/cjs/isFileStateItem.js +10 -0
  50. package/dist/cjs/isMediaViewerError.js +10 -0
  51. package/dist/cjs/item-viewer.js +5 -521
  52. package/dist/cjs/list.js +2 -2
  53. package/dist/cjs/media-viewer.js +10 -10
  54. package/dist/cjs/navigation.js +6 -6
  55. package/dist/cjs/noop.js +7 -0
  56. package/dist/cjs/useDownloadButtonDisabledProps.js +18 -0
  57. package/dist/cjs/utils/extractArchiveFolderName.js +10 -0
  58. package/dist/cjs/utils/getFolderParent.js +15 -0
  59. package/dist/cjs/utils/getFormattedFolderName.js +18 -0
  60. package/dist/cjs/utils/getMediaTypeFromFilename.js +12 -0
  61. package/dist/cjs/utils/getMimeTypeFromFilename.js +18 -0
  62. package/dist/cjs/utils/getSelectedIndex.js +14 -0
  63. package/dist/cjs/utils/isMacPrivateFile.js +9 -0
  64. package/dist/cjs/utils/isSameIdentifier.js +16 -0
  65. package/dist/cjs/utils/rejectAfter.js +47 -0
  66. package/dist/cjs/viewers/archiveSidebar/archive-download-button-wrapper.compiled.css +19 -0
  67. package/dist/cjs/viewers/archiveSidebar/archive-download-button-wrapper.js +32 -0
  68. package/dist/cjs/viewers/archiveSidebar/archive-download-button.js +3 -2
  69. package/dist/cjs/viewers/archiveSidebar/archive-item-viewer-wrapper.compiled.css +4 -0
  70. package/dist/cjs/viewers/archiveSidebar/archive-item-viewer-wrapper.js +22 -0
  71. package/dist/cjs/viewers/archiveSidebar/archive-layout.compiled.css +3 -0
  72. package/dist/cjs/viewers/archiveSidebar/archive-layout.js +21 -0
  73. package/dist/cjs/viewers/archiveSidebar/archive-sidebar-file-entry-wrapper.compiled.css +4 -0
  74. package/dist/cjs/viewers/archiveSidebar/archive-sidebar-file-entry-wrapper.js +22 -0
  75. package/dist/cjs/viewers/archiveSidebar/archive-sidebar-folder-entry.js +16 -12
  76. package/dist/cjs/viewers/archiveSidebar/archive-sidebar-folder-wrapper.compiled.css +6 -0
  77. package/dist/cjs/viewers/archiveSidebar/archive-sidebar-folder-wrapper.js +22 -0
  78. package/dist/cjs/viewers/archiveSidebar/archive-sidebar-header.js +5 -3
  79. package/dist/cjs/viewers/archiveSidebar/archive-sidebar-renderer.js +6 -6
  80. package/dist/cjs/viewers/archiveSidebar/archive-sidebar.js +12 -8
  81. package/dist/cjs/viewers/archiveSidebar/archive-viewer-base.js +398 -0
  82. package/dist/cjs/viewers/archiveSidebar/archive-viewer-wrapper.compiled.css +7 -0
  83. package/dist/cjs/viewers/archiveSidebar/archive-viewer-wrapper.js +24 -0
  84. package/dist/cjs/viewers/archiveSidebar/archive.js +5 -424
  85. package/dist/cjs/viewers/archiveSidebar/archiveViewerLoader.js +4 -4
  86. package/dist/cjs/viewers/archiveSidebar/disabled-archive-download-button-wrapper.compiled.css +8 -0
  87. package/dist/cjs/viewers/archiveSidebar/disabled-archive-download-button-wrapper.js +21 -0
  88. package/dist/cjs/viewers/archiveSidebar/get-archive-entries-from-file-state.js +51 -0
  89. package/dist/cjs/viewers/archiveSidebar/separator.compiled.css +7 -0
  90. package/dist/cjs/viewers/archiveSidebar/separator.js +19 -0
  91. package/dist/cjs/viewers/archiveSidebar/sidebar-header-entry.compiled.css +9 -0
  92. package/dist/cjs/viewers/archiveSidebar/sidebar-header-entry.js +20 -0
  93. package/dist/cjs/viewers/archiveSidebar/sidebar-header-icon.compiled.css +4 -0
  94. package/dist/cjs/viewers/archiveSidebar/sidebar-header-icon.js +20 -0
  95. package/dist/cjs/viewers/archiveSidebar/sidebar-header-wrapper.compiled.css +3 -0
  96. package/dist/cjs/viewers/archiveSidebar/sidebar-header-wrapper.js +20 -0
  97. package/dist/cjs/viewers/archiveSidebar/sidebar-item-wrapper.compiled.css +1 -0
  98. package/dist/cjs/viewers/archiveSidebar/sidebar-item-wrapper.js +20 -0
  99. package/dist/cjs/viewers/archiveSidebar/styleWrappers.compiled.css +1 -57
  100. package/dist/cjs/viewers/archiveSidebar/styleWrappers.js +4 -111
  101. package/dist/cjs/viewers/audio.js +12 -12
  102. package/dist/cjs/viewers/base-viewer.js +6 -6
  103. package/dist/cjs/viewers/codeViewer/CodeRendererAdvanced/CodeRendererAdvanced.js +3 -3
  104. package/dist/cjs/viewers/codeViewer/CodeViewRenderer-2.js +12 -0
  105. package/dist/cjs/viewers/codeViewer/CodeViewRenderer.compiled.css +8 -0
  106. package/dist/cjs/viewers/codeViewer/CodeViewRenderer.js +132 -0
  107. package/dist/cjs/viewers/codeViewer/CodeViewWrapper.js +13 -0
  108. package/dist/cjs/viewers/codeViewer/CodeViewerHeaderBar-2.js +12 -0
  109. package/dist/cjs/viewers/codeViewer/CodeViewerHeaderBar.compiled.css +2 -0
  110. package/dist/cjs/viewers/codeViewer/CodeViewerHeaderBar.js +19 -0
  111. package/dist/cjs/viewers/codeViewer/codeViewerRenderer-compiled.compiled.css +1 -10
  112. package/dist/cjs/viewers/codeViewer/codeViewerRenderer-compiled.js +5 -127
  113. package/dist/cjs/viewers/codeViewer/codeViewerRenderer.js +1 -15
  114. package/dist/cjs/viewers/codeViewer/formatMessage.js +20 -0
  115. package/dist/cjs/viewers/codeViewer/getFormat.js +23 -0
  116. package/dist/cjs/viewers/codeViewer/getMsgDate.js +14 -0
  117. package/dist/cjs/viewers/codeViewer/index.js +16 -15
  118. package/dist/cjs/viewers/codeViewer/lineCount.js +10 -0
  119. package/dist/cjs/viewers/codeViewer/{msg-parser.js → msgToText.js} +4 -38
  120. package/dist/cjs/viewers/codeViewer/normaliseLineBreaks.js +9 -0
  121. package/dist/cjs/viewers/codeViewer/parseHeaders.js +18 -0
  122. package/dist/cjs/viewers/codeViewer/util.js +1 -27
  123. package/dist/cjs/viewers/customViewer/customViewer.js +2 -2
  124. package/dist/cjs/viewers/doc/DocViewer.js +234 -0
  125. package/dist/cjs/viewers/doc/doc-viewer.js +7 -230
  126. package/dist/cjs/viewers/doc/index.js +7 -7
  127. package/dist/cjs/viewers/image/index.js +13 -12
  128. package/dist/cjs/viewers/image/interactive-img-component.js +299 -0
  129. package/dist/cjs/viewers/image/interactive-img.js +4 -300
  130. package/dist/cjs/viewers/image/zoom-level-after-resize.js +12 -0
  131. package/dist/cjs/viewers/svg/clientRectangle.js +12 -0
  132. package/dist/cjs/viewers/svg/index.js +16 -14
  133. package/dist/cjs/viewers/svg/naturalSizeRectangle.js +16 -0
  134. package/dist/cjs/viewers/svg/zoomLevelAfterResize.js +12 -0
  135. package/dist/cjs/viewers/video.js +12 -11
  136. package/dist/cjs/zoomControls.js +9 -9
  137. package/dist/es2019/ArchiveViewerError.js +9 -0
  138. package/dist/es2019/DownloadButton.js +29 -0
  139. package/dist/es2019/DownloadButtonProps.js +1 -0
  140. package/dist/es2019/DownloadItem.js +54 -0
  141. package/dist/es2019/DownloadItemProps.js +1 -0
  142. package/dist/es2019/ErrorViewDownloadButton.js +25 -0
  143. package/dist/es2019/ItemViewerBase.js +435 -0
  144. package/dist/es2019/MediaViewerError.js +15 -0
  145. package/dist/es2019/ToolbarDownloadButton.js +29 -0
  146. package/dist/es2019/analytics/events/operational/createDownloadFailedEventPayload.js +35 -0
  147. package/dist/es2019/analytics/events/operational/createDownloadSucceededEventPayload.js +26 -0
  148. package/dist/es2019/analytics/events/operational/download.js +1 -57
  149. package/dist/es2019/analytics/events/operational/loadFailed.js +5 -2
  150. package/dist/es2019/analytics/events/operational/previewTooLarge.js +2 -2
  151. package/dist/es2019/analytics/events/operational/previewUnsupported.js +1 -1
  152. package/dist/es2019/analytics/events/operational/zipEntryLoadFailed.js +5 -3
  153. package/dist/es2019/analytics/events/operational/zipEntryLoadSucceeded.js +2 -2
  154. package/dist/es2019/analytics/events/ui/createNavigatedEvent.js +14 -0
  155. package/dist/es2019/analytics/events/ui/downloadButtonClicked.js +1 -1
  156. package/dist/es2019/analytics/events/ui/failedPreviewDownloadButtonClicked.js +2 -2
  157. package/dist/es2019/analytics/events/ui/inputFromSource.js +6 -0
  158. package/dist/es2019/analytics/events/ui/navigated.js +1 -19
  159. package/dist/es2019/analytics/fireAnalytics.js +7 -0
  160. package/dist/es2019/analytics/getFileAttributes.js +31 -0
  161. package/dist/es2019/analytics/index.js +1 -45
  162. package/dist/es2019/analytics/ufoExperiences.js +1 -1
  163. package/dist/es2019/buildImgErrorDiagnostics.js +34 -0
  164. package/dist/es2019/buildVideoErrorDiagnostics.js +50 -0
  165. package/dist/es2019/classifyFailedSrc.js +19 -0
  166. package/dist/es2019/components/{media-viewer.js → media-viewer-base.js} +2 -18
  167. package/dist/es2019/components/media-viewer-error-boundary.js +1 -1
  168. package/dist/es2019/components/media-viewer-with-media-client.js +16 -0
  169. package/dist/es2019/createItemDownloader.js +22 -0
  170. package/dist/es2019/download.js +2 -161
  171. package/dist/es2019/downloadIcon.js +7 -0
  172. package/dist/es2019/errorMessage.js +8 -16
  173. package/dist/es2019/errorMessageWithAnalytics.js +7 -0
  174. package/dist/es2019/errors.js +1 -167
  175. package/dist/es2019/getErrorDetail.js +13 -0
  176. package/dist/es2019/getErrorMessageFromError.js +7 -0
  177. package/dist/es2019/getPrimaryErrorReason.js +4 -0
  178. package/dist/es2019/getRequestMetadata.js +9 -0
  179. package/dist/es2019/getSecondaryErrorReason.js +13 -0
  180. package/dist/es2019/header.js +16 -16
  181. package/dist/es2019/headerWithIntl.js +3 -0
  182. package/dist/es2019/index.js +12 -1
  183. package/dist/es2019/isArchiveViewerError.js +4 -0
  184. package/dist/es2019/isExternalImageItem.js +2 -0
  185. package/dist/es2019/isFileStateItem.js +2 -0
  186. package/dist/es2019/isMediaViewerError.js +4 -0
  187. package/dist/es2019/item-viewer.js +3 -434
  188. package/dist/es2019/list.js +1 -1
  189. package/dist/es2019/media-viewer.js +7 -7
  190. package/dist/es2019/navigation.js +5 -4
  191. package/dist/es2019/noop.js +1 -0
  192. package/dist/es2019/useDownloadButtonDisabledProps.js +13 -0
  193. package/dist/es2019/utils/extractArchiveFolderName.js +4 -0
  194. package/dist/es2019/utils/getFolderParent.js +9 -0
  195. package/dist/es2019/utils/getFormattedFolderName.js +12 -0
  196. package/dist/es2019/utils/getMediaTypeFromFilename.js +6 -0
  197. package/dist/es2019/utils/getMimeTypeFromFilename.js +12 -0
  198. package/dist/es2019/utils/getSelectedIndex.js +7 -0
  199. package/dist/es2019/utils/isMacPrivateFile.js +3 -0
  200. package/dist/es2019/utils/isSameIdentifier.js +10 -0
  201. package/dist/es2019/utils/rejectAfter.js +12 -0
  202. package/dist/es2019/viewers/archiveSidebar/archive-download-button-wrapper.compiled.css +19 -0
  203. package/dist/es2019/viewers/archiveSidebar/archive-download-button-wrapper.js +23 -0
  204. package/dist/es2019/viewers/archiveSidebar/archive-download-button.js +2 -1
  205. package/dist/es2019/viewers/archiveSidebar/archive-item-viewer-wrapper.compiled.css +4 -0
  206. package/dist/es2019/viewers/archiveSidebar/archive-item-viewer-wrapper.js +15 -0
  207. package/dist/es2019/viewers/archiveSidebar/archive-layout.compiled.css +3 -0
  208. package/dist/es2019/viewers/archiveSidebar/archive-layout.js +14 -0
  209. package/dist/es2019/viewers/archiveSidebar/archive-sidebar-file-entry-wrapper.compiled.css +4 -0
  210. package/dist/es2019/viewers/archiveSidebar/archive-sidebar-file-entry-wrapper.js +15 -0
  211. package/dist/es2019/viewers/archiveSidebar/archive-sidebar-folder-entry.js +10 -6
  212. package/dist/es2019/viewers/archiveSidebar/archive-sidebar-folder-wrapper.compiled.css +6 -0
  213. package/dist/es2019/viewers/archiveSidebar/archive-sidebar-folder-wrapper.js +15 -0
  214. package/dist/es2019/viewers/archiveSidebar/archive-sidebar-header.js +4 -2
  215. package/dist/es2019/viewers/archiveSidebar/archive-sidebar-renderer.js +3 -3
  216. package/dist/es2019/viewers/archiveSidebar/archive-sidebar.js +6 -2
  217. package/dist/es2019/viewers/archiveSidebar/archive-viewer-base.js +304 -0
  218. package/dist/es2019/viewers/archiveSidebar/archive-viewer-wrapper.compiled.css +7 -0
  219. package/dist/es2019/viewers/archiveSidebar/archive-viewer-wrapper.js +14 -0
  220. package/dist/es2019/viewers/archiveSidebar/archive.js +2 -315
  221. package/dist/es2019/viewers/archiveSidebar/archiveViewerLoader.js +2 -2
  222. package/dist/es2019/viewers/archiveSidebar/disabled-archive-download-button-wrapper.compiled.css +8 -0
  223. package/dist/es2019/viewers/archiveSidebar/disabled-archive-download-button-wrapper.js +14 -0
  224. package/dist/es2019/viewers/archiveSidebar/get-archive-entries-from-file-state.js +24 -0
  225. package/dist/es2019/viewers/archiveSidebar/separator.compiled.css +7 -0
  226. package/dist/es2019/viewers/archiveSidebar/separator.js +11 -0
  227. package/dist/es2019/viewers/archiveSidebar/sidebar-header-entry.compiled.css +9 -0
  228. package/dist/es2019/viewers/archiveSidebar/sidebar-header-entry.js +13 -0
  229. package/dist/es2019/viewers/archiveSidebar/sidebar-header-icon.compiled.css +4 -0
  230. package/dist/es2019/viewers/archiveSidebar/sidebar-header-icon.js +13 -0
  231. package/dist/es2019/viewers/archiveSidebar/sidebar-header-wrapper.compiled.css +3 -0
  232. package/dist/es2019/viewers/archiveSidebar/sidebar-header-wrapper.js +13 -0
  233. package/dist/es2019/viewers/archiveSidebar/sidebar-item-wrapper.compiled.css +1 -0
  234. package/dist/es2019/viewers/archiveSidebar/sidebar-item-wrapper.js +13 -0
  235. package/dist/es2019/viewers/archiveSidebar/styleWrappers.compiled.css +1 -57
  236. package/dist/es2019/viewers/archiveSidebar/styleWrappers.js +1 -115
  237. package/dist/es2019/viewers/audio.js +6 -6
  238. package/dist/es2019/viewers/base-viewer.js +4 -4
  239. package/dist/es2019/viewers/codeViewer/CodeRendererAdvanced/CodeRendererAdvanced.js +3 -3
  240. package/dist/es2019/viewers/codeViewer/CodeViewRenderer-2.js +3 -0
  241. package/dist/es2019/viewers/codeViewer/CodeViewRenderer.compiled.css +8 -0
  242. package/dist/es2019/viewers/codeViewer/CodeViewRenderer.js +84 -0
  243. package/dist/es2019/viewers/codeViewer/CodeViewWrapper.js +4 -0
  244. package/dist/es2019/viewers/codeViewer/CodeViewerHeaderBar-2.js +3 -0
  245. package/dist/es2019/viewers/codeViewer/CodeViewerHeaderBar.compiled.css +2 -0
  246. package/dist/es2019/viewers/codeViewer/CodeViewerHeaderBar.js +11 -0
  247. package/dist/es2019/viewers/codeViewer/codeViewerRenderer-compiled.compiled.css +1 -10
  248. package/dist/es2019/viewers/codeViewer/codeViewerRenderer-compiled.js +5 -87
  249. package/dist/es2019/viewers/codeViewer/codeViewerRenderer.js +1 -6
  250. package/dist/es2019/viewers/codeViewer/formatMessage.js +10 -0
  251. package/dist/es2019/viewers/codeViewer/getFormat.js +17 -0
  252. package/dist/es2019/viewers/codeViewer/getMsgDate.js +8 -0
  253. package/dist/es2019/viewers/codeViewer/index.js +9 -8
  254. package/dist/es2019/viewers/codeViewer/lineCount.js +2 -0
  255. package/dist/es2019/viewers/codeViewer/{msg-parser.js → msgToText.js} +2 -29
  256. package/dist/es2019/viewers/codeViewer/normaliseLineBreaks.js +1 -0
  257. package/dist/es2019/viewers/codeViewer/parseHeaders.js +12 -0
  258. package/dist/es2019/viewers/codeViewer/util.js +1 -21
  259. package/dist/es2019/viewers/customViewer/customViewer.js +1 -1
  260. package/dist/es2019/viewers/doc/DocViewer.js +170 -0
  261. package/dist/es2019/viewers/doc/doc-viewer.js +5 -169
  262. package/dist/es2019/viewers/doc/index.js +4 -4
  263. package/dist/es2019/viewers/image/index.js +4 -3
  264. package/dist/es2019/viewers/image/interactive-img-component.js +287 -0
  265. package/dist/es2019/viewers/image/interactive-img.js +2 -292
  266. package/dist/es2019/viewers/image/zoom-level-after-resize.js +6 -0
  267. package/dist/es2019/viewers/svg/clientRectangle.js +8 -0
  268. package/dist/es2019/viewers/svg/index.js +10 -8
  269. package/dist/es2019/viewers/svg/naturalSizeRectangle.js +12 -0
  270. package/dist/es2019/viewers/svg/zoomLevelAfterResize.js +6 -0
  271. package/dist/es2019/viewers/video.js +5 -4
  272. package/dist/es2019/zoomControls.js +7 -7
  273. package/dist/esm/ArchiveViewerError.js +21 -0
  274. package/dist/esm/DownloadButton.js +30 -0
  275. package/dist/esm/DownloadButtonProps.js +1 -0
  276. package/dist/esm/DownloadItem.js +57 -0
  277. package/dist/esm/DownloadItemProps.js +1 -0
  278. package/dist/esm/ErrorViewDownloadButton.js +24 -0
  279. package/dist/esm/ItemViewerBase.js +500 -0
  280. package/dist/esm/MediaViewerError.js +28 -0
  281. package/dist/esm/ToolbarDownloadButton.js +28 -0
  282. package/dist/esm/analytics/events/operational/createDownloadFailedEventPayload.js +34 -0
  283. package/dist/esm/analytics/events/operational/createDownloadSucceededEventPayload.js +25 -0
  284. package/dist/esm/analytics/events/operational/download.js +1 -55
  285. package/dist/esm/analytics/events/operational/loadFailed.js +5 -2
  286. package/dist/esm/analytics/events/operational/previewTooLarge.js +2 -2
  287. package/dist/esm/analytics/events/operational/previewUnsupported.js +1 -1
  288. package/dist/esm/analytics/events/operational/zipEntryLoadFailed.js +5 -3
  289. package/dist/esm/analytics/events/operational/zipEntryLoadSucceeded.js +2 -2
  290. package/dist/esm/analytics/events/ui/createNavigatedEvent.js +16 -0
  291. package/dist/esm/analytics/events/ui/downloadButtonClicked.js +1 -1
  292. package/dist/esm/analytics/events/ui/failedPreviewDownloadButtonClicked.js +2 -2
  293. package/dist/esm/analytics/events/ui/inputFromSource.js +6 -0
  294. package/dist/esm/analytics/events/ui/navigated.js +1 -21
  295. package/dist/esm/analytics/fireAnalytics.js +7 -0
  296. package/dist/esm/analytics/getFileAttributes.js +27 -0
  297. package/dist/esm/analytics/index.js +1 -41
  298. package/dist/esm/analytics/ufoExperiences.js +1 -1
  299. package/dist/esm/buildImgErrorDiagnostics.js +44 -0
  300. package/dist/esm/buildVideoErrorDiagnostics.js +60 -0
  301. package/dist/esm/classifyFailedSrc.js +19 -0
  302. package/dist/esm/components/{media-viewer.js → media-viewer-base.js} +2 -18
  303. package/dist/esm/components/media-viewer-error-boundary.js +1 -1
  304. package/dist/esm/components/media-viewer-with-media-client.js +16 -0
  305. package/dist/esm/createItemDownloader.js +30 -0
  306. package/dist/esm/download.js +2 -170
  307. package/dist/esm/downloadIcon.js +7 -0
  308. package/dist/esm/errorMessage.js +8 -18
  309. package/dist/esm/errorMessageWithAnalytics.js +7 -0
  310. package/dist/esm/errors.js +1 -200
  311. package/dist/esm/getErrorDetail.js +12 -0
  312. package/dist/esm/getErrorMessageFromError.js +9 -0
  313. package/dist/esm/getPrimaryErrorReason.js +4 -0
  314. package/dist/esm/getRequestMetadata.js +8 -0
  315. package/dist/esm/getSecondaryErrorReason.js +11 -0
  316. package/dist/esm/header.js +16 -16
  317. package/dist/esm/headerWithIntl.js +3 -0
  318. package/dist/esm/index.js +12 -1
  319. package/dist/esm/isArchiveViewerError.js +4 -0
  320. package/dist/esm/isExternalImageItem.js +4 -0
  321. package/dist/esm/isFileStateItem.js +4 -0
  322. package/dist/esm/isMediaViewerError.js +4 -0
  323. package/dist/esm/item-viewer.js +3 -503
  324. package/dist/esm/list.js +1 -1
  325. package/dist/esm/media-viewer.js +7 -7
  326. package/dist/esm/navigation.js +5 -4
  327. package/dist/esm/noop.js +1 -0
  328. package/dist/esm/useDownloadButtonDisabledProps.js +12 -0
  329. package/dist/esm/utils/extractArchiveFolderName.js +4 -0
  330. package/dist/esm/utils/getFolderParent.js +9 -0
  331. package/dist/esm/utils/getFormattedFolderName.js +12 -0
  332. package/dist/esm/utils/getMediaTypeFromFilename.js +6 -0
  333. package/dist/esm/utils/getMimeTypeFromFilename.js +12 -0
  334. package/dist/esm/utils/getSelectedIndex.js +9 -0
  335. package/dist/esm/utils/isMacPrivateFile.js +3 -0
  336. package/dist/esm/utils/isSameIdentifier.js +10 -0
  337. package/dist/esm/utils/rejectAfter.js +40 -0
  338. package/dist/esm/viewers/archiveSidebar/archive-download-button-wrapper.compiled.css +19 -0
  339. package/dist/esm/viewers/archiveSidebar/archive-download-button-wrapper.js +24 -0
  340. package/dist/esm/viewers/archiveSidebar/archive-download-button.js +2 -1
  341. package/dist/esm/viewers/archiveSidebar/archive-item-viewer-wrapper.compiled.css +4 -0
  342. package/dist/esm/viewers/archiveSidebar/archive-item-viewer-wrapper.js +14 -0
  343. package/dist/esm/viewers/archiveSidebar/archive-layout.compiled.css +3 -0
  344. package/dist/esm/viewers/archiveSidebar/archive-layout.js +13 -0
  345. package/dist/esm/viewers/archiveSidebar/archive-sidebar-file-entry-wrapper.compiled.css +4 -0
  346. package/dist/esm/viewers/archiveSidebar/archive-sidebar-file-entry-wrapper.js +14 -0
  347. package/dist/esm/viewers/archiveSidebar/archive-sidebar-folder-entry.js +10 -6
  348. package/dist/esm/viewers/archiveSidebar/archive-sidebar-folder-wrapper.compiled.css +6 -0
  349. package/dist/esm/viewers/archiveSidebar/archive-sidebar-folder-wrapper.js +14 -0
  350. package/dist/esm/viewers/archiveSidebar/archive-sidebar-header.js +4 -2
  351. package/dist/esm/viewers/archiveSidebar/archive-sidebar-renderer.js +3 -3
  352. package/dist/esm/viewers/archiveSidebar/archive-sidebar.js +6 -2
  353. package/dist/esm/viewers/archiveSidebar/archive-viewer-base.js +393 -0
  354. package/dist/esm/viewers/archiveSidebar/archive-viewer-wrapper.compiled.css +7 -0
  355. package/dist/esm/viewers/archiveSidebar/archive-viewer-wrapper.js +16 -0
  356. package/dist/esm/viewers/archiveSidebar/archive.js +2 -422
  357. package/dist/esm/viewers/archiveSidebar/archiveViewerLoader.js +2 -2
  358. package/dist/esm/viewers/archiveSidebar/disabled-archive-download-button-wrapper.compiled.css +8 -0
  359. package/dist/esm/viewers/archiveSidebar/disabled-archive-download-button-wrapper.js +13 -0
  360. package/dist/esm/viewers/archiveSidebar/get-archive-entries-from-file-state.js +44 -0
  361. package/dist/esm/viewers/archiveSidebar/separator.compiled.css +7 -0
  362. package/dist/esm/viewers/archiveSidebar/separator.js +11 -0
  363. package/dist/esm/viewers/archiveSidebar/sidebar-header-entry.compiled.css +9 -0
  364. package/dist/esm/viewers/archiveSidebar/sidebar-header-entry.js +12 -0
  365. package/dist/esm/viewers/archiveSidebar/sidebar-header-icon.compiled.css +4 -0
  366. package/dist/esm/viewers/archiveSidebar/sidebar-header-icon.js +12 -0
  367. package/dist/esm/viewers/archiveSidebar/sidebar-header-wrapper.compiled.css +3 -0
  368. package/dist/esm/viewers/archiveSidebar/sidebar-header-wrapper.js +12 -0
  369. package/dist/esm/viewers/archiveSidebar/sidebar-item-wrapper.compiled.css +1 -0
  370. package/dist/esm/viewers/archiveSidebar/sidebar-item-wrapper.js +12 -0
  371. package/dist/esm/viewers/archiveSidebar/styleWrappers.compiled.css +1 -57
  372. package/dist/esm/viewers/archiveSidebar/styleWrappers.js +3 -111
  373. package/dist/esm/viewers/audio.js +6 -6
  374. package/dist/esm/viewers/base-viewer.js +4 -4
  375. package/dist/esm/viewers/codeViewer/CodeRendererAdvanced/CodeRendererAdvanced.js +3 -3
  376. package/dist/esm/viewers/codeViewer/CodeViewRenderer-2.js +5 -0
  377. package/dist/esm/viewers/codeViewer/CodeViewRenderer.compiled.css +8 -0
  378. package/dist/esm/viewers/codeViewer/CodeViewRenderer.js +125 -0
  379. package/dist/esm/viewers/codeViewer/CodeViewWrapper.js +6 -0
  380. package/dist/esm/viewers/codeViewer/CodeViewerHeaderBar-2.js +5 -0
  381. package/dist/esm/viewers/codeViewer/CodeViewerHeaderBar.compiled.css +2 -0
  382. package/dist/esm/viewers/codeViewer/CodeViewerHeaderBar.js +11 -0
  383. package/dist/esm/viewers/codeViewer/codeViewerRenderer-compiled.compiled.css +1 -10
  384. package/dist/esm/viewers/codeViewer/codeViewerRenderer-compiled.js +5 -128
  385. package/dist/esm/viewers/codeViewer/codeViewerRenderer.js +1 -12
  386. package/dist/esm/viewers/codeViewer/formatMessage.js +14 -0
  387. package/dist/esm/viewers/codeViewer/getFormat.js +17 -0
  388. package/dist/esm/viewers/codeViewer/getMsgDate.js +8 -0
  389. package/dist/esm/viewers/codeViewer/index.js +9 -8
  390. package/dist/esm/viewers/codeViewer/lineCount.js +4 -0
  391. package/dist/esm/viewers/codeViewer/{msg-parser.js → msgToText.js} +2 -33
  392. package/dist/esm/viewers/codeViewer/normaliseLineBreaks.js +3 -0
  393. package/dist/esm/viewers/codeViewer/parseHeaders.js +12 -0
  394. package/dist/esm/viewers/codeViewer/util.js +1 -25
  395. package/dist/esm/viewers/customViewer/customViewer.js +1 -1
  396. package/dist/esm/viewers/doc/DocViewer.js +225 -0
  397. package/dist/esm/viewers/doc/doc-viewer.js +5 -224
  398. package/dist/esm/viewers/doc/index.js +4 -4
  399. package/dist/esm/viewers/image/index.js +4 -3
  400. package/dist/esm/viewers/image/interactive-img-component.js +292 -0
  401. package/dist/esm/viewers/image/interactive-img.js +2 -297
  402. package/dist/esm/viewers/image/zoom-level-after-resize.js +6 -0
  403. package/dist/esm/viewers/svg/clientRectangle.js +6 -0
  404. package/dist/esm/viewers/svg/index.js +10 -8
  405. package/dist/esm/viewers/svg/naturalSizeRectangle.js +10 -0
  406. package/dist/esm/viewers/svg/zoomLevelAfterResize.js +6 -0
  407. package/dist/esm/viewers/video.js +5 -4
  408. package/dist/esm/zoomControls.js +7 -7
  409. package/dist/types/ArchiveViewerError.d.ts +9 -0
  410. package/dist/types/DownloadButton.d.ts +2 -0
  411. package/dist/types/DownloadButtonProps.d.ts +8 -0
  412. package/dist/types/DownloadItem.d.ts +3 -0
  413. package/dist/types/DownloadItemProps.d.ts +16 -0
  414. package/dist/types/ErrorViewDownloadButton.d.ts +12 -0
  415. package/dist/types/ItemViewerBase.d.ts +3 -0
  416. package/dist/types/MediaViewerError.d.ts +7 -0
  417. package/dist/types/ToolbarDownloadButton.d.ts +11 -0
  418. package/dist/types/analytics/events/operational/createDownloadFailedEventPayload.d.ts +5 -0
  419. package/dist/types/analytics/events/operational/createDownloadSucceededEventPayload.d.ts +4 -0
  420. package/dist/types/analytics/events/operational/download.d.ts +2 -6
  421. package/dist/types/analytics/events/operational/loadFailed.d.ts +3 -3
  422. package/dist/types/analytics/events/operational/previewTooLarge.d.ts +2 -1
  423. package/dist/types/analytics/events/operational/zipEntryLoadFailed.d.ts +3 -3
  424. package/dist/types/analytics/events/operational/zipEntryLoadSucceeded.d.ts +1 -1
  425. package/dist/types/analytics/events/ui/createNavigatedEvent.d.ts +4 -0
  426. package/dist/types/analytics/events/ui/downloadButtonClicked.d.ts +1 -1
  427. package/dist/types/analytics/events/ui/failedPreviewDownloadButtonClicked.d.ts +3 -2
  428. package/dist/types/analytics/events/ui/inputFromSource.d.ts +3 -0
  429. package/dist/types/analytics/events/ui/navigated.d.ts +0 -4
  430. package/dist/types/analytics/fireAnalytics.d.ts +3 -0
  431. package/dist/types/analytics/getFileAttributes.d.ts +3 -0
  432. package/dist/types/analytics/index.d.ts +2 -10
  433. package/dist/types/buildImgErrorDiagnostics.d.ts +16 -0
  434. package/dist/types/buildVideoErrorDiagnostics.d.ts +16 -0
  435. package/dist/types/classifyFailedSrc.d.ts +7 -0
  436. package/dist/types/components/{media-viewer.d.ts → media-viewer-base.d.ts} +0 -2
  437. package/dist/types/components/media-viewer-with-media-client.d.ts +3 -0
  438. package/dist/types/createItemDownloader.d.ts +1 -0
  439. package/dist/types/download.d.ts +0 -19
  440. package/dist/types/downloadIcon.d.ts +2 -0
  441. package/dist/types/errorMessage.d.ts +5 -7
  442. package/dist/types/errorMessageWithAnalytics.d.ts +5 -0
  443. package/dist/types/errors.d.ts +3 -58
  444. package/dist/types/getErrorDetail.d.ts +2 -0
  445. package/dist/types/getErrorMessageFromError.d.ts +3 -0
  446. package/dist/types/getPrimaryErrorReason.d.ts +3 -0
  447. package/dist/types/getRequestMetadata.d.ts +3 -0
  448. package/dist/types/getSecondaryErrorReason.d.ts +3 -0
  449. package/dist/types/header.d.ts +2 -4
  450. package/dist/types/headerWithIntl.d.ts +4 -0
  451. package/dist/types/index.d.ts +9 -0
  452. package/dist/types/isArchiveViewerError.d.ts +2 -0
  453. package/dist/types/isExternalImageItem.d.ts +2 -0
  454. package/dist/types/isFileStateItem.d.ts +3 -0
  455. package/dist/types/isMediaViewerError.d.ts +2 -0
  456. package/dist/types/item-viewer.d.ts +4 -7
  457. package/dist/types/navigation.d.ts +1 -1
  458. package/dist/types/noop.d.ts +1 -0
  459. package/dist/types/useDownloadButtonDisabledProps.d.ts +1 -0
  460. package/dist/types/utils/extractArchiveFolderName.d.ts +1 -0
  461. package/dist/types/utils/getFolderParent.d.ts +1 -0
  462. package/dist/types/utils/getFormattedFolderName.d.ts +1 -0
  463. package/dist/types/utils/getMediaTypeFromFilename.d.ts +2 -0
  464. package/dist/types/utils/getMimeTypeFromFilename.d.ts +1 -0
  465. package/dist/types/utils/getSelectedIndex.d.ts +2 -0
  466. package/dist/types/utils/isMacPrivateFile.d.ts +1 -0
  467. package/dist/types/utils/isSameIdentifier.d.ts +2 -0
  468. package/dist/types/utils/rejectAfter.d.ts +1 -0
  469. package/dist/types/viewers/archiveSidebar/archive-download-button-wrapper.d.ts +11 -0
  470. package/dist/types/viewers/archiveSidebar/archive-item-viewer-wrapper.d.ts +8 -0
  471. package/dist/types/viewers/archiveSidebar/archive-layout.d.ts +6 -0
  472. package/dist/types/viewers/archiveSidebar/archive-sidebar-file-entry-wrapper.d.ts +9 -0
  473. package/dist/types/viewers/archiveSidebar/archive-sidebar-folder-entry.d.ts +2 -2
  474. package/dist/types/viewers/archiveSidebar/archive-sidebar-folder-wrapper.d.ts +6 -0
  475. package/dist/types/viewers/archiveSidebar/archive-sidebar-renderer.d.ts +2 -2
  476. package/dist/types/viewers/archiveSidebar/archive-sidebar.d.ts +1 -1
  477. package/dist/types/viewers/archiveSidebar/archive-viewer-base.d.ts +21 -0
  478. package/dist/types/viewers/archiveSidebar/archive-viewer-wrapper.d.ts +6 -0
  479. package/dist/types/viewers/archiveSidebar/archive.d.ts +3 -23
  480. package/dist/types/viewers/archiveSidebar/disabled-archive-download-button-wrapper.d.ts +6 -0
  481. package/dist/types/viewers/archiveSidebar/get-archive-entries-from-file-state.d.ts +3 -0
  482. package/dist/types/viewers/archiveSidebar/separator.d.ts +5 -0
  483. package/dist/types/viewers/archiveSidebar/sidebar-header-entry.d.ts +6 -0
  484. package/dist/types/viewers/archiveSidebar/sidebar-header-icon.d.ts +6 -0
  485. package/dist/types/viewers/archiveSidebar/sidebar-header-wrapper.d.ts +6 -0
  486. package/dist/types/viewers/archiveSidebar/sidebar-item-wrapper.d.ts +6 -0
  487. package/dist/types/viewers/archiveSidebar/styleWrappers.d.ts +2 -22
  488. package/dist/types/viewers/archiveSidebar/types.d.ts +2 -2
  489. package/dist/types/viewers/audio.d.ts +4 -4
  490. package/dist/types/viewers/base-viewer.d.ts +2 -2
  491. package/dist/types/viewers/codeViewer/CodeRendererAdvanced/CodeRendererAdvanced.d.ts +5 -1
  492. package/dist/types/viewers/codeViewer/CodeViewRenderer-2.d.ts +3 -0
  493. package/dist/types/viewers/codeViewer/CodeViewRenderer.d.ts +13 -0
  494. package/dist/types/viewers/codeViewer/CodeViewWrapper.d.ts +5 -0
  495. package/dist/types/viewers/codeViewer/CodeViewerHeaderBar-2.d.ts +2 -0
  496. package/dist/types/viewers/codeViewer/CodeViewerHeaderBar.d.ts +5 -0
  497. package/dist/types/viewers/codeViewer/codeViewerRenderer-compiled.d.ts +10 -12
  498. package/dist/types/viewers/codeViewer/codeViewerRenderer.d.ts +3 -10
  499. package/dist/types/viewers/codeViewer/formatMessage.d.ts +1 -0
  500. package/dist/types/viewers/codeViewer/getFormat.d.ts +1 -0
  501. package/dist/types/viewers/codeViewer/getMsgDate.d.ts +1 -0
  502. package/dist/types/viewers/codeViewer/index.d.ts +4 -4
  503. package/dist/types/viewers/codeViewer/lineCount.d.ts +1 -0
  504. package/dist/types/viewers/codeViewer/msgToText.d.ts +3 -0
  505. package/dist/types/viewers/codeViewer/normaliseLineBreaks.d.ts +1 -0
  506. package/dist/types/viewers/codeViewer/parseHeaders.d.ts +3 -0
  507. package/dist/types/viewers/codeViewer/util.d.ts +0 -3
  508. package/dist/types/viewers/customViewer/customViewer.d.ts +2 -2
  509. package/dist/types/viewers/doc/DocViewer.d.ts +17 -0
  510. package/dist/types/viewers/doc/doc-viewer.d.ts +5 -12
  511. package/dist/types/viewers/doc/index.d.ts +3 -3
  512. package/dist/types/viewers/image/index.d.ts +3 -3
  513. package/dist/types/viewers/image/interactive-img-component.d.ts +18 -0
  514. package/dist/types/viewers/image/interactive-img.d.ts +3 -20
  515. package/dist/types/viewers/{svg/utils.d.ts → image/zoom-level-after-resize.d.ts} +0 -3
  516. package/dist/types/viewers/svg/clientRectangle.d.ts +2 -0
  517. package/dist/types/viewers/svg/errors.d.ts +1 -1
  518. package/dist/types/viewers/svg/index.d.ts +3 -3
  519. package/dist/types/viewers/svg/naturalSizeRectangle.d.ts +2 -0
  520. package/dist/types/viewers/svg/zoomLevelAfterResize.d.ts +3 -0
  521. package/dist/types/viewers/video.d.ts +3 -3
  522. package/dist/types/zoomControls.d.ts +2 -2
  523. package/package.json +2 -2
  524. package/dist/cjs/domain/index.js +0 -12
  525. package/dist/cjs/utils/index.js +0 -110
  526. package/dist/cjs/viewers/svg/utils.js +0 -28
  527. package/dist/es2019/domain/index.js +0 -1
  528. package/dist/es2019/utils/index.js +0 -73
  529. package/dist/es2019/viewers/svg/utils.js +0 -25
  530. package/dist/esm/domain/index.js +0 -1
  531. package/dist/esm/utils/index.js +0 -103
  532. package/dist/esm/viewers/svg/utils.js +0 -21
  533. package/dist/types/domain/index.d.ts +0 -1
  534. package/dist/types/utils/index.d.ts +0 -10
  535. package/dist/types/viewers/codeViewer/msg-parser.d.ts +0 -8
  536. /package/dist/cjs/viewers/doc/{doc-viewer.compiled.css → DocViewer.compiled.css} +0 -0
  537. /package/dist/es2019/viewers/doc/{doc-viewer.compiled.css → DocViewer.compiled.css} +0 -0
  538. /package/dist/esm/viewers/doc/{doc-viewer.compiled.css → DocViewer.compiled.css} +0 -0
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.createItemDownloader = void 0;
8
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
9
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
10
+ var _mediaClient = require("@atlaskit/media-client");
11
+ var _expValEquals = require("@atlaskit/tmp-editor-statsig/exp-val-equals");
12
+ var _MediaViewerError = require("./MediaViewerError");
13
+ var _createDownloadFailedEventPayload = require("./analytics/events/operational/createDownloadFailedEventPayload");
14
+ var _createDownloadSucceededEventPayload = require("./analytics/events/operational/createDownloadSucceededEventPayload");
15
+ var _fireAnalytics = require("./analytics/fireAnalytics");
16
+ var createItemDownloader = exports.createItemDownloader = function createItemDownloader(file, mediaClient, options) {
17
+ return /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
18
+ var collectionName, traceContext, createAnalyticsEvent, fallbackMediaName, id, fileStateName, name;
19
+ return _regenerator.default.wrap(function (_context) {
20
+ while (1) switch (_context.prev = _context.next) {
21
+ case 0:
22
+ collectionName = options.collectionName, traceContext = options.traceContext, createAnalyticsEvent = options.createAnalyticsEvent, fallbackMediaName = options.fallbackMediaName;
23
+ id = file.id;
24
+ fileStateName = !(0, _mediaClient.isErrorFileState)(file) ? file.name : undefined;
25
+ name = fileStateName || ((0, _expValEquals.expValEquals)('platform_editor_media_download_fallback_name', 'isEnabled', true) ? fallbackMediaName : undefined);
26
+ mediaClient.file.downloadBinary(id, name, collectionName, traceContext).then(function () {
27
+ (0, _fireAnalytics.fireAnalytics)((0, _createDownloadSucceededEventPayload.createDownloadSucceededEventPayload)(file, traceContext), createAnalyticsEvent);
28
+ }).catch(function (e) {
29
+ (0, _fireAnalytics.fireAnalytics)((0, _createDownloadFailedEventPayload.createDownloadFailedEventPayload)(file.id, new _MediaViewerError.MediaViewerError('download', e), file, traceContext), createAnalyticsEvent);
30
+ });
31
+ case 1:
32
+ case "end":
33
+ return _context.stop();
34
+ }
35
+ }, _callee);
36
+ }));
37
+ };
@@ -1,184 +1,14 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- var _typeof = require("@babel/runtime/helpers/typeof");
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
- exports.ToolbarDownloadButton = exports.ErrorViewDownloadButton = exports.DisabledToolbarDownloadButton = void 0;
9
- var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
10
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
11
- var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
12
- var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
13
- var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
14
- var _useAnalyticsEvents3 = require("@atlaskit/analytics-next/useAnalyticsEvents");
15
- var _download = _interopRequireDefault(require("@atlaskit/icon/core/download"));
16
- var _mediaClient = require("@atlaskit/media-client");
7
+ exports.DisabledToolbarDownloadButton = void 0;
8
+ var _react = _interopRequireDefault(require("react"));
17
9
  var _MediaButton = _interopRequireDefault(require("@atlaskit/media-ui/MediaButton"));
18
- var _messages = require("@atlaskit/media-ui/messages");
19
- var _react = _interopRequireWildcard(require("react"));
20
- var _reactIntl = require("react-intl");
21
- var _downloadButtonClicked = require("./analytics/events/ui/downloadButtonClicked");
22
- var _download2 = require("./analytics/events/operational/download");
23
- var _analytics = require("./analytics");
24
- var _failedPreviewDownloadButtonClicked = require("./analytics/events/ui/failedPreviewDownloadButtonClicked");
25
- var _styleWrappers = require("./styleWrappers");
26
- var _expValEquals = require("@atlaskit/tmp-editor-statsig/exp-val-equals");
27
- var _errors = require("./errors");
28
- var _Tooltip = _interopRequireDefault(require("@atlaskit/tooltip/Tooltip"));
29
- var _abuseModal = require("@atlaskit/media-ui/abuseModal");
30
- var _excluded = ["analyticspayload", "onClick", "tooltip"];
31
- function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
32
- var downloadIcon = /*#__PURE__*/_react.default.createElement(_download.default, {
33
- color: "currentColor",
34
- spacing: "spacious",
35
- label: "Download"
36
- });
37
- function noop() {}
38
- function DownloadButton(_ref) {
39
- var analyticspayload = _ref.analyticspayload,
40
- _ref$onClick = _ref.onClick,
41
- providedOnClick = _ref$onClick === void 0 ? noop : _ref$onClick,
42
- tooltip = _ref.tooltip,
43
- rest = (0, _objectWithoutProperties2.default)(_ref, _excluded);
44
- var _useAnalyticsEvents = (0, _useAnalyticsEvents3.useAnalyticsEvents)(),
45
- createAnalyticsEvent = _useAnalyticsEvents.createAnalyticsEvent;
46
- var onClick = (0, _react.useCallback)(function (event, analyticsEvent) {
47
- (0, _analytics.fireAnalytics)(analyticspayload, createAnalyticsEvent);
48
- providedOnClick(event, analyticsEvent);
49
- }, [analyticspayload, providedOnClick, createAnalyticsEvent]);
50
- var downloadButton = /*#__PURE__*/_react.default.createElement(_MediaButton.default, (0, _extends2.default)({}, rest, {
51
- onClick: onClick
52
- }));
53
- return tooltip ? /*#__PURE__*/_react.default.createElement(_Tooltip.default, {
54
- content: tooltip,
55
- position: "bottom",
56
- tag: "span"
57
- }, downloadButton) : downloadButton;
58
- }
59
- var createItemDownloader = function createItemDownloader(file, mediaClient, options) {
60
- return /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
61
- var collectionName, traceContext, createAnalyticsEvent, fallbackMediaName, id, fileStateName, name;
62
- return _regenerator.default.wrap(function (_context) {
63
- while (1) switch (_context.prev = _context.next) {
64
- case 0:
65
- collectionName = options.collectionName, traceContext = options.traceContext, createAnalyticsEvent = options.createAnalyticsEvent, fallbackMediaName = options.fallbackMediaName;
66
- id = file.id;
67
- fileStateName = !(0, _mediaClient.isErrorFileState)(file) ? file.name : undefined;
68
- name = fileStateName || ((0, _expValEquals.expValEquals)('platform_editor_media_download_fallback_name', 'isEnabled', true) ? fallbackMediaName : undefined);
69
- mediaClient.file.downloadBinary(id, name, collectionName, traceContext).then(function () {
70
- (0, _analytics.fireAnalytics)((0, _download2.createDownloadSucceededEventPayload)(file, traceContext), createAnalyticsEvent);
71
- }).catch(function (e) {
72
- (0, _analytics.fireAnalytics)((0, _download2.createDownloadFailedEventPayload)(file.id, new _errors.MediaViewerError('download', e), file, traceContext), createAnalyticsEvent);
73
- });
74
- case 1:
75
- case "end":
76
- return _context.stop();
77
- }
78
- }, _callee);
79
- }));
80
- };
81
- var useDownloadButtonDisabledProps = function useDownloadButtonDisabledProps(mediaClient) {
82
- var _useIntl = (0, _reactIntl.useIntl)(),
83
- formatMessage = _useIntl.formatMessage;
84
- var isDisabled = mediaClient.config.enforceDataSecurityPolicy;
85
- var tooltip = isDisabled ? formatMessage(_messages.messages.download_disabled_security_policy) : undefined;
86
- return {
87
- isDisabled: isDisabled,
88
- tooltip: tooltip
89
- };
90
- };
91
- var DownloadItem = function DownloadItem(_ref3) {
92
- var testId = _ref3.testId,
93
- fileState = _ref3.fileState,
94
- mediaClient = _ref3.mediaClient,
95
- collectionName = _ref3.collectionName,
96
- appearance = _ref3.appearance,
97
- analyticspayload = _ref3.analyticspayload,
98
- traceContext = _ref3.traceContext,
99
- iconBefore = _ref3.iconBefore,
100
- children = _ref3.children,
101
- fallbackMediaName = _ref3.fallbackMediaName;
102
- var _useState = (0, _react.useState)(false),
103
- _useState2 = (0, _slicedToArray2.default)(_useState, 2),
104
- isAbuseModalOpen = _useState2[0],
105
- setIsAbuseModalOpen = _useState2[1];
106
- var _useAnalyticsEvents2 = (0, _useAnalyticsEvents3.useAnalyticsEvents)(),
107
- createAnalyticsEvent = _useAnalyticsEvents2.createAnalyticsEvent;
108
- var _useDownloadButtonDis = useDownloadButtonDisabledProps(mediaClient),
109
- isDisabled = _useDownloadButtonDis.isDisabled,
110
- tooltip = _useDownloadButtonDis.tooltip;
111
- var shouldRenderAbuseModal = !(0, _mediaClient.isErrorFileState)(fileState) && !!fileState.abuseClassification;
112
- var itemDownloader = createItemDownloader(fileState, mediaClient, {
113
- collectionName: collectionName,
114
- createAnalyticsEvent: createAnalyticsEvent,
115
- traceContext: traceContext,
116
- fallbackMediaName: fallbackMediaName
117
- });
118
- return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, shouldRenderAbuseModal && /*#__PURE__*/_react.default.createElement(_abuseModal.AbuseModal, {
119
- isOpen: isAbuseModalOpen,
120
- onConfirm: itemDownloader,
121
- onClose: function onClose() {
122
- return setIsAbuseModalOpen(false);
123
- }
124
- }), /*#__PURE__*/_react.default.createElement(DownloadButton, {
125
- testId: testId,
126
- appearance: appearance,
127
- analyticspayload: analyticspayload,
128
- isDisabled: isDisabled,
129
- tooltip: tooltip,
130
- onClick: function onClick() {
131
- if (shouldRenderAbuseModal) {
132
- setIsAbuseModalOpen(true);
133
- } else {
134
- itemDownloader();
135
- }
136
- },
137
- iconBefore: iconBefore
138
- }, children));
139
- };
140
- var ErrorViewDownloadButton = exports.ErrorViewDownloadButton = function ErrorViewDownloadButton(_ref4) {
141
- var fileState = _ref4.fileState,
142
- mediaClient = _ref4.mediaClient,
143
- error = _ref4.error,
144
- traceContext = _ref4.traceContext,
145
- collectionName = _ref4.collectionName;
146
- var downloadEvent = (0, _failedPreviewDownloadButtonClicked.createFailedPreviewDownloadButtonClickedEvent)(fileState, error);
147
- var testId = 'media-viewer-error-download-button';
148
- return /*#__PURE__*/_react.default.createElement(_styleWrappers.DownloadButtonWrapper, null, /*#__PURE__*/_react.default.createElement(DownloadItem, {
149
- testId: testId,
150
- analyticspayload: downloadEvent,
151
- appearance: "primary",
152
- fileState: fileState,
153
- mediaClient: mediaClient,
154
- collectionName: collectionName,
155
- traceContext: traceContext
156
- }, /*#__PURE__*/_react.default.createElement(_reactIntl.FormattedMessage, _messages.messages.download)));
157
- };
158
- var ToolbarDownloadButton = exports.ToolbarDownloadButton = function ToolbarDownloadButton(_ref5) {
159
- var state = _ref5.state,
160
- mediaClient = _ref5.mediaClient,
161
- identifier = _ref5.identifier,
162
- traceContext = _ref5.traceContext,
163
- fallbackMediaName = _ref5.fallbackMediaName;
164
- // TODO [MS-1731]: make it work for external files as well
165
- if ((0, _mediaClient.isExternalImageIdentifier)(identifier)) {
166
- return null;
167
- }
168
- var downloadEvent = (0, _downloadButtonClicked.createDownloadButtonClickedEvent)(state);
169
- var testId = 'media-viewer-download-button';
170
- return /*#__PURE__*/_react.default.createElement(DownloadItem, {
171
- testId: testId,
172
- analyticspayload: downloadEvent,
173
- fileState: state,
174
- mediaClient: mediaClient,
175
- collectionName: identifier.collectionName,
176
- traceContext: traceContext,
177
- iconBefore: downloadIcon,
178
- fallbackMediaName: fallbackMediaName
179
- });
180
- };
10
+ var _downloadIcon = require("./downloadIcon");
181
11
  var DisabledToolbarDownloadButton = exports.DisabledToolbarDownloadButton = /*#__PURE__*/_react.default.createElement(_MediaButton.default, {
182
12
  isDisabled: true,
183
- iconBefore: downloadIcon
13
+ iconBefore: _downloadIcon.downloadIcon
184
14
  });
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.downloadIcon = void 0;
8
+ var _react = _interopRequireDefault(require("react"));
9
+ var _download = _interopRequireDefault(require("@atlaskit/icon/core/download"));
10
+ var downloadIcon = exports.downloadIcon = /*#__PURE__*/_react.default.createElement(_download.default, {
11
+ color: "currentColor",
12
+ spacing: "spacious",
13
+ label: "Download"
14
+ });
@@ -4,7 +4,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
- exports.getErrorMessageFromError = exports.errorReasonToMessages = exports.default = exports.ErrorMessage = void 0;
7
+ exports.errorReasonToMessages = exports.ErrorMessage = void 0;
8
8
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
9
9
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
10
10
  var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
@@ -14,16 +14,16 @@ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/de
14
14
  var _react = _interopRequireDefault(require("react"));
15
15
  var _reactIntl = require("react-intl");
16
16
  var _messages = require("@atlaskit/media-ui/messages");
17
- var _withAnalyticsEvents = _interopRequireDefault(require("@atlaskit/analytics-next/withAnalyticsEvents"));
18
17
  var _fg = require("@atlaskit/platform-feature-flags/fg");
19
- var _styleWrappers = require("./styleWrappers");
20
- var _errorImages = require("./error-images");
21
- var _analytics = require("./analytics");
22
- var _errors = require("./errors");
23
18
  var _loadFailed = require("./analytics/events/operational/loadFailed");
24
- var _previewUnsupported = require("./analytics/events/operational/previewUnsupported");
25
19
  var _previewTooLarge = require("./analytics/events/operational/previewTooLarge");
20
+ var _previewUnsupported = require("./analytics/events/operational/previewUnsupported");
21
+ var _fireAnalytics = require("./analytics/fireAnalytics");
26
22
  var _ufoExperiences = require("./analytics/ufoExperiences");
23
+ var _errorImages = require("./error-images");
24
+ var _getErrorMessageFromError = require("./getErrorMessageFromError");
25
+ var _getPrimaryErrorReason = require("./getPrimaryErrorReason");
26
+ var _styleWrappers = require("./styleWrappers");
27
27
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
28
28
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
29
29
  function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2.default)(o), (0, _possibleConstructorReturn2.default)(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2.default)(t).constructor) : o.apply(t, e)); }
@@ -35,12 +35,6 @@ var errorLoadingFileImage = function errorLoadingFileImage(formatMessage) {
35
35
  });
36
36
  };
37
37
  var errorReasonToMessages = exports.errorReasonToMessages = [['serverRateLimited', _messages.messages.might_be_a_hiccup], ['invalidFileId', _messages.messages.item_not_found_in_list], ['itemviewer-file-failed-processing-status', _messages.messages.image_format_invalid_error], ['archiveviewer-read-binary', _messages.messages.zip_entry_load_fail], ['archiveviewer-create-url', _messages.messages.zip_entry_load_fail], ['archiveviewer-missing-name-src', _messages.messages.zip_entry_load_fail], ['archiveviewer-encrypted-entry', _messages.messages.couldnt_generate_encrypted_entry_preview], ['archiveviewer-codeviewer-file-size-exceeds', _messages.messages.couldnt_load_file], ['codeviewer-file-size-exceeds', _messages.messages.couldnt_load_file]];
38
- var getErrorMessageFromError = exports.getErrorMessageFromError = function getErrorMessageFromError(error) {
39
- var matchingRow = errorReasonToMessages.find(function (row) {
40
- return row[0] === (0, _errors.getPrimaryErrorReason)(error) || row[0] === (0, _errors.getSecondaryErrorReason)(error);
41
- });
42
- return matchingRow ? matchingRow[1] : undefined;
43
- };
44
38
  var ErrorMessage = exports.ErrorMessage = /*#__PURE__*/function (_React$Component) {
45
39
  function ErrorMessage() {
46
40
  (0, _classCallCheck2.default)(this, ErrorMessage);
@@ -58,7 +52,7 @@ var ErrorMessage = exports.ErrorMessage = /*#__PURE__*/function (_React$Componen
58
52
  // browser-based viewer simply can't preview them. Show a dedicated
59
53
  // "Unsupported file format" heading instead of the generic
60
54
  // "Something went wrong" copy.
61
- if ((0, _errors.getPrimaryErrorReason)(error) === 'archiveviewer-not-zip' || (0, _errors.getPrimaryErrorReason)(error) === 'imageviewer-unsupported-mime') {
55
+ if ((0, _getPrimaryErrorReason.getPrimaryErrorReason)(error) === 'archiveviewer-not-zip' || (0, _getPrimaryErrorReason.getPrimaryErrorReason)(error) === 'imageviewer-unsupported-mime') {
62
56
  return {
63
57
  icon: errorLoadingFileImage(formatMessage),
64
58
  messages: [_messages.messages.unsupported_file_format, _messages.messages.archive_format_not_supported]
@@ -79,7 +73,7 @@ var ErrorMessage = exports.ErrorMessage = /*#__PURE__*/function (_React$Componen
79
73
  icon: errorLoadingFileImage(formatMessage),
80
74
  messages: [_messages.messages.something_went_wrong, _messages.messages.couldnt_generate_preview]
81
75
  };
82
- var message = getErrorMessageFromError(error);
76
+ var message = (0, _getErrorMessageFromError.getErrorMessageFromError)(error);
83
77
  if (message) {
84
78
  errorInfo.messages.push(message);
85
79
  }
@@ -98,7 +92,7 @@ var ErrorMessage = exports.ErrorMessage = /*#__PURE__*/function (_React$Componen
98
92
  fileStateFlags = props.fileStateFlags;
99
93
  if (supressAnalytics !== true) {
100
94
  var payload = ErrorMessage.getEventPayload(error, fileId, fileState, traceContext);
101
- (0, _analytics.fireAnalytics)(payload, createAnalyticsEvent);
95
+ (0, _fireAnalytics.fireAnalytics)(payload, createAnalyticsEvent);
102
96
  var rawPayload = _objectSpread(_objectSpread({}, payload === null || payload === void 0 ? void 0 : payload.attributes), {}, {
103
97
  fileStateFlags: fileStateFlags
104
98
  });
@@ -132,7 +126,7 @@ var ErrorMessage = exports.ErrorMessage = /*#__PURE__*/function (_React$Componen
132
126
  }], [{
133
127
  key: "isPreviewUnsupported",
134
128
  value: function isPreviewUnsupported(error) {
135
- return ErrorMessage.previewUnsupportedReasons.includes((0, _errors.getPrimaryErrorReason)(error));
129
+ return ErrorMessage.previewUnsupportedReasons.includes((0, _getPrimaryErrorReason.getPrimaryErrorReason)(error));
136
130
  }
137
131
 
138
132
  // Error reasons that mean the file exceeds the size limit supported by the
@@ -141,7 +135,7 @@ var ErrorMessage = exports.ErrorMessage = /*#__PURE__*/function (_React$Componen
141
135
  }, {
142
136
  key: "isPreviewTooLarge",
143
137
  value: function isPreviewTooLarge(error) {
144
- return ErrorMessage.previewTooLargeReasons.includes((0, _errors.getPrimaryErrorReason)(error));
138
+ return ErrorMessage.previewTooLargeReasons.includes((0, _getPrimaryErrorReason.getPrimaryErrorReason)(error));
145
139
  }
146
140
  }, {
147
141
  key: "getEventPayload",
@@ -157,8 +151,6 @@ var ErrorMessage = exports.ErrorMessage = /*#__PURE__*/function (_React$Componen
157
151
  }
158
152
  }
159
153
  }]);
160
- }(_react.default.Component); // @ts-ignore: [PIT-1685] Fails in post-office due to backwards incompatibility issue with React 18
154
+ }(_react.default.Component);
161
155
  (0, _defineProperty2.default)(ErrorMessage, "previewUnsupportedReasons", ['unsupported', 'imageviewer-unsupported-mime']);
162
- (0, _defineProperty2.default)(ErrorMessage, "previewTooLargeReasons", ['codeviewer-file-size-exceeds', 'archiveviewer-codeviewer-file-size-exceeds']);
163
- var ErroMsg = (0, _withAnalyticsEvents.default)()((0, _reactIntl.injectIntl)(ErrorMessage));
164
- var _default = exports.default = ErroMsg;
156
+ (0, _defineProperty2.default)(ErrorMessage, "previewTooLargeReasons", ['codeviewer-file-size-exceeds', 'archiveviewer-codeviewer-file-size-exceeds']);
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = void 0;
8
+ var _reactIntl = require("react-intl");
9
+ var _withAnalyticsEvents = _interopRequireDefault(require("@atlaskit/analytics-next/withAnalyticsEvents"));
10
+ var _errorMessage = require("./errorMessage");
11
+ // @ts-ignore: [PIT-1685] Fails in post-office due to backwards incompatibility issue with React 18
12
+ var ErroMsg = (0, _withAnalyticsEvents.default)()((0, _reactIntl.injectIntl)(_errorMessage.ErrorMessage));
13
+ var _default = exports.default = ErroMsg;
@@ -1,216 +1,5 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
3
  Object.defineProperty(exports, "__esModule", {
5
4
  value: true
6
- });
7
- exports.MediaViewerError = exports.ArchiveViewerError = void 0;
8
- exports.buildImgErrorDiagnostics = buildImgErrorDiagnostics;
9
- exports.buildVideoErrorDiagnostics = buildVideoErrorDiagnostics;
10
- exports.classifyFailedSrc = classifyFailedSrc;
11
- exports.getErrorDetail = getErrorDetail;
12
- exports.getPrimaryErrorReason = getPrimaryErrorReason;
13
- exports.getRequestMetadata = getRequestMetadata;
14
- exports.getSecondaryErrorReason = getSecondaryErrorReason;
15
- exports.isArchiveViewerError = isArchiveViewerError;
16
- exports.isMediaViewerError = isMediaViewerError;
17
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
18
- var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
19
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
20
- var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
21
- var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
22
- var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
23
- var _wrapNativeSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/wrapNativeSuper"));
24
- var _mediaClient = require("@atlaskit/media-client");
25
- var _isMimeTypeSupportedByBrowser = require("@atlaskit/media-common/isMimeTypeSupportedByBrowser");
26
- function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2.default)(o), (0, _possibleConstructorReturn2.default)(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2.default)(t).constructor) : o.apply(t, e)); }
27
- function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
28
- var MediaViewerError = exports.MediaViewerError = /*#__PURE__*/function (_Error) {
29
- function MediaViewerError(primaryReason, secondaryError) {
30
- var _this;
31
- (0, _classCallCheck2.default)(this, MediaViewerError);
32
- _this = _callSuper(this, MediaViewerError, [primaryReason]);
33
-
34
- // https://www.typescriptlang.org/docs/handbook/release-notes/typescript-2-2.html#support-for-newtarget
35
- _this.primaryReason = primaryReason;
36
- _this.secondaryError = secondaryError;
37
- Object.setPrototypeOf(_this, (this instanceof MediaViewerError ? this.constructor : void 0).prototype);
38
-
39
- // https://v8.dev/docs/stack-trace-api
40
- if ('captureStackTrace' in Error) {
41
- Error.captureStackTrace(_this, this instanceof MediaViewerError ? this.constructor : void 0);
42
- }
43
- return _this;
44
- }
45
- (0, _inherits2.default)(MediaViewerError, _Error);
46
- return (0, _createClass2.default)(MediaViewerError);
47
- }( /*#__PURE__*/(0, _wrapNativeSuper2.default)(Error));
48
- function isMediaViewerError(err) {
49
- return err instanceof MediaViewerError;
50
- }
51
- var ArchiveViewerError = exports.ArchiveViewerError = /*#__PURE__*/function (_MediaViewerError) {
52
- function ArchiveViewerError(primaryReason, secondaryError, zipEntry) {
53
- var _this2;
54
- (0, _classCallCheck2.default)(this, ArchiveViewerError);
55
- _this2 = _callSuper(this, ArchiveViewerError, [primaryReason, secondaryError]);
56
- _this2.primaryReason = primaryReason;
57
- _this2.secondaryError = secondaryError;
58
- _this2.zipEntry = zipEntry;
59
- return _this2;
60
- }
61
- (0, _inherits2.default)(ArchiveViewerError, _MediaViewerError);
62
- return (0, _createClass2.default)(ArchiveViewerError);
63
- }(MediaViewerError);
64
- function isArchiveViewerError(err) {
65
- return err instanceof ArchiveViewerError;
66
- }
67
- // not supplied, so just a primary reason
68
-
69
- function getPrimaryErrorReason(error) {
70
- return error.primaryReason;
71
- }
72
- function getSecondaryErrorReason(error) {
73
- var secondaryError = error.secondaryError;
74
- if ((0, _mediaClient.isCommonMediaClientError)(secondaryError)) {
75
- return secondaryError.reason;
76
- } else if (secondaryError) {
77
- return 'nativeError';
78
- } else {
79
- return 'unknown';
80
- }
81
- }
82
- function getErrorDetail(error) {
83
- var _ref = error || {},
84
- secondaryError = _ref.secondaryError;
85
- if ((0, _mediaClient.isCommonMediaClientError)(secondaryError)) {
86
- var _secondaryError$inner;
87
- return ((_secondaryError$inner = secondaryError.innerError) === null || _secondaryError$inner === void 0 ? void 0 : _secondaryError$inner.message) || 'unknown';
88
- } else if (secondaryError) {
89
- return secondaryError.message;
90
- }
91
- return 'unknown';
92
- }
93
- function getRequestMetadata(error) {
94
- var _ref2 = error || {},
95
- secondaryError = _ref2.secondaryError;
96
- if ((0, _mediaClient.isCommonMediaClientError)(secondaryError)) {
97
- return secondaryError.metadata;
98
- }
99
- }
100
-
101
- /**
102
- * Classifies the failed `<img>` source into a coarse, non-sensitive enum so we can
103
- * tell which kind of source failed without leaking the (potentially signed) url.
104
- */
105
- function classifyFailedSrc(currentSrc) {
106
- if (!currentSrc) {
107
- return 'unknown';
108
- }
109
- if (currentSrc.startsWith('blob:')) {
110
- return 'blob';
111
- }
112
- if (currentSrc.startsWith('data:')) {
113
- return 'data';
114
- }
115
- if (currentSrc.startsWith('http:') || currentSrc.startsWith('https:')) {
116
- return 'remote';
117
- }
118
- return 'unknown';
119
- }
120
-
121
- /**
122
- * Builds a descriptive `secondaryError` for an `<img>` onerror so the downstream
123
- * `loadFailed` analytics event reports a meaningful `error`/`errorDetail` instead of
124
- * the opaque `unknown`/`unknown`. The returned Error's `message` captures decode
125
- * diagnostics as a comma-separated `key=value` string (undefined fields are omitted):
126
- * - whether the browser decoded any pixels (`naturalWidth`/`naturalHeight === 0`)
127
- * - the file MIME type and whether it is natively browser-decodable
128
- * - which source failed (preview blob vs. original-binary/HD url)
129
- *
130
- * @example
131
- * // message:
132
- * "mimeType=image/png, isBrowserDecodable=true, naturalWidth=0, naturalHeight=0, failedSrcType=blob"
133
- */
134
- function buildImgErrorDiagnostics(item, event) {
135
- var img = event === null || event === void 0 ? void 0 : event.currentTarget;
136
- var mimeType = item && !(0, _mediaClient.isErrorFileState)(item) ? item.mimeType : undefined;
137
- var isBrowserDecodable = !!mimeType && (0, _isMimeTypeSupportedByBrowser.isImageMimeTypeSupportedByBrowser)(mimeType);
138
- var naturalWidth = img === null || img === void 0 ? void 0 : img.naturalWidth;
139
- var naturalHeight = img === null || img === void 0 ? void 0 : img.naturalHeight;
140
- var failedSrcType = classifyFailedSrc(img === null || img === void 0 ? void 0 : img.currentSrc);
141
- var diagnostics = {
142
- mimeType: mimeType,
143
- isBrowserDecodable: isBrowserDecodable,
144
- naturalWidth: naturalWidth,
145
- naturalHeight: naturalHeight,
146
- failedSrcType: failedSrcType
147
- };
148
- var detail = Object.entries(diagnostics).filter(function (_ref3) {
149
- var _ref4 = (0, _slicedToArray2.default)(_ref3, 2),
150
- value = _ref4[1];
151
- return value !== undefined;
152
- }).map(function (_ref5) {
153
- var _ref6 = (0, _slicedToArray2.default)(_ref5, 2),
154
- key = _ref6[0],
155
- value = _ref6[1];
156
- return "".concat(key, "=").concat(value);
157
- }).join(', ');
158
- return new Error(detail);
159
- }
160
-
161
- /**
162
- * Human-readable names for the four standard `MediaError.code` values, so the
163
- * downstream analytics `error`/`errorDetail` report a meaningful cause instead of
164
- * a bare numeric code.
165
- *
166
- * @see https://developer.mozilla.org/en-US/docs/Web/API/MediaError/code
167
- */
168
- var MEDIA_ERROR_CODE_NAMES = {
169
- 1: 'MEDIA_ERR_ABORTED',
170
- 2: 'MEDIA_ERR_NETWORK',
171
- 3: 'MEDIA_ERR_DECODE',
172
- 4: 'MEDIA_ERR_SRC_NOT_SUPPORTED'
173
- };
174
-
175
- /**
176
- * Builds a descriptive `secondaryError` for a `<video>` onerror so the downstream
177
- * `loadFailed` analytics event reports a meaningful `error`/`errorDetail` instead of
178
- * the opaque `unknown`/`unknown`. The returned Error's `message` captures playback
179
- * diagnostics as a comma-separated `key=value` string (undefined fields are omitted):
180
- * - the native `MediaError.code` and its readable name (e.g. `MEDIA_ERR_DECODE`)
181
- * - the native `MediaError.message` (browser-provided detail, often empty)
182
- * - the file MIME type and whether it is natively browser-playable
183
- * - the file size in bytes (helps distinguish large-file/streaming failures)
184
- *
185
- * @example
186
- * // message:
187
- * "mediaErrorCode=3, mediaErrorName=MEDIA_ERR_DECODE, mimeType=video/quicktime, isBrowserPlayable=false, fileSize=734003200"
188
- */
189
- function buildVideoErrorDiagnostics(item, mediaError) {
190
- var mimeType = item && !(0, _mediaClient.isErrorFileState)(item) ? item.mimeType : undefined;
191
- var isBrowserPlayable = mimeType ? (0, _isMimeTypeSupportedByBrowser.isVideoMimeTypeSupportedByBrowser)(mimeType) : undefined;
192
- var fileSize = item && !(0, _mediaClient.isErrorFileState)(item) ? item.size : undefined;
193
- var mediaErrorCode = mediaError === null || mediaError === void 0 ? void 0 : mediaError.code;
194
- var mediaErrorName = mediaErrorCode !== undefined ? MEDIA_ERROR_CODE_NAMES[mediaErrorCode] : undefined;
195
- // A native MediaError.message can be empty; only include it when present.
196
- var mediaErrorMessage = (mediaError === null || mediaError === void 0 ? void 0 : mediaError.message) || undefined;
197
- var diagnostics = {
198
- mediaErrorCode: mediaErrorCode,
199
- mediaErrorName: mediaErrorName,
200
- mediaErrorMessage: mediaErrorMessage,
201
- mimeType: mimeType,
202
- isBrowserPlayable: isBrowserPlayable,
203
- fileSize: fileSize
204
- };
205
- var detail = Object.entries(diagnostics).filter(function (_ref7) {
206
- var _ref8 = (0, _slicedToArray2.default)(_ref7, 2),
207
- value = _ref8[1];
208
- return value !== undefined;
209
- }).map(function (_ref9) {
210
- var _ref0 = (0, _slicedToArray2.default)(_ref9, 2),
211
- key = _ref0[0],
212
- value = _ref0[1];
213
- return "".concat(key, "=").concat(value);
214
- }).join(', ');
215
- return new Error(detail);
216
- }
5
+ });
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.getErrorDetail = getErrorDetail;
7
+ var _mediaClient = require("@atlaskit/media-client");
8
+ function getErrorDetail(error) {
9
+ var _ref = error || {},
10
+ secondaryError = _ref.secondaryError;
11
+ if ((0, _mediaClient.isCommonMediaClientError)(secondaryError)) {
12
+ var _secondaryError$inner;
13
+ return ((_secondaryError$inner = secondaryError.innerError) === null || _secondaryError$inner === void 0 ? void 0 : _secondaryError$inner.message) || 'unknown';
14
+ } else if (secondaryError) {
15
+ return secondaryError.message;
16
+ }
17
+ return 'unknown';
18
+ }
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.getErrorMessageFromError = void 0;
7
+ var _errorMessage = require("./errorMessage");
8
+ var _getPrimaryErrorReason = require("./getPrimaryErrorReason");
9
+ var _getSecondaryErrorReason = require("./getSecondaryErrorReason");
10
+ var getErrorMessageFromError = exports.getErrorMessageFromError = function getErrorMessageFromError(error) {
11
+ var matchingRow = _errorMessage.errorReasonToMessages.find(function (row) {
12
+ return row[0] === (0, _getPrimaryErrorReason.getPrimaryErrorReason)(error) || row[0] === (0, _getSecondaryErrorReason.getSecondaryErrorReason)(error);
13
+ });
14
+ return matchingRow ? matchingRow[1] : undefined;
15
+ };
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.getPrimaryErrorReason = getPrimaryErrorReason;
7
+ // not supplied, so just a primary reason
8
+ function getPrimaryErrorReason(error) {
9
+ return error.primaryReason;
10
+ }
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.getRequestMetadata = getRequestMetadata;
7
+ var _mediaClient = require("@atlaskit/media-client");
8
+ function getRequestMetadata(error) {
9
+ var _ref = error || {},
10
+ secondaryError = _ref.secondaryError;
11
+ if ((0, _mediaClient.isCommonMediaClientError)(secondaryError)) {
12
+ return secondaryError.metadata;
13
+ }
14
+ }
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.getSecondaryErrorReason = getSecondaryErrorReason;
7
+ var _mediaClient = require("@atlaskit/media-client");
8
+ function getSecondaryErrorReason(error) {
9
+ var secondaryError = error.secondaryError;
10
+ if ((0, _mediaClient.isCommonMediaClientError)(secondaryError)) {
11
+ return secondaryError.reason;
12
+ } else if (secondaryError) {
13
+ return 'nativeError';
14
+ } else {
15
+ return 'unknown';
16
+ }
17
+ }