@atlaskit/media-client 37.2.36 → 37.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (459) hide show
  1. package/CHANGELOG.md +64 -0
  2. package/dist/cjs/client/file-fetcher/FileFetcherError.js +54 -0
  3. package/dist/cjs/client/file-fetcher/error.js +13 -52
  4. package/dist/cjs/client/file-fetcher/index.js +59 -46
  5. package/dist/cjs/client/file-fetcher/isFileFetcherError.js +10 -0
  6. package/dist/cjs/client/media-client.js +4 -4
  7. package/dist/cjs/client/media-store/MediaStore.js +100 -108
  8. package/dist/cjs/client/media-store/MediaStoreError.js +36 -0
  9. package/dist/cjs/client/media-store/cdnFeatureFlag.js +14 -0
  10. package/dist/cjs/client/media-store/decodeJwtToken.js +9 -0
  11. package/dist/cjs/client/media-store/error.js +13 -34
  12. package/dist/cjs/client/media-store/extendImageParams.js +23 -0
  13. package/dist/cjs/client/media-store/getMediaEnvironment.js +11 -0
  14. package/dist/cjs/client/media-store/getMediaRegion.js +11 -0
  15. package/dist/cjs/client/media-store/getValueFromSessionStorage.js +10 -0
  16. package/dist/cjs/client/media-store/isMediaStoreError.js +10 -0
  17. package/dist/cjs/client/media-store/jsonHeaders.js +10 -0
  18. package/dist/cjs/client/media-store/resolveAuth.js +10 -16
  19. package/dist/cjs/client/media-store/resolveInitialAuth.js +13 -0
  20. package/dist/cjs/client/media-store/setKeyValueInSessionStorage.js +19 -0
  21. package/dist/cjs/client/mobile-upload.js +9 -6
  22. package/dist/cjs/identifier.js +20 -15
  23. package/dist/cjs/index.js +60 -37
  24. package/dist/cjs/is-different-identifier.js +16 -0
  25. package/dist/cjs/is-external-image-identifier.js +9 -0
  26. package/dist/cjs/is-file-identifier.js +9 -0
  27. package/dist/cjs/models/artifacts.js +2 -2
  28. package/dist/cjs/models/errors/BaseMediaClientError.js +43 -0
  29. package/dist/cjs/models/errors/CommonMediaClientError.js +32 -0
  30. package/dist/cjs/models/errors/fromCommonMediaClientError.js +28 -0
  31. package/dist/cjs/models/errors/getMediaClientErrorReason.js +10 -0
  32. package/dist/cjs/models/errors/helpers.js +14 -8
  33. package/dist/cjs/models/errors/index.js +37 -96
  34. package/dist/cjs/models/errors/isCommonMediaClientError.js +17 -0
  35. package/dist/cjs/models/errors/isMediaClientError.js +9 -0
  36. package/dist/cjs/models/errors/toCommonMediaClientError.js +13 -0
  37. package/dist/cjs/models/file-state.js +75 -93
  38. package/dist/cjs/models/has-artifacts.js +9 -0
  39. package/dist/cjs/models/is-error-file-state.js +9 -0
  40. package/dist/cjs/models/is-final-file-state.js +9 -0
  41. package/dist/cjs/models/is-image-representation-ready.js +16 -0
  42. package/dist/cjs/models/is-non-error-final-file-state.js +9 -0
  43. package/dist/cjs/models/is-not-found-media-item-details.js +9 -0
  44. package/dist/cjs/models/is-previewable-file-state.js +10 -0
  45. package/dist/cjs/models/is-previewable-type.js +10 -0
  46. package/dist/cjs/models/is-processed-file-state.js +9 -0
  47. package/dist/cjs/models/is-processing-file-state.js +9 -0
  48. package/dist/cjs/models/is-uploading-file-state.js +9 -0
  49. package/dist/cjs/models/map-media-file-to-file-state.js +59 -0
  50. package/dist/cjs/models/map-media-item-to-file-state.js +18 -0
  51. package/dist/cjs/models/media.js +23 -10
  52. package/dist/cjs/uploader/{error.js → UploaderError.js} +2 -6
  53. package/dist/cjs/uploader/index.js +4 -4
  54. package/dist/cjs/uploader/isUploaderError.js +10 -0
  55. package/dist/cjs/utils/addFileAttrsToUrl.js +24 -0
  56. package/dist/cjs/utils/createBatchLoadingFunc.js +127 -0
  57. package/dist/cjs/utils/createFileDataLoader.js +1 -170
  58. package/dist/cjs/utils/createFileDataloader-2.js +15 -0
  59. package/dist/cjs/utils/getAttrsFromUrl.js +41 -0
  60. package/dist/cjs/utils/getItemsFromKeys.js +50 -0
  61. package/dist/cjs/utils/isCDNEnabled.js +15 -0
  62. package/dist/cjs/utils/isMediaBlobUrl.js +10 -0
  63. package/dist/cjs/utils/isPathBasedEnabled.js +14 -0
  64. package/dist/cjs/utils/mapRetryUrlToPathBasedUrl.js +24 -0
  65. package/dist/cjs/utils/mapToMediaCdnUrl.js +38 -0
  66. package/dist/cjs/utils/mapToPathBasedUrl.js +32 -0
  67. package/dist/cjs/utils/mediaCdn.js +2 -40
  68. package/dist/cjs/utils/mediaSubscribable/createMediaSubscribable.js +11 -0
  69. package/dist/cjs/utils/mediaSubscribable/fromObservable.js +13 -5
  70. package/dist/cjs/utils/mobileUpload/{error.js → MobileUploadError.js} +2 -6
  71. package/dist/cjs/utils/mobileUpload/{helpers.js → createMobileDownloadFileStream.js} +8 -18
  72. package/dist/cjs/utils/mobileUpload/createMobileFileStateSubject.js +16 -0
  73. package/dist/cjs/utils/mobileUpload/isMobileUploadError.js +10 -0
  74. package/dist/cjs/utils/mobileUpload/stateMachine/createMobileUploadService.js +10 -0
  75. package/dist/cjs/utils/mobileUpload/stateMachine/{index.js → createMobileUploadStateMachine.js} +8 -12
  76. package/dist/cjs/utils/mobileUpload/stateMachine/states/uploading.js +3 -3
  77. package/dist/cjs/utils/objectToQueryString.js +17 -0
  78. package/dist/cjs/utils/overrideMediaTypeIfUnknown.js +2 -2
  79. package/dist/cjs/utils/pathBasedUrl.js +2 -49
  80. package/dist/cjs/utils/polling/PollingError.js +36 -0
  81. package/dist/cjs/utils/polling/errors.js +13 -34
  82. package/dist/cjs/utils/polling/index.js +11 -6
  83. package/dist/cjs/utils/polling/isPollingError.js +10 -0
  84. package/dist/cjs/utils/rejectTimeout.js +11 -0
  85. package/dist/cjs/utils/request/RequestError.js +56 -0
  86. package/dist/cjs/utils/request/cloneRequestError.js +17 -0
  87. package/dist/cjs/utils/request/createMapResponseToBlob.js +43 -0
  88. package/dist/cjs/utils/request/createMapResponseToJson.js +43 -0
  89. package/dist/cjs/utils/request/createProcessFetchResponse.js +16 -0
  90. package/dist/cjs/utils/request/createRequestErrorFromResponse.js +20 -0
  91. package/dist/cjs/utils/request/createRequestErrorReason.js +30 -0
  92. package/dist/cjs/utils/request/createUrl.js +31 -0
  93. package/dist/cjs/utils/request/defaultShouldRetryError.js +12 -0
  94. package/dist/cjs/utils/request/errors.js +13 -54
  95. package/dist/cjs/utils/request/extendHeaders.js +21 -0
  96. package/dist/cjs/utils/request/extendTraceContext.js +16 -0
  97. package/dist/cjs/utils/request/extractMediaHeaders.js +15 -0
  98. package/dist/cjs/utils/request/fetchRetry.js +120 -0
  99. package/dist/cjs/utils/request/getStatusCode.js +11 -0
  100. package/dist/cjs/utils/request/helpers.js +198 -313
  101. package/dist/cjs/utils/request/index.js +36 -20
  102. package/dist/cjs/utils/request/isAbortedRequestError.js +9 -0
  103. package/dist/cjs/utils/request/isFetchNetworkError.js +10 -0
  104. package/dist/cjs/utils/request/isRateLimitedError.js +11 -0
  105. package/dist/cjs/utils/request/isRequestError.js +10 -0
  106. package/dist/cjs/utils/request/mapAuthToRequestHeaders.js +22 -0
  107. package/dist/cjs/utils/request/waitPromise.js +11 -0
  108. package/dist/cjs/utils/{setTimeoutPromise.js → resolveTimeout.js} +1 -6
  109. package/dist/cjs/utils/url.js +43 -63
  110. package/dist/es2019/client/file-fetcher/FileFetcherError.js +34 -0
  111. package/dist/es2019/client/file-fetcher/error.js +9 -37
  112. package/dist/es2019/client/file-fetcher/index.js +32 -17
  113. package/dist/es2019/client/file-fetcher/isFileFetcherError.js +4 -0
  114. package/dist/es2019/client/media-client.js +1 -1
  115. package/dist/es2019/client/media-store/MediaStore.js +35 -59
  116. package/dist/es2019/client/media-store/MediaStoreError.js +19 -0
  117. package/dist/es2019/client/media-store/cdnFeatureFlag.js +8 -0
  118. package/dist/es2019/client/media-store/decodeJwtToken.js +3 -0
  119. package/dist/es2019/client/media-store/error.js +9 -22
  120. package/dist/es2019/client/media-store/extendImageParams.js +14 -0
  121. package/dist/es2019/client/media-store/getMediaEnvironment.js +5 -0
  122. package/dist/es2019/client/media-store/getMediaRegion.js +5 -0
  123. package/dist/es2019/client/media-store/getValueFromSessionStorage.js +4 -0
  124. package/dist/es2019/client/media-store/isMediaStoreError.js +4 -0
  125. package/dist/es2019/client/media-store/jsonHeaders.js +4 -0
  126. package/dist/es2019/client/media-store/resolveAuth.js +2 -8
  127. package/dist/es2019/client/media-store/resolveInitialAuth.js +7 -0
  128. package/dist/es2019/client/media-store/setKeyValueInSessionStorage.js +13 -0
  129. package/dist/es2019/client/mobile-upload.js +5 -2
  130. package/dist/es2019/identifier.js +14 -14
  131. package/dist/es2019/index.js +31 -8
  132. package/dist/es2019/is-different-identifier.js +9 -0
  133. package/dist/es2019/is-external-image-identifier.js +3 -0
  134. package/dist/es2019/is-file-identifier.js +3 -0
  135. package/dist/es2019/models/artifacts.js +1 -1
  136. package/dist/es2019/models/errors/BaseMediaClientError.js +23 -0
  137. package/dist/es2019/models/errors/CommonMediaClientError.js +13 -0
  138. package/dist/es2019/models/errors/fromCommonMediaClientError.js +20 -0
  139. package/dist/es2019/models/errors/getMediaClientErrorReason.js +4 -0
  140. package/dist/es2019/models/errors/helpers.js +10 -6
  141. package/dist/es2019/models/errors/index.js +27 -72
  142. package/dist/es2019/models/errors/isCommonMediaClientError.js +11 -0
  143. package/dist/es2019/models/errors/isMediaClientError.js +3 -0
  144. package/dist/es2019/models/errors/toCommonMediaClientError.js +8 -0
  145. package/dist/es2019/models/file-state.js +46 -79
  146. package/dist/es2019/models/has-artifacts.js +1 -0
  147. package/dist/es2019/models/is-error-file-state.js +1 -0
  148. package/dist/es2019/models/is-final-file-state.js +1 -0
  149. package/dist/es2019/models/is-image-representation-ready.js +10 -0
  150. package/dist/es2019/models/is-non-error-final-file-state.js +1 -0
  151. package/dist/es2019/models/is-not-found-media-item-details.js +3 -0
  152. package/dist/es2019/models/is-previewable-file-state.js +2 -0
  153. package/dist/es2019/models/is-previewable-type.js +4 -0
  154. package/dist/es2019/models/is-processed-file-state.js +1 -0
  155. package/dist/es2019/models/is-processing-file-state.js +1 -0
  156. package/dist/es2019/models/is-uploading-file-state.js +1 -0
  157. package/dist/es2019/models/map-media-file-to-file-state.js +53 -0
  158. package/dist/es2019/models/map-media-item-to-file-state.js +9 -0
  159. package/dist/es2019/models/media.js +12 -8
  160. package/dist/es2019/uploader/{error.js → UploaderError.js} +1 -4
  161. package/dist/es2019/uploader/index.js +3 -3
  162. package/dist/es2019/uploader/isUploaderError.js +4 -0
  163. package/dist/es2019/utils/addFileAttrsToUrl.js +19 -0
  164. package/dist/es2019/utils/createBatchLoadingFunc.js +74 -0
  165. package/dist/es2019/utils/createFileDataLoader.js +1 -122
  166. package/dist/es2019/utils/createFileDataloader-2.js +8 -0
  167. package/dist/es2019/utils/getAttrsFromUrl.js +35 -0
  168. package/dist/es2019/utils/getItemsFromKeys.js +43 -0
  169. package/dist/es2019/utils/isCDNEnabled.js +9 -0
  170. package/dist/es2019/utils/isMediaBlobUrl.js +4 -0
  171. package/dist/es2019/utils/isPathBasedEnabled.js +7 -0
  172. package/dist/es2019/utils/mapRetryUrlToPathBasedUrl.js +17 -0
  173. package/dist/es2019/utils/mapToMediaCdnUrl.js +32 -0
  174. package/dist/es2019/utils/mapToPathBasedUrl.js +25 -0
  175. package/dist/es2019/utils/mediaCdn.js +1 -37
  176. package/dist/es2019/utils/mediaSubscribable/createMediaSubscribable.js +5 -0
  177. package/dist/es2019/utils/mediaSubscribable/fromObservable.js +7 -4
  178. package/dist/es2019/utils/mobileUpload/{error.js → MobileUploadError.js} +1 -4
  179. package/dist/es2019/utils/mobileUpload/{helpers.js → createMobileDownloadFileStream.js} +3 -11
  180. package/dist/es2019/utils/mobileUpload/createMobileFileStateSubject.js +8 -0
  181. package/dist/es2019/utils/mobileUpload/isMobileUploadError.js +4 -0
  182. package/dist/es2019/utils/mobileUpload/stateMachine/createMobileUploadService.js +4 -0
  183. package/dist/es2019/utils/mobileUpload/stateMachine/{index.js → createMobileUploadStateMachine.js} +7 -10
  184. package/dist/es2019/utils/mobileUpload/stateMachine/states/uploading.js +1 -1
  185. package/dist/es2019/utils/objectToQueryString.js +9 -0
  186. package/dist/es2019/utils/overrideMediaTypeIfUnknown.js +1 -1
  187. package/dist/es2019/utils/pathBasedUrl.js +1 -45
  188. package/dist/es2019/utils/polling/PollingError.js +21 -0
  189. package/dist/es2019/utils/polling/errors.js +9 -24
  190. package/dist/es2019/utils/polling/index.js +10 -2
  191. package/dist/es2019/utils/polling/isPollingError.js +4 -0
  192. package/dist/es2019/utils/rejectTimeout.js +3 -0
  193. package/dist/es2019/utils/request/RequestError.js +39 -0
  194. package/dist/es2019/utils/request/cloneRequestError.js +12 -0
  195. package/dist/es2019/utils/request/createMapResponseToBlob.js +15 -0
  196. package/dist/es2019/utils/request/createMapResponseToJson.js +15 -0
  197. package/dist/es2019/utils/request/createProcessFetchResponse.js +10 -0
  198. package/dist/es2019/utils/request/createRequestErrorFromResponse.js +14 -0
  199. package/dist/es2019/utils/request/createRequestErrorReason.js +24 -0
  200. package/dist/es2019/utils/request/createUrl.js +17 -0
  201. package/dist/es2019/utils/request/defaultShouldRetryError.js +6 -0
  202. package/dist/es2019/utils/request/errors.js +9 -42
  203. package/dist/es2019/utils/request/extendHeaders.js +18 -0
  204. package/dist/es2019/utils/request/extendTraceContext.js +5 -0
  205. package/dist/es2019/utils/request/extractMediaHeaders.js +11 -0
  206. package/dist/es2019/utils/request/fetchRetry.js +54 -0
  207. package/dist/es2019/utils/request/getStatusCode.js +5 -0
  208. package/dist/es2019/utils/request/helpers.js +73 -215
  209. package/dist/es2019/utils/request/index.js +25 -4
  210. package/dist/es2019/utils/request/isAbortedRequestError.js +3 -0
  211. package/dist/es2019/utils/request/isFetchNetworkError.js +4 -0
  212. package/dist/es2019/utils/request/isRateLimitedError.js +5 -0
  213. package/dist/es2019/utils/request/isRequestError.js +4 -0
  214. package/dist/es2019/utils/request/mapAuthToRequestHeaders.js +16 -0
  215. package/dist/es2019/utils/request/waitPromise.js +3 -0
  216. package/dist/es2019/utils/resolveTimeout.js +3 -0
  217. package/dist/es2019/utils/url.js +18 -65
  218. package/dist/esm/client/file-fetcher/FileFetcherError.js +47 -0
  219. package/dist/esm/client/file-fetcher/error.js +9 -50
  220. package/dist/esm/client/file-fetcher/index.js +32 -17
  221. package/dist/esm/client/file-fetcher/isFileFetcherError.js +4 -0
  222. package/dist/esm/client/media-client.js +1 -1
  223. package/dist/esm/client/media-store/MediaStore.js +35 -58
  224. package/dist/esm/client/media-store/MediaStoreError.js +29 -0
  225. package/dist/esm/client/media-store/cdnFeatureFlag.js +8 -0
  226. package/dist/esm/client/media-store/decodeJwtToken.js +3 -0
  227. package/dist/esm/client/media-store/error.js +9 -32
  228. package/dist/esm/client/media-store/extendImageParams.js +16 -0
  229. package/dist/esm/client/media-store/getMediaEnvironment.js +5 -0
  230. package/dist/esm/client/media-store/getMediaRegion.js +5 -0
  231. package/dist/esm/client/media-store/getValueFromSessionStorage.js +4 -0
  232. package/dist/esm/client/media-store/isMediaStoreError.js +4 -0
  233. package/dist/esm/client/media-store/jsonHeaders.js +4 -0
  234. package/dist/esm/client/media-store/resolveAuth.js +3 -9
  235. package/dist/esm/client/media-store/resolveInitialAuth.js +7 -0
  236. package/dist/esm/client/media-store/setKeyValueInSessionStorage.js +13 -0
  237. package/dist/esm/client/mobile-upload.js +5 -2
  238. package/dist/esm/identifier.js +14 -14
  239. package/dist/esm/index.js +31 -8
  240. package/dist/esm/is-different-identifier.js +9 -0
  241. package/dist/esm/is-external-image-identifier.js +3 -0
  242. package/dist/esm/is-file-identifier.js +3 -0
  243. package/dist/esm/models/artifacts.js +1 -1
  244. package/dist/esm/models/errors/BaseMediaClientError.js +36 -0
  245. package/dist/esm/models/errors/CommonMediaClientError.js +25 -0
  246. package/dist/esm/models/errors/fromCommonMediaClientError.js +21 -0
  247. package/dist/esm/models/errors/getMediaClientErrorReason.js +4 -0
  248. package/dist/esm/models/errors/helpers.js +10 -6
  249. package/dist/esm/models/errors/index.js +27 -91
  250. package/dist/esm/models/errors/isCommonMediaClientError.js +11 -0
  251. package/dist/esm/models/errors/isMediaClientError.js +3 -0
  252. package/dist/esm/models/errors/toCommonMediaClientError.js +8 -0
  253. package/dist/esm/models/file-state.js +46 -93
  254. package/dist/esm/models/has-artifacts.js +3 -0
  255. package/dist/esm/models/is-error-file-state.js +3 -0
  256. package/dist/esm/models/is-final-file-state.js +3 -0
  257. package/dist/esm/models/is-image-representation-ready.js +10 -0
  258. package/dist/esm/models/is-non-error-final-file-state.js +3 -0
  259. package/dist/esm/models/is-not-found-media-item-details.js +3 -0
  260. package/dist/esm/models/is-previewable-file-state.js +4 -0
  261. package/dist/esm/models/is-previewable-type.js +4 -0
  262. package/dist/esm/models/is-processed-file-state.js +3 -0
  263. package/dist/esm/models/is-processing-file-state.js +3 -0
  264. package/dist/esm/models/is-uploading-file-state.js +3 -0
  265. package/dist/esm/models/map-media-file-to-file-state.js +52 -0
  266. package/dist/esm/models/map-media-item-to-file-state.js +11 -0
  267. package/dist/esm/models/media.js +12 -8
  268. package/dist/esm/uploader/{error.js → UploaderError.js} +2 -5
  269. package/dist/esm/uploader/index.js +3 -3
  270. package/dist/esm/uploader/isUploaderError.js +4 -0
  271. package/dist/esm/utils/addFileAttrsToUrl.js +17 -0
  272. package/dist/esm/utils/createBatchLoadingFunc.js +121 -0
  273. package/dist/esm/utils/createFileDataLoader.js +1 -166
  274. package/dist/esm/utils/createFileDataloader-2.js +8 -0
  275. package/dist/esm/utils/getAttrsFromUrl.js +35 -0
  276. package/dist/esm/utils/getItemsFromKeys.js +43 -0
  277. package/dist/esm/utils/isCDNEnabled.js +9 -0
  278. package/dist/esm/utils/isMediaBlobUrl.js +4 -0
  279. package/dist/esm/utils/isPathBasedEnabled.js +7 -0
  280. package/dist/esm/utils/mapRetryUrlToPathBasedUrl.js +17 -0
  281. package/dist/esm/utils/mapToMediaCdnUrl.js +32 -0
  282. package/dist/esm/utils/mapToPathBasedUrl.js +25 -0
  283. package/dist/esm/utils/mediaCdn.js +1 -37
  284. package/dist/esm/utils/mediaSubscribable/createMediaSubscribable.js +5 -0
  285. package/dist/esm/utils/mediaSubscribable/fromObservable.js +7 -4
  286. package/dist/esm/utils/mobileUpload/{error.js → MobileUploadError.js} +2 -5
  287. package/dist/esm/utils/mobileUpload/{helpers.js → createMobileDownloadFileStream.js} +3 -13
  288. package/dist/esm/utils/mobileUpload/createMobileFileStateSubject.js +10 -0
  289. package/dist/esm/utils/mobileUpload/isMobileUploadError.js +4 -0
  290. package/dist/esm/utils/mobileUpload/stateMachine/createMobileUploadService.js +4 -0
  291. package/dist/esm/utils/mobileUpload/stateMachine/{index.js → createMobileUploadStateMachine.js} +7 -10
  292. package/dist/esm/utils/mobileUpload/stateMachine/states/uploading.js +1 -1
  293. package/dist/esm/utils/objectToQueryString.js +11 -0
  294. package/dist/esm/utils/overrideMediaTypeIfUnknown.js +1 -1
  295. package/dist/esm/utils/pathBasedUrl.js +1 -45
  296. package/dist/esm/utils/polling/PollingError.js +29 -0
  297. package/dist/esm/utils/polling/errors.js +9 -32
  298. package/dist/esm/utils/polling/index.js +10 -2
  299. package/dist/esm/utils/polling/isPollingError.js +4 -0
  300. package/dist/esm/utils/rejectTimeout.js +5 -0
  301. package/dist/esm/utils/request/RequestError.js +49 -0
  302. package/dist/esm/utils/request/cloneRequestError.js +10 -0
  303. package/dist/esm/utils/request/createMapResponseToBlob.js +36 -0
  304. package/dist/esm/utils/request/createMapResponseToJson.js +36 -0
  305. package/dist/esm/utils/request/createProcessFetchResponse.js +10 -0
  306. package/dist/esm/utils/request/createRequestErrorFromResponse.js +13 -0
  307. package/dist/esm/utils/request/createRequestErrorReason.js +24 -0
  308. package/dist/esm/utils/request/createUrl.js +24 -0
  309. package/dist/esm/utils/request/defaultShouldRetryError.js +6 -0
  310. package/dist/esm/utils/request/errors.js +9 -52
  311. package/dist/esm/utils/request/extendHeaders.js +14 -0
  312. package/dist/esm/utils/request/extendTraceContext.js +9 -0
  313. package/dist/esm/utils/request/extractMediaHeaders.js +9 -0
  314. package/dist/esm/utils/request/fetchRetry.js +113 -0
  315. package/dist/esm/utils/request/getStatusCode.js +5 -0
  316. package/dist/esm/utils/request/helpers.js +73 -295
  317. package/dist/esm/utils/request/index.js +25 -4
  318. package/dist/esm/utils/request/isAbortedRequestError.js +3 -0
  319. package/dist/esm/utils/request/isFetchNetworkError.js +4 -0
  320. package/dist/esm/utils/request/isRateLimitedError.js +5 -0
  321. package/dist/esm/utils/request/isRequestError.js +4 -0
  322. package/dist/esm/utils/request/mapAuthToRequestHeaders.js +16 -0
  323. package/dist/esm/utils/request/waitPromise.js +5 -0
  324. package/dist/esm/utils/{setTimeoutPromise.js → resolveTimeout.js} +0 -5
  325. package/dist/esm/utils/url.js +18 -65
  326. package/dist/types/client/file-fetcher/FileFetcherError.d.ts +32 -0
  327. package/dist/types/client/file-fetcher/error.d.ts +9 -33
  328. package/dist/types/client/file-fetcher/index.d.ts +15 -7
  329. package/dist/types/client/file-fetcher/isFileFetcherError.d.ts +2 -0
  330. package/dist/types/client/media-client.d.ts +4 -3
  331. package/dist/types/client/media-store/MediaStore.d.ts +18 -6
  332. package/dist/types/client/media-store/MediaStoreError.d.ts +14 -0
  333. package/dist/types/client/media-store/cdnFeatureFlag.d.ts +1 -0
  334. package/dist/types/client/media-store/decodeJwtToken.d.ts +3 -0
  335. package/dist/types/client/media-store/error.d.ts +9 -15
  336. package/dist/types/client/media-store/extendImageParams.d.ts +2 -0
  337. package/dist/types/client/media-store/getMediaEnvironment.d.ts +1 -0
  338. package/dist/types/client/media-store/getMediaRegion.d.ts +1 -0
  339. package/dist/types/client/media-store/getValueFromSessionStorage.d.ts +1 -0
  340. package/dist/types/client/media-store/isMediaStoreError.d.ts +2 -0
  341. package/dist/types/client/media-store/jsonHeaders.d.ts +1 -0
  342. package/dist/types/client/media-store/resolveAuth.d.ts +0 -1
  343. package/dist/types/client/media-store/resolveInitialAuth.d.ts +2 -0
  344. package/dist/types/client/media-store/setKeyValueInSessionStorage.d.ts +1 -0
  345. package/dist/types/client/mobile-upload.d.ts +1 -1
  346. package/dist/types/identifier.d.ts +12 -3
  347. package/dist/types/index.d.ts +34 -10
  348. package/dist/types/is-different-identifier.d.ts +2 -0
  349. package/dist/types/is-external-image-identifier.d.ts +2 -0
  350. package/dist/types/is-file-identifier.d.ts +2 -0
  351. package/dist/types/models/errors/BaseMediaClientError.d.ts +11 -0
  352. package/dist/types/models/errors/CommonMediaClientError.d.ts +7 -0
  353. package/dist/types/models/errors/fromCommonMediaClientError.d.ts +4 -0
  354. package/dist/types/models/errors/getMediaClientErrorReason.d.ts +2 -0
  355. package/dist/types/models/errors/helpers.d.ts +8 -5
  356. package/dist/types/models/errors/index.d.ts +26 -21
  357. package/dist/types/models/errors/isCommonMediaClientError.d.ts +3 -0
  358. package/dist/types/models/errors/isMediaClientError.d.ts +4 -0
  359. package/dist/types/models/errors/toCommonMediaClientError.d.ts +4 -0
  360. package/dist/types/models/file-state.d.ts +45 -16
  361. package/dist/types/models/has-artifacts.d.ts +4 -0
  362. package/dist/types/models/is-error-file-state.d.ts +2 -0
  363. package/dist/types/models/is-final-file-state.d.ts +2 -0
  364. package/dist/types/models/is-image-representation-ready.d.ts +2 -0
  365. package/dist/types/models/is-non-error-final-file-state.d.ts +2 -0
  366. package/dist/types/models/is-not-found-media-item-details.d.ts +2 -0
  367. package/dist/types/models/is-previewable-file-state.d.ts +3 -0
  368. package/dist/types/models/is-previewable-type.d.ts +2 -0
  369. package/dist/types/models/is-processed-file-state.d.ts +2 -0
  370. package/dist/types/models/is-processing-file-state.d.ts +2 -0
  371. package/dist/types/models/is-uploading-file-state.d.ts +2 -0
  372. package/dist/types/models/map-media-file-to-file-state.d.ts +4 -0
  373. package/dist/types/models/map-media-item-to-file-state.d.ts +3 -0
  374. package/dist/types/models/media.d.ts +8 -2
  375. package/dist/types/uploader/{error.d.ts → UploaderError.d.ts} +12 -13
  376. package/dist/types/uploader/index.d.ts +1 -1
  377. package/dist/types/uploader/isUploaderError.d.ts +2 -0
  378. package/dist/types/utils/addFileAttrsToUrl.d.ts +2 -0
  379. package/dist/types/utils/createBatchLoadingFunc.d.ts +11 -0
  380. package/dist/types/utils/createCopyIntentRegisterationBatcher.d.ts +1 -1
  381. package/dist/types/utils/createFileDataLoader.d.ts +0 -14
  382. package/dist/types/utils/createFileDataloader-2.d.ts +4 -0
  383. package/dist/types/utils/getAttrsFromUrl.d.ts +2 -0
  384. package/dist/types/utils/getItemsFromKeys.d.ts +3 -0
  385. package/dist/types/utils/imageResizeModeToFileImageMode.d.ts +1 -1
  386. package/dist/types/utils/isCDNEnabled.d.ts +1 -0
  387. package/dist/types/utils/isMediaBlobUrl.d.ts +1 -0
  388. package/dist/types/utils/isPathBasedEnabled.d.ts +1 -0
  389. package/dist/types/utils/mapRetryUrlToPathBasedUrl.d.ts +1 -0
  390. package/dist/types/utils/mapToMediaCdnUrl.d.ts +1 -0
  391. package/dist/types/utils/mapToPathBasedUrl.d.ts +1 -0
  392. package/dist/types/utils/mediaCdn.d.ts +1 -2
  393. package/dist/types/utils/mediaSubscribable/createMediaSubscribable.d.ts +3 -0
  394. package/dist/types/utils/mediaSubscribable/fromObservable.d.ts +4 -1
  395. package/dist/types/utils/mobileUpload/{error.d.ts → MobileUploadError.d.ts} +15 -16
  396. package/dist/types/utils/mobileUpload/createMobileDownloadFileStream.d.ts +5 -0
  397. package/dist/types/utils/mobileUpload/{helpers.d.ts → createMobileFileStateSubject.d.ts} +0 -3
  398. package/dist/types/utils/mobileUpload/isMobileUploadError.d.ts +2 -0
  399. package/dist/types/utils/mobileUpload/stateMachine/createMobileUploadService.d.ts +3 -0
  400. package/dist/types/utils/mobileUpload/stateMachine/{index.d.ts → createMobileUploadStateMachine.d.ts} +2 -3
  401. package/dist/types/utils/objectToQueryString.d.ts +3 -0
  402. package/dist/types/utils/pathBasedUrl.d.ts +1 -3
  403. package/dist/types/utils/polling/PollingError.d.ts +10 -0
  404. package/dist/types/utils/polling/errors.d.ts +8 -11
  405. package/dist/types/utils/polling/index.d.ts +8 -1
  406. package/dist/types/utils/polling/isPollingError.d.ts +2 -0
  407. package/dist/types/utils/{setTimeoutPromise.d.ts → rejectTimeout.d.ts} +0 -1
  408. package/dist/types/utils/request/RequestError.d.ts +21 -0
  409. package/dist/types/utils/request/cloneRequestError.d.ts +3 -0
  410. package/dist/types/utils/request/createMapResponseToBlob.d.ts +2 -0
  411. package/dist/types/utils/request/createMapResponseToJson.d.ts +2 -0
  412. package/dist/types/utils/request/createProcessFetchResponse.d.ts +2 -0
  413. package/dist/types/utils/request/createRequestErrorFromResponse.d.ts +3 -0
  414. package/dist/types/utils/request/createRequestErrorReason.d.ts +2 -0
  415. package/dist/types/utils/request/createUrl.d.ts +2 -0
  416. package/dist/types/utils/request/defaultShouldRetryError.d.ts +1 -0
  417. package/dist/types/utils/request/errors.d.ts +8 -22
  418. package/dist/types/utils/request/extendHeaders.d.ts +4 -0
  419. package/dist/types/utils/request/extendTraceContext.d.ts +2 -0
  420. package/dist/types/utils/request/extractMediaHeaders.d.ts +4 -0
  421. package/dist/types/utils/request/fetchRetry.d.ts +2 -0
  422. package/dist/types/utils/request/getStatusCode.d.ts +1 -0
  423. package/dist/types/utils/request/helpers.d.ts +73 -24
  424. package/dist/types/utils/request/index.d.ts +16 -2
  425. package/dist/types/utils/request/isAbortedRequestError.d.ts +1 -0
  426. package/dist/types/utils/request/isFetchNetworkError.d.ts +1 -0
  427. package/dist/types/utils/request/isRateLimitedError.d.ts +1 -0
  428. package/dist/types/utils/request/isRequestError.d.ts +2 -0
  429. package/dist/types/utils/request/mapAuthToRequestHeaders.d.ts +3 -0
  430. package/dist/types/utils/request/waitPromise.d.ts +1 -0
  431. package/dist/types/utils/resolveTimeout.d.ts +1 -0
  432. package/dist/types/utils/url.d.ts +17 -6
  433. package/example-helpers/CardsWrapper.tsx +15 -0
  434. package/example-helpers/FileInput.tsx +20 -0
  435. package/example-helpers/FileStateWrapper.tsx +15 -0
  436. package/example-helpers/FileWrapper.tsx +22 -0
  437. package/example-helpers/Header.tsx +15 -0
  438. package/example-helpers/ImagePreview.tsx +18 -0
  439. package/example-helpers/MetadataWrapper.tsx +15 -0
  440. package/example-helpers/PreviewWrapper.tsx +15 -0
  441. package/example-helpers/Response.tsx +15 -0
  442. package/example-helpers/Row.tsx +15 -0
  443. package/example-helpers/UploadTouchWrapper.tsx +15 -0
  444. package/example-helpers/Wrapper.tsx +15 -0
  445. package/package.json +2 -2
  446. package/dist/cjs/client/media-store/index.js +0 -37
  447. package/dist/cjs/utils/mediaSubscribable/index.js +0 -25
  448. package/dist/cjs/utils/mobileUpload/index.js +0 -45
  449. package/dist/es2019/client/media-store/index.js +0 -2
  450. package/dist/es2019/utils/mediaSubscribable/index.js +0 -2
  451. package/dist/es2019/utils/mobileUpload/index.js +0 -4
  452. package/dist/es2019/utils/setTimeoutPromise.js +0 -6
  453. package/dist/esm/client/media-store/index.js +0 -2
  454. package/dist/esm/utils/mediaSubscribable/index.js +0 -2
  455. package/dist/esm/utils/mobileUpload/index.js +0 -4
  456. package/dist/types/client/media-store/index.d.ts +0 -4
  457. package/dist/types/utils/mediaSubscribable/index.d.ts +0 -3
  458. package/dist/types/utils/mobileUpload/index.d.ts +0 -5
  459. package/example-helpers/stylesWrapper.tsx +0 -98
