@atlaskit/media-card 81.10.12 → 81.10.13

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 (671) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/attach-details-to-actions/package.json +10 -0
  3. package/classnames/package.json +4 -4
  4. package/create-download-action/package.json +10 -0
  5. package/dist/cjs/ImageLoadError.js +24 -0
  6. package/dist/cjs/LocalPreviewError.js +27 -0
  7. package/dist/cjs/MediaCardError.js +38 -0
  8. package/dist/cjs/RemotePreviewError.js +27 -0
  9. package/dist/cjs/SsrPreviewError.js +27 -0
  10. package/dist/cjs/card/CardBase.js +34 -0
  11. package/dist/cjs/card/CardWithPerformanceObserver.js +24 -0
  12. package/dist/cjs/card/InlinePlayerBase.js +266 -0
  13. package/dist/cjs/card/actions.js +14 -36
  14. package/dist/cjs/card/attachDetailsToActions.js +22 -0
  15. package/dist/cjs/card/card.js +5 -46
  16. package/dist/cjs/card/cardView.js +35 -30
  17. package/dist/cjs/card/createDownloadAction.js +28 -0
  18. package/dist/cjs/card/externalImageCard.js +7 -7
  19. package/dist/cjs/card/fileCard.js +33 -28
  20. package/dist/cjs/card/fireDownloadFailedEvent.js +16 -0
  21. package/dist/cjs/card/fireDownloadSucceededEvent.js +12 -0
  22. package/dist/cjs/card/fireNonCriticalErrorEvent.js +16 -0
  23. package/dist/cjs/card/fireOperationalEvent.js +41 -0
  24. package/dist/cjs/card/getCardStatus.js +1 -4
  25. package/dist/cjs/card/getPreferredVideoArtifact.js +16 -0
  26. package/dist/cjs/card/inlinePlayer.js +4 -270
  27. package/dist/cjs/card/isFinalCardStatus.js +9 -0
  28. package/dist/cjs/card/media-card-analytics-error-boundary.js +3 -3
  29. package/dist/cjs/card/svgView/svgImage-compiled.js +4 -4
  30. package/dist/cjs/card/svgView/svgViewV2.js +2 -2
  31. package/dist/cjs/card/ui/actionsBar/actionsBar.js +4 -3
  32. package/dist/cjs/card/ui/actionsBar/cardActions/cardActionIconButton.js +2 -2
  33. package/dist/cjs/card/ui/actionsBar/cardActions/cardActionsDropdownMenu.js +4 -3
  34. package/dist/cjs/card/ui/actionsBar/styles.js +2 -2
  35. package/dist/cjs/card/ui/blanket/styles.js +2 -2
  36. package/dist/cjs/card/ui/calcBreakpointSize.js +22 -0
  37. package/dist/cjs/card/ui/generateResponsiveStyles.js +12 -0
  38. package/dist/cjs/card/ui/getClickablePlayButtonStyles.js +13 -0
  39. package/dist/cjs/card/ui/getCursorStyle.js +9 -0
  40. package/dist/cjs/card/ui/getSelectableTickBoxStyles.js +13 -0
  41. package/dist/cjs/card/ui/getWrapperDimensions.js +17 -0
  42. package/dist/cjs/card/ui/getWrapperShadow.js +15 -0
  43. package/dist/cjs/card/ui/iconMessage/CheckInternetConnection.js +16 -0
  44. package/dist/cjs/card/ui/iconMessage/CreatingPreview.js +17 -0
  45. package/dist/cjs/card/ui/iconMessage/FailedToLoad.js +16 -0
  46. package/dist/cjs/card/ui/iconMessage/FailedToUpload.js +16 -0
  47. package/dist/cjs/card/ui/iconMessage/IconMessage.js +18 -0
  48. package/dist/cjs/card/ui/iconMessage/PreviewUnavailable.js +16 -0
  49. package/dist/cjs/card/ui/iconWrapper/IconWrapper-2.js +36 -0
  50. package/dist/cjs/card/ui/iconWrapper/iconWrapper-compiled.js +6 -34
  51. package/dist/cjs/card/ui/iconWrapper/iconWrapper.js +2 -2
  52. package/dist/cjs/card/ui/iconWrapper/{styles.js → iconWrapperStyles.js} +3 -8
  53. package/dist/cjs/card/ui/iconWrapper/titleBoxHeight.js +22 -0
  54. package/dist/cjs/card/ui/imageRenderer/{helpers.js → calculateDimensions.js} +5 -28
  55. package/dist/cjs/card/ui/imageRenderer/calculateInitialDimensions.js +27 -0
  56. package/dist/cjs/card/ui/imageRenderer/default-crop-dimensions.js +9 -0
  57. package/dist/cjs/card/ui/imageRenderer/default-stretchy-fit-dimensions.js +10 -0
  58. package/dist/cjs/card/ui/imageRenderer/imageRendererV2.js +7 -6
  59. package/dist/cjs/card/ui/progressBar/StyledBar-2.js +66 -0
  60. package/dist/cjs/card/ui/progressBar/generateResponsiveStyles.js +31 -0
  61. package/dist/cjs/card/ui/progressBar/getNormalizedProgress.js +9 -0
  62. package/dist/cjs/card/ui/progressBar/progressBar.js +4 -6
  63. package/dist/cjs/card/ui/progressBar/styledBar-compiled.js +10 -61
  64. package/dist/cjs/card/ui/progressBar/styledBar.js +2 -2
  65. package/dist/cjs/card/ui/progressBar/styledBarStyles.js +34 -0
  66. package/dist/cjs/card/ui/rgba.js +13 -0
  67. package/dist/cjs/card/ui/styles.js +2 -72
  68. package/dist/cjs/card/ui/titleBox/ErrorMessageWrapper.js +12 -0
  69. package/dist/cjs/card/ui/titleBox/TitleBoxFooter.js +12 -0
  70. package/dist/cjs/card/ui/titleBox/TitleBoxHeader.js +12 -0
  71. package/dist/cjs/card/ui/titleBox/TitleBoxIcon.js +12 -0
  72. package/dist/cjs/card/ui/titleBox/TitleBoxWrapper.js +12 -0
  73. package/dist/cjs/card/ui/titleBox/failedTitleBox.js +4 -3
  74. package/dist/cjs/card/ui/titleBox/styles.js +4 -56
  75. package/dist/cjs/card/ui/titleBox/titleBox.js +9 -6
  76. package/dist/cjs/card/ui/titleBox/titleBoxComponents-compiled.js +10 -2
  77. package/dist/cjs/card/ui/titleBox/titleBoxFooterStyles.js +22 -0
  78. package/dist/cjs/card/ui/titleBox/titleBoxHeaderStyles.js +22 -0
  79. package/dist/cjs/card/ui/titleBox/titleBoxWrapperStyles.js +39 -0
  80. package/dist/cjs/card/ui/transition.js +11 -0
  81. package/dist/cjs/card/ui/unhandledErrorCard/unhandledErrorCard-compiled.js +6 -6
  82. package/dist/cjs/card/ui/wrapper/styles.js +11 -4
  83. package/dist/cjs/card/useBreakpoint.js +9 -7
  84. package/dist/cjs/ensureMediaCardError.js +20 -0
  85. package/dist/cjs/errors.js +84 -122
  86. package/dist/cjs/getImageLoadPrimaryReason.js +23 -0
  87. package/dist/cjs/index.js +13 -9
  88. package/dist/cjs/inline/fireFailedOperationalEvent.js +19 -0
  89. package/dist/cjs/inline/fireSucceededOperationalEvent.js +12 -0
  90. package/dist/cjs/inline/getErrorStatusPayload.js +25 -0
  91. package/dist/cjs/inline/getFailedProcessingStatusPayload.js +23 -0
  92. package/dist/cjs/inline/getSucceededStatusPayload.js +23 -0
  93. package/dist/cjs/inline/loader.js +1 -1
  94. package/dist/cjs/inline/mediaInlineAnalyticsErrorBoundary.js +2 -2
  95. package/dist/cjs/inline/mediaInlineCard.js +19 -17
  96. package/dist/cjs/inline/mediaInlineCardAnalytics.js +35 -68
  97. package/dist/cjs/isImageLoadError.js +10 -0
  98. package/dist/cjs/isLocalPreviewError.js +10 -0
  99. package/dist/cjs/isMediaCardError.js +10 -0
  100. package/dist/cjs/isRemotePreviewError.js +10 -0
  101. package/dist/cjs/isSSRClientPreview.js +14 -0
  102. package/dist/cjs/isSSRDataPreview.js +13 -0
  103. package/dist/cjs/isSSRPreview.js +16 -0
  104. package/dist/cjs/isSSRServerPreview.js +14 -0
  105. package/dist/cjs/isUnsupportedLocalPreviewError.js +10 -0
  106. package/dist/cjs/isUploadError.js +9 -0
  107. package/dist/cjs/types.js +43 -17
  108. package/dist/cjs/utils/analytics/analytics.js +2 -258
  109. package/dist/cjs/utils/analytics/createAndFireMediaCardEvent.js +12 -0
  110. package/dist/cjs/utils/analytics/extractErrorInfo.js +18 -0
  111. package/dist/cjs/utils/analytics/fireMediaCardEvent.js +13 -0
  112. package/dist/cjs/utils/analytics/getAuthProviderFailedPayload.js +42 -0
  113. package/dist/cjs/utils/analytics/getAuthProviderSucceededPayload.js +20 -0
  114. package/dist/cjs/utils/analytics/getCacheHitEventPayload.js +16 -0
  115. package/dist/cjs/utils/analytics/getDownloadFailedEventPayload.js +29 -0
  116. package/dist/cjs/utils/analytics/getDownloadSucceededEventPayload.js +20 -0
  117. package/dist/cjs/utils/analytics/getErrorEventPayload.js +30 -0
  118. package/dist/cjs/utils/analytics/getErrorTraceContext.js +14 -0
  119. package/dist/cjs/utils/analytics/getFileAttributes.js +15 -0
  120. package/dist/cjs/utils/analytics/getRemoteSuccessEventPayload.js +16 -0
  121. package/dist/cjs/utils/analytics/getRenderErrorErrorDetail.js +19 -0
  122. package/dist/cjs/utils/analytics/getRenderErrorErrorReason.js +14 -0
  123. package/dist/cjs/utils/analytics/getRenderErrorEventPayload.js +31 -0
  124. package/dist/cjs/utils/analytics/getRenderErrorFailReason.js +9 -0
  125. package/dist/cjs/utils/analytics/getRenderErrorRequestMetadata.js +13 -0
  126. package/dist/cjs/utils/analytics/getRenderFailedExternalUriPayload.js +19 -0
  127. package/dist/cjs/utils/analytics/getRenderFailedFileStatusPayload.js +25 -0
  128. package/dist/cjs/utils/analytics/getRenderSucceededEventPayload.js +31 -0
  129. package/dist/cjs/utils/analytics/index.js +1 -126
  130. package/dist/cjs/utils/{dimensionComparer.js → canCompareDimension.js} +2 -11
  131. package/dist/cjs/utils/getDataURIDimension.js +4 -43
  132. package/dist/cjs/utils/getRequestedDimensions.js +15 -0
  133. package/dist/cjs/utils/globalScope/generateScriptProps.js +23 -0
  134. package/dist/cjs/utils/globalScope/getKey.js +15 -0
  135. package/dist/cjs/utils/globalScope/getMediaCardSSR.js +17 -0
  136. package/dist/cjs/utils/globalScope/getMediaGlobalScope.js +15 -0
  137. package/dist/cjs/utils/globalScope/getSSRData.js +4 -3
  138. package/dist/cjs/utils/globalScope/globalScope.js +2 -55
  139. package/dist/cjs/utils/globalScope/storeDataURI.js +16 -0
  140. package/dist/cjs/utils/isBigger.js +16 -0
  141. package/dist/cjs/utils/mediaPerformanceObserver/CommonMetrics.js +5 -0
  142. package/dist/cjs/utils/mediaPerformanceObserver/Marks.js +1 -0
  143. package/dist/cjs/utils/mediaPerformanceObserver/createMediaDurationMetrics.js +78 -0
  144. package/dist/cjs/utils/mediaPerformanceObserver/createUfoDurationMetrics.js +33 -0
  145. package/dist/cjs/utils/mediaPerformanceObserver/durationMetrics.js +1 -154
  146. package/dist/cjs/utils/mediaPerformanceObserver/getCommonMetrics.js +66 -0
  147. package/dist/cjs/utils/mediaPerformanceObserver/mediaPerformanceObserver.js +2 -89
  148. package/dist/cjs/utils/mediaPerformanceObserver/setAnalyticsContext.js +13 -0
  149. package/dist/cjs/utils/mediaPerformanceObserver/startResourceObserver.js +89 -0
  150. package/dist/cjs/utils/printFunctionCall.js +29 -0
  151. package/dist/cjs/utils/printScript.js +1 -24
  152. package/dist/cjs/utils/resolveCardPreviewDimension.js +26 -0
  153. package/dist/cjs/utils/resolveCardPreviewDimensions.js +15 -0
  154. package/dist/cjs/utils/ufoExperiences.js +24 -16
  155. package/dist/es2019/ImageLoadError.js +7 -0
  156. package/dist/es2019/LocalPreviewError.js +8 -0
  157. package/dist/es2019/MediaCardError.js +18 -0
  158. package/dist/es2019/RemotePreviewError.js +8 -0
  159. package/dist/es2019/SsrPreviewError.js +8 -0
  160. package/dist/es2019/card/CardBase.js +26 -0
  161. package/dist/es2019/card/CardWithPerformanceObserver.js +17 -0
  162. package/dist/es2019/card/InlinePlayerBase.js +192 -0
  163. package/dist/es2019/card/actions.js +10 -32
  164. package/dist/es2019/card/attachDetailsToActions.js +11 -0
  165. package/dist/es2019/card/card.js +3 -41
  166. package/dist/es2019/card/cardView.js +26 -21
  167. package/dist/es2019/card/createDownloadAction.js +21 -0
  168. package/dist/es2019/card/externalImageCard.js +5 -5
  169. package/dist/es2019/card/fileCard.js +22 -17
  170. package/dist/es2019/card/fireDownloadFailedEvent.js +7 -0
  171. package/dist/es2019/card/fireDownloadSucceededEvent.js +6 -0
  172. package/dist/es2019/card/fireNonCriticalErrorEvent.js +7 -0
  173. package/dist/es2019/card/{cardAnalytics.js → fireOperationalEvent.js} +5 -15
  174. package/dist/es2019/card/getCardStatus.js +0 -1
  175. package/dist/es2019/card/getPreferredVideoArtifact.js +12 -0
  176. package/dist/es2019/card/inlinePlayer.js +2 -203
  177. package/dist/es2019/card/isFinalCardStatus.js +1 -0
  178. package/dist/es2019/card/media-card-analytics-error-boundary.js +2 -2
  179. package/dist/es2019/card/svgView/svgImage-compiled.js +3 -3
  180. package/dist/es2019/card/svgView/svgViewV2.js +2 -1
  181. package/dist/es2019/card/ui/actionsBar/actionsBar.js +2 -1
  182. package/dist/es2019/card/ui/actionsBar/cardActions/cardActionIconButton.js +1 -1
  183. package/dist/es2019/card/ui/actionsBar/cardActions/cardActionsDropdownMenu.js +2 -1
  184. package/dist/es2019/card/ui/actionsBar/styles.js +1 -1
  185. package/dist/es2019/card/ui/blanket/styles.js +1 -1
  186. package/dist/es2019/card/ui/calcBreakpointSize.js +6 -0
  187. package/dist/es2019/card/ui/generateResponsiveStyles.js +8 -0
  188. package/dist/es2019/card/ui/getClickablePlayButtonStyles.js +11 -0
  189. package/dist/es2019/card/ui/getCursorStyle.js +1 -0
  190. package/dist/es2019/card/ui/getSelectableTickBoxStyles.js +11 -0
  191. package/dist/es2019/card/ui/getWrapperDimensions.js +20 -0
  192. package/dist/es2019/card/ui/getWrapperShadow.js +9 -0
  193. package/dist/es2019/card/ui/iconMessage/CheckInternetConnection.js +7 -0
  194. package/dist/es2019/card/ui/iconMessage/CreatingPreview.js +9 -0
  195. package/dist/es2019/card/ui/iconMessage/FailedToLoad.js +7 -0
  196. package/dist/es2019/card/ui/iconMessage/FailedToUpload.js +7 -0
  197. package/dist/es2019/card/ui/iconMessage/IconMessage.js +11 -0
  198. package/dist/es2019/card/ui/iconMessage/PreviewUnavailable.js +7 -0
  199. package/dist/es2019/card/ui/iconWrapper/IconWrapper-2.js +30 -0
  200. package/dist/es2019/card/ui/iconWrapper/iconWrapper-compiled.js +5 -28
  201. package/dist/es2019/card/ui/iconWrapper/iconWrapper.js +1 -1
  202. package/dist/es2019/card/ui/iconWrapper/{styles.js → iconWrapperStyles.js} +5 -9
  203. package/dist/es2019/card/ui/iconWrapper/titleBoxHeight.js +16 -0
  204. package/dist/es2019/card/ui/imageRenderer/{helpers.js → calculateDimensions.js} +2 -25
  205. package/dist/es2019/card/ui/imageRenderer/calculateInitialDimensions.js +21 -0
  206. package/dist/es2019/card/ui/imageRenderer/default-crop-dimensions.js +3 -0
  207. package/dist/es2019/card/ui/imageRenderer/default-stretchy-fit-dimensions.js +4 -0
  208. package/dist/es2019/card/ui/imageRenderer/imageRendererV2.js +4 -3
  209. package/dist/es2019/card/ui/progressBar/StyledBar-2.js +54 -0
  210. package/dist/es2019/card/ui/progressBar/generateResponsiveStyles.js +25 -0
  211. package/dist/es2019/card/ui/progressBar/getNormalizedProgress.js +3 -0
  212. package/dist/es2019/card/ui/progressBar/progressBar.js +2 -4
  213. package/dist/es2019/card/ui/progressBar/styledBar-compiled.js +8 -52
  214. package/dist/es2019/card/ui/progressBar/styledBar.js +1 -1
  215. package/dist/es2019/card/ui/progressBar/{styles.js → styledBarStyles.js} +8 -21
  216. package/dist/es2019/card/ui/rgba.js +5 -0
  217. package/dist/es2019/card/ui/styles.js +1 -75
  218. package/dist/es2019/card/ui/titleBox/ErrorMessageWrapper.js +3 -0
  219. package/dist/es2019/card/ui/titleBox/TitleBoxFooter.js +3 -0
  220. package/dist/es2019/card/ui/titleBox/TitleBoxHeader.js +3 -0
  221. package/dist/es2019/card/ui/titleBox/TitleBoxIcon.js +3 -0
  222. package/dist/es2019/card/ui/titleBox/TitleBoxWrapper.js +3 -0
  223. package/dist/es2019/card/ui/titleBox/failedTitleBox.js +2 -1
  224. package/dist/es2019/card/ui/titleBox/styles.js +4 -52
  225. package/dist/es2019/card/ui/titleBox/titleBox.js +5 -2
  226. package/dist/es2019/card/ui/titleBox/titleBoxComponents-compiled.js +9 -1
  227. package/dist/es2019/card/ui/titleBox/titleBoxFooterStyles.js +14 -0
  228. package/dist/es2019/card/ui/titleBox/titleBoxHeaderStyles.js +14 -0
  229. package/dist/es2019/card/ui/titleBox/titleBoxWrapperStyles.js +30 -0
  230. package/dist/es2019/card/ui/transition.js +4 -0
  231. package/dist/es2019/card/ui/unhandledErrorCard/unhandledErrorCard-compiled.js +1 -1
  232. package/dist/es2019/card/ui/wrapper/styles.js +12 -5
  233. package/dist/es2019/card/useBreakpoint.js +4 -3
  234. package/dist/es2019/ensureMediaCardError.js +15 -0
  235. package/dist/es2019/errors.js +52 -83
  236. package/dist/es2019/getImageLoadPrimaryReason.js +17 -0
  237. package/dist/es2019/index.js +6 -3
  238. package/dist/es2019/inline/fireFailedOperationalEvent.js +10 -0
  239. package/dist/es2019/inline/fireSucceededOperationalEvent.js +6 -0
  240. package/dist/es2019/inline/getErrorStatusPayload.js +16 -0
  241. package/dist/es2019/inline/getFailedProcessingStatusPayload.js +17 -0
  242. package/dist/es2019/inline/getSucceededStatusPayload.js +17 -0
  243. package/dist/es2019/inline/loader.js +1 -1
  244. package/dist/es2019/inline/mediaInlineAnalyticsErrorBoundary.js +1 -1
  245. package/dist/es2019/inline/mediaInlineCard.js +11 -9
  246. package/dist/es2019/inline/mediaInlineCardAnalytics.js +21 -61
  247. package/dist/es2019/isImageLoadError.js +4 -0
  248. package/dist/es2019/isLocalPreviewError.js +2 -0
  249. package/dist/es2019/isMediaCardError.js +4 -0
  250. package/dist/es2019/isRemotePreviewError.js +2 -0
  251. package/dist/es2019/isSSRClientPreview.js +8 -0
  252. package/dist/es2019/isSSRDataPreview.js +5 -0
  253. package/dist/es2019/isSSRPreview.js +8 -0
  254. package/dist/es2019/isSSRServerPreview.js +8 -0
  255. package/dist/es2019/isUnsupportedLocalPreviewError.js +2 -0
  256. package/dist/es2019/isUploadError.js +1 -0
  257. package/dist/es2019/types.js +18 -11
  258. package/dist/es2019/utils/analytics/analytics.js +1 -248
  259. package/dist/es2019/utils/analytics/createAndFireMediaCardEvent.js +5 -0
  260. package/dist/es2019/utils/analytics/extractErrorInfo.js +12 -0
  261. package/dist/es2019/utils/analytics/fireMediaCardEvent.js +7 -0
  262. package/dist/es2019/utils/analytics/getAuthProviderFailedPayload.js +33 -0
  263. package/dist/es2019/utils/analytics/getAuthProviderSucceededPayload.js +12 -0
  264. package/dist/es2019/utils/analytics/getCacheHitEventPayload.js +8 -0
  265. package/dist/es2019/utils/analytics/getDownloadFailedEventPayload.js +19 -0
  266. package/dist/es2019/utils/analytics/getDownloadSucceededEventPayload.js +12 -0
  267. package/dist/es2019/utils/analytics/getErrorEventPayload.js +20 -0
  268. package/dist/es2019/utils/analytics/getErrorTraceContext.js +10 -0
  269. package/dist/es2019/utils/analytics/getFileAttributes.js +7 -0
  270. package/dist/es2019/utils/analytics/getRemoteSuccessEventPayload.js +8 -0
  271. package/dist/es2019/utils/analytics/getRenderErrorErrorDetail.js +15 -0
  272. package/dist/es2019/utils/analytics/getRenderErrorErrorReason.js +10 -0
  273. package/dist/es2019/utils/analytics/getRenderErrorEventPayload.js +21 -0
  274. package/dist/es2019/utils/analytics/getRenderErrorFailReason.js +3 -0
  275. package/dist/es2019/utils/analytics/getRenderErrorRequestMetadata.js +9 -0
  276. package/dist/es2019/utils/analytics/getRenderFailedExternalUriPayload.js +11 -0
  277. package/dist/es2019/utils/analytics/getRenderFailedFileStatusPayload.js +17 -0
  278. package/dist/es2019/utils/analytics/getRenderSucceededEventPayload.js +23 -0
  279. package/dist/es2019/utils/analytics/index.js +0 -1
  280. package/dist/es2019/utils/{dimensionComparer.js → canCompareDimension.js} +1 -10
  281. package/dist/es2019/utils/getDataURIDimension.js +3 -43
  282. package/dist/es2019/utils/getRequestedDimensions.js +9 -0
  283. package/dist/es2019/utils/globalScope/generateScriptProps.js +15 -0
  284. package/dist/es2019/utils/globalScope/getKey.js +6 -0
  285. package/dist/es2019/utils/globalScope/getMediaCardSSR.js +10 -0
  286. package/dist/es2019/utils/globalScope/getMediaGlobalScope.js +8 -0
  287. package/dist/es2019/utils/globalScope/getSSRData.js +2 -1
  288. package/dist/es2019/utils/globalScope/globalScope.js +1 -43
  289. package/dist/es2019/utils/globalScope/storeDataURI.js +9 -0
  290. package/dist/es2019/utils/isBigger.js +10 -0
  291. package/dist/es2019/utils/mediaPerformanceObserver/CommonMetrics.js +1 -0
  292. package/dist/es2019/utils/mediaPerformanceObserver/Marks.js +0 -0
  293. package/dist/es2019/utils/mediaPerformanceObserver/createMediaDurationMetrics.js +65 -0
  294. package/dist/es2019/utils/mediaPerformanceObserver/createUfoDurationMetrics.js +17 -0
  295. package/dist/es2019/utils/mediaPerformanceObserver/durationMetrics.js +1 -138
  296. package/dist/es2019/utils/mediaPerformanceObserver/getCommonMetrics.js +58 -0
  297. package/dist/es2019/utils/mediaPerformanceObserver/mediaPerformanceObserver.js +1 -81
  298. package/dist/es2019/utils/mediaPerformanceObserver/setAnalyticsContext.js +7 -0
  299. package/dist/es2019/utils/mediaPerformanceObserver/startResourceObserver.js +77 -0
  300. package/dist/es2019/utils/printFunctionCall.js +12 -0
  301. package/dist/es2019/utils/printScript.js +0 -12
  302. package/dist/es2019/utils/resolveCardPreviewDimension.js +22 -0
  303. package/dist/es2019/utils/resolveCardPreviewDimensions.js +9 -0
  304. package/dist/es2019/utils/ufoExperiences.js +17 -9
  305. package/dist/esm/ImageLoadError.js +17 -0
  306. package/dist/esm/LocalPreviewError.js +20 -0
  307. package/dist/esm/MediaCardError.js +31 -0
  308. package/dist/esm/RemotePreviewError.js +20 -0
  309. package/dist/esm/SsrPreviewError.js +20 -0
  310. package/dist/esm/card/CardBase.js +27 -0
  311. package/dist/esm/card/CardWithPerformanceObserver.js +16 -0
  312. package/dist/esm/card/InlinePlayerBase.js +257 -0
  313. package/dist/esm/card/actions.js +10 -33
  314. package/dist/esm/card/attachDetailsToActions.js +15 -0
  315. package/dist/esm/card/card.js +3 -41
  316. package/dist/esm/card/cardView.js +26 -21
  317. package/dist/esm/card/createDownloadAction.js +21 -0
  318. package/dist/esm/card/externalImageCard.js +5 -5
  319. package/dist/esm/card/fileCard.js +22 -17
  320. package/dist/esm/card/fireDownloadFailedEvent.js +10 -0
  321. package/dist/esm/card/fireDownloadSucceededEvent.js +6 -0
  322. package/dist/esm/card/fireNonCriticalErrorEvent.js +10 -0
  323. package/dist/esm/card/{cardAnalytics.js → fireOperationalEvent.js} +5 -21
  324. package/dist/esm/card/getCardStatus.js +0 -3
  325. package/dist/esm/card/getPreferredVideoArtifact.js +10 -0
  326. package/dist/esm/card/inlinePlayer.js +2 -266
  327. package/dist/esm/card/isFinalCardStatus.js +3 -0
  328. package/dist/esm/card/media-card-analytics-error-boundary.js +2 -2
  329. package/dist/esm/card/svgView/svgImage-compiled.js +3 -3
  330. package/dist/esm/card/svgView/svgViewV2.js +2 -1
  331. package/dist/esm/card/ui/actionsBar/actionsBar.js +2 -1
  332. package/dist/esm/card/ui/actionsBar/cardActions/cardActionIconButton.js +1 -1
  333. package/dist/esm/card/ui/actionsBar/cardActions/cardActionsDropdownMenu.js +2 -1
  334. package/dist/esm/card/ui/actionsBar/styles.js +1 -1
  335. package/dist/esm/card/ui/blanket/styles.js +1 -1
  336. package/dist/esm/card/ui/calcBreakpointSize.js +15 -0
  337. package/dist/esm/card/ui/generateResponsiveStyles.js +6 -0
  338. package/dist/esm/card/ui/getClickablePlayButtonStyles.js +7 -0
  339. package/dist/esm/card/ui/getCursorStyle.js +3 -0
  340. package/dist/esm/card/ui/getSelectableTickBoxStyles.js +7 -0
  341. package/dist/esm/card/ui/getWrapperDimensions.js +11 -0
  342. package/dist/esm/card/ui/getWrapperShadow.js +9 -0
  343. package/dist/esm/card/ui/iconMessage/CheckInternetConnection.js +9 -0
  344. package/dist/esm/card/ui/iconMessage/CreatingPreview.js +10 -0
  345. package/dist/esm/card/ui/iconMessage/FailedToLoad.js +9 -0
  346. package/dist/esm/card/ui/iconMessage/FailedToUpload.js +9 -0
  347. package/dist/esm/card/ui/iconMessage/IconMessage.js +11 -0
  348. package/dist/esm/card/ui/iconMessage/PreviewUnavailable.js +9 -0
  349. package/dist/esm/card/ui/iconWrapper/IconWrapper-2.js +28 -0
  350. package/dist/esm/card/ui/iconWrapper/iconWrapper-compiled.js +5 -26
  351. package/dist/esm/card/ui/iconWrapper/iconWrapper.js +1 -1
  352. package/dist/esm/card/ui/iconWrapper/{styles.js → iconWrapperStyles.js} +5 -9
  353. package/dist/esm/card/ui/iconWrapper/titleBoxHeight.js +16 -0
  354. package/dist/esm/card/ui/imageRenderer/{helpers.js → calculateDimensions.js} +2 -25
  355. package/dist/esm/card/ui/imageRenderer/calculateInitialDimensions.js +21 -0
  356. package/dist/esm/card/ui/imageRenderer/default-crop-dimensions.js +3 -0
  357. package/dist/esm/card/ui/imageRenderer/default-stretchy-fit-dimensions.js +4 -0
  358. package/dist/esm/card/ui/imageRenderer/imageRendererV2.js +4 -3
  359. package/dist/esm/card/ui/progressBar/StyledBar-2.js +57 -0
  360. package/dist/esm/card/ui/progressBar/generateResponsiveStyles.js +26 -0
  361. package/dist/esm/card/ui/progressBar/getNormalizedProgress.js +3 -0
  362. package/dist/esm/card/ui/progressBar/progressBar.js +2 -4
  363. package/dist/esm/card/ui/progressBar/styledBar-compiled.js +8 -55
  364. package/dist/esm/card/ui/progressBar/styledBar.js +1 -1
  365. package/dist/esm/card/ui/progressBar/{styles.js → styledBarStyles.js} +8 -20
  366. package/dist/esm/card/ui/rgba.js +7 -0
  367. package/dist/esm/card/ui/styles.js +1 -70
  368. package/dist/esm/card/ui/titleBox/ErrorMessageWrapper.js +5 -0
  369. package/dist/esm/card/ui/titleBox/TitleBoxFooter.js +5 -0
  370. package/dist/esm/card/ui/titleBox/TitleBoxHeader.js +5 -0
  371. package/dist/esm/card/ui/titleBox/TitleBoxIcon.js +5 -0
  372. package/dist/esm/card/ui/titleBox/TitleBoxWrapper.js +5 -0
  373. package/dist/esm/card/ui/titleBox/failedTitleBox.js +2 -1
  374. package/dist/esm/card/ui/titleBox/styles.js +4 -56
  375. package/dist/esm/card/ui/titleBox/titleBox.js +5 -2
  376. package/dist/esm/card/ui/titleBox/titleBoxComponents-compiled.js +9 -1
  377. package/dist/esm/card/ui/titleBox/titleBoxFooterStyles.js +15 -0
  378. package/dist/esm/card/ui/titleBox/titleBoxHeaderStyles.js +15 -0
  379. package/dist/esm/card/ui/titleBox/titleBoxWrapperStyles.js +32 -0
  380. package/dist/esm/card/ui/transition.js +5 -0
  381. package/dist/esm/card/ui/unhandledErrorCard/unhandledErrorCard-compiled.js +1 -1
  382. package/dist/esm/card/ui/wrapper/styles.js +12 -5
  383. package/dist/esm/card/useBreakpoint.js +4 -3
  384. package/dist/esm/ensureMediaCardError.js +15 -0
  385. package/dist/esm/errors.js +52 -122
  386. package/dist/esm/getImageLoadPrimaryReason.js +17 -0
  387. package/dist/esm/index.js +6 -3
  388. package/dist/esm/inline/fireFailedOperationalEvent.js +13 -0
  389. package/dist/esm/inline/fireSucceededOperationalEvent.js +6 -0
  390. package/dist/esm/inline/getErrorStatusPayload.js +18 -0
  391. package/dist/esm/inline/getFailedProcessingStatusPayload.js +17 -0
  392. package/dist/esm/inline/getSucceededStatusPayload.js +17 -0
  393. package/dist/esm/inline/loader.js +1 -1
  394. package/dist/esm/inline/mediaInlineAnalyticsErrorBoundary.js +1 -1
  395. package/dist/esm/inline/mediaInlineCard.js +11 -9
  396. package/dist/esm/inline/mediaInlineCardAnalytics.js +21 -66
  397. package/dist/esm/isImageLoadError.js +4 -0
  398. package/dist/esm/isLocalPreviewError.js +4 -0
  399. package/dist/esm/isMediaCardError.js +4 -0
  400. package/dist/esm/isRemotePreviewError.js +4 -0
  401. package/dist/esm/isSSRClientPreview.js +8 -0
  402. package/dist/esm/isSSRDataPreview.js +7 -0
  403. package/dist/esm/isSSRPreview.js +10 -0
  404. package/dist/esm/isSSRServerPreview.js +8 -0
  405. package/dist/esm/isUnsupportedLocalPreviewError.js +4 -0
  406. package/dist/esm/isUploadError.js +3 -0
  407. package/dist/esm/types.js +18 -15
  408. package/dist/esm/utils/analytics/analytics.js +1 -254
  409. package/dist/esm/utils/analytics/createAndFireMediaCardEvent.js +5 -0
  410. package/dist/esm/utils/analytics/extractErrorInfo.js +12 -0
  411. package/dist/esm/utils/analytics/fireMediaCardEvent.js +7 -0
  412. package/dist/esm/utils/analytics/getAuthProviderFailedPayload.js +35 -0
  413. package/dist/esm/utils/analytics/getAuthProviderSucceededPayload.js +14 -0
  414. package/dist/esm/utils/analytics/getCacheHitEventPayload.js +10 -0
  415. package/dist/esm/utils/analytics/getDownloadFailedEventPayload.js +22 -0
  416. package/dist/esm/utils/analytics/getDownloadSucceededEventPayload.js +14 -0
  417. package/dist/esm/utils/analytics/getErrorEventPayload.js +23 -0
  418. package/dist/esm/utils/analytics/getErrorTraceContext.js +8 -0
  419. package/dist/esm/utils/analytics/getFileAttributes.js +9 -0
  420. package/dist/esm/utils/analytics/getRemoteSuccessEventPayload.js +10 -0
  421. package/dist/esm/utils/analytics/getRenderErrorErrorDetail.js +13 -0
  422. package/dist/esm/utils/analytics/getRenderErrorErrorReason.js +8 -0
  423. package/dist/esm/utils/analytics/getRenderErrorEventPayload.js +24 -0
  424. package/dist/esm/utils/analytics/getRenderErrorFailReason.js +3 -0
  425. package/dist/esm/utils/analytics/getRenderErrorRequestMetadata.js +7 -0
  426. package/dist/esm/utils/analytics/getRenderFailedExternalUriPayload.js +13 -0
  427. package/dist/esm/utils/analytics/getRenderFailedFileStatusPayload.js +19 -0
  428. package/dist/esm/utils/analytics/getRenderSucceededEventPayload.js +24 -0
  429. package/dist/esm/utils/analytics/index.js +0 -1
  430. package/dist/esm/utils/{dimensionComparer.js → canCompareDimension.js} +1 -10
  431. package/dist/esm/utils/getDataURIDimension.js +3 -42
  432. package/dist/esm/utils/getRequestedDimensions.js +9 -0
  433. package/dist/esm/utils/globalScope/generateScriptProps.js +17 -0
  434. package/dist/esm/utils/globalScope/getKey.js +9 -0
  435. package/dist/esm/utils/globalScope/getMediaCardSSR.js +11 -0
  436. package/dist/esm/utils/globalScope/getMediaGlobalScope.js +9 -0
  437. package/dist/esm/utils/globalScope/getSSRData.js +2 -1
  438. package/dist/esm/utils/globalScope/globalScope.js +1 -51
  439. package/dist/esm/utils/globalScope/storeDataURI.js +10 -0
  440. package/dist/esm/utils/isBigger.js +10 -0
  441. package/dist/esm/utils/mediaPerformanceObserver/CommonMetrics.js +1 -0
  442. package/dist/esm/utils/mediaPerformanceObserver/Marks.js +0 -0
  443. package/dist/esm/utils/mediaPerformanceObserver/createMediaDurationMetrics.js +71 -0
  444. package/dist/esm/utils/mediaPerformanceObserver/createUfoDurationMetrics.js +26 -0
  445. package/dist/esm/utils/mediaPerformanceObserver/durationMetrics.js +1 -151
  446. package/dist/esm/utils/mediaPerformanceObserver/getCommonMetrics.js +60 -0
  447. package/dist/esm/utils/mediaPerformanceObserver/mediaPerformanceObserver.js +1 -87
  448. package/dist/esm/utils/mediaPerformanceObserver/setAnalyticsContext.js +7 -0
  449. package/dist/esm/utils/mediaPerformanceObserver/startResourceObserver.js +83 -0
  450. package/dist/esm/utils/printFunctionCall.js +22 -0
  451. package/dist/esm/utils/printScript.js +0 -22
  452. package/dist/esm/utils/resolveCardPreviewDimension.js +21 -0
  453. package/dist/esm/utils/resolveCardPreviewDimensions.js +9 -0
  454. package/dist/esm/utils/ufoExperiences.js +17 -9
  455. package/dist/types/ImageLoadError.d.ts +5 -0
  456. package/dist/types/LocalPreviewError.d.ts +7 -0
  457. package/dist/types/MediaCardError.d.ts +11 -0
  458. package/dist/types/RemotePreviewError.d.ts +7 -0
  459. package/dist/types/SsrPreviewError.d.ts +7 -0
  460. package/dist/types/card/CardBase.d.ts +5 -0
  461. package/dist/types/card/CardWithPerformanceObserver.d.ts +4 -0
  462. package/dist/types/card/InlinePlayerBase.d.ts +3 -0
  463. package/dist/types/card/actions.d.ts +9 -6
  464. package/dist/types/card/attachDetailsToActions.d.ts +3 -0
  465. package/dist/types/card/card.d.ts +1 -5
  466. package/dist/types/card/cardView.d.ts +4 -4
  467. package/dist/types/card/createDownloadAction.d.ts +5 -0
  468. package/dist/types/card/externalImageCard.d.ts +1 -1
  469. package/dist/types/card/fileCard.d.ts +5 -5
  470. package/dist/types/card/fireDownloadFailedEvent.d.ts +4 -0
  471. package/dist/types/card/fireDownloadSucceededEvent.d.ts +3 -0
  472. package/dist/types/card/fireNonCriticalErrorEvent.d.ts +6 -0
  473. package/dist/types/card/fireOperationalEvent.d.ts +7 -0
  474. package/dist/types/card/getCardStatus.d.ts +0 -1
  475. package/dist/types/card/getPreferredVideoArtifact.d.ts +2 -0
  476. package/dist/types/card/inlinePlayer.d.ts +3 -5
  477. package/dist/types/card/isFinalCardStatus.d.ts +2 -0
  478. package/dist/types/card/svgView/svgImage-compiled.d.ts +4 -0
  479. package/dist/types/card/svgView/types.d.ts +1 -1
  480. package/dist/types/card/types.d.ts +1 -1
  481. package/dist/types/card/ui/calcBreakpointSize.d.ts +2 -0
  482. package/dist/types/card/ui/generateResponsiveStyles.d.ts +2 -0
  483. package/dist/types/card/ui/getClickablePlayButtonStyles.d.ts +1 -0
  484. package/dist/types/card/ui/getCursorStyle.d.ts +2 -0
  485. package/dist/types/card/ui/getSelectableTickBoxStyles.d.ts +1 -0
  486. package/dist/types/card/ui/getWrapperDimensions.d.ts +2 -0
  487. package/dist/types/card/ui/getWrapperShadow.d.ts +1 -0
  488. package/dist/types/card/ui/iconMessage/CheckInternetConnection.d.ts +2 -0
  489. package/dist/types/card/ui/iconMessage/CreatingPreview.d.ts +3 -0
  490. package/dist/types/card/ui/iconMessage/FailedToLoad.d.ts +2 -0
  491. package/dist/types/card/ui/iconMessage/FailedToUpload.d.ts +2 -0
  492. package/dist/types/card/ui/iconMessage/IconMessage.d.ts +3 -0
  493. package/dist/types/card/ui/iconMessage/PreviewUnavailable.d.ts +2 -0
  494. package/dist/types/card/ui/iconWrapper/IconWrapper-2.d.ts +9 -0
  495. package/dist/types/card/ui/iconWrapper/iconWrapper-compiled.d.ts +5 -7
  496. package/dist/types/card/ui/iconWrapper/{styles.d.ts → iconWrapperStyles.d.ts} +0 -2
  497. package/dist/types/card/ui/iconWrapper/titleBoxHeight.d.ts +2 -0
  498. package/dist/types/card/ui/imageRenderer/{helpers.d.ts → calculateDimensions.d.ts} +0 -1
  499. package/dist/types/card/ui/imageRenderer/calculateInitialDimensions.d.ts +2 -0
  500. package/dist/types/card/ui/imageRenderer/default-crop-dimensions.d.ts +3 -0
  501. package/dist/types/card/ui/imageRenderer/default-stretchy-fit-dimensions.d.ts +4 -0
  502. package/dist/types/card/ui/imageRenderer/imageRendererV2.d.ts +4 -0
  503. package/dist/types/card/ui/progressBar/StyledBar-2.d.ts +9 -0
  504. package/dist/types/card/ui/progressBar/generateResponsiveStyles.d.ts +2 -0
  505. package/dist/types/card/ui/progressBar/getNormalizedProgress.d.ts +1 -0
  506. package/dist/types/card/ui/progressBar/progressBar.d.ts +0 -1
  507. package/dist/types/card/ui/progressBar/styledBar-compiled.d.ts +7 -13
  508. package/dist/types/card/ui/progressBar/{styles.d.ts → styledBarStyles.d.ts} +0 -2
  509. package/dist/types/card/ui/rgba.d.ts +1 -0
  510. package/dist/types/card/ui/styles.d.ts +1 -12
  511. package/dist/types/card/ui/titleBox/ErrorMessageWrapper.d.ts +2 -0
  512. package/dist/types/card/ui/titleBox/TitleBoxFooter.d.ts +3 -0
  513. package/dist/types/card/ui/titleBox/TitleBoxHeader.d.ts +3 -0
  514. package/dist/types/card/ui/titleBox/TitleBoxIcon.d.ts +2 -0
  515. package/dist/types/card/ui/titleBox/TitleBoxWrapper.d.ts +3 -0
  516. package/dist/types/card/ui/titleBox/failedTitleBox.d.ts +4 -0
  517. package/dist/types/card/ui/titleBox/styles.d.ts +2 -20
  518. package/dist/types/card/ui/titleBox/titleBoxComponents-compiled.d.ts +4 -0
  519. package/dist/types/card/ui/titleBox/titleBoxFooterStyles.d.ts +6 -0
  520. package/dist/types/card/ui/titleBox/titleBoxHeaderStyles.d.ts +6 -0
  521. package/dist/types/card/ui/titleBox/titleBoxWrapperStyles.d.ts +12 -0
  522. package/dist/types/card/ui/transition.d.ts +1 -0
  523. package/dist/types/card/useBreakpoint.d.ts +1 -1
  524. package/dist/types/ensureMediaCardError.d.ts +3 -0
  525. package/dist/types/errors.d.ts +53 -37
  526. package/dist/types/getImageLoadPrimaryReason.d.ts +3 -0
  527. package/dist/types/index.d.ts +6 -3
  528. package/dist/types/inline/fireFailedOperationalEvent.d.ts +4 -0
  529. package/dist/types/inline/fireSucceededOperationalEvent.d.ts +3 -0
  530. package/dist/types/inline/getErrorStatusPayload.d.ts +4 -0
  531. package/dist/types/inline/getFailedProcessingStatusPayload.d.ts +4 -0
  532. package/dist/types/inline/getSucceededStatusPayload.d.ts +3 -0
  533. package/dist/types/inline/mediaInlineCard.d.ts +2 -2
  534. package/dist/types/inline/mediaInlineCardAnalytics.d.ts +20 -10
  535. package/dist/types/isImageLoadError.d.ts +2 -0
  536. package/dist/types/isLocalPreviewError.d.ts +2 -0
  537. package/dist/types/isMediaCardError.d.ts +2 -0
  538. package/dist/types/isRemotePreviewError.d.ts +2 -0
  539. package/dist/types/isSSRClientPreview.d.ts +5 -0
  540. package/dist/types/isSSRDataPreview.d.ts +5 -0
  541. package/dist/types/isSSRPreview.d.ts +5 -0
  542. package/dist/types/isSSRServerPreview.d.ts +5 -0
  543. package/dist/types/isUnsupportedLocalPreviewError.d.ts +1 -0
  544. package/dist/types/isUploadError.d.ts +2 -0
  545. package/dist/types/types.d.ts +21 -9
  546. package/dist/types/utils/analytics/analytics.d.ts +6 -33
  547. package/dist/types/utils/analytics/createAndFireMediaCardEvent.d.ts +4 -0
  548. package/dist/types/utils/analytics/extractErrorInfo.d.ts +4 -0
  549. package/dist/types/utils/analytics/fireMediaCardEvent.d.ts +3 -0
  550. package/dist/types/utils/analytics/getAuthProviderFailedPayload.d.ts +8 -0
  551. package/dist/types/utils/analytics/getAuthProviderSucceededPayload.d.ts +8 -0
  552. package/dist/types/utils/analytics/getCacheHitEventPayload.d.ts +2 -0
  553. package/dist/types/utils/analytics/getDownloadFailedEventPayload.d.ts +4 -0
  554. package/dist/types/utils/analytics/getDownloadSucceededEventPayload.d.ts +3 -0
  555. package/dist/types/utils/analytics/getErrorEventPayload.d.ts +5 -0
  556. package/dist/types/utils/analytics/getErrorTraceContext.d.ts +3 -0
  557. package/dist/types/utils/analytics/getFileAttributes.d.ts +3 -0
  558. package/dist/types/utils/analytics/getRemoteSuccessEventPayload.d.ts +2 -0
  559. package/dist/types/utils/analytics/getRenderErrorErrorDetail.d.ts +2 -0
  560. package/dist/types/utils/analytics/getRenderErrorErrorReason.d.ts +3 -0
  561. package/dist/types/utils/analytics/getRenderErrorEventPayload.d.ts +4 -0
  562. package/dist/types/utils/analytics/getRenderErrorFailReason.d.ts +3 -0
  563. package/dist/types/utils/analytics/getRenderErrorRequestMetadata.d.ts +3 -0
  564. package/dist/types/utils/analytics/getRenderFailedExternalUriPayload.d.ts +3 -0
  565. package/dist/types/utils/analytics/getRenderFailedFileStatusPayload.d.ts +4 -0
  566. package/dist/types/utils/analytics/getRenderSucceededEventPayload.d.ts +3 -0
  567. package/dist/types/utils/analytics/index.d.ts +0 -1
  568. package/dist/types/utils/canCompareDimension.d.ts +2 -0
  569. package/dist/types/utils/getDataURIDimension.d.ts +2 -8
  570. package/dist/types/utils/getRequestedDimensions.d.ts +3 -0
  571. package/dist/types/utils/globalScope/generateScriptProps.d.ts +5 -0
  572. package/dist/types/utils/globalScope/getKey.d.ts +2 -0
  573. package/dist/types/utils/globalScope/getMediaCardSSR.d.ts +2 -0
  574. package/dist/types/utils/globalScope/getMediaGlobalScope.d.ts +2 -0
  575. package/dist/types/utils/globalScope/getSSRData.d.ts +1 -1
  576. package/dist/types/utils/globalScope/globalScope.d.ts +0 -9
  577. package/dist/types/utils/globalScope/storeDataURI.d.ts +3 -0
  578. package/dist/types/utils/isBigger.d.ts +2 -0
  579. package/dist/types/utils/isNetworkError.d.ts +1 -1
  580. package/dist/types/utils/mediaPerformanceObserver/CommonMetrics.d.ts +2 -0
  581. package/dist/types/utils/mediaPerformanceObserver/Marks.d.ts +4 -0
  582. package/dist/types/utils/mediaPerformanceObserver/createMediaDurationMetrics.d.ts +37 -0
  583. package/dist/types/utils/mediaPerformanceObserver/createUfoDurationMetrics.d.ts +3 -0
  584. package/dist/types/utils/mediaPerformanceObserver/durationMetrics.d.ts +1 -38
  585. package/dist/types/utils/mediaPerformanceObserver/getCommonMetrics.d.ts +3 -0
  586. package/dist/types/utils/mediaPerformanceObserver/mediaPerformanceObserver.d.ts +1 -4
  587. package/dist/types/utils/mediaPerformanceObserver/setAnalyticsContext.d.ts +2 -0
  588. package/dist/types/utils/mediaPerformanceObserver/startResourceObserver.d.ts +1 -0
  589. package/dist/types/utils/printFunctionCall.d.ts +1 -0
  590. package/dist/types/utils/printScript.d.ts +0 -1
  591. package/dist/types/utils/resolveCardPreviewDimension.d.ts +3 -0
  592. package/dist/types/utils/resolveCardPreviewDimensions.d.ts +3 -0
  593. package/dist/types/utils/ufoExperiences.d.ts +4 -4
  594. package/ensure-media-card-error/package.json +10 -0
  595. package/example-helpers/index.tsx +13 -11
  596. package/get-image-load-primary-reason/package.json +10 -0
  597. package/image-load-error/package.json +10 -0
  598. package/inline/fire-failed-operational-event/package.json +10 -0
  599. package/inline/fire-succeeded-operational-event/package.json +10 -0
  600. package/inline/get-error-status-payload/package.json +10 -0
  601. package/inline/get-failed-processing-status-payload/package.json +10 -0
  602. package/inline/get-succeeded-status-payload/package.json +10 -0
  603. package/is-image-load-error/package.json +10 -0
  604. package/is-local-preview-error/package.json +10 -0
  605. package/is-media-card-error/package.json +10 -0
  606. package/is-remote-preview-error/package.json +10 -0
  607. package/is-ssr-client-preview/package.json +10 -0
  608. package/is-ssr-data-preview/package.json +10 -0
  609. package/is-ssr-preview/package.json +10 -0
  610. package/is-ssr-server-preview/package.json +10 -0
  611. package/is-unsupported-local-preview-error/package.json +10 -0
  612. package/is-upload-error/package.json +10 -0
  613. package/local-preview-error/package.json +10 -0
  614. package/media-card-error/package.json +10 -0
  615. package/package.json +5 -5
  616. package/remote-preview-error/package.json +10 -0
  617. package/ssr-preview-error/package.json +10 -0
  618. package/dist/cjs/card/ai-generating-overlay/index.js +0 -12
  619. package/dist/cjs/card/cardAnalytics.js +0 -56
  620. package/dist/cjs/card/index.js +0 -20
  621. package/dist/cjs/card/svgView/index.js +0 -12
  622. package/dist/cjs/card/ui/actionsBar/cardActions/index.js +0 -39
  623. package/dist/cjs/card/ui/iconMessage/index.js +0 -47
  624. package/dist/cjs/card/ui/progressBar/styles.js +0 -47
  625. package/dist/cjs/card/ui/titleBox/titleBoxComponents.js +0 -24
  626. package/dist/cjs/card/ui/wrapper/index.js +0 -19
  627. package/dist/cjs/classnames.js +0 -12
  628. package/dist/cjs/inline/index.js +0 -26
  629. package/dist/cjs/utils/globalScope/index.js +0 -37
  630. package/dist/cjs/utils/index.js +0 -58
  631. package/dist/es2019/card/ai-generating-overlay/index.js +0 -1
  632. package/dist/es2019/card/index.js +0 -2
  633. package/dist/es2019/card/svgView/index.js +0 -1
  634. package/dist/es2019/card/ui/actionsBar/cardActions/index.js +0 -4
  635. package/dist/es2019/card/ui/iconMessage/index.js +0 -31
  636. package/dist/es2019/card/ui/titleBox/titleBoxComponents.js +0 -7
  637. package/dist/es2019/card/ui/wrapper/index.js +0 -2
  638. package/dist/es2019/classnames.js +0 -4
  639. package/dist/es2019/inline/index.js +0 -2
  640. package/dist/es2019/utils/globalScope/index.js +0 -2
  641. package/dist/es2019/utils/index.js +0 -5
  642. package/dist/esm/card/ai-generating-overlay/index.js +0 -1
  643. package/dist/esm/card/index.js +0 -2
  644. package/dist/esm/card/svgView/index.js +0 -1
  645. package/dist/esm/card/ui/actionsBar/cardActions/index.js +0 -4
  646. package/dist/esm/card/ui/iconMessage/index.js +0 -40
  647. package/dist/esm/card/ui/titleBox/titleBoxComponents.js +0 -17
  648. package/dist/esm/card/ui/wrapper/index.js +0 -2
  649. package/dist/esm/classnames.js +0 -4
  650. package/dist/esm/inline/index.js +0 -2
  651. package/dist/esm/utils/globalScope/index.js +0 -2
  652. package/dist/esm/utils/index.js +0 -5
  653. package/dist/types/card/ai-generating-overlay/index.d.ts +0 -2
  654. package/dist/types/card/cardAnalytics.d.ts +0 -10
  655. package/dist/types/card/index.d.ts +0 -2
  656. package/dist/types/card/svgView/index.d.ts +0 -1
  657. package/dist/types/card/ui/actionsBar/cardActions/index.d.ts +0 -7
  658. package/dist/types/card/ui/iconMessage/index.d.ts +0 -8
  659. package/dist/types/card/ui/titleBox/titleBoxComponents.d.ts +0 -7
  660. package/dist/types/card/ui/wrapper/index.d.ts +0 -2
  661. package/dist/types/classnames.d.ts +0 -4
  662. package/dist/types/inline/index.d.ts +0 -2
  663. package/dist/types/utils/dimensionComparer.d.ts +0 -3
  664. package/dist/types/utils/globalScope/index.d.ts +0 -4
  665. package/dist/types/utils/index.d.ts +0 -6
  666. /package/dist/cjs/card/ui/iconWrapper/{iconWrapper-compiled.compiled.css → IconWrapper-2.compiled.css} +0 -0
  667. /package/dist/cjs/card/ui/progressBar/{styledBar-compiled.compiled.css → StyledBar-2.compiled.css} +0 -0
  668. /package/dist/es2019/card/ui/iconWrapper/{iconWrapper-compiled.compiled.css → IconWrapper-2.compiled.css} +0 -0
  669. /package/dist/es2019/card/ui/progressBar/{styledBar-compiled.compiled.css → StyledBar-2.compiled.css} +0 -0
  670. /package/dist/esm/card/ui/iconWrapper/{iconWrapper-compiled.compiled.css → IconWrapper-2.compiled.css} +0 -0
  671. /package/dist/esm/card/ui/progressBar/{styledBar-compiled.compiled.css → StyledBar-2.compiled.css} +0 -0
