@fluidframework/driver-utils 2.0.0-rc.1.0.4 → 2.0.0-rc.2.0.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 (297) hide show
  1. package/{.eslintrc.js → .eslintrc.cjs} +5 -2
  2. package/{.mocharc.js → .mocharc.cjs} +1 -1
  3. package/CHANGELOG.md +32 -0
  4. package/{api-extractor-esm.json → api-extractor-cjs.json} +5 -1
  5. package/api-extractor-lint.json +1 -1
  6. package/api-extractor.json +1 -1
  7. package/api-report/driver-utils.api.md +22 -18
  8. package/dist/adapters/compression/documentServiceCompressionAdapter.d.ts +2 -2
  9. package/dist/adapters/compression/documentServiceCompressionAdapter.d.ts.map +1 -1
  10. package/dist/adapters/compression/documentServiceCompressionAdapter.js +8 -4
  11. package/dist/adapters/compression/documentServiceCompressionAdapter.js.map +1 -1
  12. package/dist/adapters/compression/documentServiceFactoryCompressionAdapter.d.ts +2 -2
  13. package/dist/adapters/compression/documentServiceFactoryCompressionAdapter.d.ts.map +1 -1
  14. package/dist/adapters/compression/documentServiceFactoryCompressionAdapter.js +7 -7
  15. package/dist/adapters/compression/documentServiceFactoryCompressionAdapter.js.map +1 -1
  16. package/dist/adapters/compression/index.d.ts +3 -3
  17. package/dist/adapters/compression/index.d.ts.map +1 -1
  18. package/dist/adapters/compression/index.js +7 -7
  19. package/dist/adapters/compression/index.js.map +1 -1
  20. package/dist/adapters/compression/summaryblob/documentStorageServiceSummaryBlobCompressionAdapter.d.ts +2 -2
  21. package/dist/adapters/compression/summaryblob/documentStorageServiceSummaryBlobCompressionAdapter.d.ts.map +1 -1
  22. package/dist/adapters/compression/summaryblob/documentStorageServiceSummaryBlobCompressionAdapter.js +11 -11
  23. package/dist/adapters/compression/summaryblob/documentStorageServiceSummaryBlobCompressionAdapter.js.map +1 -1
  24. package/dist/adapters/compression/summaryblob/index.d.ts +1 -1
  25. package/dist/adapters/compression/summaryblob/index.d.ts.map +1 -1
  26. package/dist/adapters/compression/summaryblob/index.js +3 -3
  27. package/dist/adapters/compression/summaryblob/index.js.map +1 -1
  28. package/dist/adapters/index.d.ts +2 -2
  29. package/dist/adapters/index.d.ts.map +1 -1
  30. package/dist/adapters/index.js +6 -6
  31. package/dist/adapters/index.js.map +1 -1
  32. package/dist/adapters/predefinedAdapters.d.ts +1 -1
  33. package/dist/adapters/predefinedAdapters.d.ts.map +1 -1
  34. package/dist/adapters/predefinedAdapters.js +4 -4
  35. package/dist/adapters/predefinedAdapters.js.map +1 -1
  36. package/dist/documentServiceProxy.d.ts +3 -2
  37. package/dist/documentServiceProxy.d.ts.map +1 -1
  38. package/dist/documentServiceProxy.js +3 -1
  39. package/dist/documentServiceProxy.js.map +1 -1
  40. package/dist/documentStorageServiceProxy.d.ts +2 -2
  41. package/dist/documentStorageServiceProxy.d.ts.map +1 -1
  42. package/dist/documentStorageServiceProxy.js +7 -3
  43. package/dist/documentStorageServiceProxy.js.map +1 -1
  44. package/dist/driver-utils-alpha.d.ts +6 -2
  45. package/dist/driver-utils-beta.d.ts +10 -2
  46. package/dist/driver-utils-public.d.ts +10 -2
  47. package/dist/driver-utils-untrimmed.d.ts +30 -17
  48. package/dist/error.d.ts +2 -2
  49. package/dist/error.d.ts.map +1 -1
  50. package/dist/error.js +1 -3
  51. package/dist/error.js.map +1 -1
  52. package/dist/index.d.ts +17 -16
  53. package/dist/index.d.ts.map +1 -1
  54. package/dist/index.js +64 -62
  55. package/dist/index.js.map +1 -1
  56. package/dist/insecureUrlResolver.d.ts +3 -2
  57. package/dist/insecureUrlResolver.d.ts.map +1 -1
  58. package/dist/insecureUrlResolver.js +9 -7
  59. package/dist/insecureUrlResolver.js.map +1 -1
  60. package/dist/network.d.ts +13 -10
  61. package/dist/network.d.ts.map +1 -1
  62. package/dist/network.js +9 -12
  63. package/dist/network.js.map +1 -1
  64. package/dist/networkUtils.d.ts +2 -3
  65. package/dist/networkUtils.d.ts.map +1 -1
  66. package/dist/networkUtils.js +3 -3
  67. package/dist/networkUtils.js.map +1 -1
  68. package/dist/package.json +3 -0
  69. package/dist/packageVersion.d.ts +1 -1
  70. package/dist/packageVersion.js +1 -1
  71. package/dist/packageVersion.js.map +1 -1
  72. package/dist/parallelRequests.d.ts +3 -3
  73. package/dist/parallelRequests.d.ts.map +1 -1
  74. package/dist/parallelRequests.js +10 -10
  75. package/dist/parallelRequests.js.map +1 -1
  76. package/dist/prefetchDocumentStorageService.d.ts +1 -1
  77. package/dist/prefetchDocumentStorageService.d.ts.map +1 -1
  78. package/dist/prefetchDocumentStorageService.js +4 -4
  79. package/dist/prefetchDocumentStorageService.js.map +1 -1
  80. package/dist/runWithRetry.js +6 -6
  81. package/dist/runWithRetry.js.map +1 -1
  82. package/dist/storageUtils.d.ts +13 -0
  83. package/dist/storageUtils.d.ts.map +1 -0
  84. package/dist/storageUtils.js +17 -0
  85. package/dist/storageUtils.js.map +1 -0
  86. package/dist/treeConversions.d.ts.map +1 -1
  87. package/dist/treeConversions.js +7 -6
  88. package/dist/treeConversions.js.map +1 -1
  89. package/dist/tsdoc-metadata.json +1 -1
  90. package/lib/adapters/compression/{compressionTypes.d.mts → compressionTypes.d.ts} +1 -1
  91. package/lib/adapters/compression/compressionTypes.d.ts.map +1 -0
  92. package/lib/adapters/compression/{compressionTypes.mjs → compressionTypes.js} +1 -1
  93. package/lib/adapters/compression/compressionTypes.js.map +1 -0
  94. package/lib/adapters/compression/{documentServiceCompressionAdapter.d.mts → documentServiceCompressionAdapter.d.ts} +3 -3
  95. package/lib/adapters/compression/documentServiceCompressionAdapter.d.ts.map +1 -0
  96. package/lib/adapters/compression/{documentServiceCompressionAdapter.mjs → documentServiceCompressionAdapter.js} +7 -3
  97. package/lib/adapters/compression/documentServiceCompressionAdapter.js.map +1 -0
  98. package/lib/adapters/compression/{documentServiceFactoryCompressionAdapter.d.mts → documentServiceFactoryCompressionAdapter.d.ts} +3 -3
  99. package/lib/adapters/compression/documentServiceFactoryCompressionAdapter.d.ts.map +1 -0
  100. package/lib/adapters/compression/{documentServiceFactoryCompressionAdapter.mjs → documentServiceFactoryCompressionAdapter.js} +4 -4
  101. package/lib/adapters/compression/documentServiceFactoryCompressionAdapter.js.map +1 -0
  102. package/lib/adapters/compression/{index.d.mts → index.d.ts} +4 -4
  103. package/lib/adapters/compression/index.d.ts.map +1 -0
  104. package/lib/adapters/compression/{index.mjs → index.js} +4 -4
  105. package/lib/adapters/compression/index.js.map +1 -0
  106. package/lib/adapters/compression/summaryblob/{documentStorageServiceSummaryBlobCompressionAdapter.d.mts → documentStorageServiceSummaryBlobCompressionAdapter.d.ts} +3 -3
  107. package/lib/adapters/compression/summaryblob/documentStorageServiceSummaryBlobCompressionAdapter.d.ts.map +1 -0
  108. package/lib/adapters/compression/summaryblob/{documentStorageServiceSummaryBlobCompressionAdapter.mjs → documentStorageServiceSummaryBlobCompressionAdapter.js} +3 -3
  109. package/lib/adapters/compression/summaryblob/documentStorageServiceSummaryBlobCompressionAdapter.js.map +1 -0
  110. package/lib/adapters/compression/summaryblob/{index.mjs → index.d.ts} +2 -2
  111. package/lib/adapters/compression/summaryblob/index.d.ts.map +1 -0
  112. package/lib/adapters/compression/summaryblob/{index.d.mts → index.js} +2 -2
  113. package/lib/adapters/compression/summaryblob/index.js.map +1 -0
  114. package/lib/adapters/{index.d.mts → index.d.ts} +3 -3
  115. package/lib/adapters/index.d.ts.map +1 -0
  116. package/lib/adapters/{index.mjs → index.js} +3 -3
  117. package/lib/adapters/index.js.map +1 -0
  118. package/lib/adapters/{predefinedAdapters.d.mts → predefinedAdapters.d.ts} +2 -2
  119. package/lib/adapters/predefinedAdapters.d.ts.map +1 -0
  120. package/lib/adapters/{predefinedAdapters.mjs → predefinedAdapters.js} +2 -2
  121. package/lib/adapters/predefinedAdapters.js.map +1 -0
  122. package/lib/{blob.d.mts → blob.d.ts} +1 -1
  123. package/lib/blob.d.ts.map +1 -0
  124. package/lib/{blob.mjs → blob.js} +1 -1
  125. package/lib/blob.js.map +1 -0
  126. package/lib/{buildSnapshotTree.d.mts → buildSnapshotTree.d.ts} +1 -1
  127. package/lib/buildSnapshotTree.d.ts.map +1 -0
  128. package/lib/{buildSnapshotTree.mjs → buildSnapshotTree.js} +1 -1
  129. package/lib/buildSnapshotTree.js.map +1 -0
  130. package/lib/{documentServiceFactoryProxy.d.mts → documentServiceFactoryProxy.d.ts} +1 -1
  131. package/lib/documentServiceFactoryProxy.d.ts.map +1 -0
  132. package/lib/{documentServiceFactoryProxy.mjs → documentServiceFactoryProxy.js} +1 -1
  133. package/lib/documentServiceFactoryProxy.js.map +1 -0
  134. package/lib/{documentServiceProxy.d.mts → documentServiceProxy.d.ts} +4 -3
  135. package/lib/documentServiceProxy.d.ts.map +1 -0
  136. package/lib/{documentServiceProxy.mjs → documentServiceProxy.js} +4 -2
  137. package/lib/documentServiceProxy.js.map +1 -0
  138. package/lib/{documentStorageServiceProxy.d.mts → documentStorageServiceProxy.d.ts} +3 -3
  139. package/lib/documentStorageServiceProxy.d.ts.map +1 -0
  140. package/lib/{documentStorageServiceProxy.mjs → documentStorageServiceProxy.js} +8 -4
  141. package/lib/documentStorageServiceProxy.js.map +1 -0
  142. package/lib/{driver-utils-alpha.d.mts → driver-utils-alpha.d.ts} +6 -2
  143. package/lib/{driver-utils-public.d.mts → driver-utils-beta.d.ts} +10 -2
  144. package/lib/{driver-utils-beta.d.mts → driver-utils-public.d.ts} +10 -2
  145. package/lib/{driver-utils-untrimmed.d.mts → driver-utils-untrimmed.d.ts} +30 -17
  146. package/lib/{error.d.mts → error.d.ts} +3 -3
  147. package/lib/error.d.ts.map +1 -0
  148. package/lib/{error.mjs → error.js} +3 -4
  149. package/lib/error.js.map +1 -0
  150. package/lib/{index.d.mts → index.d.ts} +18 -17
  151. package/lib/index.d.ts.map +1 -0
  152. package/lib/{index.mjs → index.js} +18 -17
  153. package/lib/index.js.map +1 -0
  154. package/lib/{insecureUrlResolver.d.mts → insecureUrlResolver.d.ts} +4 -3
  155. package/lib/insecureUrlResolver.d.ts.map +1 -0
  156. package/lib/{insecureUrlResolver.mjs → insecureUrlResolver.js} +10 -8
  157. package/lib/insecureUrlResolver.js.map +1 -0
  158. package/lib/{messageRecognition.d.mts → messageRecognition.d.ts} +5 -1
  159. package/lib/messageRecognition.d.ts.map +1 -0
  160. package/lib/{messageRecognition.mjs → messageRecognition.js} +5 -1
  161. package/lib/messageRecognition.js.map +1 -0
  162. package/lib/{network.d.mts → network.d.ts} +14 -11
  163. package/lib/network.d.ts.map +1 -0
  164. package/lib/{network.mjs → network.js} +11 -16
  165. package/lib/network.js.map +1 -0
  166. package/lib/networkUtils.d.ts +10 -0
  167. package/lib/networkUtils.d.ts.map +1 -0
  168. package/lib/{networkUtils.mjs → networkUtils.js} +2 -2
  169. package/lib/networkUtils.js.map +1 -0
  170. package/lib/{packageVersion.d.mts → packageVersion.d.ts} +2 -2
  171. package/lib/packageVersion.d.ts.map +1 -0
  172. package/lib/{packageVersion.mjs → packageVersion.js} +2 -2
  173. package/lib/packageVersion.js.map +1 -0
  174. package/lib/{parallelRequests.d.mts → parallelRequests.d.ts} +4 -4
  175. package/lib/parallelRequests.d.ts.map +1 -0
  176. package/lib/{parallelRequests.mjs → parallelRequests.js} +10 -5
  177. package/lib/parallelRequests.js.map +1 -0
  178. package/lib/{prefetchDocumentStorageService.d.mts → prefetchDocumentStorageService.d.ts} +6 -2
  179. package/lib/prefetchDocumentStorageService.d.ts.map +1 -0
  180. package/lib/{prefetchDocumentStorageService.mjs → prefetchDocumentStorageService.js} +7 -3
  181. package/lib/prefetchDocumentStorageService.js.map +1 -0
  182. package/lib/{rateLimiter.d.mts → rateLimiter.d.ts} +1 -1
  183. package/lib/rateLimiter.d.ts.map +1 -0
  184. package/lib/{rateLimiter.mjs → rateLimiter.js} +1 -1
  185. package/lib/rateLimiter.js.map +1 -0
  186. package/lib/{readAndParse.d.mts → readAndParse.d.ts} +1 -1
  187. package/lib/readAndParse.d.ts.map +1 -0
  188. package/lib/{readAndParse.mjs → readAndParse.js} +1 -1
  189. package/lib/readAndParse.js.map +1 -0
  190. package/lib/{runWithRetry.d.mts → runWithRetry.d.ts} +1 -1
  191. package/lib/runWithRetry.d.ts.map +1 -0
  192. package/lib/{runWithRetry.mjs → runWithRetry.js} +3 -3
  193. package/lib/runWithRetry.js.map +1 -0
  194. package/lib/storageUtils.d.ts +13 -0
  195. package/lib/storageUtils.d.ts.map +1 -0
  196. package/lib/storageUtils.js +13 -0
  197. package/lib/storageUtils.js.map +1 -0
  198. package/lib/{summaryForCreateNew.d.mts → summaryForCreateNew.d.ts} +1 -1
  199. package/lib/summaryForCreateNew.d.ts.map +1 -0
  200. package/lib/{summaryForCreateNew.mjs → summaryForCreateNew.js} +1 -1
  201. package/lib/summaryForCreateNew.js.map +1 -0
  202. package/lib/test/insecureUrlResolverTest.spec.js +101 -0
  203. package/lib/test/insecureUrlResolverTest.spec.js.map +1 -0
  204. package/lib/test/parallelRequests.spec.js +186 -0
  205. package/lib/test/parallelRequests.spec.js.map +1 -0
  206. package/lib/test/rateLimiter.spec.js +85 -0
  207. package/lib/test/rateLimiter.spec.js.map +1 -0
  208. package/lib/test/runWithRetry.spec.js +180 -0
  209. package/lib/test/runWithRetry.spec.js.map +1 -0
  210. package/lib/test/summaryCompressionData.js +170 -0
  211. package/lib/test/summaryCompressionData.js.map +1 -0
  212. package/lib/test/summaryCompresssionTester.spec.js +429 -0
  213. package/lib/test/summaryCompresssionTester.spec.js.map +1 -0
  214. package/lib/test/types/validateDriverUtilsPrevious.generated.js +108 -0
  215. package/lib/test/types/validateDriverUtilsPrevious.generated.js.map +1 -0
  216. package/lib/{treeConversions.d.mts → treeConversions.d.ts} +1 -1
  217. package/lib/treeConversions.d.ts.map +1 -0
  218. package/lib/{treeConversions.mjs → treeConversions.js} +4 -3
  219. package/lib/treeConversions.js.map +1 -0
  220. package/package.json +82 -28
  221. package/src/adapters/compression/documentServiceCompressionAdapter.ts +9 -3
  222. package/src/adapters/compression/documentServiceFactoryCompressionAdapter.ts +4 -4
  223. package/src/adapters/compression/index.ts +3 -3
  224. package/src/adapters/compression/summaryblob/documentStorageServiceSummaryBlobCompressionAdapter.ts +2 -2
  225. package/src/adapters/compression/summaryblob/index.ts +1 -1
  226. package/src/adapters/index.ts +2 -2
  227. package/src/adapters/predefinedAdapters.ts +1 -1
  228. package/src/documentServiceProxy.ts +9 -2
  229. package/src/documentStorageServiceProxy.ts +12 -4
  230. package/src/error.ts +2 -4
  231. package/src/index.ts +17 -16
  232. package/src/insecureUrlResolver.ts +8 -6
  233. package/src/network.ts +11 -16
  234. package/src/networkUtils.ts +3 -4
  235. package/src/packageVersion.ts +1 -1
  236. package/src/parallelRequests.ts +11 -11
  237. package/src/prefetchDocumentStorageService.ts +2 -2
  238. package/src/runWithRetry.ts +2 -2
  239. package/src/storageUtils.ts +18 -0
  240. package/src/treeConversions.ts +3 -2
  241. package/tsconfig.cjs.json +7 -0
  242. package/tsconfig.json +2 -5
  243. package/lib/adapters/compression/compressionTypes.d.mts.map +0 -1
  244. package/lib/adapters/compression/compressionTypes.mjs.map +0 -1
  245. package/lib/adapters/compression/documentServiceCompressionAdapter.d.mts.map +0 -1
  246. package/lib/adapters/compression/documentServiceCompressionAdapter.mjs.map +0 -1
  247. package/lib/adapters/compression/documentServiceFactoryCompressionAdapter.d.mts.map +0 -1
  248. package/lib/adapters/compression/documentServiceFactoryCompressionAdapter.mjs.map +0 -1
  249. package/lib/adapters/compression/index.d.mts.map +0 -1
  250. package/lib/adapters/compression/index.mjs.map +0 -1
  251. package/lib/adapters/compression/summaryblob/documentStorageServiceSummaryBlobCompressionAdapter.d.mts.map +0 -1
  252. package/lib/adapters/compression/summaryblob/documentStorageServiceSummaryBlobCompressionAdapter.mjs.map +0 -1
  253. package/lib/adapters/compression/summaryblob/index.d.mts.map +0 -1
  254. package/lib/adapters/compression/summaryblob/index.mjs.map +0 -1
  255. package/lib/adapters/index.d.mts.map +0 -1
  256. package/lib/adapters/index.mjs.map +0 -1
  257. package/lib/adapters/predefinedAdapters.d.mts.map +0 -1
  258. package/lib/adapters/predefinedAdapters.mjs.map +0 -1
  259. package/lib/blob.d.mts.map +0 -1
  260. package/lib/blob.mjs.map +0 -1
  261. package/lib/buildSnapshotTree.d.mts.map +0 -1
  262. package/lib/buildSnapshotTree.mjs.map +0 -1
  263. package/lib/documentServiceFactoryProxy.d.mts.map +0 -1
  264. package/lib/documentServiceFactoryProxy.mjs.map +0 -1
  265. package/lib/documentServiceProxy.d.mts.map +0 -1
  266. package/lib/documentServiceProxy.mjs.map +0 -1
  267. package/lib/documentStorageServiceProxy.d.mts.map +0 -1
  268. package/lib/documentStorageServiceProxy.mjs.map +0 -1
  269. package/lib/error.d.mts.map +0 -1
  270. package/lib/error.mjs.map +0 -1
  271. package/lib/index.d.mts.map +0 -1
  272. package/lib/index.mjs.map +0 -1
  273. package/lib/insecureUrlResolver.d.mts.map +0 -1
  274. package/lib/insecureUrlResolver.mjs.map +0 -1
  275. package/lib/messageRecognition.d.mts.map +0 -1
  276. package/lib/messageRecognition.mjs.map +0 -1
  277. package/lib/network.d.mts.map +0 -1
  278. package/lib/network.mjs.map +0 -1
  279. package/lib/networkUtils.d.mts +0 -11
  280. package/lib/networkUtils.d.mts.map +0 -1
  281. package/lib/networkUtils.mjs.map +0 -1
  282. package/lib/packageVersion.d.mts.map +0 -1
  283. package/lib/packageVersion.mjs.map +0 -1
  284. package/lib/parallelRequests.d.mts.map +0 -1
  285. package/lib/parallelRequests.mjs.map +0 -1
  286. package/lib/prefetchDocumentStorageService.d.mts.map +0 -1
  287. package/lib/prefetchDocumentStorageService.mjs.map +0 -1
  288. package/lib/rateLimiter.d.mts.map +0 -1
  289. package/lib/rateLimiter.mjs.map +0 -1
  290. package/lib/readAndParse.d.mts.map +0 -1
  291. package/lib/readAndParse.mjs.map +0 -1
  292. package/lib/runWithRetry.d.mts.map +0 -1
  293. package/lib/runWithRetry.mjs.map +0 -1
  294. package/lib/summaryForCreateNew.d.mts.map +0 -1
  295. package/lib/summaryForCreateNew.mjs.map +0 -1
  296. package/lib/treeConversions.d.mts.map +0 -1
  297. package/lib/treeConversions.mjs.map +0 -1