@@ -1,40 +1,5 @@
1
- import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
2
- import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
3
- import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
4
- import _defineProperty from "@babel/runtime/helpers/defineProperty";
5
- import _regeneratorRuntime from "@babel/runtime/regenerator";
6
- 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; }
7
- 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; }
8
- import { isClientBasedAuth } from '@atlaskit/media-core';
9
- import { getRandomTelemetryId } from '@atlaskit/media-common';
10
- import { mapAuthToQueryParameters } from '../../models/auth-query-parameters';
11
- import { RequestError, isRequestError } from './errors';
12
- var getStatusCode = function getStatusCode(error) {
13
- var _error$metadata;
14
- return isRequestError(error) && ((_error$metadata = error.metadata) === null || _error$metadata === void 0 ? void 0 : _error$metadata.statusCode) && error.metadata.statusCode;
15
- };
16
- export function waitPromise(timeout) {
17
- return new Promise(function (resolve) {
18
- return setTimeout(resolve, timeout);
19
- });
20
- }
21
- export function isAbortedRequestError(err) {
22
- return err instanceof Error && err.message === 'request_cancelled' || !!err && err.name === 'AbortError';
23
- }
1
+ /* eslint-disable @repo/internal/deprecations/deprecation-ticket-required -- VOLTC-139 tracks removal of these deprecated re-export shims. */
24
2
 