@@ -1,8 +1,8 @@
1
- import { isRetina } from './isRetina';
2
- import { getElementDimension } from './getElementDimension';
3
1
  import { defaultImageCardDimensions } from './cardDimensions';
4
- import { isValidPercentageUnit } from './isValidPercentageUnit';
5
2
  import { containsPixelUnit } from './containsPixelUnit';
3
+ import { getElementDimension } from './getElementDimension';
4
+ import { isRetina } from './isRetina';
5
+ import { isValidPercentageUnit } from './isValidPercentageUnit';
6
6
 
7
7
  /**
8
8
  * ************************************************
@@ -23,43 +23,4 @@ export var getDataURIDimension = function getDataURIDimension(dimension, options
23
23
  return parseInt("".concat(dimensionValue), 10) * retinaFactor;
24
24
  }
25
25
  return defaultImageCardDimensions[dimension] * retinaFactor;
26
- };
27
- export var getRequestedDimensions = function getRequestedDimensions(options) {
28
- var width = getDataURIDimension('width', options);
29
- var height = getDataURIDimension('height', options);
30
- return {
31
- width: width,
32
- height: height
33
- };
34
- };
35
-
36
- /**
37
- * ************************************************
38
- * For Card v2
39
- * ************************************************
40
- */
41
-
42
- // Same as getDataURIDimension but without Retina factor
43
- export var resolveCardPreviewDimension = function resolveCardPreviewDimension(dimensionName, _ref) {
44
- var dimensions = _ref.dimensions,
45
- element = _ref.element;
46
- var dimensionValue = (dimensions === null || dimensions === void 0 ? void 0 : dimensions[dimensionName]) || '';
47
- if (isValidPercentageUnit(dimensionValue) && element) {
48
- return getElementDimension(element, dimensionName);
49
- }
50
- if (typeof dimensionValue === 'number') {
51
- return dimensionValue;
52
- }
53
- if (containsPixelUnit("".concat(dimensionValue))) {
54
- return parseInt("".concat(dimensionValue), 10);
55
- }
56
- return defaultImageCardDimensions[dimensionName];
57
- };
58
- export var resolveCardPreviewDimensions = function resolveCardPreviewDimensions(options) {
59
- var width = resolveCardPreviewDimension('width', options);
60
- var height = resolveCardPreviewDimension('height', options);
61
- return {
62
- width: width,
63
- height: height
64
- };
65
26
  };