@@ -2,20 +2,21 @@
2
2
  * Copyright (c) Microsoft Corporation and contributors. All rights reserved.
3
3
  * Licensed under the MIT License.
4
4
  */
5
- export { buildSnapshotTree } from "./buildSnapshotTree.mjs";
6
- export { BlobTreeEntry, TreeTreeEntry, AttachmentTreeEntry } from "./blob.mjs";
7
- export { DocumentStorageServiceProxy } from "./documentStorageServiceProxy.mjs";
8
- export { UsageError } from "./error.mjs";
9
- export { InsecureUrlResolver } from "./insecureUrlResolver.mjs";
10
- export { canBeCoalescedByService, isRuntimeMessage, MessageType2 } from "./messageRecognition.mjs";
11
- export { AuthorizationError, canRetryOnError, createGenericNetworkError, createWriteError, DeltaStreamConnectionForbiddenError, DriverErrorTelemetryProps, FluidInvalidSchemaError, GenericNetworkError, getRetryDelayFromError, getRetryDelaySecondsFromError, isOnline, LocationRedirectionError, NetworkErrorBasic, NonRetryableError, OnlineStatus, RetryableError, ThrottlingError, } from "./network.mjs";
12
- export { logNetworkFailure } from "./networkUtils.mjs";
13
- export { emptyMessageStream, ParallelRequests, Queue, requestOps, streamFromMessages, streamObserver, } from "./parallelRequests.mjs";
14
- export { PrefetchDocumentStorageService } from "./prefetchDocumentStorageService.mjs";
15
- export { RateLimiter } from "./rateLimiter.mjs";
16
- export { readAndParse } from "./readAndParse.mjs";
17
- export { calculateMaxWaitTime, IProgress, runWithRetry } from "./runWithRetry.mjs";
18
- export { CombinedAppAndProtocolSummary, getDocAttributesFromProtocolSummary, getQuorumValuesFromProtocolSummary, isCombinedAppAndProtocolSummary, } from "./summaryForCreateNew.mjs";
19
- export { convertSummaryTreeToSnapshotITree } from "./treeConversions.mjs";
20
- export { applyStorageCompression, ICompressionStorageConfig, SummaryCompressionAlgorithm, blobHeadersBlobName, } from "./adapters/index.mjs";
21
- //# sourceMappingURL=index.d.mts.map
5
+ export { buildSnapshotTree } from "./buildSnapshotTree.js";
6
+ export { BlobTreeEntry, TreeTreeEntry, AttachmentTreeEntry } from "./blob.js";
7
+ export { DocumentStorageServiceProxy } from "./documentStorageServiceProxy.js";
8
+ export { UsageError } from "./error.js";
9
+ export { InsecureUrlResolver } from "./insecureUrlResolver.js";
10
+ export { canBeCoalescedByService, isRuntimeMessage, MessageType2 } from "./messageRecognition.js";
11
+ export { AuthorizationError, canRetryOnError, createGenericNetworkError, createWriteError, DeltaStreamConnectionForbiddenError, DriverErrorTelemetryProps, FluidInvalidSchemaError, GenericNetworkError, getRetryDelayFromError, getRetryDelaySecondsFromError, isOnline, LocationRedirectionError, NetworkErrorBasic, NonRetryableError, OnlineStatus, RetryableError, ThrottlingError, } from "./network.js";
12
+ export { logNetworkFailure } from "./networkUtils.js";
13
+ export { emptyMessageStream, ParallelRequests, Queue, requestOps, streamFromMessages, streamObserver, } from "./parallelRequests.js";
14
+ export { PrefetchDocumentStorageService } from "./prefetchDocumentStorageService.js";
15
+ export { RateLimiter } from "./rateLimiter.js";
16
+ export { readAndParse } from "./readAndParse.js";
17
+ export { calculateMaxWaitTime, IProgress, runWithRetry } from "./runWithRetry.js";
18
+ export { CombinedAppAndProtocolSummary, getDocAttributesFromProtocolSummary, getQuorumValuesFromProtocolSummary, isCombinedAppAndProtocolSummary, } from "./summaryForCreateNew.js";
19
+ export { convertSummaryTreeToSnapshotITree } from "./treeConversions.js";
20
+ export { applyStorageCompression, ICompressionStorageConfig, SummaryCompressionAlgorithm, blobHeadersBlobName, } from "./adapters/index.js";
21
+ export { isInstanceOfISnapshot } from "./storageUtils.js";
22
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAC9E,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,uBAAuB,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAClG,OAAO,EACN,kBAAkB,EAClB,eAAe,EACf,yBAAyB,EACzB,gBAAgB,EAChB,mCAAmC,EACnC,yBAAyB,EACzB,uBAAuB,EACvB,mBAAmB,EACnB,sBAAsB,EACtB,6BAA6B,EAC7B,QAAQ,EACR,wBAAwB,EACxB,iBAAiB,EACjB,iBAAiB,EACjB,YAAY,EACZ,cAAc,EACd,eAAe,GACf,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EACN,kBAAkB,EAClB,gBAAgB,EAChB,KAAK,EACL,UAAU,EACV,kBAAkB,EAClB,cAAc,GACd,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,8BAA8B,EAAE,MAAM,qCAAqC,CAAC;AACrF,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,oBAAoB,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAClF,OAAO,EACN,6BAA6B,EAC7B,mCAAmC,EACnC,kCAAkC,EAClC,+BAA+B,GAC/B,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,iCAAiC,EAAE,MAAM,sBAAsB,CAAC;AACzE,OAAO,EACN,uBAAuB,EACvB,yBAAyB,EACzB,2BAA2B,EAC3B,mBAAmB,GACnB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC"}
@@ -2,20 +2,21 @@
2
2
  * Copyright (c) Microsoft Corporation and contributors. All rights reserved.