25
- // fetch throws TypeError for network errors
26
- export function isFetchNetworkError(err) {
27
- return err instanceof TypeError;
28
- }
29
- export function isRateLimitedError(error) {
30
- var statusCode = error && getStatusCode(error);
31
- return statusCode === 429 || !!error && !!error.message && error.message.includes('429');
32
- }
33
- export var extendTraceContext = function extendTraceContext(traceContext) {
34
- return traceContext ? _objectSpread(_objectSpread({}, traceContext), {}, {
35
- spanId: (traceContext === null || traceContext === void 0 ? void 0 : traceContext.spanId) || getRandomTelemetryId()
36
- }) : undefined;
37
- };
38
3
  export var ZipkinHeaderKeys = {
39
4
  traceId: 'x-b3-traceid',
40
5
  spanId: 'x-b3-spanid',
@@ -42,110 +7,6 @@ export var ZipkinHeaderKeys = {
42
7
  sampled: 'x-b3-sampled',
43
8
  flags: 'x-b3-flags'
44
9
  };
45
- var mapTraceIdToRequestHeaders = function mapTraceIdToRequestHeaders(traceContext) {
46
- return traceContext ? _defineProperty(_defineProperty({}, ZipkinHeaderKeys.traceId, traceContext.traceId), ZipkinHeaderKeys.spanId, traceContext.spanId) : {};
47
- };
48
- export function mapAuthToRequestHeaders(auth) {
49
- if (!auth) {
50
- return {};
51
- }
52
- if (isClientBasedAuth(auth)) {
53
- return {
54
- 'X-Client-Id': auth.clientId,
55
- Authorization: "Bearer ".concat(auth.token)
56
- };
57
- }
58
- return {
59
- 'X-Issuer': auth.asapIssuer,
60
- Authorization: "Bearer ".concat(auth.token)
61
- };
62
- }
63
- export function createUrl(url, _ref2) {
64
- var params = _ref2.params,
65
- auth = _ref2.auth;
66
- var parsedUrl = new URL(url, auth === null || auth === void 0 ? void 0 : auth.baseUrl);
67
- var authParams = auth && mapAuthToQueryParameters(auth) || {};
68
- var paramsToAppend = _objectSpread(_objectSpread({}, params), authParams);
69
- Object.entries(paramsToAppend).filter(function (_ref3) {
70
- var _ref4 = _slicedToArray(_ref3, 2),
71
- _ = _ref4[0],
72
- value = _ref4[1];
73
- return value != null;
74
- }).forEach(function (pair) {
75
- var _parsedUrl$searchPara;
76
- (_parsedUrl$searchPara = parsedUrl.searchParams).set.apply(_parsedUrl$searchPara, _toConsumableArray(pair));
77
- });
78
- parsedUrl.searchParams.sort();
79
- return parsedUrl.toString();
80
- }
81
- export function extendHeaders(headers, auth, traceContext) {
82
- if (!auth && !traceContext && !headers) {
83
- return undefined;
84
- }
85
- return _objectSpread(_objectSpread(_objectSpread({}, headers !== null && headers !== void 0 ? headers : {}), mapAuthToRequestHeaders(auth)), mapTraceIdToRequestHeaders(traceContext));
86
- }
87
- export function createMapResponseToJson(metadata) {
88
- return /*#__PURE__*/function () {
89
- var _ref5 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(response) {
90
- var _t;
91
- return _regeneratorRuntime.wrap(function (_context) {
92
- while (1) switch (_context.prev = _context.next) {
93
- case 0:
94
- _context.prev = 0;
95
- _context.next = 1;
96
- return response.json();
97
- case 1:
98
- return _context.abrupt("return", _context.sent);
99
- case 2:
100
- _context.prev = 2;
101
- _t = _context["catch"](0);
102
- throw new RequestError('serverInvalidBody', _objectSpread(_objectSpread(_objectSpread({}, metadata), extractMediaHeaders(response)), {}, {
103
- statusCode: response.status
104
- }), _t instanceof Error ? _t : undefined);
105
- case 3:
106
- case "end":
107
- return _context.stop();
108
- }
109
- }, _callee, null, [[0, 2]]);
110
- }));
111
- return function (_x) {
112
- return _ref5.apply(this, arguments);
113
- };
114
- }();
115
- }
116
- export function createMapResponseToBlob(metadata) {
117
- return /*#__PURE__*/function () {
118
- var _ref6 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2(response) {
119
- var _t2;
120
- return _regeneratorRuntime.wrap(function (_context2) {
121
- while (1) switch (_context2.prev = _context2.next) {
122
- case 0:
123
- _context2.prev = 0;
124
- _context2.next = 1;
125
- return response.blob();
126
- case 1:
127
- return _context2.abrupt("return", _context2.sent);
128
- case 2:
129
- _context2.prev = 2;
130
- _t2 = _context2["catch"](0);
131
- throw new RequestError('serverInvalidBody', _objectSpread(_objectSpread(_objectSpread({}, metadata), extractMediaHeaders(response)), {}, {
132
- statusCode: response.status
133
- }), _t2 instanceof Error ? _t2 : undefined);
134
- case 3:
135
- case "end":
136
- return _context2.stop();
137
- }
138
- }, _callee2, null, [[0, 2]]);
139
- }));
140
- return function (_x2) {
141
- return _ref6.apply(this, arguments);
142
- };
143
- }();
144
- }
145
- export var defaultShouldRetryError = function defaultShouldRetryError(err) {
146
- var statusCode = getStatusCode(err);
147
- return isFetchNetworkError(err) || (statusCode ? statusCode >= 500 : false);
148
- };
149
10
  export var DEFAULT_RETRY_OPTIONS = {
150
11
  startTimeoutInMs: 1000,
151
12
  // 1 second is generally a good timeout to start
@@ -153,159 +14,76 @@ export var DEFAULT_RETRY_OPTIONS = {
153
14
  // Current test delay is 60s, so retries should finish before if a promise takes < 1s
154
15
  factor: 2 // Good for polling, which is out main use case
155
16
  };
156
- export function cloneRequestError(error, extraMetadata) {
157
- var reason = error.reason,
158
- metadata = error.metadata,
159
- innerError = error.innerError;
160
- return new RequestError(reason, _objectSpread(_objectSpread({}, metadata), extraMetadata), innerError);
161
- }
162
- export function fetchRetry(_x3, _x4) {
163
- return _fetchRetry.apply(this, arguments);
164
- }
165
- function _fetchRetry() {
166
- _fetchRetry = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee4(functionToRetry, metadata) {
167
- var overwriteOptions,
168
- options,
169
- startTimeoutInMs,
170
- maxAttempts,
171
- factor,
172
- _options$shouldRetryE,
173
- shouldRetryError,
174
- attempts,
175
- timeoutInMs,
176
- lastError,
177
- waitAndBumpTimeout,
178
- _args4 = arguments,
179
- _t3;
180
- return _regeneratorRuntime.wrap(function (_context4) {
181
- while (1) switch (_context4.prev = _context4.next) {
182
- case 0:
183
- overwriteOptions = _args4.length > 2 && _args4[2] !== undefined ? _args4[2] : {};
184
- options = _objectSpread(_objectSpread({}, DEFAULT_RETRY_OPTIONS), overwriteOptions);
185
- startTimeoutInMs = options.startTimeoutInMs, maxAttempts = options.maxAttempts, factor = options.factor, _options$shouldRetryE = options.shouldRetryError, shouldRetryError = _options$shouldRetryE === void 0 ? defaultShouldRetryError : _options$shouldRetryE;
186
- attempts = 0;
187
- timeoutInMs = startTimeoutInMs;
188
- waitAndBumpTimeout = /*#__PURE__*/function () {
189
- var _ref7 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee3() {
190
- return _regeneratorRuntime.wrap(function (_context3) {
191
- while (1) switch (_context3.prev = _context3.next) {
192
- case 0:
193
- _context3.next = 1;
194
- return waitPromise(timeoutInMs);
195
- case 1:
196
- timeoutInMs *= factor;
197
- attempts += 1;
198
- case 2:
199
- case "end":
200
- return _context3.stop();
201
- }
202
- }, _callee3);
203
- }));
204
- return function waitAndBumpTimeout() {
205
- return _ref7.apply(this, arguments);
206
- };
207
- }();
208
- case 1:
209
- if (!(attempts < maxAttempts)) {
210
- _context4.next = 8;
211
- break;
212
- }
213
- _context4.prev = 2;
214
- _context4.next = 3;
215
- return functionToRetry();
216
- case 3:
217
- return _context4.abrupt("return", _context4.sent);
218
- case 4:
219
- _context4.prev = 4;
220
- _t3 = _context4["catch"](2);
221
- lastError = _t3;
222
17
 
223
- // don't retry if request was aborted by user
224
- if (!isAbortedRequestError(_t3)) {
225
- _context4.next = 5;
226
- break;
227
- }
228
- throw new RequestError('clientAbortedRequest', metadata, _t3);
229
- case 5:
230
- if (shouldRetryError(_t3)) {
231
- _context4.next = 6;
232
- break;
233
- }
234
- throw _t3;
235
- case 6:
236
- _context4.next = 7;
237
- return waitAndBumpTimeout();
238
- case 7:
239
- _context4.next = 1;
240
- break;
241
- case 8:
242
- if (!isRequestError(lastError)) {
243
- _context4.next = 9;
244
- break;
245
- }
246
- throw cloneRequestError(lastError, {
247
- attempts: attempts,
248
- clientExhaustedRetries: true
249
- });
250
- case 9:
251
- throw new RequestError('serverUnexpectedError', _objectSpread(_objectSpread({}, metadata), {}, {
252
- attempts: attempts,
253
- clientExhaustedRetries: true
254
- }), lastError);
255
- case 10:
256
- case "end":
257
- return _context4.stop();
258
- }
259
- }, _callee4, null, [[2, 4]]);
260
- }));
261
- return _fetchRetry.apply(this, arguments);
262
- }
263
- export function createRequestErrorReason(statusCode) {
264
- switch (statusCode) {
265
- case 400:
266
- return 'serverBadRequest';
267
- case 401:
268
- return 'serverUnauthorized';
269
- case 403:
270
- return 'serverForbidden';
271
- case 404:
272
- return 'serverNotFound';
273
- case 422:
274
- return 'serverUnprocessableEntity';
275
- case 423:
276
- return 'serverEntityLocked';
277
- case 429:
278
- return 'serverRateLimited';
279
- case 500:
280
- return 'serverInternalError';
281
- case 502:
282
- return 'serverBadGateway';
283
- default:
284
- return 'serverUnexpectedError';
285
- }
286
- }
287
- export function createRequestErrorFromResponse(metadata, response) {
288
- var statusCode = response.status;
289
- var reason = createRequestErrorReason(statusCode);
290
- return new RequestError(reason, _objectSpread(_objectSpread(_objectSpread({}, metadata), extractMediaHeaders(response)), {}, {
291
- statusCode: statusCode
292
- }));
293
- }
294
- export function createProcessFetchResponse(metadata) {
295
- return function (response) {
296
- if (response.ok || response.status < 400) {
297
- return response;
298
- }
299
- var requestError = createRequestErrorFromResponse(metadata, response);
300
- throw requestError;
301
- };
302
- }
303
- export function extractMediaHeaders(response) {
304
- var headers = response.headers;
305
- var mediaRegion = headers.get('x-media-region') || 'unknown';
306
- var mediaEnv = headers.get('x-media-env') || 'unknown';
307
- return {
308
- mediaRegion: mediaRegion,
309
- mediaEnv: mediaEnv
310
- };
311
- }
18
+ /**
19
+ * @deprecated Use `import { waitPromise } from '@atlaskit/media-client/request/helpers'` instead.
20
+ */
21
+ export { waitPromise } from './waitPromise';
22
+ /**
23
+ * @deprecated Use `import { isAbortedRequestError } from '@atlaskit/media-client'` instead.
24
+ */
25
+ export { isAbortedRequestError } from './isAbortedRequestError';
26
+ /**
27
+ * @deprecated Use `import { isFetchNetworkError } from '@atlaskit/media-client/request/helpers'` instead.
28
+ */
29
+ export { isFetchNetworkError } from './isFetchNetworkError';
30
+ /**
31
+ * @deprecated Use `import { isRateLimitedError } from '@atlaskit/media-client/request'` instead.
32
+ */
33
+ export { isRateLimitedError } from './isRateLimitedError';
34
+ /**
35
+ * @deprecated Use `import { extendTraceContext } from '@atlaskit/media-client/request/helpers'` instead.
36
+ */
37
+ export { extendTraceContext } from './extendTraceContext';
38
+ /**
39
+ * @deprecated Use `import { mapAuthToRequestHeaders } from '@atlaskit/media-client/request/helpers'` instead.
40
+ */
41
+ export { mapAuthToRequestHeaders } from './mapAuthToRequestHeaders';
42
+ /**
43
+ * @deprecated Use `import { createUrl } from '@atlaskit/media-client'` instead.
44
+ */
45
+ export { createUrl } from './createUrl';
46
+ /**
47
+ * @deprecated Use `import { extendHeaders } from '@atlaskit/media-client/request/helpers'` instead.
48
+ */
49
+ export { extendHeaders } from './extendHeaders';
50
+ /**
51
+ * @deprecated Use `import { createMapResponseToJson } from '@atlaskit/media-client/request/helpers'` instead.
52
+ */
53
+ export { createMapResponseToJson } from './createMapResponseToJson';
54
+ /**
55
+ * @deprecated Use `import { createMapResponseToBlob } from '@atlaskit/media-client/request/helpers'` instead.
56
+ */
57
+ export { createMapResponseToBlob } from './createMapResponseToBlob';
58
+ /**
59
+ * @deprecated Use `import { defaultShouldRetryError } from '@atlaskit/media-client/request/helpers'` instead.
60
+ */
61
+ export { defaultShouldRetryError } from './defaultShouldRetryError';
62
+ /**
63
+ * @deprecated Use `import { cloneRequestError } from '@atlaskit/media-client/request/helpers'` instead.
64
+ */
65
+ export { cloneRequestError } from './cloneRequestError';
66
+ /**
67
+ * @deprecated Use `import { fetchRetry } from '@atlaskit/media-client/request/helpers'` instead.
68
+ */
69
+ export { fetchRetry } from './fetchRetry';
70
+ /**
71
+ * @deprecated Use `import { createRequestErrorReason } from '@atlaskit/media-client/request'` instead.
72
+ */
73
+ export { createRequestErrorReason } from './createRequestErrorReason';
74
+ /**
75
+ * @deprecated Use `import { createRequestErrorFromResponse } from '@atlaskit/media-client/request/helpers'` instead.
76
+ */
77
+ export { createRequestErrorFromResponse } from './createRequestErrorFromResponse';
78
+ /**
79
+ * @deprecated Use `import { createProcessFetchResponse } from '@atlaskit/media-client/request/helpers'` instead.
80
+ */
81
+ export { createProcessFetchResponse } from './createProcessFetchResponse';
82
+ /**
83
+ * @deprecated Use `import { extractMediaHeaders } from '@atlaskit/media-client/request/helpers'` instead.
84
+ */
85
+ export { extractMediaHeaders } from './extractMediaHeaders';
86
+ /**
87
+ * @deprecated Use `import { getStatusCode } from '@atlaskit/media-client/request/helpers'` instead.
88
+ */
89
+ export { getStatusCode } from './getStatusCode';
@@ -3,12 +3,33 @@ import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
3
3
  import _regeneratorRuntime from "@babel/runtime/regenerator";