@@ -0,0 +1,9 @@
1
+ import { getDataURIDimension } from './getDataURIDimension';
2
+ export var getRequestedDimensions = function getRequestedDimensions(options) {
3
+ var width = getDataURIDimension('width', options);
4
+ var height = getDataURIDimension('height', options);
5
+ return {
6
+ width: width,
7
+ height: height
8
+ };
9
+ };
@@ -0,0 +1,17 @@
1
+ import { printFunctionCall } from '../printFunctionCall';
2
+ import { printScript } from '../printScript';
3
+ import { getKey } from './getKey';
4
+ import { getMediaCardSSR } from './getMediaCardSSR';
5
+ import { getMediaGlobalScope } from './getMediaGlobalScope';
6
+ import { storeDataURI } from './storeDataURI';
7
+ var generateScript = function generateScript(identifier, dataURI, dimensions, error) {
8
+ var functionCall = printFunctionCall(storeDataURI, getKey(identifier), dataURI, dimensions, error);
9
+ return printScript([getMediaCardSSR.toString(), getMediaGlobalScope.toString(), functionCall]);
10
+ };
11
+ export var generateScriptProps = function generateScriptProps(identifier, dataURI, dimensions, error) {
12
+ return {
13
+ dangerouslySetInnerHTML: {
14
+ __html: generateScript(identifier, dataURI, dimensions, error)
15
+ }
16
+ };
17
+ };
@@ -0,0 +1,9 @@
1
+ var dashed = function dashed(param) {
2
+ return param ? "-".concat(param) : '';
3
+ };
4
+ export var getKey = function getKey(_ref) {
5
+ var id = _ref.id,
6
+ collectionName = _ref.collectionName,
7
+ occurrenceKey = _ref.occurrenceKey;
8
+ return "".concat(id).concat(dashed(collectionName)).concat(dashed(occurrenceKey));
9
+ };
@@ -0,0 +1,11 @@
1
+ import { getMediaGlobalScope } from './getMediaGlobalScope';
2
+ export function getMediaCardSSR() {
3
+ var globalScope = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : window;
4
+ var globalMedia = getMediaGlobalScope(globalScope);
5
+ // Must match GLOBAL_MEDIA_CARD_SSR. Can't reference the constant from here.
6
+ var key = 'mediaCardSsr';
7
+ if (!globalMedia[key]) {
8
+ globalMedia[key] = {};
9
+ }
10
+ return globalMedia[key];
11
+ }
@@ -0,0 +1,9 @@
1
+ export function getMediaGlobalScope() {
2
+ var globalScope = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : window;
3
+ // Must match GLOBAL_MEDIA_NAMESPACE. Can't reference the constant from here.
4
+ var namespace = '__MEDIA_INTERNAL';
5
+ if (!globalScope[namespace]) {
6
+ globalScope[namespace] = {};
7
+ }
8
+ return globalScope[namespace];
9
+ }
@@ -1,4 +1,5 @@
1
- import { getMediaCardSSR, getKey } from './globalScope';
1
+ import { getKey } from './getKey';
2
+ import { getMediaCardSSR } from './getMediaCardSSR';
2
3
  export var getSSRData = function getSSRData(identifier) {
3
4
  var mediaCardSsr = getMediaCardSSR();
4
5
  if (!mediaCardSsr) {
@@ -1,58 +1,8 @@
1
- import { printFunctionCall, printScript } from '../printScript';
2
1
  // ----- WARNING -----
3
2
  // This is a very sensitive fraction of code.
4
3
  // Any changes to this file must be tested directly in product before merging.
5
4
  // The scripts printed here might differ from what we observe in our internal tests
6
5
  // due to minimification, for example.
7
-
8
6
  export var GLOBAL_MEDIA_CARD_SSR = 'mediaCardSsr';
9
7
  export var GLOBAL_MEDIA_NAMESPACE = '__MEDIA_INTERNAL';
10
- export var GLOBAL_MEDIA_PERFORMANCE_ENTRIES = 'performanceEntries';
11
- export function getMediaGlobalScope() {
12
- var globalScope = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : window;
13
- // Must match GLOBAL_MEDIA_NAMESPACE. Can't reference the constant from here.
14
- var namespace = '__MEDIA_INTERNAL';
15
- if (!globalScope[namespace]) {
16
- globalScope[namespace] = {};
17
- }
18
- return globalScope[namespace];
19
- }
20
- export function getMediaCardSSR() {
21
- var globalScope = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : window;
22
- var globalMedia = getMediaGlobalScope(globalScope);
23
- // Must match GLOBAL_MEDIA_CARD_SSR. Can't reference the constant from here.
24
- var key = 'mediaCardSsr';
25
- if (!globalMedia[key]) {
26
- globalMedia[key] = {};
27
- }
28
- return globalMedia[key];
29
- }
30
- var dashed = function dashed(param) {
31
- return param ? "-".concat(param) : '';
32
- };
33
- export var getKey = function getKey(_ref) {
34
- var id = _ref.id,
35
- collectionName = _ref.collectionName,
36
- occurrenceKey = _ref.occurrenceKey;
37
- return "".concat(id).concat(dashed(collectionName)).concat(dashed(occurrenceKey));
38
- };
39
- export var storeDataURI = function storeDataURI(key, dataURI, dimensions, error) {
40
- var globalScope = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : window;
41
- var mediaCardSsr = getMediaCardSSR(globalScope);
42
- mediaCardSsr[key] = {
43
- dataURI: dataURI,
44
- dimensions: dimensions,
45
- error: error
46
- };
47
- };
48
- var generateScript = function generateScript(identifier, dataURI, dimensions, error) {
49
- var functionCall = printFunctionCall(storeDataURI, getKey(identifier), dataURI, dimensions, error);
50
- return printScript([getMediaCardSSR.toString(), getMediaGlobalScope.toString(), functionCall]);
51
- };
52
- export var generateScriptProps = function generateScriptProps(identifier, dataURI, dimensions, error) {
53
- return {
54
- dangerouslySetInnerHTML: {
55
- __html: generateScript(identifier, dataURI, dimensions, error)
56
- }
57
- };
58
- };
8
+ export var GLOBAL_MEDIA_PERFORMANCE_ENTRIES = 'performanceEntries';
@@ -0,0 +1,10 @@
1
+ import { getMediaCardSSR } from './getMediaCardSSR';
2
+ export var storeDataURI = function storeDataURI(key, dataURI, dimensions, error) {
3
+ var globalScope = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : window;
4
+ var mediaCardSsr = getMediaCardSSR(globalScope);
5
+ mediaCardSsr[key] = {
6
+ dataURI: dataURI,
7
+ dimensions: dimensions,
8
+ error: error
9
+ };
10
+ };
@@ -0,0 +1,10 @@
1
+ import { canCompareDimension } from './canCompareDimension';
2
+ export var isBigger = function isBigger(current, next) {
3
+ if (!!current && !!next && canCompareDimension(current.width, next.width) && canCompareDimension(current.height, next.height)) {
4
+ var nextIsHigher = parseInt("".concat(current.width), 10) < parseInt("".concat(next.width), 10);
5
+ var nextIsWider = parseInt("".concat(current.height), 10) < parseInt("".concat(next.height), 10);
6
+ return nextIsHigher || nextIsWider;
7
+ } else {
8
+ return false;
9
+ }
10
+ };
@@ -0,0 +1,71 @@
1
+ import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
+ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
3
+ 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; }
4
+ 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) { _defineProperty(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; }
5
+ import { getCommonMetrics } from './getCommonMetrics';
6
+ var getStartedAt = function getStartedAt(entry, interactionStartTime) {
7
+ return entry.startTime - interactionStartTime;
8
+ };
9
+ var calculateCommonDurations = function calculateCommonDurations(metrics) {
10
+ return Object.fromEntries(Object.entries(metrics).map(function (_ref) {
11
+ var _ref2 = _slicedToArray(_ref, 2),
12
+ key = _ref2[0],
13
+ marks = _ref2[1];
14
+ if (!marks) {
15
+ return [key, undefined];
16
+ }
17
+ var start = marks.start,
18
+ end = marks.end;
19
+ return [key, end - start];
20
+ }));
21
+ };
22
+ export var createMediaDurationMetrics = function createMediaDurationMetrics(entry, interactionStartTime) {
23
+ var _entry$serverTiming$f, _entry$serverTiming$f2;
24
+ return _objectSpread(_objectSpread({
25
+ startedAt: getStartedAt(entry, interactionStartTime),
26
+ /**
27
+ * Performance resource timing data regarding the loading of an
28
+ * application's resources as described in
29
+ * https://developer.mozilla.org/en-US/docs/Web/API/PerformanceResourceTiming
30
+ */
31
+ transferSize: entry.transferSize,
32
+ decodedBodySize: entry.decodedBodySize,
33
+ totalDuration: entry.duration,
34
+ initiatorType: entry.initiatorType,
35
+ // value can be 'fetch' or 'img'
36
+ endedAt: entry.responseEnd - interactionStartTime,
37
+ responseEnd: entry.responseEnd,
38
+ browserCacheHit: entry.transferSize === 0,
39
+ nextHopProtocol: entry.nextHopProtocol
40
+ }, calculateCommonDurations(getCommonMetrics(entry))), {}, {
41
+ /**
42
+ * The user agent string for the current browser
43
+ * Read more: https://developer.mozilla.org/en-US/docs/Web/API/Navigator/userAgent
44
+ */
45
+ userAgent: window.navigator.userAgent,
46
+ /**
47
+ * Performance resource timing data sent by the server. This includes:
48
+ *
49
+ * `cdnCacheHit` is a boolean determining whether the CDN cache was hit or missed.
50
+ *
51
+ * `cdnDownstreamFBL` is the 'CDN Downstream First Byte Latency'. It represents
52
+ * how long the it took the CDN to respond to the frontend.
53
+ *
54
+ * `cdnUpstreamFBL` is the 'CDN Upstream First Byte Latency'. It represents the
55
+ * time the Media backend took to respond to the CDN, in the case that the CDN
56
+ * cache was a miss. Notably, this timing is a subset of the `cdnDownstreamFBL` timing.
57
+ */
58
+ cdnCacheHit: entry.serverTiming.find(function (_ref3) {
59
+ var name = _ref3.name;
60
+ return name === 'cdn-cache-hit';
61
+ }) ? true : false,
62
+ cdnDownstreamFBL: (_entry$serverTiming$f = entry.serverTiming.find(function (_ref4) {
63
+ var name = _ref4.name;
64
+ return name === 'cdn-downstream-fbl';
65
+ })) === null || _entry$serverTiming$f === void 0 ? void 0 : _entry$serverTiming$f.duration,
66
+ cdnUpstreamFBL: (_entry$serverTiming$f2 = entry.serverTiming.find(function (_ref5) {
67
+ var name = _ref5.name;
68
+ return name === 'cdn-upstream-fbl';
69
+ })) === null || _entry$serverTiming$f2 === void 0 ? void 0 : _entry$serverTiming$f2.duration
70
+ });
71
+ };
@@ -0,0 +1,26 @@
1
+ import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
+ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
3
+ 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; }
4
+ 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) { _defineProperty(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; }
5
+ import { getCommonMetrics } from './getCommonMetrics';
6
+ var filterCommonMetrics = function filterCommonMetrics(metrics) {
7
+ return Object.fromEntries(Object.entries(metrics).filter(function (_ref) {
8
+ var _ref2 = _slicedToArray(_ref, 2),
9
+ marks = _ref2[1];
10
+ return !!marks;
11
+ }));
12
+ };
13
+ export var createUfoDurationMetrics = function createUfoDurationMetrics(entry, interactionStartTime) {
14
+ // Calculate timing relative to UFO interaction start time
15
+ // For page_load: interactionStartTime = 0 (relative to page navigation)
16
+ // For transitions: interactionStartTime = performance.now() when transition started
17
+ // This ensures metrics work correctly for both initial loads and SPA soft redirects
18
+ var relativeStartTime = entry.startTime - interactionStartTime;
19
+ return _objectSpread({
20
+ resourceTiming: {
21
+ start: relativeStartTime,
22
+ end: entry.responseEnd,
23
+ size: entry.transferSize
24
+ }
25
+ }, filterCommonMetrics(getCommonMetrics(entry)));
26
+ };
@@ -1,151 +1 @@
1
- import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
- import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
3
- 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; }
4
- 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) { _defineProperty(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; }
5
- var getStartedAt = function getStartedAt(entry, interactionStartTime) {
6
- return entry.startTime - interactionStartTime;
7
- };
8
- var getCommonMetrics = function getCommonMetrics(entry) {
9
- return {
10
- tcpHandshakeTime: {
11
- end: entry.connectEnd,
12
- start: entry.connectStart
13
- },
14
- dnsLookupTime: {
15
- end: entry.domainLookupEnd,
16
- start: entry.domainLookupStart
17
- },
18
- redirectTimeTaken: {
19
- end: entry.redirectEnd,
20
- start: entry.redirectStart
21
- },
22
- tlsConnectNegotiationTime: {
23
- end: entry.requestStart,
24
- start: entry.secureConnectionStart
25
- },
26
- timeTakenToFetchWithoutRedirect: {
27
- end: entry.responseEnd,
28
- start: entry.fetchStart
29
- },
30
- /**
31
- * `interimRequestTime` represents the entire time the browser took to
32
- * request the resource from the server. This includes the interim response time
33
- * (for example, 100 Continue or 103 Early Hints).
34
- *
35
- * i.e. It is the time taken for the request to be sent
36
- * + the waiting time for the server to send a response
37
- *
38
- * Please, note that this value
39
- * is distinctly different from the aforementioned document.
40
- */
41
- interimRequestTime: {
42
- end: entry.responseStart,
43
- start: entry.requestStart
44
- },
45
- /**
46
- * `requestInvocationTime` represents the actual time the browser took to request
47
- * the resource from the server (i.e. it does not include the interim reponse
48
- * time).
49
- * NOTE: it relies on an experimental feature (`firstInterimResponseStart`) that is
50
- * available in Chrome, but not in FireFox or Safari. This value will be undefined
51
- * when `firstInterimResponseStart` is unavailable.
52
- */
53
- requestInvocationTime: entry.firstInterimResponseStart ? {
54
- end: entry.firstInterimResponseStart,
55
- start: entry.requestStart
56
- } : undefined,
57
- /**
58
- * `contentDownloadTime` represents the time taken for the browser to receive
59
- * the resource from the server. This may be cut short if the transport
60
- * connection is closed.
61
- */
62
- contentDownloadTime: {
63
- end: entry.responseEnd,
64
- start: entry.responseStart
65
- }
66
- };
67
- };
68
- var calculateCommonDurations = function calculateCommonDurations(metrics) {
69
- return Object.fromEntries(Object.entries(metrics).map(function (_ref) {
70
- var _ref2 = _slicedToArray(_ref, 2),
71
- key = _ref2[0],
72
- marks = _ref2[1];
73
- if (!marks) {
74
- return [key, undefined];
75
- }
76
- var start = marks.start,
77
- end = marks.end;
78
- return [key, end - start];
79
- }));
80
- };
81
- export var createMediaDurationMetrics = function createMediaDurationMetrics(entry, interactionStartTime) {
82
- var _entry$serverTiming$f, _entry$serverTiming$f2;
83
- return _objectSpread(_objectSpread({
84
- startedAt: getStartedAt(entry, interactionStartTime),
85
- /**
86
- * Performance resource timing data regarding the loading of an
87
- * application's resources as described in
88
- * https://developer.mozilla.org/en-US/docs/Web/API/PerformanceResourceTiming
89
- */
90
- transferSize: entry.transferSize,
91
- decodedBodySize: entry.decodedBodySize,
92
- totalDuration: entry.duration,
93
- initiatorType: entry.initiatorType,
94
- // value can be 'fetch' or 'img'
95
- endedAt: entry.responseEnd - interactionStartTime,
96
- responseEnd: entry.responseEnd,
97
- browserCacheHit: entry.transferSize === 0,
98
- nextHopProtocol: entry.nextHopProtocol
99
- }, calculateCommonDurations(getCommonMetrics(entry))), {}, {
100
- /**
101
- * The user agent string for the current browser
102
- * Read more: https://developer.mozilla.org/en-US/docs/Web/API/Navigator/userAgent
103
- */
104
- userAgent: window.navigator.userAgent,
105
- /**
106
- * Performance resource timing data sent by the server. This includes:
107
- *
108
- * `cdnCacheHit` is a boolean determining whether the CDN cache was hit or missed.
109
- *
110
- * `cdnDownstreamFBL` is the 'CDN Downstream First Byte Latency'. It represents
111
- * how long the it took the CDN to respond to the frontend.
112
- *
113
- * `cdnUpstreamFBL` is the 'CDN Upstream First Byte Latency'. It represents the
114
- * time the Media backend took to respond to the CDN, in the case that the CDN
115
- * cache was a miss. Notably, this timing is a subset of the `cdnDownstreamFBL` timing.
116
- */
117
- cdnCacheHit: entry.serverTiming.find(function (_ref3) {
118
- var name = _ref3.name;
119
- return name === 'cdn-cache-hit';
120
- }) ? true : false,
121
- cdnDownstreamFBL: (_entry$serverTiming$f = entry.serverTiming.find(function (_ref4) {
122
- var name = _ref4.name;
123
- return name === 'cdn-downstream-fbl';
124
- })) === null || _entry$serverTiming$f === void 0 ? void 0 : _entry$serverTiming$f.duration,
125
- cdnUpstreamFBL: (_entry$serverTiming$f2 = entry.serverTiming.find(function (_ref5) {
126
- var name = _ref5.name;
127
- return name === 'cdn-upstream-fbl';
128
- })) === null || _entry$serverTiming$f2 === void 0 ? void 0 : _entry$serverTiming$f2.duration
129
- });
130
- };
131
- var filterCommonMetrics = function filterCommonMetrics(metrics) {
132
- return Object.fromEntries(Object.entries(metrics).filter(function (_ref6) {
133
- var _ref7 = _slicedToArray(_ref6, 2),
134
- marks = _ref7[1];
135
- return !!marks;
136
- }));
137
- };
138
- export var createUfoDurationMetrics = function createUfoDurationMetrics(entry, interactionStartTime) {
139
- // Calculate timing relative to UFO interaction start time
140
- // For page_load: interactionStartTime = 0 (relative to page navigation)
141
- // For transitions: interactionStartTime = performance.now() when transition started
142
- // This ensures metrics work correctly for both initial loads and SPA soft redirects
143
- var relativeStartTime = entry.startTime - interactionStartTime;
144
- return _objectSpread({
145
- resourceTiming: {
146
- start: relativeStartTime,
147
- end: entry.responseEnd,
148
- size: entry.transferSize
149
- }
150
- }, filterCommonMetrics(getCommonMetrics(entry)));
151
- };
1
+ export {};
@@ -0,0 +1,60 @@
1
+ export var getCommonMetrics = function getCommonMetrics(entry) {
2
+ return {
3
+ tcpHandshakeTime: {
4
+ end: entry.connectEnd,
5
+ start: entry.connectStart
6
+ },
7
+ dnsLookupTime: {
8
+ end: entry.domainLookupEnd,
9
+ start: entry.domainLookupStart
10
+ },
11
+ redirectTimeTaken: {
12
+ end: entry.redirectEnd,
13
+ start: entry.redirectStart
14
+ },
15
+ tlsConnectNegotiationTime: {
16
+ end: entry.requestStart,
17
+ start: entry.secureConnectionStart
18
+ },
19
+ timeTakenToFetchWithoutRedirect: {
20
+ end: entry.responseEnd,
21
+ start: entry.fetchStart
22
+ },
23
+ /**
24
+ * `interimRequestTime` represents the entire time the browser took to
25
+ * request the resource from the server. This includes the interim response time
26
+ * (for example, 100 Continue or 103 Early Hints).
27
+ *
28
+ * i.e. It is the time taken for the request to be sent
29
+ * + the waiting time for the server to send a response
30
+ *
31
+ * Please, note that this value
32
+ * is distinctly different from the aforementioned document.
33
+ */
34
+ interimRequestTime: {
35
+ end: entry.responseStart,
36
+ start: entry.requestStart
37
+ },
38
+ /**
39
+ * `requestInvocationTime` represents the actual time the browser took to request
40
+ * the resource from the server (i.e. it does not include the interim reponse
41
+ * time).
42
+ * NOTE: it relies on an experimental feature (`firstInterimResponseStart`) that is
43
+ * available in Chrome, but not in FireFox or Safari. This value will be undefined
44
+ * when `firstInterimResponseStart` is unavailable.
45
+ */
46
+ requestInvocationTime: entry.firstInterimResponseStart ? {
47
+ end: entry.firstInterimResponseStart,
48
+ start: entry.requestStart
49
+ } : undefined,
50
+ /**
51
+ * `contentDownloadTime` represents the time taken for the browser to receive
52
+ * the resource from the server. This may be cut short if the transport
53
+ * connection is closed.
54
+ */
55
+ contentDownloadTime: {
56
+ end: entry.responseEnd,
57
+ start: entry.responseStart
58
+ }
59
+ };
60
+ };
@@ -1,87 +1 @@
1
- import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
- 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; }
3
- 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) { _defineProperty(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; }
4
- import { ANALYTICS_MEDIA_CHANNEL } from '@atlaskit/media-common/analytics';
5
- import { fg } from '@atlaskit/platform-feature-flags/fg';
6
- import { getActiveInteraction } from '@atlaskit/react-ufo/interaction-metrics';
7
- import { createMediaDurationMetrics, createUfoDurationMetrics } from './durationMetrics';
8
- import { sendUfoDurationMetrics } from './ufo';
9
- var MEDIA_CARD_PERF_STATE_KEY = '__mediaCardPerfState_asflkajsdflja';
10
- // this should fire around 10% of the time
11
- var shouldSamplePerfObserver = function shouldSamplePerfObserver() {
12
- return Math.random() < 0.1;
13
- };
14
- var urlRegex = /(?:https:\/\/(?:media\.(?:dev|staging|prod)\.atl-paas\.net|api\.media\.atlassian\.com|media-cdn(?:\.stg\.|\.)atlassian\.com)\/|media-api\/)file\/([^/]+)\/image.*[?&]source=mediaCard/;
15
- var clientIdParamRegex = /[?&]clientId=([^&]+)/;
16
- var ssrParamRegex = /[?&]token=([^&]+)/;
17
- var createAndGetResourceObserver = function createAndGetResourceObserver() {
18
- return new PerformanceObserver(function (list) {
19
- list.getEntries().forEach(function (baseEntry) {
20
- var _window$MEDIA_CARD_PE;
21
- var entry = baseEntry;
22
- var matchFileId = entry.name.match(urlRegex);
23
- var matchClientId = entry.name.match(clientIdParamRegex);
24
- var matchSSR = entry.name.match(ssrParamRegex);
25
- if (matchFileId && (_window$MEDIA_CARD_PE = window[MEDIA_CARD_PERF_STATE_KEY]) !== null && _window$MEDIA_CARD_PE !== void 0 && _window$MEDIA_CARD_PE.mediaCardCreateAnalyticsEvent) {
26
- var _interaction$start;
27
- var fileId = matchFileId[1];
28
- var clientId = matchClientId === null || matchClientId === void 0 ? void 0 : matchClientId[1];
29
- var ssr = matchSSR ? 'server' : undefined;
30
-
31
- // Get UFO interaction start time for proper timing in SPAs
32
- // For page_load: start = 0 (relative to page navigation)
33
- // For transitions: start = performance.now() when transition started
34
- var interaction = getActiveInteraction();
35
- var interactionStartTime = (_interaction$start = interaction === null || interaction === void 0 ? void 0 : interaction.start) !== null && _interaction$start !== void 0 ? _interaction$start : 0;
36
- var mediaDurationMetrics = createMediaDurationMetrics(entry, interactionStartTime);
37
- var event = window[MEDIA_CARD_PERF_STATE_KEY].mediaCardCreateAnalyticsEvent({
38
- eventType: 'operational',
39
- action: 'succeeded',
40
- actionSubject: 'mediaCardPerfObserver',
41
- attributes: _objectSpread({
42
- ssr: ssr,
43
- fileId: fileId,
44
- mediaClientId: clientId,
45
- featureFlags: {
46
- 'media-perf-lazy-loading-optimisation': fg('media-perf-lazy-loading-optimisation')
47
- }
48
- }, mediaDurationMetrics)
49
- });
50
- if (shouldSamplePerfObserver()) {
51
- event.fire(ANALYTICS_MEDIA_CHANNEL);
52
- }
53
- if (fg('platform_media_card_ufo_network_metrics')) {
54
- var ufoDurationMetrics = createUfoDurationMetrics(entry, interactionStartTime);
55
- var endpointName = 'image';
56
- sendUfoDurationMetrics(ufoDurationMetrics, endpointName);
57
- }
58
- }
59
- });
60
- });
61
- };
62
- export var setAnalyticsContext = function setAnalyticsContext(newAnalyticsContext) {
63
- if (!window[MEDIA_CARD_PERF_STATE_KEY]) {
64
- window[MEDIA_CARD_PERF_STATE_KEY] = {};
65
- }
66
- window[MEDIA_CARD_PERF_STATE_KEY].mediaCardCreateAnalyticsEvent = newAnalyticsContext;
67
- };
68
- var isDefinedPerformanceObserver = function isDefinedPerformanceObserver() {
69
- return typeof window['PerformanceObserver'] !== 'undefined';
70
- };
71
- export var startResourceObserver = function startResourceObserver() {
72
- var _window$MEDIA_CARD_PE2;
73
- if (!isDefinedPerformanceObserver()) {
74
- return;
75
- }
76
- if ((_window$MEDIA_CARD_PE2 = window[MEDIA_CARD_PERF_STATE_KEY]) !== null && _window$MEDIA_CARD_PE2 !== void 0 && _window$MEDIA_CARD_PE2.mediaCardPerfObserver) {
77
- return;
78
- }
79
- if (!window[MEDIA_CARD_PERF_STATE_KEY]) {
80
- window[MEDIA_CARD_PERF_STATE_KEY] = {};
81
- }
82
- window[MEDIA_CARD_PERF_STATE_KEY].mediaCardPerfObserver = createAndGetResourceObserver();
83
- window[MEDIA_CARD_PERF_STATE_KEY].mediaCardPerfObserver.observe({
84
- type: 'resource',
85
- buffered: true
86
- });
87
- };
1
+ export var MEDIA_CARD_PERF_STATE_KEY = '__mediaCardPerfState_asflkajsdflja';
@@ -0,0 +1,7 @@
1
+ import { MEDIA_CARD_PERF_STATE_KEY } from './mediaPerformanceObserver';
2
+ export var setAnalyticsContext = function setAnalyticsContext(newAnalyticsContext) {
3
+ if (!window[MEDIA_CARD_PERF_STATE_KEY]) {
4
+ window[MEDIA_CARD_PERF_STATE_KEY] = {};
5
+ }
6
+ window[MEDIA_CARD_PERF_STATE_KEY].mediaCardCreateAnalyticsEvent = newAnalyticsContext;
7
+ };