3
3
  * Licensed under the MIT License.
4
4
  */
5
- export { buildSnapshotTree } from "./buildSnapshotTree.mjs";
6
- export { BlobTreeEntry, TreeTreeEntry, AttachmentTreeEntry } from "./blob.mjs";
7
- export { DocumentStorageServiceProxy } from "./documentStorageServiceProxy.mjs";
8
- export { UsageError } from "./error.mjs";
9
- export { InsecureUrlResolver } from "./insecureUrlResolver.mjs";
10
- export { canBeCoalescedByService, isRuntimeMessage, MessageType2 } from "./messageRecognition.mjs";
11
- export { AuthorizationError, canRetryOnError, createGenericNetworkError, createWriteError, DeltaStreamConnectionForbiddenError, FluidInvalidSchemaError, GenericNetworkError, getRetryDelayFromError, getRetryDelaySecondsFromError, isOnline, LocationRedirectionError, NetworkErrorBasic, NonRetryableError, OnlineStatus, RetryableError, ThrottlingError, } from "./network.mjs";
12
- export { logNetworkFailure } from "./networkUtils.mjs";
13
- export { emptyMessageStream, ParallelRequests, Queue, requestOps, streamFromMessages, streamObserver, } from "./parallelRequests.mjs";
14
- export { PrefetchDocumentStorageService } from "./prefetchDocumentStorageService.mjs";
15
- export { RateLimiter } from "./rateLimiter.mjs";
16
- export { readAndParse } from "./readAndParse.mjs";
17
- export { calculateMaxWaitTime, runWithRetry } from "./runWithRetry.mjs";
18
- export { getDocAttributesFromProtocolSummary, getQuorumValuesFromProtocolSummary, isCombinedAppAndProtocolSummary, } from "./summaryForCreateNew.mjs";
19
- export { convertSummaryTreeToSnapshotITree } from "./treeConversions.mjs";
20
- export { applyStorageCompression, SummaryCompressionAlgorithm, blobHeadersBlobName, } from "./adapters/index.mjs";
21
- //# sourceMappingURL=index.mjs.map
5
+ export { buildSnapshotTree } from "./buildSnapshotTree.js";
6
+ export { BlobTreeEntry, TreeTreeEntry, AttachmentTreeEntry } from "./blob.js";
7
+ export { DocumentStorageServiceProxy } from "./documentStorageServiceProxy.js";
8
+ export { UsageError } from "./error.js";
9
+ export { InsecureUrlResolver } from "./insecureUrlResolver.js";
10
+ export { canBeCoalescedByService, isRuntimeMessage, MessageType2 } from "./messageRecognition.js";
11
+ export { AuthorizationError, canRetryOnError, createGenericNetworkError, createWriteError, DeltaStreamConnectionForbiddenError, FluidInvalidSchemaError, GenericNetworkError, getRetryDelayFromError, getRetryDelaySecondsFromError, isOnline, LocationRedirectionError, NetworkErrorBasic, NonRetryableError, OnlineStatus, RetryableError, ThrottlingError, } from "./network.js";
12
+ export { logNetworkFailure } from "./networkUtils.js";
13
+ export { emptyMessageStream, ParallelRequests, Queue, requestOps, streamFromMessages, streamObserver, } from "./parallelRequests.js";
14
+ export { PrefetchDocumentStorageService } from "./prefetchDocumentStorageService.js";
15
+ export { RateLimiter } from "./rateLimiter.js";
16
+ export { readAndParse } from "./readAndParse.js";
17
+ export { calculateMaxWaitTime, runWithRetry } from "./runWithRetry.js";
18
+ export { getDocAttributesFromProtocolSummary, getQuorumValuesFromProtocolSummary, isCombinedAppAndProtocolSummary, } from "./summaryForCreateNew.js";
19
+ export { convertSummaryTreeToSnapshotITree } from "./treeConversions.js";
20
+ export { applyStorageCompression, SummaryCompressionAlgorithm, blobHeadersBlobName, } from "./adapters/index.js";
21
+ export { isInstanceOfISnapshot } from "./storageUtils.js";
22
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAC9E,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,uBAAuB,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAClG,OAAO,EACN,kBAAkB,EAClB,eAAe,EACf,yBAAyB,EACzB,gBAAgB,EAChB,mCAAmC,EAEnC,uBAAuB,EACvB,mBAAmB,EACnB,sBAAsB,EACtB,6BAA6B,EAC7B,QAAQ,EACR,wBAAwB,EACxB,iBAAiB,EACjB,iBAAiB,EACjB,YAAY,EACZ,cAAc,EACd,eAAe,GACf,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EACN,kBAAkB,EAClB,gBAAgB,EAChB,KAAK,EACL,UAAU,EACV,kBAAkB,EAClB,cAAc,GACd,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,8BAA8B,EAAE,MAAM,qCAAqC,CAAC;AACrF,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,oBAAoB,EAAa,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAClF,OAAO,EAEN,mCAAmC,EACnC,kCAAkC,EAClC,+BAA+B,GAC/B,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,iCAAiC,EAAE,MAAM,sBAAsB,CAAC;AACzE,OAAO,EACN,uBAAuB,EAEvB,2BAA2B,EAC3B,mBAAmB,GACnB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\nexport { buildSnapshotTree } from \"./buildSnapshotTree.js\";\nexport { BlobTreeEntry, TreeTreeEntry, AttachmentTreeEntry } from \"./blob.js\";\nexport { DocumentStorageServiceProxy } from \"./documentStorageServiceProxy.js\";\nexport { UsageError } from \"./error.js\";\nexport { InsecureUrlResolver } from \"./insecureUrlResolver.js\";\nexport { canBeCoalescedByService, isRuntimeMessage, MessageType2 } from \"./messageRecognition.js\";\nexport {\n\tAuthorizationError,\n\tcanRetryOnError,\n\tcreateGenericNetworkError,\n\tcreateWriteError,\n\tDeltaStreamConnectionForbiddenError,\n\tDriverErrorTelemetryProps,\n\tFluidInvalidSchemaError,\n\tGenericNetworkError,\n\tgetRetryDelayFromError,\n\tgetRetryDelaySecondsFromError,\n\tisOnline,\n\tLocationRedirectionError,\n\tNetworkErrorBasic,\n\tNonRetryableError,\n\tOnlineStatus,\n\tRetryableError,\n\tThrottlingError,\n} from \"./network.js\";\nexport { logNetworkFailure } from \"./networkUtils.js\";\nexport {\n\temptyMessageStream,\n\tParallelRequests,\n\tQueue,\n\trequestOps,\n\tstreamFromMessages,\n\tstreamObserver,\n} from \"./parallelRequests.js\";\nexport { PrefetchDocumentStorageService } from \"./prefetchDocumentStorageService.js\";\nexport { RateLimiter } from \"./rateLimiter.js\";\nexport { readAndParse } from \"./readAndParse.js\";\nexport { calculateMaxWaitTime, IProgress, runWithRetry } from \"./runWithRetry.js\";\nexport {\n\tCombinedAppAndProtocolSummary,\n\tgetDocAttributesFromProtocolSummary,\n\tgetQuorumValuesFromProtocolSummary,\n\tisCombinedAppAndProtocolSummary,\n} from \"./summaryForCreateNew.js\";\nexport { convertSummaryTreeToSnapshotITree } from \"./treeConversions.js\";\nexport {\n\tapplyStorageCompression,\n\tICompressionStorageConfig,\n\tSummaryCompressionAlgorithm,\n\tblobHeadersBlobName,\n} from \"./adapters/index.js\";\nexport { isInstanceOfISnapshot } from \"./storageUtils.js\";\n"]}
@@ -12,7 +12,7 @@ import { IResolvedUrl, IUrlResolver } from "@fluidframework/driver-definitions";
12
12
  * http://localhost:8080/<documentId>/<path>.