4
4
  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; }
5
5
  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; }
6
- export { RequestError, isRequestError } from './errors';
7
- export { isRateLimitedError, createRequestErrorReason } from './helpers';
8
- import { createUrl, fetchRetry, createProcessFetchResponse, extendHeaders, isFetchNetworkError, defaultShouldRetryError } from './helpers';
6
+ /* eslint-disable @repo/internal/deprecations/deprecation-ticket-required -- VOLTC-139 tracks removal of these deprecated re-export shims. */
7
+
8
+ /**
9
+ * @deprecated Use `import { RequestError } from '@atlaskit/media-client/request/errors'` instead.
10
+ */
11
+ export { RequestError } from './RequestError';
12
+ /**
13
+ * @deprecated Use `import { isRequestError } from '@atlaskit/media-client/request/errors'` instead.
14
+ */
15
+ export { isRequestError } from './isRequestError';
16
+ /**
17
+ * @deprecated Use `import { createRequestErrorReason } from '@atlaskit/media-client/request/helpers'` instead.
18
+ */
19
+ export { createRequestErrorReason } from './createRequestErrorReason';
20
+ /**
21
+ * @deprecated Use `import { isRateLimitedError } from '@atlaskit/media-client/request/helpers'` instead.
22
+ */
23
+ export { isRateLimitedError } from './isRateLimitedError';
24
+ import { createProcessFetchResponse } from './createProcessFetchResponse';
25
+ import { createUrl } from './createUrl';
26
+ import { defaultShouldRetryError } from './defaultShouldRetryError';
27
+ import { extendHeaders } from './extendHeaders';
28
+ import { fetchRetry } from './fetchRetry';
29
+ import { isFetchNetworkError } from './isFetchNetworkError';
9
30
  import { fg } from '@atlaskit/platform-feature-flags';