13
13
  *
14
14
  * We then need to map that to a Fluid based URL. These are of the form
15
- * fluid://orderingUrl/<tenantId>/<documentId>/<path>.
15
+ * https://orderingUrl/<tenantId>/<documentId>/<path>.
16
16
  *
17
17
  * The tenantId/documentId pair defines the 'full' document ID the service makes use of. The path is then an optional
18
18
  * part of the URL that the document interprets and maps to a data store. It's exactly similar to how a web service
@@ -23,14 +23,15 @@ export declare class InsecureUrlResolver implements IUrlResolver {
23
23
  private readonly hostUrl;
24
24
  private readonly ordererUrl;
25
25
  private readonly storageUrl;
26
+ private readonly deltaStreamUrl;
26
27
  private readonly tenantId;
27
28
  private readonly bearer;
28
29
  private readonly isForNodeTest;
29
30
  private readonly cache;
30
- constructor(hostUrl: string, ordererUrl: string, storageUrl: string, tenantId: string, bearer: string, isForNodeTest?: boolean);
31
+ constructor(hostUrl: string, ordererUrl: string, storageUrl: string, deltaStreamUrl: string, tenantId: string, bearer: string, isForNodeTest?: boolean);
31
32
  resolve(request: IRequest): Promise<IResolvedUrl | undefined>;
32
33
  private resolveHelper;
33
34
  getAbsoluteUrl(resolvedUrl: IResolvedUrl, relativeUrl: string): Promise<string>;
34
35
  createCreateNewRequest(fileName?: string): IRequest;
35
36
  }
36
- //# sourceMappingURL=insecureUrlResolver.d.mts.map
37
+ //# sourceMappingURL=insecureUrlResolver.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"insecureUrlResolver.d.ts","sourceRoot":"","sources":["../src/insecureUrlResolver.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,YAAY,EAAgB,MAAM,oCAAoC,CAAC;AAG9F;;;;;;;;;;;;;;GAcG;AACH,qBAAa,mBAAoB,YAAW,YAAY;IAItD,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC/B,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,aAAa;IAT/B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAA4C;gBAGhD,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,EAClB,cAAc,EAAE,MAAM,EACtB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,EACd,aAAa,GAAE,OAAe;IAGnC,OAAO,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO,CAAC,YAAY,GAAG,SAAS,CAAC;IA+C1E,OAAO,CAAC,aAAa;IAmDR,cAAc,CAAC,WAAW,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAgBrF,sBAAsB,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,QAAQ;CAU1D"}
@@ -2,7 +2,6 @@
2
2
  * Copyright (c) Microsoft Corporation and contributors. All rights reserved.
3
3
  * Licensed under the MIT License.
4
4
  */
5
- import { parse } from "url";
6
5
  import { assert } from "@fluidframework/core-utils";
7
6
  import { DriverHeader } from "@fluidframework/driver-definitions";
8
7
  import Axios from "axios";
@@ -14,7 +13,7 @@ import Axios from "axios";
14
13
  * http://localhost:8080/<documentId>/<path>.
15
14
  *
16
15
  * We then need to map that to a Fluid based URL. These are of the form
17
- * fluid://orderingUrl/<tenantId>/<documentId>/<path>.
16
+ * https://orderingUrl/<tenantId>/<documentId>/<path>.
18
17
  *
19
18
  * The tenantId/documentId pair defines the 'full' document ID the service makes use of. The path is then an optional
20
19
  * part of the URL that the document interprets and maps to a data store. It's exactly similar to how a web service
@@ -22,10 +21,11 @@ import Axios from "axios";
22
21
  * @internal
23
22
  */
24
23
  export class InsecureUrlResolver {
25
- constructor(hostUrl, ordererUrl, storageUrl, tenantId, bearer, isForNodeTest = false) {
24
+ constructor(hostUrl, ordererUrl, storageUrl, deltaStreamUrl, tenantId, bearer, isForNodeTest = false) {
26
25
  this.hostUrl = hostUrl;
27
26
  this.ordererUrl = ordererUrl;
28
27
  this.storageUrl = storageUrl;
28
+ this.deltaStreamUrl = deltaStreamUrl;
29
29
  this.tenantId = tenantId;
30
30
  this.bearer = bearer;
31
31
  this.isForNodeTest = isForNodeTest;
@@ -61,7 +61,7 @@ export class InsecureUrlResolver {
61
61
  const headers = {
62
62
  Authorization: `Bearer ${this.bearer}`,
63
63
  };
64
- const resolvedP = Axios.post(`${this.hostUrl}/api/v1/load`, {
64
+ const resolvedP = Axios.post(`${this.hostUrl}/apis/load`, {
65
65
  url: request.url,
66
66
  }, {
67
67
  headers,
@@ -80,6 +80,7 @@ export class InsecureUrlResolver {
80
80
  const createNewResponse = {
81
81
  endpoints: {
82
82
  deltaStorageUrl: `${this.ordererUrl}/deltas/${encodedTenantId}/new`,
83
+ deltaStreamUrl: this.deltaStreamUrl,
83
84
  ordererUrl: this.ordererUrl,
84
85
  storageUrl: `${this.storageUrl}/repos/${encodedTenantId}`,
85
86
  },
@@ -87,7 +88,7 @@ export class InsecureUrlResolver {
87
88
  id: "",
88
89
  tokens: {},
89
90
  type: "fluid",
90
- url: `fluid://${host}/${encodedTenantId}/new`,
91
+ url: `https://${host}/${encodedTenantId}/new`,
91
92
  };
92
93
  return createNewResponse;
93
94
  }
@@ -95,12 +96,13 @@ export class InsecureUrlResolver {
95
96
  const relativePath = !documentRelativePath || documentRelativePath.startsWith("/")
96
97
  ? documentRelativePath
97
98
  : `/${documentRelativePath}`;
98
- const documentUrl = `fluid://${host}/${encodedTenantId}/${encodedDocId}${relativePath}${queryParams}`;
99
+ const documentUrl = `https://${host}/${encodedTenantId}/${encodedDocId}${relativePath}${queryParams}`;
99
100
  const deltaStorageUrl = `${this.ordererUrl}/deltas/${encodedTenantId}/${encodedDocId}`;
100
101
  const storageUrl = `${this.storageUrl}/repos/${encodedTenantId}`;
101
102
  const response = {
102
103
  endpoints: {
103
104
  deltaStorageUrl,
105
+ deltaStreamUrl: this.deltaStreamUrl,
104
106
  ordererUrl: this.ordererUrl,
105
107
  storageUrl,
106
108
  },
@@ -112,7 +114,7 @@ export class InsecureUrlResolver {
112
114
  return response;
113
115
  }
114
116
  async getAbsoluteUrl(resolvedUrl, relativeUrl) {
115
- const parsedUrl = parse(resolvedUrl.url);
117
+ const parsedUrl = new URL(resolvedUrl.url);
116
118
  const [, , documentId] = parsedUrl.pathname?.split("/") ?? [];
117
119
  // eslint-disable-next-line @typescript-eslint/strict-boolean-expressions
118
120
  assert(!!documentId, 0x273 /* "Invalid document id from parsed URL" */);
@@ -133,4 +135,4 @@ export class InsecureUrlResolver {
133
135
  return createNewRequest;
134
136
  }
135
137
  }
136
- //# sourceMappingURL=insecureUrlResolver.mjs.map
138
+ //# sourceMappingURL=insecureUrlResolver.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"insecureUrlResolver.js","sourceRoot":"","sources":["../src/insecureUrlResolver.ts"],"names":[],"mappings":"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","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\nimport { assert } from \"@fluidframework/core-utils\";\nimport { IRequest } from \"@fluidframework/core-interfaces\";\nimport { IResolvedUrl, IUrlResolver, DriverHeader } from \"@fluidframework/driver-definitions\";\nimport Axios from \"axios\";\n\n/**\n * As the name implies this is not secure and should not be used in production. It simply makes the example easier\n * to get up and running.\n *\n * In our example we run a simple web server via webpack-dev-server. This defines a URL format of the form\n * http://localhost:8080/<documentId>/<path>.\n *\n * We then need to map that to a Fluid based URL. These are of the form\n * https://orderingUrl/<tenantId>/<documentId>/<path>.\n *\n * The tenantId/documentId pair defines the 'full' document ID the service makes use of. The path is then an optional\n * part of the URL that the document interprets and maps to a data store. It's exactly similar to how a web service\n * works or a router inside of a single page app framework.\n * @internal\n */\nexport class InsecureUrlResolver implements IUrlResolver {\n\tprivate readonly cache = new Map<string, Promise<IResolvedUrl>>();\n\n\tconstructor(\n\t\tprivate readonly hostUrl: string,\n\t\tprivate readonly ordererUrl: string,\n\t\tprivate readonly storageUrl: string,\n\t\tprivate readonly deltaStreamUrl: string,\n\t\tprivate readonly tenantId: string,\n\t\tprivate readonly bearer: string,\n\t\tprivate readonly isForNodeTest: boolean = false,\n\t) {}\n\n\tpublic async resolve(request: IRequest): Promise<IResolvedUrl | undefined> {\n\t\t// eslint-disable-next-line @typescript-eslint/strict-boolean-expressions\n\t\tif (request.headers?.[DriverHeader.createNew]) {\n\t\t\tconst [, queryString] = request.url.split(\"?\");\n\t\t\tconst searchParams = new URLSearchParams(queryString);\n\t\t\tconst fileName = searchParams.get(\"fileName\");\n\t\t\treturn this.resolveHelper(fileName);\n\t\t}\n\t\tconst parsedUrl = new URL(request.url);\n\t\t// If hosts match then we use the local tenant information. Otherwise we make a REST call out to the hosting\n\t\t// service using our bearer token.\n\t\tif (this.isForNodeTest) {\n\t\t\tconst [, documentId, tmpRelativePath] = parsedUrl.pathname.substr(1).split(\"/\");\n\t\t\tconst relativePath = tmpRelativePath ?? \"\";\n\t\t\treturn this.resolveHelper(documentId, relativePath, parsedUrl.search);\n\t\t} else if (parsedUrl.host === window.location.host) {\n\t\t\tconst fullPath = parsedUrl.pathname.substr(1);\n\t\t\tconst documentId = fullPath.split(\"/\")[0];\n\t\t\tconst documentRelativePath = fullPath.slice(documentId.length);\n\t\t\treturn this.resolveHelper(documentId, documentRelativePath);\n\t\t} else {\n\t\t\tconst maybeResolvedUrl = this.cache.get(request.url);\n\t\t\tif (maybeResolvedUrl) {\n\t\t\t\treturn maybeResolvedUrl;\n\t\t\t}\n\n\t\t\tconst headers = {\n\t\t\t\tAuthorization: `Bearer ${this.bearer}`,\n\t\t\t};\n\t\t\tconst resolvedP = Axios.post<IResolvedUrl>(\n\t\t\t\t`${this.hostUrl}/apis/load`,\n\t\t\t\t{\n\t\t\t\t\turl: request.url,\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\theaders,\n\t\t\t\t},\n\t\t\t);\n\t\t\tthis.cache.set(\n\t\t\t\trequest.url,\n\t\t\t\tresolvedP.then((resolved) => resolved.data),\n\t\t\t);\n\n\t\t\treturn this.cache.get(request.url);\n\t\t}\n\t}\n\n\tprivate resolveHelper(\n\t\tdocumentId: string | null,\n\t\tdocumentRelativePath: string = \"\",\n\t\tqueryParams: string = \"\",\n\t) {\n\t\tconst encodedTenantId = encodeURIComponent(this.tenantId);\n\t\tconst host = new URL(this.ordererUrl).host;\n\t\t// when the document ID is not provided we need to resolve a special create new document URL.\n\t\t// the actual container ID will be generated by the driver.\n\t\t// eslint-disable-next-line @typescript-eslint/strict-boolean-expressions\n\t\tif (!documentId) {\n\t\t\tconst createNewResponse: IResolvedUrl = {\n\t\t\t\tendpoints: {\n\t\t\t\t\tdeltaStorageUrl: `${this.ordererUrl}/deltas/${encodedTenantId}/new`,\n\t\t\t\t\tdeltaStreamUrl: this.deltaStreamUrl,\n\t\t\t\t\tordererUrl: this.ordererUrl,\n\t\t\t\t\tstorageUrl: `${this.storageUrl}/repos/${encodedTenantId}`,\n\t\t\t\t},\n\t\t\t\t// document ID is ignored by the driver for new container requests\n\t\t\t\tid: \"\",\n\t\t\t\ttokens: {},\n\t\t\t\ttype: \"fluid\",\n\t\t\t\turl: `https://${host}/${encodedTenantId}/new`,\n\t\t\t};\n\t\t\treturn createNewResponse;\n\t\t}\n\t\tconst encodedDocId = encodeURIComponent(documentId);\n\t\tconst relativePath =\n\t\t\t!documentRelativePath || documentRelativePath.startsWith(\"/\")\n\t\t\t\t? documentRelativePath\n\t\t\t\t: `/${documentRelativePath}`;\n\t\tconst documentUrl = `https://${host}/${encodedTenantId}/${encodedDocId}${relativePath}${queryParams}`;\n\n\t\tconst deltaStorageUrl = `${this.ordererUrl}/deltas/${encodedTenantId}/${encodedDocId}`;\n\t\tconst storageUrl = `${this.storageUrl}/repos/${encodedTenantId}`;\n\n\t\tconst response: IResolvedUrl = {\n\t\t\tendpoints: {\n\t\t\t\tdeltaStorageUrl,\n\t\t\t\tdeltaStreamUrl: this.deltaStreamUrl,\n\t\t\t\tordererUrl: this.ordererUrl,\n\t\t\t\tstorageUrl,\n\t\t\t},\n\t\t\tid: documentId,\n\t\t\ttokens: {},\n\t\t\ttype: \"fluid\",\n\t\t\turl: documentUrl,\n\t\t};\n\t\treturn response;\n\t}\n\n\tpublic async getAbsoluteUrl(resolvedUrl: IResolvedUrl, relativeUrl: string): Promise<string> {\n\t\tconst parsedUrl = new URL(resolvedUrl.url);\n\t\tconst [, , documentId] = parsedUrl.pathname?.split(\"/\") ?? [];\n\t\t// eslint-disable-next-line @typescript-eslint/strict-boolean-expressions\n\t\tassert(!!documentId, 0x273 /* \"Invalid document id from parsed URL\" */);\n\n\t\tlet url = relativeUrl;\n\t\tif (url.startsWith(\"/\")) {\n\t\t\turl = url.substr(1);\n\t\t}\n\n\t\treturn `${this.hostUrl}/${encodeURIComponent(this.tenantId)}/${encodeURIComponent(\n\t\t\tdocumentId,\n\t\t)}/${url}`;\n\t}\n\n\tpublic createCreateNewRequest(fileName?: string): IRequest {\n\t\tconst createNewRequest: IRequest = {\n\t\t\t// eslint-disable-next-line @typescript-eslint/strict-boolean-expressions\n\t\t\turl: fileName ? `${this.hostUrl}?fileName=${fileName}` : this.hostUrl,\n\t\t\theaders: {\n\t\t\t\t[DriverHeader.createNew]: true,\n\t\t\t},\n\t\t};\n\t\treturn createNewRequest;\n\t}\n}\n"]}
@@ -1,3 +1,7 @@
1
+ /*!
2
+ * Copyright (c) Microsoft Corporation and contributors. All rights reserved.
3
+ * Licensed under the MIT License.
4
+ */
1
5
  import { IDocumentMessage, ISequencedDocumentMessage } from "@fluidframework/protocol-definitions";
2
6
  /**
3
7
  * Tells if message was sent by container runtime
@@ -21,4 +25,4 @@ export declare enum MessageType2 {
21
25
  * @internal
22
26
  */
23
27
  export declare function canBeCoalescedByService(message: ISequencedDocumentMessage | IDocumentMessage): boolean;
24
- //# sourceMappingURL=messageRecognition.d.mts.map
28
+ //# sourceMappingURL=messageRecognition.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"messageRecognition.d.ts","sourceRoot":"","sources":["../src/messageRecognition.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EACN,gBAAgB,EAChB,yBAAyB,EAEzB,MAAM,sCAAsC,CAAC;AAE9C;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAEnE;AAED;;;;GAIG;AACH,oBAAY,YAAY;IACvB,MAAM,WAAW;CACjB;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CACtC,OAAO,EAAE,yBAAyB,GAAG,gBAAgB,GACnD,OAAO,CAIT"}
@@ -1,3 +1,7 @@
1
+ /*!
2
+ * Copyright (c) Microsoft Corporation and contributors. All rights reserved.
3
+ * Licensed under the MIT License.
4
+ */
1
5
  import { MessageType, } from "@fluidframework/protocol-definitions";
2
6
  /**
3
7
  * Tells if message was sent by container runtime
@@ -26,4 +30,4 @@ export function canBeCoalescedByService(message) {
26
30
  // same way it was doing coalescing of immediate noops in the past.
27
31
  return message.type === MessageType.NoOp || message.type === MessageType2.Accept;
28
32
  }
29
- //# sourceMappingURL=messageRecognition.mjs.map
33
+ //# sourceMappingURL=messageRecognition.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"messageRecognition.js","sourceRoot":"","sources":["../src/messageRecognition.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAGN,WAAW,GACX,MAAM,sCAAsC,CAAC;AAE9C;;;;;GAKG;AACH,MAAM,UAAU,gBAAgB,CAAC,OAAyB;IACzD,OAAO,OAAO,CAAC,IAAI,KAAK,WAAW,CAAC,SAAS,CAAC;AAC/C,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAN,IAAY,YAEX;AAFD,WAAY,YAAY;IACvB,iCAAiB,CAAA;AAClB,CAAC,EAFW,YAAY,KAAZ,YAAY,QAEvB;AAED;;;GAGG;AACH,MAAM,UAAU,uBAAuB,CACtC,OAAqD;IAErD,6FAA6F;IAC7F,mEAAmE;IACnE,OAAO,OAAO,CAAC,IAAI,KAAK,WAAW,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI,KAAK,YAAY,CAAC,MAAM,CAAC;AAClF,CAAC","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\nimport {\n\tIDocumentMessage,\n\tISequencedDocumentMessage,\n\tMessageType,\n} from \"@fluidframework/protocol-definitions\";\n\n/**\n * Tells if message was sent by container runtime\n * @privateRemarks ADO #1385: To be moved to container-definitions\n * @returns whether the message is a runtime message\n * @internal\n */\nexport function isRuntimeMessage(message: { type: string }): boolean {\n\treturn message.type === MessageType.Operation;\n}\n\n/**\n * @privateRemarks ADO #1385: staging code changes across layers.\n * Eventually to be replaced by MessageType.accept\n * @internal\n */\nexport enum MessageType2 {\n\tAccept = \"accept\",\n}\n\n/**\n * @privateRemarks ADO #1385: To be moved to packages/protocol-base/src/protocol.ts\n * @internal\n */\nexport function canBeCoalescedByService(\n\tmessage: ISequencedDocumentMessage | IDocumentMessage,\n): boolean {\n\t// This assumes that in the future relay service may implement coalescing of accept messages,\n\t// same way it was doing coalescing of immediate noops in the past.\n\treturn message.type === MessageType.NoOp || message.type === MessageType2.Accept;\n}\n"]}
@@ -2,8 +2,8 @@
2
2
  * Copyright (c) Microsoft Corporation and contributors. All rights reserved.
3
3
  * Licensed under the MIT License.
4
4
  */
5
- import { IThrottlingWarning, IDriverErrorBase, IAuthorizationError, DriverErrorType, ILocationRedirectionError, IResolvedUrl } from "@fluidframework/driver-definitions";
6
- import { ITelemetryProperties } from "@fluidframework/core-interfaces";
5
+ import { IThrottlingWarning, IDriverErrorBase, IAuthorizationError, ILocationRedirectionError, IResolvedUrl } from "@fluidframework/driver-definitions";
6
+ import { ITelemetryBaseProperties } from "@fluidframework/core-interfaces";
7
7
  import { IFluidErrorBase, LoggingError } from "@fluidframework/telemetry-utils";
8
8
  /**
9
9
  * @internal
@@ -24,7 +24,7 @@ export declare function isOnline(): OnlineStatus;
24
24
  * Telemetry props with driver-specific required properties
25
25
  * @internal
26
26
  */
27
- export type DriverErrorTelemetryProps = ITelemetryProperties & {
27
+ export type DriverErrorTelemetryProps = ITelemetryBaseProperties & {
28
28
  driverVersion: string | undefined;
29
29
  };
30
30
  /**
@@ -33,7 +33,10 @@ export type DriverErrorTelemetryProps = ITelemetryProperties & {
33
33
  */
34
34
  export declare class GenericNetworkError extends LoggingError implements IDriverErrorBase, IFluidErrorBase {
35
35
  readonly canRetry: boolean;
36
- readonly errorType = DriverErrorType.genericNetworkError;
36
+ /**
37
+ * {@inheritDoc @fluidframework/telemetry-utils#IFluidErrorBase.errorType}
38
+ */
39
+ readonly errorType: "genericNetworkError";
37
40
  constructor(message: string, canRetry: boolean, props: DriverErrorTelemetryProps);
38
41
  }
39
42
  /**
@@ -41,7 +44,7 @@ export declare class GenericNetworkError extends LoggingError implements IDriver
41
44
  * @internal
42
45
  */
43
46
  export declare class FluidInvalidSchemaError extends LoggingError implements IDriverErrorBase, IFluidErrorBase {
44
- readonly errorType = DriverErrorType.fluidInvalidSchema;
47
+ readonly errorType: "fluidInvalidSchema";
45
48
  readonly canRetry = false;
46
49
  constructor(message: string, props: DriverErrorTelemetryProps);
47
50
  }
@@ -49,8 +52,8 @@ export declare class FluidInvalidSchemaError extends LoggingError implements IDr
49
52
  * @internal
50
53
  */
51
54
  export declare class DeltaStreamConnectionForbiddenError extends LoggingError implements IDriverErrorBase, IFluidErrorBase {
52
- static readonly errorType = DriverErrorType.deltaStreamConnectionForbidden;
53
- readonly errorType = DriverErrorType.deltaStreamConnectionForbidden;
55
+ static readonly errorType: "deltaStreamConnectionForbidden";
56
+ readonly errorType: "deltaStreamConnectionForbidden";
54
57
  readonly canRetry = false;
55
58
  readonly storageOnlyReason: string | undefined;
56
59
  constructor(message: string, props: DriverErrorTelemetryProps, storageOnlyReason?: string);
@@ -61,7 +64,7 @@ export declare class DeltaStreamConnectionForbiddenError extends LoggingError im
61
64
  export declare class AuthorizationError extends LoggingError implements IAuthorizationError, IFluidErrorBase {
62
65
  readonly claims: string | undefined;
63
66
  readonly tenantId: string | undefined;
64
- readonly errorType = DriverErrorType.authorizationError;
67
+ readonly errorType: "authorizationError";
65
68
  readonly canRetry = false;
66
69
  constructor(message: string, claims: string | undefined, tenantId: string | undefined, props: DriverErrorTelemetryProps);
67
70
  }
@@ -70,7 +73,7 @@ export declare class AuthorizationError extends LoggingError implements IAuthori
70
73
  */
71
74
  export declare class LocationRedirectionError extends LoggingError implements ILocationRedirectionError, IFluidErrorBase {
72
75
  readonly redirectUrl: IResolvedUrl;
73
- readonly errorType = DriverErrorType.locationRedirection;
76
+ readonly errorType: "locationRedirection";
74
77
  readonly canRetry = false;
75
78
  constructor(message: string, redirectUrl: IResolvedUrl, props: DriverErrorTelemetryProps);
76
79
  }
@@ -102,7 +105,7 @@ export declare class RetryableError<T extends string> extends NetworkErrorBasic<
102
105
  */
103
106
  export declare class ThrottlingError extends LoggingError implements IThrottlingWarning, IFluidErrorBase {
104
107
  readonly retryAfterSeconds: number;
105
- readonly errorType = DriverErrorType.throttlingError;
108
+ readonly errorType: "throttlingError";
106
109
  readonly canRetry = true;
107
110
  constructor(message: string, retryAfterSeconds: number, props: DriverErrorTelemetryProps);
108
111
  }
@@ -134,4 +137,4 @@ export declare const getRetryDelaySecondsFromError: (error: any) => number | und
134
137
  * @internal
135
138
  */
136
139
  export declare const getRetryDelayFromError: (error: any) => number | undefined;
137
- //# sourceMappingURL=network.d.mts.map
140
+ //# sourceMappingURL=network.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"network.d.ts","sourceRoot":"","sources":["../src/network.ts"],"names":[],"mappings":"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"}
@@ -2,9 +2,7 @@
2
2
  * Copyright (c) Microsoft Corporation and contributors. All rights reserved.
3
3
  * Licensed under the MIT License.
4
4
  */
5
- import {
6
- // eslint-disable-next-line import/no-deprecated
7
- DriverErrorType, DriverErrorTypes, } from "@fluidframework/driver-definitions";
5
+ import { DriverErrorTypes, } from "@fluidframework/driver-definitions";
8
6
  import { LoggingError } from "@fluidframework/telemetry-utils";
9
7
  /**
10
8
  * @internal
@@ -37,8 +35,10 @@ export class GenericNetworkError extends LoggingError {
37
35
  constructor(message, canRetry, props) {
38
36
  super(message, props);
39
37
  this.canRetry = canRetry;
40
- // eslint-disable-next-line import/no-deprecated
41
- this.errorType = DriverErrorType.genericNetworkError;
38
+ /**
39
+ * {@inheritDoc @fluidframework/telemetry-utils#IFluidErrorBase.errorType}
40
+ */
41
+ this.errorType = DriverErrorTypes.genericNetworkError;
42
42
  }
43
43
  }
44
44
  /**
@@ -48,8 +48,7 @@ export class GenericNetworkError extends LoggingError {
48
48
  export class FluidInvalidSchemaError extends LoggingError {
49
49
  constructor(message, props) {
50
50
  super(message, props);
51
- // eslint-disable-next-line import/no-deprecated
52
- this.errorType = DriverErrorType.fluidInvalidSchema;
51
+ this.errorType = DriverErrorTypes.fluidInvalidSchema;
53
52
  this.canRetry = false;
54
53
  }
55
54
  }
@@ -64,8 +63,7 @@ export class DeltaStreamConnectionForbiddenError extends LoggingError {
64
63
  this.storageOnlyReason = storageOnlyReason;
65
64
  }
66
65
  }
67
- // eslint-disable-next-line import/no-deprecated
68
- DeltaStreamConnectionForbiddenError.errorType = DriverErrorType.deltaStreamConnectionForbidden;
66
+ DeltaStreamConnectionForbiddenError.errorType = DriverErrorTypes.deltaStreamConnectionForbidden;
69
67
  /**
70
68
  * @internal
71
69
  */
@@ -75,8 +73,7 @@ export class AuthorizationError extends LoggingError {
75
73
  super(message, props, new Set(["claims", "tenantId"]));
76
74
  this.claims = claims;
77
75
  this.tenantId = tenantId;
78
- // eslint-disable-next-line import/no-deprecated
79
- this.errorType = DriverErrorType.authorizationError;
76
+ this.errorType = DriverErrorTypes.authorizationError;
80
77
  this.canRetry = false;
81
78
  }
82
79
  }
@@ -88,8 +85,7 @@ export class LocationRedirectionError extends LoggingError {
88
85
  // do not log redirectURL
89
86
  super(message, props, new Set(["redirectUrl"]));
90
87
  this.redirectUrl = redirectUrl;
91
- // eslint-disable-next-line import/no-deprecated
92
- this.errorType = DriverErrorType.locationRedirection;
88
+ this.errorType = DriverErrorTypes.locationRedirection;
93
89
  this.canRetry = false;
94
90
  }
95
91
  }
@@ -129,8 +125,7 @@ export class ThrottlingError extends LoggingError {
129
125
  constructor(message, retryAfterSeconds, props) {
130
126
  super(message, props);
131
127
  this.retryAfterSeconds = retryAfterSeconds;
132
- // eslint-disable-next-line import/no-deprecated
133
- this.errorType = DriverErrorType.throttlingError;
128
+ this.errorType = DriverErrorTypes.throttlingError;
134
129
  this.canRetry = true;
135
130
  }
136
131
  }
@@ -164,4 +159,4 @@ export const getRetryDelaySecondsFromError = (error) => error?.retryAfterSeconds
164
159
  * @internal
165
160
  */
166
161
  export const getRetryDelayFromError = (error) => error?.retryAfterSeconds !== undefined ? error.retryAfterSeconds * 1000 : undefined;
167
- //# sourceMappingURL=network.mjs.map
162
+ //# sourceMappingURL=network.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"network.js","sourceRoot":"","sources":["../src/network.ts"],"names":[],"mappings":"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","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\nimport {\n\tIThrottlingWarning,\n\tIDriverErrorBase,\n\tIAuthorizationError,\n\tILocationRedirectionError,\n\tIResolvedUrl,\n\tDriverErrorTypes,\n} from \"@fluidframework/driver-definitions\";\nimport { ITelemetryBaseProperties } from \"@fluidframework/core-interfaces\";\nimport { IFluidErrorBase, LoggingError } from \"@fluidframework/telemetry-utils\";\n\n/**\n * @internal\n */\nexport enum OnlineStatus {\n\tOffline,\n\tOnline,\n\tUnknown,\n}\n\n/**\n * It tells if we have local connection only - we might not have connection to web.\n * No solution for node.js (other than resolve dns names / ping specific sites)\n * Can also use window.addEventListener(\"online\" / \"offline\")\n * @internal\n */\nexport function isOnline(): OnlineStatus {\n\tif (\n\t\ttypeof navigator === \"object\" &&\n\t\tnavigator !== null &&\n\t\ttypeof navigator.onLine === \"boolean\"\n\t) {\n\t\treturn navigator.onLine ? OnlineStatus.Online : OnlineStatus.Offline;\n\t}\n\treturn OnlineStatus.Unknown;\n}\n\n/**\n * Telemetry props with driver-specific required properties\n * @internal\n */\nexport type DriverErrorTelemetryProps = ITelemetryBaseProperties & {\n\tdriverVersion: string | undefined;\n};\n\n/**\n * Generic network error class.\n * @internal\n */\nexport class GenericNetworkError extends LoggingError implements IDriverErrorBase, IFluidErrorBase {\n\t/**\n\t * {@inheritDoc @fluidframework/telemetry-utils#IFluidErrorBase.errorType}\n\t */\n\treadonly errorType = DriverErrorTypes.genericNetworkError;\n\n\tconstructor(\n\t\tmessage: string,\n\t\treadonly canRetry: boolean,\n\t\tprops: DriverErrorTelemetryProps,\n\t) {\n\t\tsuper(message, props);\n\t}\n}\n\n/**\n * FluidInvalidSchema error class.\n * @internal\n */\nexport class FluidInvalidSchemaError\n\textends LoggingError\n\timplements IDriverErrorBase, IFluidErrorBase\n{\n\treadonly errorType = DriverErrorTypes.fluidInvalidSchema;\n\treadonly canRetry = false;\n\n\tconstructor(message: string, props: DriverErrorTelemetryProps) {\n\t\tsuper(message, props);\n\t}\n}\n\n/**\n * @internal\n */\nexport class DeltaStreamConnectionForbiddenError\n\textends LoggingError\n\timplements IDriverErrorBase, IFluidErrorBase\n{\n\tstatic readonly errorType = DriverErrorTypes.deltaStreamConnectionForbidden;\n\treadonly errorType = DeltaStreamConnectionForbiddenError.errorType;\n\treadonly canRetry = false;\n\treadonly storageOnlyReason: string | undefined;\n\n\tconstructor(message: string, props: DriverErrorTelemetryProps, storageOnlyReason?: string) {\n\t\tsuper(message, { ...props, statusCode: 400 });\n\t\tthis.storageOnlyReason = storageOnlyReason;\n\t}\n}\n\n/**\n * @internal\n */\nexport class AuthorizationError\n\textends LoggingError\n\timplements IAuthorizationError, IFluidErrorBase\n{\n\treadonly errorType = DriverErrorTypes.authorizationError;\n\treadonly canRetry = false;\n\n\tconstructor(\n\t\tmessage: string,\n\t\treadonly claims: string | undefined,\n\t\treadonly tenantId: string | undefined,\n\t\tprops: DriverErrorTelemetryProps,\n\t) {\n\t\t// don't log claims or tenantId\n\t\tsuper(message, props, new Set([\"claims\", \"tenantId\"]));\n\t}\n}\n\n/**\n * @internal\n */\nexport class LocationRedirectionError\n\textends LoggingError\n\timplements ILocationRedirectionError, IFluidErrorBase\n{\n\treadonly errorType = DriverErrorTypes.locationRedirection;\n\treadonly canRetry = false;\n\n\tconstructor(\n\t\tmessage: string,\n\t\treadonly redirectUrl: IResolvedUrl,\n\t\tprops: DriverErrorTelemetryProps,\n\t) {\n\t\t// do not log redirectURL\n\t\tsuper(message, props, new Set([\"redirectUrl\"]));\n\t}\n}\n\n/**\n * @internal\n */\nexport class NetworkErrorBasic<T extends string> extends LoggingError implements IFluidErrorBase {\n\tconstructor(\n\t\tmessage: string,\n\t\treadonly errorType: T,\n\t\treadonly canRetry: boolean,\n\t\tprops: DriverErrorTelemetryProps,\n\t) {\n\t\tsuper(message, props);\n\t}\n}\n\n/**\n * @internal\n */\nexport class NonRetryableError<T extends string> extends NetworkErrorBasic<T> {\n\tconstructor(\n\t\tmessage: string,\n\t\treadonly errorType: T,\n\t\tprops: DriverErrorTelemetryProps,\n\t) {\n\t\tsuper(message, errorType, false, props);\n\t}\n}\n\n/**\n * @internal\n */\nexport class RetryableError<T extends string> extends NetworkErrorBasic<T> {\n\tconstructor(\n\t\tmessage: string,\n\t\treadonly errorType: T,\n\t\tprops: DriverErrorTelemetryProps,\n\t) {\n\t\tsuper(message, errorType, true, props);\n\t}\n}\n\n/**\n * Throttling error class - used to communicate all throttling errors\n * @internal\n */\nexport class ThrottlingError extends LoggingError implements IThrottlingWarning, IFluidErrorBase {\n\treadonly errorType = DriverErrorTypes.throttlingError;\n\treadonly canRetry = true;\n\n\tconstructor(\n\t\tmessage: string,\n\t\treadonly retryAfterSeconds: number,\n\t\tprops: DriverErrorTelemetryProps,\n\t) {\n\t\tsuper(message, props);\n\t}\n}\n\n/**\n * @internal\n */\nexport const createWriteError = (message: string, props: DriverErrorTelemetryProps) =>\n\tnew NonRetryableError(message, DriverErrorTypes.writeError, props);\n\n/**\n * @internal\n */\nexport function createGenericNetworkError(\n\tmessage: string,\n\tretryInfo: { canRetry: boolean; retryAfterMs?: number },\n\tprops: DriverErrorTelemetryProps,\n): ThrottlingError | GenericNetworkError {\n\tif (retryInfo.retryAfterMs !== undefined && retryInfo.canRetry) {\n\t\treturn new ThrottlingError(message, retryInfo.retryAfterMs / 1000, props);\n\t}\n\treturn new GenericNetworkError(message, retryInfo.canRetry, props);\n}\n\n/**\n * Check if a connection error can be retried. Unless explicitly allowed, retry is disallowed.\n * I.e. asserts or unexpected exceptions in our code result in container failure.\n * @param error - The error to inspect for ability to retry\n * @internal\n */\nexport const canRetryOnError = (error: any): boolean => error?.canRetry === true;\n\n/**\n * Check retryAfterSeconds property on error\n * @internal\n */\nexport const getRetryDelaySecondsFromError = (error: any): number | undefined =>\n\terror?.retryAfterSeconds as number | undefined;\n\n/**\n * Check retryAfterSeconds property on error and convert to ms\n * @internal\n */\nexport const getRetryDelayFromError = (error: any): number | undefined =>\n\terror?.retryAfterSeconds !== undefined ? error.retryAfterSeconds * 1000 : undefined;\n"]}
@@ -0,0 +1,10 @@
1
+ /*!
2
+ * Copyright (c) Microsoft Corporation and contributors. All rights reserved.
3
+ * Licensed under the MIT License.
4
+ */
5
+ import { ITelemetryLoggerExt, type ITelemetryErrorEventExt } from "@fluidframework/telemetry-utils";
6
+ /**
7
+ * @internal
8
+ */
9
+ export declare function logNetworkFailure(logger: ITelemetryLoggerExt, event: ITelemetryErrorEventExt, error?: any): void;
10
+ //# sourceMappingURL=networkUtils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"networkUtils.d.ts","sourceRoot":"","sources":["../src/networkUtils.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,mBAAmB,EAAE,KAAK,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AAGpG;;GAEG;AACH,wBAAgB,iBAAiB,CAChC,MAAM,EAAE,mBAAmB,EAC3B,KAAK,EAAE,uBAAuB,EAC9B,KAAK,CAAC,EAAE,GAAG,QAmBX"}
@@ -2,7 +2,7 @@
2
2
  * Copyright (c) Microsoft Corporation and contributors. All rights reserved.
3
3
  * Licensed under the MIT License.
4
4
  */
5
- import { isOnline, OnlineStatus, canRetryOnError } from "./network.mjs";
5
+ import { isOnline, OnlineStatus, canRetryOnError } from "./network.js";
6
6
  /**
7
7
  * @internal
8
8
  */
@@ -22,4 +22,4 @@ export function logNetworkFailure(logger, event, error) {
22
22
  newEvent.category = canRetryOnError(error) ? "generic" : "error";
23
23
  logger.sendTelemetryEvent(newEvent, error);
24
24
  }
25
- //# sourceMappingURL=networkUtils.mjs.map
25
+ //# sourceMappingURL=networkUtils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"networkUtils.js","sourceRoot":"","sources":["../src/networkUtils.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAEvE;;GAEG;AACH,MAAM,UAAU,iBAAiB,CAChC,MAA2B,EAC3B,KAA8B,EAC9B,KAAW;IAEX,MAAM,QAAQ,GAAG,EAAE,GAAG,KAAK,EAAE,CAAC;IAE9B,MAAM,eAAe,GAAG,KAAK,EAAE,MAAM,CAAC;IACtC,QAAQ,CAAC,MAAM;QACd,OAAO,eAAe,KAAK,QAAQ,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC,CAAC;IAElF,IAAI,OAAO,SAAS,KAAK,QAAQ,IAAI,SAAS,KAAK,IAAI,EAAE;QACxD,MAAM,GAAG,GAAG,SAAgB,CAAC;QAC7B,MAAM,UAAU,GAAG,GAAG,CAAC,UAAU,IAAI,GAAG,CAAC,aAAa,IAAI,GAAG,CAAC,gBAAgB,CAAC;QAC/E,IAAI,UAAU,KAAK,IAAI,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE;YAC1D,QAAQ,CAAC,cAAc,GAAG,UAAU,CAAC,IAAI,CAAC;SAC1C;KACD;IAED,gEAAgE;IAChE,QAAQ,CAAC,QAAQ,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC;IACjE,MAAM,CAAC,kBAAkB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;AAC5C,CAAC","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\nimport { ITelemetryLoggerExt, type ITelemetryErrorEventExt } from \"@fluidframework/telemetry-utils\";\nimport { isOnline, OnlineStatus, canRetryOnError } from \"./network.js\";\n\n/**\n * @internal\n */\nexport function logNetworkFailure(\n\tlogger: ITelemetryLoggerExt,\n\tevent: ITelemetryErrorEventExt,\n\terror?: any,\n) {\n\tconst newEvent = { ...event };\n\n\tconst errorOnlineProp = error?.online;\n\tnewEvent.online =\n\t\ttypeof errorOnlineProp === \"string\" ? errorOnlineProp : OnlineStatus[isOnline()];\n\n\tif (typeof navigator === \"object\" && navigator !== null) {\n\t\tconst nav = navigator as any;\n\t\tconst connection = nav.connection ?? nav.mozConnection ?? nav.webkitConnection;\n\t\tif (connection !== null && typeof connection === \"object\") {\n\t\t\tnewEvent.connectionType = connection.type;\n\t\t}\n\t}\n\n\t// non-retryable errors are fatal and should be logged as errors\n\tnewEvent.category = canRetryOnError(error) ? \"generic\" : \"error\";\n\tlogger.sendTelemetryEvent(newEvent, error);\n}\n"]}
@@ -5,5 +5,5 @@
5
5
  * THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY
6
6
  */
7
7
  export declare const pkgName = "@fluidframework/driver-utils";
8
- export declare const pkgVersion = "2.0.0-rc.1.0.4";
9
- //# sourceMappingURL=packageVersion.d.mts.map
8
+ export declare const pkgVersion = "2.0.0-rc.2.0.0";
9
+ //# sourceMappingURL=packageVersion.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"packageVersion.d.ts","sourceRoot":"","sources":["../src/packageVersion.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,eAAO,MAAM,OAAO,iCAAiC,CAAC;AACtD,eAAO,MAAM,UAAU,mBAAmB,CAAC"}
@@ -5,5 +5,5 @@
5
5
  * THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY
6
6
  */
7
7
  export const pkgName = "@fluidframework/driver-utils";
8
- export const pkgVersion = "2.0.0-rc.1.0.4";
9
- //# sourceMappingURL=packageVersion.mjs.map
8
+ export const pkgVersion = "2.0.0-rc.2.0.0";
9
+ //# sourceMappingURL=packageVersion.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"packageVersion.js","sourceRoot":"","sources":["../src/packageVersion.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,MAAM,CAAC,MAAM,OAAO,GAAG,8BAA8B,CAAC;AACtD,MAAM,CAAC,MAAM,UAAU,GAAG,gBAAgB,CAAC","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n *\n * THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY\n */\n\nexport const pkgName = \"@fluidframework/driver-utils\";\nexport const pkgVersion = \"2.0.0-rc.2.0.0\";\n"]}
@@ -1,4 +1,4 @@
1
- import { ITelemetryProperties } from "@fluidframework/core-interfaces";
1
+ import { ITelemetryBaseProperties } from "@fluidframework/core-interfaces";
2
2
  import { ITelemetryLoggerExt } from "@fluidframework/telemetry-utils";
3
3
  import { ISequencedDocumentMessage } from "@fluidframework/protocol-definitions";
4
4
  import { IDeltasFetchResult, IStream, IStreamResult } from "@fluidframework/driver-definitions";
@@ -31,7 +31,7 @@ export declare class ParallelRequests<T> {
31
31
  private readonly knewTo;
32
32
  private get working();
33
33
  get canceled(): boolean;
34
- constructor(from: number, to: number | undefined, payloadSize: number, logger: ITelemetryLoggerExt, requestCallback: (request: number, from: number, to: number, strongTo: boolean, props: ITelemetryProperties) => Promise<{
34
+ constructor(from: number, to: number | undefined, payloadSize: number, logger: ITelemetryLoggerExt, requestCallback: (request: number, from: number, to: number, strongTo: boolean, props: ITelemetryBaseProperties) => Promise<{
35
35
  partial: boolean;
36
36
  cancel: boolean;
37
37
  payload: T[];
@@ -73,7 +73,7 @@ export declare class Queue<T> implements IStream<T> {
73
73
  * @returns Messages fetched
74
74
  * @internal
75
75
  */
76
- export declare function requestOps(get: (from: number, to: number, telemetryProps: ITelemetryProperties) => Promise<IDeltasFetchResult>, concurrency: number, fromTotal: number, toTotal: number | undefined, payloadSize: number, logger: ITelemetryLoggerExt, signal?: AbortSignal, scenarioName?: string): IStream<ISequencedDocumentMessage[]>;
76
+ export declare function requestOps(get: (from: number, to: number, telemetryProps: ITelemetryBaseProperties) => Promise<IDeltasFetchResult>, concurrency: number, fromTotal: number, toTotal: number | undefined, payloadSize: number, logger: ITelemetryLoggerExt, signal?: AbortSignal, scenarioName?: string): IStream<ISequencedDocumentMessage[]>;
77
77
  /**
78
78
  * @internal
79
79
  */
@@ -86,4 +86,4 @@ export declare function streamFromMessages(messagesArg: Promise<ISequencedDocume
86
86
  * @internal
87
87
  */
88
88
  export declare function streamObserver<T>(stream: IStream<T>, handler: (value: IStreamResult<T>) => void): IStream<T>;
89
- //# sourceMappingURL=parallelRequests.d.mts.map
89
+ //# sourceMappingURL=parallelRequests.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parallelRequests.d.ts","sourceRoot":"","sources":["../src/parallelRequests.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,15 @@
1
+ /*!
2
+ * Copyright (c) Microsoft Corporation and contributors. All rights reserved.
3
+ * Licensed under the MIT License.
4
+ */
1
5
  import { performance } from "@fluid-internal/client-utils";
2
6
  import { assert, Deferred } from "@fluidframework/core-utils";
3
7
  import { PerformanceEvent } from "@fluidframework/telemetry-utils";
4
- import { getRetryDelayFromError, canRetryOnError, createGenericNetworkError } from "./network.mjs";
5
- import { logNetworkFailure } from "./networkUtils.mjs";
6
- import { pkgVersion as driverVersion } from "./packageVersion.mjs";
7
- import { calculateMaxWaitTime } from "./runWithRetry.mjs";
8
+ import { getRetryDelayFromError, canRetryOnError, createGenericNetworkError } from "./network.js";
9
+ import { logNetworkFailure } from "./networkUtils.js";
10
+ // For now, this package is versioned and released in unison with the specific drivers
11
+ import { pkgVersion as driverVersion } from "./packageVersion.js";
12
+ import { calculateMaxWaitTime } from "./runWithRetry.js";
8
13
  // We double this value in first try in when we calculate time to wait for in "calculateMaxWaitTime" function.
9
14
  const MissingFetchDelayInMs = 50;
10
15
  /**
@@ -528,4 +533,4 @@ export function streamObserver(stream, handler) {
528
533
  },
529
534
  };
530
535
  }
531
- //# sourceMappingURL=parallelRequests.mjs.map
536
+ //# sourceMappingURL=parallelRequests.js.map