10
- import { mapRetryUrlToPathBasedUrl } from '../pathBasedUrl';
11
31
  import getNavigator from '../getNavigator';
32
+ import { mapRetryUrlToPathBasedUrl } from '../mapRetryUrlToPathBasedUrl';
12
33
  export function request(_x) {
13
34
  return _request.apply(this, arguments);
14
35
  }
@@ -0,0 +1,3 @@
1
+ export function isAbortedRequestError(err) {
2
+ return err instanceof Error && err.message === 'request_cancelled' || !!err && err.name === 'AbortError';
3
+ }
@@ -0,0 +1,4 @@
1
+ // fetch throws TypeError for network errors
2
+ export function isFetchNetworkError(err) {
3
+ return err instanceof TypeError;
4
+ }
@@ -0,0 +1,5 @@
1
+ import { getStatusCode } from './getStatusCode';
2
+ export function isRateLimitedError(error) {
3
+ var statusCode = error && getStatusCode(error);
4
+ return statusCode === 429 || !!error && !!error.message && error.message.includes('429');
5
+ }
@@ -0,0 +1,4 @@
1
+ import { RequestError } from './RequestError';
2
+ export function isRequestError(err) {
3
+ return err instanceof RequestError;
4
+ }
@@ -0,0 +1,16 @@
1
+ import { isClientBasedAuth } from '@atlaskit/media-core';
2
+ export function mapAuthToRequestHeaders(auth) {
3
+ if (!auth) {
4
+ return {};
5
+ }
6
+ if (isClientBasedAuth(auth)) {
7
+ return {
8
+ 'X-Client-Id': auth.clientId,
9
+ Authorization: "Bearer ".concat(auth.token)
10
+ };
11
+ }
12
+ return {
13
+ 'X-Issuer': auth.asapIssuer,
14
+ Authorization: "Bearer ".concat(auth.token)
15
+ };
16
+ }
@@ -0,0 +1,5 @@
1
+ export function waitPromise(timeout) {
2
+ return new Promise(function (resolve) {
3
+ return setTimeout(resolve, timeout);
4
+ });
5
+ }
@@ -2,9 +2,4 @@ export var resolveTimeout = function resolveTimeout(timeout, resolveWith) {
2
2
  return new Promise(function (resolve, _reject) {
3
3
  setTimeout(resolve, timeout, resolveWith);
4
4
  });
5
- };
6
- export var rejectTimeout = function rejectTimeout(timeout, rejectWith) {
7
- return new Promise(function (_resolve, reject) {
8
- setTimeout(reject, timeout, rejectWith);
9
- });
10
5
  };
@@ -1,65 +1,18 @@
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
- var mediaBlobUrlIdentifier = 'media-blob-url';
5
- export var isMediaBlobUrl = function isMediaBlobUrl(url) {
6
- return url.indexOf("".concat(mediaBlobUrlIdentifier, "=true")) > -1;
7
- };
8
- var getNumberFromParams = function getNumberFromParams(params, name) {
9
- var value = params.get(name);
10
- return typeof value === 'string' && !isNaN(parseInt(value)) ? parseInt(value) : undefined;
11
- };
12
- var getStringFromParams = function getStringFromParams(params, name) {
13
- var value = params.get(name);
14
- if (!value) {
15
- return;
16
- }
17
- return decodeURIComponent(value);
18
- };
19
- export var getAttrsFromUrl = function getAttrsFromUrl(blobUrl) {
20
- var url = new URL(blobUrl);
21
- var hash = url.hash.replace('#', '');
22
- var params = new URLSearchParams(hash);
23
- var id = params.get('id');
24
- var contextId = params.get('contextId');
25
- var clientId = params.get('clientId');
26
- // check if we have the required params (clientId is optional for backwards compatibility)
27
- if (!id || !contextId) {
28
- return;
29
- }
30
- return {
31
- id: id,
32
- contextId: contextId,
33
- clientId: clientId || undefined,
34
- collection: getStringFromParams(params, 'collection'),
35
- alt: getStringFromParams(params, 'alt'),
36
- height: getNumberFromParams(params, 'height'),
37
- width: getNumberFromParams(params, 'width'),
38
- size: getNumberFromParams(params, 'size'),
39
- name: getStringFromParams(params, 'name'),
40
- mimeType: getStringFromParams(params, 'mimeType')
41
- };
42
- };
43
- export var objectToQueryString = function objectToQueryString(json) {
44
- return Object.keys(json).filter(function (attrName) {
45
- return typeof json[attrName] !== 'undefined' && json[attrName] !== null;
46
- }).map(function (key) {
47
- var value = json[key];
48
- if (typeof value === 'undefined' || value === null) {
49
- return;
50
- }
51
- return "".concat(encodeURIComponent(key), "=").concat(encodeURIComponent(value.toString()));
52
- }).join('&');
53
- };
54
- export var addFileAttrsToUrl = function addFileAttrsToUrl(url, fileAttrs) {
55
- var isSafari = /^((?!chrome|android).)*safari/i.test(navigator.userAgent);
56
- if (isSafari) {
57
- return url;
58
- }
59
- var mediaIdentifierAttr = _defineProperty({}, mediaBlobUrlIdentifier, 'true');
60
- var mergedAttrs = _objectSpread(_objectSpread({}, mediaIdentifierAttr), fileAttrs);
61
- var queryAttrs = objectToQueryString(mergedAttrs);
62
-
63
- // we can't use '?' separator for blob url params
64
- return "".concat(url, "#").concat(queryAttrs);
65
- };
1
+ /* eslint-disable @repo/internal/deprecations/deprecation-ticket-required -- VOLTC-139 tracks removal of these deprecated re-export shims. */
2
+ export var mediaBlobUrlIdentifier = 'media-blob-url';
3
+ /**
4
+ * @deprecated Use `import { isMediaBlobUrl } from '@atlaskit/media-client'` instead.
5
+ */
6
+ export { isMediaBlobUrl } from './isMediaBlobUrl';
7
+ /**
8
+ * @deprecated Use `import { getAttrsFromUrl } from '@atlaskit/media-client'` instead.
9
+ */
10
+ export { getAttrsFromUrl } from './getAttrsFromUrl';
11
+ /**
12
+ * @deprecated Use `import { objectToQueryString } from '@atlaskit/media-client'` instead.
13
+ */
14
+ export { objectToQueryString } from './objectToQueryString';
15
+ /**
16
+ * @deprecated Use `import { addFileAttrsToUrl } from '@atlaskit/media-client'` instead.
17
+ */
18
+ export { addFileAttrsToUrl } from './addFileAttrsToUrl';
@@ -0,0 +1,32 @@
1
+ import { type MediaTraceContext } from '@atlaskit/media-common';
2
+ import { BaseMediaClientError } from '../../models/errors/BaseMediaClientError';
3
+ export declare class FileFetcherError extends BaseMediaClientError<FileFetcherErrorReason, FileFetcherErrorMetadata, undefined, FileFetcherErrorAttributes> {
4
+ readonly id: string;
5
+ constructor(reason: FileFetcherErrorReason, metadata: FileFetcherErrorMetadata);
6
+ /** Will be deprecated. Use the properties `reason` and `metadata` instead */
7
+ get attributes(): {
8
+ metadata?: {
9
+ traceContext: MediaTraceContext;
10
+ } | undefined;
11
+ reason: FileFetcherErrorReason;
12
+ id: string;
13
+ collectionName: string | undefined;
14
+ occurrenceKey: string | undefined;
15
+ };
16
+ }
17
+ export type FileFetcherErrorReason = 'invalidFileId' | 'emptyItems' | 'zeroVersionFile' | 'emptyFileName';
18
+ export type FileFetcherErrorAttributes = {
19
+ readonly reason: FileFetcherErrorReason;
20
+ readonly id: string;
21
+ readonly metadata?: {
22
+ readonly collectionName?: string;
23
+ readonly occurrenceKey?: string;
24
+ readonly traceContext?: MediaTraceContext;
25
+ };
26
+ };
27
+ export type FileFetcherErrorMetadata = {
28
+ readonly id: string;
29
+ readonly collectionName?: string;
30
+ readonly occurrenceKey?: string;
31
+ readonly traceContext?: MediaTraceContext;
32
+ };
@@ -1,33 +1,9 @@
1
- import { BaseMediaClientError } from '../../models/errors';
2
- import { type MediaTraceContext } from '@atlaskit/media-common';
3
- export type FileFetcherErrorReason = 'invalidFileId' | 'emptyItems' | 'zeroVersionFile' | 'emptyFileName';
4
- export type FileFetcherErrorAttributes = {
5
- readonly reason: FileFetcherErrorReason;
6
- readonly id: string;
7
- readonly metadata?: {
8
- readonly collectionName?: string;
9
- readonly occurrenceKey?: string;
10
- readonly traceContext?: MediaTraceContext;
11
- };
12
- };
13
- export type FileFetcherErrorMetadata = {
14
- readonly id: string;
15
- readonly collectionName?: string;
16
- readonly occurrenceKey?: string;
17
- readonly traceContext?: MediaTraceContext;
18
- };
19
- export declare class FileFetcherError extends BaseMediaClientError<FileFetcherErrorReason, FileFetcherErrorMetadata, undefined, FileFetcherErrorAttributes> {
20
- readonly id: string;
21
- constructor(reason: FileFetcherErrorReason, metadata: FileFetcherErrorMetadata);
22
- /** Will be deprecated. Use the properties `reason` and `metadata` instead */
23
- get attributes(): {
24
- metadata?: {
25
- traceContext: MediaTraceContext;
26
- } | undefined;
27
- reason: FileFetcherErrorReason;
28
- id: string;
29
- collectionName: string | undefined;
30
- occurrenceKey: string | undefined;
31
- };
32
- }
33
- export declare function isFileFetcherError(err: Error): err is FileFetcherError;
1
+ /**
2
+ * @deprecated Use `import { FileFetcherError } from '@atlaskit/media-client/file-fetcher'` instead.
3
+ */
4
+ export { FileFetcherError } from './FileFetcherError';
5
+ export type { FileFetcherErrorReason, FileFetcherErrorAttributes, FileFetcherErrorMetadata, } from './FileFetcherError';
6
+ /**
7
+ * @deprecated Use `import { isFileFetcherError } from '@atlaskit/media-client/file-fetcher'` instead.
8
+ */
9
+ export { isFileFetcherError } from './isFileFetcherError';