@fluidframework/odsp-driver 1.4.0-121020 → 2.0.0-dev-rc.1.0.0.224419

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 (661) hide show
  1. package/.eslintrc.js +12 -12
  2. package/.mocharc.js +12 -0
  3. package/CHANGELOG.md +162 -0
  4. package/README.md +56 -0
  5. package/api-extractor-lint.json +4 -0
  6. package/api-extractor.json +2 -2
  7. package/api-report/odsp-driver.api.md +310 -0
  8. package/dist/{ReadBufferUtils.js → ReadBufferUtils.cjs} +16 -9
  9. package/dist/ReadBufferUtils.cjs.map +1 -0
  10. package/dist/ReadBufferUtils.d.ts.map +1 -1
  11. package/dist/{WriteBufferUtils.js → WriteBufferUtils.cjs} +73 -69
  12. package/dist/WriteBufferUtils.cjs.map +1 -0
  13. package/dist/WriteBufferUtils.d.ts +3 -5
  14. package/dist/WriteBufferUtils.d.ts.map +1 -1
  15. package/dist/{checkUrl.js → checkUrl.cjs} +7 -6
  16. package/dist/checkUrl.cjs.map +1 -0
  17. package/dist/checkUrl.d.ts +1 -0
  18. package/dist/checkUrl.d.ts.map +1 -1
  19. package/dist/compactSnapshotParser.cjs +207 -0
  20. package/dist/compactSnapshotParser.cjs.map +1 -0
  21. package/dist/compactSnapshotParser.d.ts +12 -3
  22. package/dist/compactSnapshotParser.d.ts.map +1 -1
  23. package/dist/{compactSnapshotWriter.js → compactSnapshotWriter.cjs} +43 -33
  24. package/dist/compactSnapshotWriter.cjs.map +1 -0
  25. package/dist/compactSnapshotWriter.d.ts +2 -3
  26. package/dist/compactSnapshotWriter.d.ts.map +1 -1
  27. package/dist/{constants.js → constants.cjs} +7 -1
  28. package/dist/constants.cjs.map +1 -0
  29. package/dist/constants.d.ts +6 -0
  30. package/dist/constants.d.ts.map +1 -1
  31. package/dist/{contracts.js → contracts.cjs} +1 -1
  32. package/dist/contracts.cjs.map +1 -0
  33. package/dist/contracts.d.ts +16 -53
  34. package/dist/contracts.d.ts.map +1 -1
  35. package/dist/{contractsPublic.js → contractsPublic.cjs} +9 -3
  36. package/dist/contractsPublic.cjs.map +1 -0
  37. package/dist/contractsPublic.d.ts +15 -0
  38. package/dist/contractsPublic.d.ts.map +1 -1
  39. package/dist/createFile.cjs +177 -0
  40. package/dist/createFile.cjs.map +1 -0
  41. package/dist/createFile.d.ts +6 -10
  42. package/dist/createFile.d.ts.map +1 -1
  43. package/dist/createNewContainerOnExistingFile.cjs +60 -0
  44. package/dist/createNewContainerOnExistingFile.cjs.map +1 -0
  45. package/dist/createNewContainerOnExistingFile.d.ts +22 -0
  46. package/dist/createNewContainerOnExistingFile.d.ts.map +1 -0
  47. package/dist/createNewModule.cjs +12 -0
  48. package/dist/createNewModule.cjs.map +1 -0
  49. package/dist/createNewModule.d.ts +7 -0
  50. package/dist/createNewModule.d.ts.map +1 -0
  51. package/dist/createNewUtils.cjs +203 -0
  52. package/dist/createNewUtils.cjs.map +1 -0
  53. package/dist/createNewUtils.d.ts +16 -0
  54. package/dist/createNewUtils.d.ts.map +1 -1
  55. package/dist/{createOdspCreateContainerRequest.js → createOdspCreateContainerRequest.cjs} +8 -4
  56. package/dist/createOdspCreateContainerRequest.cjs.map +1 -0
  57. package/dist/createOdspCreateContainerRequest.d.ts +5 -3
  58. package/dist/createOdspCreateContainerRequest.d.ts.map +1 -1
  59. package/dist/{createOdspUrl.js → createOdspUrl.cjs} +2 -1
  60. package/dist/createOdspUrl.cjs.map +1 -0
  61. package/dist/createOdspUrl.d.ts +1 -0
  62. package/dist/createOdspUrl.d.ts.map +1 -1
  63. package/dist/{epochTracker.js → epochTracker.cjs} +102 -48
  64. package/dist/epochTracker.cjs.map +1 -0
  65. package/dist/epochTracker.d.ts +32 -8
  66. package/dist/epochTracker.d.ts.map +1 -1
  67. package/dist/{fetch.js → fetch.cjs} +1 -1
  68. package/dist/fetch.cjs.map +1 -0
  69. package/dist/fetch.d.ts +1 -1
  70. package/dist/fetch.d.ts.map +1 -1
  71. package/dist/{fetchSnapshot.js → fetchSnapshot.cjs} +192 -176
  72. package/dist/fetchSnapshot.cjs.map +1 -0
  73. package/dist/fetchSnapshot.d.ts +10 -5
  74. package/dist/fetchSnapshot.d.ts.map +1 -1
  75. package/dist/{getFileLink.js → getFileLink.cjs} +52 -41
  76. package/dist/getFileLink.cjs.map +1 -0
  77. package/dist/getFileLink.d.ts +4 -7
  78. package/dist/getFileLink.d.ts.map +1 -1
  79. package/dist/{getQueryString.js → getQueryString.cjs} +1 -1
  80. package/dist/getQueryString.cjs.map +1 -0
  81. package/dist/getQueryString.d.ts.map +1 -1
  82. package/dist/{getUrlAndHeadersWithAuth.js → getUrlAndHeadersWithAuth.cjs} +4 -2
  83. package/dist/getUrlAndHeadersWithAuth.cjs.map +1 -0
  84. package/dist/getUrlAndHeadersWithAuth.d.ts.map +1 -1
  85. package/dist/index.cjs +59 -0
  86. package/dist/index.cjs.map +1 -0
  87. package/dist/index.d.ts +19 -16
  88. package/dist/index.d.ts.map +1 -1
  89. package/dist/localOdspDriver/localOdspDeltaStorageService.cjs +35 -0
  90. package/dist/localOdspDriver/localOdspDeltaStorageService.cjs.map +1 -0
  91. package/dist/localOdspDriver/localOdspDeltaStorageService.d.ts +17 -0
  92. package/dist/localOdspDriver/localOdspDeltaStorageService.d.ts.map +1 -0
  93. package/dist/localOdspDriver/{localOdspDocumentService.js → localOdspDocumentService.cjs} +7 -5
  94. package/dist/localOdspDriver/localOdspDocumentService.cjs.map +1 -0
  95. package/dist/localOdspDriver/localOdspDocumentService.d.ts +3 -2
  96. package/dist/localOdspDriver/localOdspDocumentService.d.ts.map +1 -1
  97. package/dist/localOdspDriver/{localOdspDocumentServiceFactory.js → localOdspDocumentServiceFactory.cjs} +9 -10
  98. package/dist/localOdspDriver/localOdspDocumentServiceFactory.cjs.map +1 -0
  99. package/dist/localOdspDriver/localOdspDocumentServiceFactory.d.ts +2 -3
  100. package/dist/localOdspDriver/localOdspDocumentServiceFactory.d.ts.map +1 -1
  101. package/dist/localOdspDriver/{localOdspDocumentStorageManager.js → localOdspDocumentStorageManager.cjs} +13 -11
  102. package/dist/localOdspDriver/localOdspDocumentStorageManager.cjs.map +1 -0
  103. package/dist/localOdspDriver/localOdspDocumentStorageManager.d.ts +2 -2
  104. package/dist/localOdspDriver/localOdspDocumentStorageManager.d.ts.map +1 -1
  105. package/dist/odsp-driver-alpha.d.ts +497 -0
  106. package/dist/odsp-driver-beta.d.ts +159 -0
  107. package/dist/odsp-driver-public.d.ts +159 -0
  108. package/dist/odsp-driver-untrimmed.d.ts +566 -0
  109. package/dist/{odspCache.js → odspCache.cjs} +9 -10
  110. package/dist/odspCache.cjs.map +1 -0
  111. package/dist/odspCache.d.ts +19 -4
  112. package/dist/odspCache.d.ts.map +1 -1
  113. package/dist/odspDelayLoadedDeltaStream.cjs +291 -0
  114. package/dist/odspDelayLoadedDeltaStream.cjs.map +1 -0
  115. package/dist/odspDelayLoadedDeltaStream.d.ts +75 -0
  116. package/dist/odspDelayLoadedDeltaStream.d.ts.map +1 -0
  117. package/dist/{odspDeltaStorageService.js → odspDeltaStorageService.cjs} +70 -71
  118. package/dist/odspDeltaStorageService.cjs.map +1 -0
  119. package/dist/odspDeltaStorageService.d.ts +8 -6
  120. package/dist/odspDeltaStorageService.d.ts.map +1 -1
  121. package/dist/{odspDocumentDeltaConnection.js → odspDocumentDeltaConnection.cjs} +224 -113
  122. package/dist/odspDocumentDeltaConnection.cjs.map +1 -0
  123. package/dist/odspDocumentDeltaConnection.d.ts +32 -12
  124. package/dist/odspDocumentDeltaConnection.d.ts.map +1 -1
  125. package/dist/odspDocumentService.cjs +225 -0
  126. package/dist/odspDocumentService.cjs.map +1 -0
  127. package/dist/odspDocumentService.d.ts +11 -25
  128. package/dist/odspDocumentService.d.ts.map +1 -1
  129. package/dist/{odspDocumentServiceFactory.js → odspDocumentServiceFactory.cjs} +8 -5
  130. package/dist/odspDocumentServiceFactory.cjs.map +1 -0
  131. package/dist/odspDocumentServiceFactory.d.ts +4 -0
  132. package/dist/odspDocumentServiceFactory.d.ts.map +1 -1
  133. package/dist/odspDocumentServiceFactoryCore.cjs +196 -0
  134. package/dist/odspDocumentServiceFactoryCore.cjs.map +1 -0
  135. package/dist/odspDocumentServiceFactoryCore.d.ts +16 -11
  136. package/dist/odspDocumentServiceFactoryCore.d.ts.map +1 -1
  137. package/dist/odspDocumentServiceFactoryWithCodeSplit.cjs +20 -0
  138. package/dist/odspDocumentServiceFactoryWithCodeSplit.cjs.map +1 -0
  139. package/dist/odspDocumentServiceFactoryWithCodeSplit.d.ts +5 -0
  140. package/dist/odspDocumentServiceFactoryWithCodeSplit.d.ts.map +1 -1
  141. package/dist/odspDocumentStorageManager.cjs +490 -0
  142. package/dist/odspDocumentStorageManager.cjs.map +1 -0
  143. package/dist/odspDocumentStorageManager.d.ts +11 -5
  144. package/dist/odspDocumentStorageManager.d.ts.map +1 -1
  145. package/dist/{odspDocumentStorageServiceBase.js → odspDocumentStorageServiceBase.cjs} +32 -34
  146. package/dist/odspDocumentStorageServiceBase.cjs.map +1 -0
  147. package/dist/odspDocumentStorageServiceBase.d.ts +7 -9
  148. package/dist/odspDocumentStorageServiceBase.d.ts.map +1 -1
  149. package/dist/{odspDriverUrlResolver.js → odspDriverUrlResolver.cjs} +50 -36
  150. package/dist/odspDriverUrlResolver.cjs.map +1 -0
  151. package/dist/odspDriverUrlResolver.d.ts +12 -0
  152. package/dist/odspDriverUrlResolver.d.ts.map +1 -1
  153. package/dist/{odspDriverUrlResolverForShareLink.js → odspDriverUrlResolverForShareLink.cjs} +37 -26
  154. package/dist/odspDriverUrlResolverForShareLink.cjs.map +1 -0
  155. package/dist/odspDriverUrlResolverForShareLink.d.ts +5 -3
  156. package/dist/odspDriverUrlResolverForShareLink.d.ts.map +1 -1
  157. package/dist/{odspError.js → odspError.cjs} +7 -3
  158. package/dist/odspError.cjs.map +1 -0
  159. package/dist/odspError.d.ts.map +1 -1
  160. package/dist/{odspFluidFileLink.js → odspFluidFileLink.cjs} +25 -18
  161. package/dist/odspFluidFileLink.cjs.map +1 -0
  162. package/dist/odspFluidFileLink.d.ts +10 -1
  163. package/dist/odspFluidFileLink.d.ts.map +1 -1
  164. package/dist/odspLocationRedirection.cjs +24 -0
  165. package/dist/odspLocationRedirection.cjs.map +1 -0
  166. package/dist/odspLocationRedirection.d.ts +14 -0
  167. package/dist/odspLocationRedirection.d.ts.map +1 -0
  168. package/dist/{odspPublicUtils.js → odspPublicUtils.cjs} +7 -4
  169. package/dist/odspPublicUtils.cjs.map +1 -0
  170. package/dist/odspPublicUtils.d.ts +6 -0
  171. package/dist/odspPublicUtils.d.ts.map +1 -1
  172. package/dist/{odspSnapshotParser.js → odspSnapshotParser.cjs} +11 -12
  173. package/dist/odspSnapshotParser.cjs.map +1 -0
  174. package/dist/odspSnapshotParser.d.ts.map +1 -1
  175. package/dist/{odspSummaryUploadManager.js → odspSummaryUploadManager.cjs} +47 -34
  176. package/dist/odspSummaryUploadManager.cjs.map +1 -0
  177. package/dist/odspSummaryUploadManager.d.ts +7 -4
  178. package/dist/odspSummaryUploadManager.d.ts.map +1 -1
  179. package/dist/{odspUrlHelper.js → odspUrlHelper.cjs} +9 -3
  180. package/dist/odspUrlHelper.cjs.map +1 -0
  181. package/dist/odspUrlHelper.d.ts +5 -0
  182. package/dist/odspUrlHelper.d.ts.map +1 -1
  183. package/dist/{odspUtils.js → odspUtils.cjs} +118 -30
  184. package/dist/odspUtils.cjs.map +1 -0
  185. package/dist/odspUtils.d.ts +35 -6
  186. package/dist/odspUtils.d.ts.map +1 -1
  187. package/dist/{opsCaching.js → opsCaching.cjs} +25 -9
  188. package/dist/opsCaching.cjs.map +1 -0
  189. package/dist/opsCaching.d.ts +3 -3
  190. package/dist/opsCaching.d.ts.map +1 -1
  191. package/dist/{packageVersion.js → packageVersion.cjs} +2 -2
  192. package/dist/packageVersion.cjs.map +1 -0
  193. package/dist/packageVersion.d.ts +1 -1
  194. package/dist/packageVersion.d.ts.map +1 -1
  195. package/dist/prefetchLatestSnapshot.cjs +100 -0
  196. package/dist/prefetchLatestSnapshot.cjs.map +1 -0
  197. package/dist/prefetchLatestSnapshot.d.ts +12 -7
  198. package/dist/prefetchLatestSnapshot.d.ts.map +1 -1
  199. package/dist/{retryErrorsStorageAdapter.js → retryErrorsStorageAdapter.cjs} +13 -6
  200. package/dist/retryErrorsStorageAdapter.cjs.map +1 -0
  201. package/dist/retryErrorsStorageAdapter.d.ts +5 -4
  202. package/dist/retryErrorsStorageAdapter.d.ts.map +1 -1
  203. package/dist/{retryUtils.js → retryUtils.cjs} +30 -14
  204. package/dist/retryUtils.cjs.map +1 -0
  205. package/dist/retryUtils.d.ts +2 -2
  206. package/dist/retryUtils.d.ts.map +1 -1
  207. package/dist/socketModule.cjs +10 -0
  208. package/dist/socketModule.cjs.map +1 -0
  209. package/dist/socketModule.d.ts +7 -0
  210. package/dist/socketModule.d.ts.map +1 -0
  211. package/dist/tsdoc-metadata.json +11 -0
  212. package/dist/{vroom.js → vroom.cjs} +24 -9
  213. package/dist/vroom.cjs.map +1 -0
  214. package/dist/vroom.d.ts +4 -4
  215. package/dist/vroom.d.ts.map +1 -1
  216. package/dist/{zipItDataRepresentationUtils.js → zipItDataRepresentationUtils.cjs} +227 -118
  217. package/dist/zipItDataRepresentationUtils.cjs.map +1 -0
  218. package/dist/zipItDataRepresentationUtils.d.ts +47 -20
  219. package/dist/zipItDataRepresentationUtils.d.ts.map +1 -1
  220. package/lib/ReadBufferUtils.d.mts.map +1 -0
  221. package/lib/{ReadBufferUtils.js → ReadBufferUtils.mjs} +14 -7
  222. package/lib/ReadBufferUtils.mjs.map +1 -0
  223. package/lib/{WriteBufferUtils.d.ts → WriteBufferUtils.d.mts} +3 -5
  224. package/lib/WriteBufferUtils.d.mts.map +1 -0
  225. package/lib/{WriteBufferUtils.js → WriteBufferUtils.mjs} +68 -64
  226. package/lib/WriteBufferUtils.mjs.map +1 -0
  227. package/lib/{checkUrl.d.ts → checkUrl.d.mts} +1 -0
  228. package/lib/checkUrl.d.mts.map +1 -0
  229. package/lib/{checkUrl.js → checkUrl.mjs} +7 -6
  230. package/lib/checkUrl.mjs.map +1 -0
  231. package/lib/compactSnapshotParser.d.mts +24 -0
  232. package/lib/compactSnapshotParser.d.mts.map +1 -0
  233. package/lib/compactSnapshotParser.mjs +203 -0
  234. package/lib/compactSnapshotParser.mjs.map +1 -0
  235. package/lib/{compactSnapshotWriter.d.ts → compactSnapshotWriter.d.mts} +3 -4
  236. package/lib/compactSnapshotWriter.d.mts.map +1 -0
  237. package/lib/{compactSnapshotWriter.js → compactSnapshotWriter.mjs} +41 -31
  238. package/lib/compactSnapshotWriter.mjs.map +1 -0
  239. package/lib/{constants.d.ts → constants.d.mts} +6 -0
  240. package/lib/constants.d.mts.map +1 -0
  241. package/lib/{constants.js → constants.mjs} +7 -1
  242. package/lib/constants.mjs.map +1 -0
  243. package/lib/{contracts.d.ts → contracts.d.mts} +17 -54
  244. package/lib/contracts.d.mts.map +1 -0
  245. package/lib/{contracts.js → contracts.mjs} +1 -1
  246. package/lib/contracts.mjs.map +1 -0
  247. package/lib/{contractsPublic.d.ts → contractsPublic.d.mts} +15 -0
  248. package/lib/contractsPublic.d.mts.map +1 -0
  249. package/lib/{contractsPublic.js → contractsPublic.mjs} +7 -1
  250. package/lib/contractsPublic.mjs.map +1 -0
  251. package/lib/createFile.d.mts +18 -0
  252. package/lib/createFile.d.mts.map +1 -0
  253. package/lib/createFile.mjs +171 -0
  254. package/lib/createFile.mjs.map +1 -0
  255. package/lib/createNewContainerOnExistingFile.d.mts +22 -0
  256. package/lib/createNewContainerOnExistingFile.d.mts.map +1 -0
  257. package/lib/createNewContainerOnExistingFile.mjs +56 -0
  258. package/lib/createNewContainerOnExistingFile.mjs.map +1 -0
  259. package/lib/createNewModule.d.mts +7 -0
  260. package/lib/createNewModule.d.mts.map +1 -0
  261. package/lib/createNewModule.mjs +7 -0
  262. package/lib/createNewModule.mjs.map +1 -0
  263. package/lib/createNewUtils.d.mts +27 -0
  264. package/lib/createNewUtils.d.mts.map +1 -0
  265. package/lib/createNewUtils.mjs +197 -0
  266. package/lib/createNewUtils.mjs.map +1 -0
  267. package/lib/{createOdspCreateContainerRequest.d.ts → createOdspCreateContainerRequest.d.mts} +5 -7
  268. package/lib/createOdspCreateContainerRequest.d.mts.map +1 -0
  269. package/lib/{createOdspCreateContainerRequest.js → createOdspCreateContainerRequest.mjs} +8 -4
  270. package/lib/createOdspCreateContainerRequest.mjs.map +1 -0
  271. package/lib/{createOdspUrl.d.ts → createOdspUrl.d.mts} +2 -1
  272. package/lib/{createOdspUrl.d.ts.map → createOdspUrl.d.mts.map} +1 -1
  273. package/lib/{createOdspUrl.js → createOdspUrl.mjs} +2 -1
  274. package/lib/createOdspUrl.mjs.map +1 -0
  275. package/lib/{epochTracker.d.ts → epochTracker.d.mts} +34 -10
  276. package/lib/epochTracker.d.mts.map +1 -0
  277. package/lib/{epochTracker.js → epochTracker.mjs} +97 -43
  278. package/lib/epochTracker.mjs.map +1 -0
  279. package/lib/{fetch.d.ts → fetch.d.mts} +1 -1
  280. package/lib/{fetch.d.ts.map → fetch.d.mts.map} +1 -1
  281. package/lib/{fetch.js → fetch.mjs} +1 -1
  282. package/lib/fetch.mjs.map +1 -0
  283. package/lib/{fetchSnapshot.d.ts → fetchSnapshot.d.mts} +14 -9
  284. package/lib/fetchSnapshot.d.mts.map +1 -0
  285. package/lib/{fetchSnapshot.js → fetchSnapshot.mjs} +185 -167
  286. package/lib/fetchSnapshot.mjs.map +1 -0
  287. package/lib/{getFileLink.d.ts → getFileLink.d.mts} +4 -7
  288. package/lib/getFileLink.d.mts.map +1 -0
  289. package/lib/{getFileLink.js → getFileLink.mjs} +49 -38
  290. package/lib/getFileLink.mjs.map +1 -0
  291. package/lib/{getQueryString.d.ts → getQueryString.d.mts} +0 -4
  292. package/lib/getQueryString.d.mts.map +1 -0
  293. package/lib/{getQueryString.js → getQueryString.mjs} +1 -1
  294. package/lib/getQueryString.mjs.map +1 -0
  295. package/lib/{getUrlAndHeadersWithAuth.d.ts.map → getUrlAndHeadersWithAuth.d.mts.map} +1 -1
  296. package/lib/{getUrlAndHeadersWithAuth.js → getUrlAndHeadersWithAuth.mjs} +4 -2
  297. package/lib/getUrlAndHeadersWithAuth.mjs.map +1 -0
  298. package/lib/index.d.mts +24 -0
  299. package/lib/index.d.mts.map +1 -0
  300. package/lib/index.mjs +22 -0
  301. package/lib/index.mjs.map +1 -0
  302. package/lib/localOdspDriver/localOdspDeltaStorageService.d.mts +17 -0
  303. package/lib/localOdspDriver/localOdspDeltaStorageService.d.mts.map +1 -0
  304. package/lib/localOdspDriver/localOdspDeltaStorageService.mjs +31 -0
  305. package/lib/localOdspDriver/localOdspDeltaStorageService.mjs.map +1 -0
  306. package/lib/localOdspDriver/{localOdspDocumentService.d.ts → localOdspDocumentService.d.mts} +3 -2
  307. package/lib/localOdspDriver/localOdspDocumentService.d.mts.map +1 -0
  308. package/lib/localOdspDriver/{localOdspDocumentService.js → localOdspDocumentService.mjs} +8 -6
  309. package/lib/localOdspDriver/localOdspDocumentService.mjs.map +1 -0
  310. package/lib/localOdspDriver/{localOdspDocumentServiceFactory.d.ts → localOdspDocumentServiceFactory.d.mts} +4 -5
  311. package/lib/localOdspDriver/localOdspDocumentServiceFactory.d.mts.map +1 -0
  312. package/lib/localOdspDriver/{localOdspDocumentServiceFactory.js → localOdspDocumentServiceFactory.mjs} +9 -10
  313. package/lib/localOdspDriver/localOdspDocumentServiceFactory.mjs.map +1 -0
  314. package/lib/localOdspDriver/{localOdspDocumentStorageManager.d.ts → localOdspDocumentStorageManager.d.mts} +3 -3
  315. package/lib/localOdspDriver/localOdspDocumentStorageManager.d.mts.map +1 -0
  316. package/lib/localOdspDriver/{localOdspDocumentStorageManager.js → localOdspDocumentStorageManager.mjs} +11 -9
  317. package/lib/localOdspDriver/localOdspDocumentStorageManager.mjs.map +1 -0
  318. package/lib/odsp-driver-alpha.d.mts +497 -0
  319. package/lib/odsp-driver-beta.d.mts +159 -0
  320. package/lib/odsp-driver-public.d.mts +159 -0
  321. package/lib/odsp-driver-untrimmed.d.mts +566 -0
  322. package/lib/{odspCache.d.ts → odspCache.d.mts} +19 -8
  323. package/lib/odspCache.d.mts.map +1 -0
  324. package/lib/{odspCache.js → odspCache.mjs} +6 -11
  325. package/lib/odspCache.mjs.map +1 -0
  326. package/lib/odspDelayLoadedDeltaStream.d.mts +75 -0
  327. package/lib/odspDelayLoadedDeltaStream.d.mts.map +1 -0
  328. package/lib/odspDelayLoadedDeltaStream.mjs +287 -0
  329. package/lib/odspDelayLoadedDeltaStream.mjs.map +1 -0
  330. package/lib/{odspDeltaStorageService.d.ts → odspDeltaStorageService.d.mts} +9 -7
  331. package/lib/odspDeltaStorageService.d.mts.map +1 -0
  332. package/lib/{odspDeltaStorageService.js → odspDeltaStorageService.mjs} +70 -68
  333. package/lib/odspDeltaStorageService.mjs.map +1 -0
  334. package/lib/{odspDocumentDeltaConnection.d.ts → odspDocumentDeltaConnection.d.mts} +33 -13
  335. package/lib/odspDocumentDeltaConnection.d.mts.map +1 -0
  336. package/lib/{odspDocumentDeltaConnection.js → odspDocumentDeltaConnection.mjs} +214 -103
  337. package/lib/odspDocumentDeltaConnection.mjs.map +1 -0
  338. package/lib/{odspDocumentService.d.ts → odspDocumentService.d.mts} +14 -28
  339. package/lib/odspDocumentService.d.mts.map +1 -0
  340. package/lib/odspDocumentService.mjs +221 -0
  341. package/lib/odspDocumentService.mjs.map +1 -0
  342. package/lib/{odspDocumentServiceFactory.d.ts → odspDocumentServiceFactory.d.mts} +5 -1
  343. package/lib/odspDocumentServiceFactory.d.mts.map +1 -0
  344. package/lib/{odspDocumentServiceFactory.js → odspDocumentServiceFactory.mjs} +8 -6
  345. package/lib/odspDocumentServiceFactory.mjs.map +1 -0
  346. package/lib/{odspDocumentServiceFactoryCore.d.ts → odspDocumentServiceFactoryCore.d.mts} +17 -12
  347. package/lib/odspDocumentServiceFactoryCore.d.mts.map +1 -0
  348. package/lib/odspDocumentServiceFactoryCore.mjs +192 -0
  349. package/lib/odspDocumentServiceFactoryCore.mjs.map +1 -0
  350. package/lib/{odspDocumentServiceFactoryWithCodeSplit.d.ts → odspDocumentServiceFactoryWithCodeSplit.d.mts} +6 -1
  351. package/lib/odspDocumentServiceFactoryWithCodeSplit.d.mts.map +1 -0
  352. package/lib/{odspDocumentServiceFactoryWithCodeSplit.js → odspDocumentServiceFactoryWithCodeSplit.mjs} +8 -3
  353. package/lib/odspDocumentServiceFactoryWithCodeSplit.mjs.map +1 -0
  354. package/lib/{odspDocumentStorageManager.d.ts → odspDocumentStorageManager.d.mts} +17 -11
  355. package/lib/odspDocumentStorageManager.d.mts.map +1 -0
  356. package/lib/odspDocumentStorageManager.mjs +486 -0
  357. package/lib/odspDocumentStorageManager.mjs.map +1 -0
  358. package/lib/{odspDocumentStorageServiceBase.d.ts → odspDocumentStorageServiceBase.d.mts} +8 -10
  359. package/lib/odspDocumentStorageServiceBase.d.mts.map +1 -0
  360. package/lib/{odspDocumentStorageServiceBase.js → odspDocumentStorageServiceBase.mjs} +31 -33
  361. package/lib/odspDocumentStorageServiceBase.mjs.map +1 -0
  362. package/lib/{odspDriverUrlResolver.d.ts → odspDriverUrlResolver.d.mts} +12 -0
  363. package/lib/odspDriverUrlResolver.d.mts.map +1 -0
  364. package/lib/{odspDriverUrlResolver.js → odspDriverUrlResolver.mjs} +50 -40
  365. package/lib/odspDriverUrlResolver.mjs.map +1 -0
  366. package/lib/{odspDriverUrlResolverForShareLink.d.ts → odspDriverUrlResolverForShareLink.d.mts} +6 -4
  367. package/lib/odspDriverUrlResolverForShareLink.d.mts.map +1 -0
  368. package/lib/{odspDriverUrlResolverForShareLink.js → odspDriverUrlResolverForShareLink.mjs} +36 -29
  369. package/lib/odspDriverUrlResolverForShareLink.mjs.map +1 -0
  370. package/lib/{odspError.d.ts → odspError.d.mts} +1 -1
  371. package/lib/odspError.d.mts.map +1 -0
  372. package/lib/{odspError.js → odspError.mjs} +7 -3
  373. package/lib/odspError.mjs.map +1 -0
  374. package/lib/{odspFluidFileLink.d.ts → odspFluidFileLink.d.mts} +11 -2
  375. package/lib/odspFluidFileLink.d.mts.map +1 -0
  376. package/lib/{odspFluidFileLink.js → odspFluidFileLink.mjs} +23 -16
  377. package/lib/odspFluidFileLink.mjs.map +1 -0
  378. package/lib/odspLocationRedirection.d.mts +14 -0
  379. package/lib/odspLocationRedirection.d.mts.map +1 -0
  380. package/lib/odspLocationRedirection.mjs +20 -0
  381. package/lib/odspLocationRedirection.mjs.map +1 -0
  382. package/lib/{odspPublicUtils.d.ts → odspPublicUtils.d.mts} +6 -0
  383. package/lib/odspPublicUtils.d.mts.map +1 -0
  384. package/lib/{odspPublicUtils.js → odspPublicUtils.mjs} +5 -2
  385. package/lib/odspPublicUtils.mjs.map +1 -0
  386. package/lib/{odspSnapshotParser.d.ts → odspSnapshotParser.d.mts} +2 -2
  387. package/lib/odspSnapshotParser.d.mts.map +1 -0
  388. package/lib/{odspSnapshotParser.js → odspSnapshotParser.mjs} +10 -11
  389. package/lib/odspSnapshotParser.mjs.map +1 -0
  390. package/lib/{odspSummaryUploadManager.d.ts → odspSummaryUploadManager.d.mts} +8 -5
  391. package/lib/odspSummaryUploadManager.d.mts.map +1 -0
  392. package/lib/{odspSummaryUploadManager.js → odspSummaryUploadManager.mjs} +41 -32
  393. package/lib/odspSummaryUploadManager.mjs.map +1 -0
  394. package/lib/{odspUrlHelper.d.ts → odspUrlHelper.d.mts} +5 -0
  395. package/lib/odspUrlHelper.d.mts.map +1 -0
  396. package/lib/{odspUrlHelper.js → odspUrlHelper.mjs} +9 -3
  397. package/lib/odspUrlHelper.mjs.map +1 -0
  398. package/lib/{odspUtils.d.ts → odspUtils.d.mts} +36 -7
  399. package/lib/odspUtils.d.mts.map +1 -0
  400. package/lib/{odspUtils.js → odspUtils.mjs} +109 -27
  401. package/lib/odspUtils.mjs.map +1 -0
  402. package/lib/{opsCaching.d.ts → opsCaching.d.mts} +3 -3
  403. package/lib/opsCaching.d.mts.map +1 -0
  404. package/lib/{opsCaching.js → opsCaching.mjs} +23 -7
  405. package/lib/opsCaching.mjs.map +1 -0
  406. package/lib/{packageVersion.d.ts → packageVersion.d.mts} +1 -1
  407. package/lib/{packageVersion.d.ts.map → packageVersion.d.mts.map} +1 -1
  408. package/lib/{packageVersion.js → packageVersion.mjs} +2 -2
  409. package/lib/packageVersion.mjs.map +1 -0
  410. package/lib/{prefetchLatestSnapshot.d.ts → prefetchLatestSnapshot.d.mts} +13 -8
  411. package/lib/prefetchLatestSnapshot.d.mts.map +1 -0
  412. package/lib/prefetchLatestSnapshot.mjs +96 -0
  413. package/lib/prefetchLatestSnapshot.mjs.map +1 -0
  414. package/lib/{retryErrorsStorageAdapter.d.ts → retryErrorsStorageAdapter.d.mts} +5 -4
  415. package/lib/retryErrorsStorageAdapter.d.mts.map +1 -0
  416. package/lib/{retryErrorsStorageAdapter.js → retryErrorsStorageAdapter.mjs} +13 -6
  417. package/lib/retryErrorsStorageAdapter.mjs.map +1 -0
  418. package/lib/{retryUtils.d.ts → retryUtils.d.mts} +2 -2
  419. package/lib/retryUtils.d.mts.map +1 -0
  420. package/lib/{retryUtils.js → retryUtils.mjs} +27 -11
  421. package/lib/retryUtils.mjs.map +1 -0
  422. package/lib/socketModule.d.mts +7 -0
  423. package/lib/socketModule.d.mts.map +1 -0
  424. package/lib/socketModule.mjs +7 -0
  425. package/lib/socketModule.mjs.map +1 -0
  426. package/lib/{vroom.d.ts → vroom.d.mts} +6 -6
  427. package/lib/vroom.d.mts.map +1 -0
  428. package/lib/{vroom.js → vroom.mjs} +24 -9
  429. package/lib/vroom.mjs.map +1 -0
  430. package/lib/{zipItDataRepresentationUtils.d.ts → zipItDataRepresentationUtils.d.mts} +48 -21
  431. package/lib/zipItDataRepresentationUtils.d.mts.map +1 -0
  432. package/lib/{zipItDataRepresentationUtils.js → zipItDataRepresentationUtils.mjs} +213 -111
  433. package/lib/zipItDataRepresentationUtils.mjs.map +1 -0
  434. package/package.json +89 -69
  435. package/prettier.config.cjs +8 -0
  436. package/src/ReadBufferUtils.ts +51 -44
  437. package/src/WriteBufferUtils.ts +203 -181
  438. package/src/checkUrl.ts +16 -15
  439. package/src/compactSnapshotParser.ts +219 -103
  440. package/src/compactSnapshotWriter.ts +118 -97
  441. package/src/constants.ts +7 -0
  442. package/src/contracts.ts +96 -136
  443. package/src/contractsPublic.ts +31 -16
  444. package/src/createFile.ts +243 -305
  445. package/src/createNewContainerOnExistingFile.ts +93 -0
  446. package/src/createNewModule.ts +7 -0
  447. package/src/createNewUtils.ts +266 -56
  448. package/src/createOdspCreateContainerRequest.ts +22 -18
  449. package/src/createOdspUrl.ts +12 -13
  450. package/src/epochTracker.ts +596 -457
  451. package/src/fetch.ts +4 -4
  452. package/src/fetchSnapshot.ts +583 -508
  453. package/src/getFileLink.ts +194 -155
  454. package/src/getQueryString.ts +11 -9
  455. package/src/getUrlAndHeadersWithAuth.ts +34 -33
  456. package/src/index.ts +42 -18
  457. package/src/localOdspDriver/localOdspDeltaStorageService.ts +49 -0
  458. package/src/localOdspDriver/localOdspDocumentService.ts +40 -38
  459. package/src/localOdspDriver/localOdspDocumentServiceFactory.ts +46 -43
  460. package/src/localOdspDriver/localOdspDocumentStorageManager.ts +55 -50
  461. package/src/odspCache.ts +112 -90
  462. package/src/odspDelayLoadedDeltaStream.ts +459 -0
  463. package/src/odspDeltaStorageService.ts +232 -221
  464. package/src/odspDocumentDeltaConnection.ts +751 -563
  465. package/src/odspDocumentService.ts +324 -523
  466. package/src/odspDocumentServiceFactory.ts +20 -21
  467. package/src/odspDocumentServiceFactoryCore.ts +325 -202
  468. package/src/odspDocumentServiceFactoryWithCodeSplit.ts +20 -20
  469. package/src/odspDocumentStorageManager.ts +730 -534
  470. package/src/odspDocumentStorageServiceBase.ts +279 -254
  471. package/src/odspDriverUrlResolver.ts +230 -188
  472. package/src/odspDriverUrlResolverForShareLink.ts +223 -203
  473. package/src/odspError.ts +27 -19
  474. package/src/odspFluidFileLink.ts +106 -87
  475. package/src/odspLocationRedirection.ts +26 -0
  476. package/src/odspPublicUtils.ts +20 -14
  477. package/src/odspSnapshotParser.ts +53 -46
  478. package/src/odspSummaryUploadManager.ts +243 -218
  479. package/src/odspUrlHelper.ts +81 -71
  480. package/src/odspUtils.ts +401 -259
  481. package/src/opsCaching.ts +214 -193
  482. package/src/packageVersion.ts +1 -1
  483. package/src/prefetchLatestSnapshot.ts +142 -80
  484. package/src/retryErrorsStorageAdapter.ts +92 -77
  485. package/src/retryUtils.ts +80 -57
  486. package/src/socketModule.ts +8 -0
  487. package/src/vroom.ts +92 -83
  488. package/src/zipItDataRepresentationUtils.ts +534 -394
  489. package/tsc-multi.test.json +4 -0
  490. package/tsconfig.json +11 -13
  491. package/.editorconfig +0 -7
  492. package/dist/ReadBufferUtils.js.map +0 -1
  493. package/dist/WriteBufferUtils.js.map +0 -1
  494. package/dist/checkUrl.js.map +0 -1
  495. package/dist/compactSnapshotParser.js +0 -115
  496. package/dist/compactSnapshotParser.js.map +0 -1
  497. package/dist/compactSnapshotWriter.js.map +0 -1
  498. package/dist/constants.js.map +0 -1
  499. package/dist/contracts.js.map +0 -1
  500. package/dist/contractsPublic.js.map +0 -1
  501. package/dist/createFile.js +0 -242
  502. package/dist/createFile.js.map +0 -1
  503. package/dist/createNewUtils.js +0 -67
  504. package/dist/createNewUtils.js.map +0 -1
  505. package/dist/createOdspCreateContainerRequest.js.map +0 -1
  506. package/dist/createOdspUrl.js.map +0 -1
  507. package/dist/epochTracker.js.map +0 -1
  508. package/dist/fetch.js.map +0 -1
  509. package/dist/fetchSnapshot.js.map +0 -1
  510. package/dist/getFileLink.js.map +0 -1
  511. package/dist/getQueryString.js.map +0 -1
  512. package/dist/getSocketIo.d.ts +0 -11
  513. package/dist/getSocketIo.d.ts.map +0 -1
  514. package/dist/getSocketIo.js +0 -20
  515. package/dist/getSocketIo.js.map +0 -1
  516. package/dist/getUrlAndHeadersWithAuth.js.map +0 -1
  517. package/dist/index.js +0 -41
  518. package/dist/index.js.map +0 -1
  519. package/dist/localOdspDriver/localOdspDocumentService.js.map +0 -1
  520. package/dist/localOdspDriver/localOdspDocumentServiceFactory.js.map +0 -1
  521. package/dist/localOdspDriver/localOdspDocumentStorageManager.js.map +0 -1
  522. package/dist/odspCache.js.map +0 -1
  523. package/dist/odspDeltaStorageService.js.map +0 -1
  524. package/dist/odspDocumentDeltaConnection.js.map +0 -1
  525. package/dist/odspDocumentService.js +0 -364
  526. package/dist/odspDocumentService.js.map +0 -1
  527. package/dist/odspDocumentServiceFactory.js.map +0 -1
  528. package/dist/odspDocumentServiceFactoryCore.js +0 -118
  529. package/dist/odspDocumentServiceFactoryCore.js.map +0 -1
  530. package/dist/odspDocumentServiceFactoryWithCodeSplit.js +0 -34
  531. package/dist/odspDocumentServiceFactoryWithCodeSplit.js.map +0 -1
  532. package/dist/odspDocumentStorageManager.js +0 -356
  533. package/dist/odspDocumentStorageManager.js.map +0 -1
  534. package/dist/odspDocumentStorageServiceBase.js.map +0 -1
  535. package/dist/odspDriverUrlResolver.js.map +0 -1
  536. package/dist/odspDriverUrlResolverForShareLink.js.map +0 -1
  537. package/dist/odspError.js.map +0 -1
  538. package/dist/odspFluidFileLink.js.map +0 -1
  539. package/dist/odspPublicUtils.js.map +0 -1
  540. package/dist/odspSnapshotParser.js.map +0 -1
  541. package/dist/odspSummaryUploadManager.js.map +0 -1
  542. package/dist/odspUrlHelper.js.map +0 -1
  543. package/dist/odspUtils.js.map +0 -1
  544. package/dist/opsCaching.js.map +0 -1
  545. package/dist/packageVersion.js.map +0 -1
  546. package/dist/prefetchLatestSnapshot.js +0 -57
  547. package/dist/prefetchLatestSnapshot.js.map +0 -1
  548. package/dist/retryErrorsStorageAdapter.js.map +0 -1
  549. package/dist/retryUtils.js.map +0 -1
  550. package/dist/vroom.js.map +0 -1
  551. package/dist/zipItDataRepresentationUtils.js.map +0 -1
  552. package/lib/ReadBufferUtils.d.ts.map +0 -1
  553. package/lib/ReadBufferUtils.js.map +0 -1
  554. package/lib/WriteBufferUtils.d.ts.map +0 -1
  555. package/lib/WriteBufferUtils.js.map +0 -1
  556. package/lib/checkUrl.d.ts.map +0 -1
  557. package/lib/checkUrl.js.map +0 -1
  558. package/lib/compactSnapshotParser.d.ts +0 -15
  559. package/lib/compactSnapshotParser.d.ts.map +0 -1
  560. package/lib/compactSnapshotParser.js +0 -111
  561. package/lib/compactSnapshotParser.js.map +0 -1
  562. package/lib/compactSnapshotWriter.d.ts.map +0 -1
  563. package/lib/compactSnapshotWriter.js.map +0 -1
  564. package/lib/constants.d.ts.map +0 -1
  565. package/lib/constants.js.map +0 -1
  566. package/lib/contracts.d.ts.map +0 -1
  567. package/lib/contracts.js.map +0 -1
  568. package/lib/contractsPublic.d.ts.map +0 -1
  569. package/lib/contractsPublic.js.map +0 -1
  570. package/lib/createFile.d.ts +0 -22
  571. package/lib/createFile.d.ts.map +0 -1
  572. package/lib/createFile.js +0 -235
  573. package/lib/createFile.js.map +0 -1
  574. package/lib/createNewUtils.d.ts +0 -11
  575. package/lib/createNewUtils.d.ts.map +0 -1
  576. package/lib/createNewUtils.js +0 -63
  577. package/lib/createNewUtils.js.map +0 -1
  578. package/lib/createOdspCreateContainerRequest.d.ts.map +0 -1
  579. package/lib/createOdspCreateContainerRequest.js.map +0 -1
  580. package/lib/createOdspUrl.js.map +0 -1
  581. package/lib/epochTracker.d.ts.map +0 -1
  582. package/lib/epochTracker.js.map +0 -1
  583. package/lib/fetch.js.map +0 -1
  584. package/lib/fetchSnapshot.d.ts.map +0 -1
  585. package/lib/fetchSnapshot.js.map +0 -1
  586. package/lib/getFileLink.d.ts.map +0 -1
  587. package/lib/getFileLink.js.map +0 -1
  588. package/lib/getQueryString.d.ts.map +0 -1
  589. package/lib/getQueryString.js.map +0 -1
  590. package/lib/getSocketIo.d.ts +0 -11
  591. package/lib/getSocketIo.d.ts.map +0 -1
  592. package/lib/getSocketIo.js +0 -13
  593. package/lib/getSocketIo.js.map +0 -1
  594. package/lib/getUrlAndHeadersWithAuth.js.map +0 -1
  595. package/lib/index.d.ts +0 -21
  596. package/lib/index.d.ts.map +0 -1
  597. package/lib/index.js +0 -29
  598. package/lib/index.js.map +0 -1
  599. package/lib/localOdspDriver/localOdspDocumentService.d.ts.map +0 -1
  600. package/lib/localOdspDriver/localOdspDocumentService.js.map +0 -1
  601. package/lib/localOdspDriver/localOdspDocumentServiceFactory.d.ts.map +0 -1
  602. package/lib/localOdspDriver/localOdspDocumentServiceFactory.js.map +0 -1
  603. package/lib/localOdspDriver/localOdspDocumentStorageManager.d.ts.map +0 -1
  604. package/lib/localOdspDriver/localOdspDocumentStorageManager.js.map +0 -1
  605. package/lib/odspCache.d.ts.map +0 -1
  606. package/lib/odspCache.js.map +0 -1
  607. package/lib/odspDeltaStorageService.d.ts.map +0 -1
  608. package/lib/odspDeltaStorageService.js.map +0 -1
  609. package/lib/odspDocumentDeltaConnection.d.ts.map +0 -1
  610. package/lib/odspDocumentDeltaConnection.js.map +0 -1
  611. package/lib/odspDocumentService.d.ts.map +0 -1
  612. package/lib/odspDocumentService.js +0 -360
  613. package/lib/odspDocumentService.js.map +0 -1
  614. package/lib/odspDocumentServiceFactory.d.ts.map +0 -1
  615. package/lib/odspDocumentServiceFactory.js.map +0 -1
  616. package/lib/odspDocumentServiceFactoryCore.d.ts.map +0 -1
  617. package/lib/odspDocumentServiceFactoryCore.js +0 -114
  618. package/lib/odspDocumentServiceFactoryCore.js.map +0 -1
  619. package/lib/odspDocumentServiceFactoryWithCodeSplit.d.ts.map +0 -1
  620. package/lib/odspDocumentServiceFactoryWithCodeSplit.js.map +0 -1
  621. package/lib/odspDocumentStorageManager.d.ts.map +0 -1
  622. package/lib/odspDocumentStorageManager.js +0 -352
  623. package/lib/odspDocumentStorageManager.js.map +0 -1
  624. package/lib/odspDocumentStorageServiceBase.d.ts.map +0 -1
  625. package/lib/odspDocumentStorageServiceBase.js.map +0 -1
  626. package/lib/odspDriverUrlResolver.d.ts.map +0 -1
  627. package/lib/odspDriverUrlResolver.js.map +0 -1
  628. package/lib/odspDriverUrlResolverForShareLink.d.ts.map +0 -1
  629. package/lib/odspDriverUrlResolverForShareLink.js.map +0 -1
  630. package/lib/odspError.d.ts.map +0 -1
  631. package/lib/odspError.js.map +0 -1
  632. package/lib/odspFluidFileLink.d.ts.map +0 -1
  633. package/lib/odspFluidFileLink.js.map +0 -1
  634. package/lib/odspPublicUtils.d.ts.map +0 -1
  635. package/lib/odspPublicUtils.js.map +0 -1
  636. package/lib/odspSnapshotParser.d.ts.map +0 -1
  637. package/lib/odspSnapshotParser.js.map +0 -1
  638. package/lib/odspSummaryUploadManager.d.ts.map +0 -1
  639. package/lib/odspSummaryUploadManager.js.map +0 -1
  640. package/lib/odspUrlHelper.d.ts.map +0 -1
  641. package/lib/odspUrlHelper.js.map +0 -1
  642. package/lib/odspUtils.d.ts.map +0 -1
  643. package/lib/odspUtils.js.map +0 -1
  644. package/lib/opsCaching.d.ts.map +0 -1
  645. package/lib/opsCaching.js.map +0 -1
  646. package/lib/packageVersion.js.map +0 -1
  647. package/lib/prefetchLatestSnapshot.d.ts.map +0 -1
  648. package/lib/prefetchLatestSnapshot.js +0 -53
  649. package/lib/prefetchLatestSnapshot.js.map +0 -1
  650. package/lib/retryErrorsStorageAdapter.d.ts.map +0 -1
  651. package/lib/retryErrorsStorageAdapter.js.map +0 -1
  652. package/lib/retryUtils.d.ts.map +0 -1
  653. package/lib/retryUtils.js.map +0 -1
  654. package/lib/vroom.d.ts.map +0 -1
  655. package/lib/vroom.js.map +0 -1
  656. package/lib/zipItDataRepresentationUtils.d.ts.map +0 -1
  657. package/lib/zipItDataRepresentationUtils.js.map +0 -1
  658. package/src/getSocketIo.ts +0 -14
  659. package/tsconfig.esnext.json +0 -7
  660. /package/lib/{ReadBufferUtils.d.ts → ReadBufferUtils.d.mts} +0 -0
  661. /package/lib/{getUrlAndHeadersWithAuth.d.ts → getUrlAndHeadersWithAuth.d.mts} +0 -0
@@ -0,0 +1,566 @@
1
+ import { DriverPreCheckInfo } from '@fluidframework/driver-definitions';
2
+ import { HostStoragePolicy } from '@fluidframework/odsp-driver-definitions';
3
+ import { IContainerPackageInfo } from '@fluidframework/driver-definitions';
4
+ import { IdentityType } from '@fluidframework/odsp-driver-definitions';
5
+ import { IDocumentService } from '@fluidframework/driver-definitions';
6
+ import { IDocumentServiceFactory } from '@fluidframework/driver-definitions';
7
+ import { IEntry } from '@fluidframework/odsp-driver-definitions';
8
+ import { IFileEntry } from '@fluidframework/odsp-driver-definitions';
9
+ import { IOdspResolvedUrl } from '@fluidframework/odsp-driver-definitions';
10
+ import { IOdspUrlParts } from '@fluidframework/odsp-driver-definitions';
11
+ import { IPersistedCache } from '@fluidframework/odsp-driver-definitions';
12
+ import { IPrefetchSnapshotContents as IPrefetchSnapshotContents_2 } from './odspCache';
13
+ import { IRelaySessionAwareDriverFactory } from '@fluidframework/odsp-driver-definitions';
14
+ import { IRequest } from '@fluidframework/core-interfaces';
15
+ import { IResolvedUrl } from '@fluidframework/driver-definitions';
16
+ import { ISequencedDocumentMessage } from '@fluidframework/protocol-definitions';
17
+ import { ISharingLinkKind } from '@fluidframework/odsp-driver-definitions';
18
+ import { ISnapshotOptions } from '@fluidframework/odsp-driver-definitions';
19
+ import { ISnapshotTree } from '@fluidframework/protocol-definitions';
20
+ import { ISocketStorageDiscovery } from '@fluidframework/odsp-driver-definitions';
21
+ import { ISummaryTree } from '@fluidframework/protocol-definitions';
22
+ import { ITelemetryBaseLogger } from '@fluidframework/core-interfaces';
23
+ import { ITelemetryLogger } from '@fluidframework/core-interfaces';
24
+ import { ITelemetryLoggerExt } from '@fluidframework/telemetry-utils';
25
+ import { ITelemetryProperties } from '@fluidframework/core-interfaces';
26
+ import { IUrlResolver } from '@fluidframework/driver-definitions';
27
+ import { OdspResourceTokenFetchOptions } from '@fluidframework/odsp-driver-definitions';
28
+ import { PromiseCache } from '@fluidframework/core-utils';
29
+ import { RateLimiter } from '@fluidframework/driver-utils';
30
+ import { ShareLinkTypes } from '@fluidframework/odsp-driver-definitions';
31
+ import { TokenFetcher } from '@fluidframework/odsp-driver-definitions';
32
+
33
+ /**
34
+ * A check that returns DriverPreCheckInfo if the URL format is likely supported by this driver.
35
+ * Note that returning information here is NOT a full guarantee that resolve will ultimately be successful.
36
+ * Instead, this should be used as a lightweight check that can filter out easily detectable unsupported URLs
37
+ * before the entire Fluid loading process needs to be kicked off.
38
+ * @alpha
39
+ */
40
+ export declare function checkUrl(documentUrl: URL): DriverPreCheckInfo | undefined;
41
+
42
+ /**
43
+ * @internal
44
+ */
45
+ export declare enum ClpCompliantAppHeader {
46
+ isClpCompliantApp = "X-CLP-Compliant-App"
47
+ }
48
+
49
+ /**
50
+ * @alpha
51
+ */
52
+ export declare function createLocalOdspDocumentServiceFactory(localSnapshot: Uint8Array | string): IDocumentServiceFactory;
53
+
54
+ /**
55
+ * Create the request object with url and headers for creating a new file on OneDrive Sharepoint
56
+ * @param siteUrl - Base url for OneDrive
57
+ * @param driveId - drive identifier
58
+ * @param filePath - path where file needs to be created
59
+ * @param fileName - name of the new file to be created
60
+ * @param createShareLinkType - type of sharing link you would like to create for this file. ShareLinkTypes
61
+ * will be deprecated soon, so for any new implementation please provide createShareLinkType of type ShareLink
62
+ * @alpha
63
+ */
64
+ export declare function createOdspCreateContainerRequest(siteUrl: string, driveId: string, filePath: string, fileName: string, createShareLinkType?: ShareLinkTypes | ISharingLinkKind): IRequest;
65
+
66
+ /**
67
+ * Encodes ODC/SPO information into a URL format that can be handled by the Loader
68
+ * @param l -The property bag of necessary properties to locate a Fluid data store and craft a url for it
69
+ * @alpha
70
+ */
71
+ export declare function createOdspUrl(l: OdspFluidDataStoreLocator): string;
72
+
73
+ /**
74
+ * Transforms given Fluid data store locator into string that can be embedded into url
75
+ * @param locator - describes Fluid data store locator info to be encoded
76
+ * @returns string representing encoded Fluid data store locator info
77
+ * @alpha
78
+ */
79
+ export declare function encodeOdspFluidDataStoreLocator(locator: OdspFluidDataStoreLocator): string;
80
+
81
+ /**
82
+ * In ODSP, the concept of "epoch" refers to binary updates to files. For example, this might include using
83
+ * version restore, or if the user downloads a Fluid file and then uploads it again. These result in the epoch
84
+ * value being incremented.
85
+ *
86
+ * The implications of these binary updates is that the Fluid state is disrupted: the sequence number might
87
+ * go backwards, the data might be inconsistent with the latest state of collaboration, etc. As a result, it's
88
+ * not safe to continue collaboration across an epoch change. We need to detect these epoch changes and
89
+ * error out from the collaboration.
90
+ *
91
+ * This class is a wrapper around fetch calls. It adds epoch to the request made so that the
92
+ * server can match it with its epoch value in order to match the version.
93
+ * It also validates the epoch value received in response of fetch calls. If the epoch does not match,
94
+ * then it also clears all the cached entries for the given container.
95
+ * @alpha
96
+ */
97
+ export declare class EpochTracker implements IPersistedFileCache {
98
+ protected readonly cache: IPersistedCache;
99
+ protected readonly fileEntry: IFileEntry;
100
+ protected readonly logger: ITelemetryLoggerExt;
101
+ protected readonly clientIsSummarizer?: boolean | undefined;
102
+ private _fluidEpoch;
103
+ private readonly snapshotCacheExpiryTimeoutMs;
104
+ readonly rateLimiter: RateLimiter;
105
+ private readonly driverId;
106
+ private networkCallNumber;
107
+ constructor(cache: IPersistedCache, fileEntry: IFileEntry, logger: ITelemetryLoggerExt, clientIsSummarizer?: boolean | undefined);
108
+ setEpoch(epoch: string, fromCache: boolean, fetchType: FetchTypeInternal): void;
109
+ get(entry: IEntry): Promise<any>;
110
+ put(entry: IEntry, value: any): Promise<void>;
111
+ removeEntries(): Promise<void>;
112
+ get fluidEpoch(): string | undefined;
113
+ validateEpoch(epoch: string | undefined, fetchType: FetchType): Promise<void>;
114
+ /**
115
+ * Api to fetch the response for given request and parse it as json.
116
+ * @param url - url of the request
117
+ * @param fetchOptions - fetch options for request containing body, headers etc.
118
+ * @param fetchType - method for which fetch is called.
119
+ * @param addInBody - Pass True if caller wants to add epoch in post body.
120
+ * @param fetchReason - fetch reason to add to the request.
121
+ */
122
+ fetchAndParseAsJSON<T>(url: string, fetchOptions: RequestInit, fetchType: FetchType, addInBody?: boolean, fetchReason?: string): Promise<IOdspResponse<T>>;
123
+ /**
124
+ * Api to fetch the response for given request and parse it as json.
125
+ * @param url - url of the request
126
+ * @param fetchOptions - fetch options for request containing body, headers etc.
127
+ * @param fetchType - method for which fetch is called.
128
+ * @param addInBody - Pass True if caller wants to add epoch in post body.
129
+ * @param fetchReason - fetch reason to add to the request.
130
+ */
131
+ fetch(url: string, fetchOptions: RequestInit, fetchType: FetchType, addInBody?: boolean, fetchReason?: string): Promise<IOdspResponse<Response>>;
132
+ private fetchCore;
133
+ /**
134
+ * Api to fetch the response as it is for given request.
135
+ * @param url - url of the request
136
+ * @param fetchOptions - fetch options for request containing body, headers etc.
137
+ * @param fetchType - method for which fetch is called.
138
+ * @param addInBody - Pass True if caller wants to add epoch in post body.
139
+ * @param fetchReason - fetch reason to add to the request.
140
+ */
141
+ fetchArray(url: string, fetchOptions: {
142
+ [index: string]: any;
143
+ }, fetchType: FetchType, addInBody?: boolean, fetchReason?: string): Promise<IOdspResponse<ArrayBuffer>>;
144
+ private addEpochInRequest;
145
+ private addParamInBody;
146
+ private formatClientCorrelationId;
147
+ protected validateEpochFromResponse(epochFromResponse: string | undefined, fetchType: FetchTypeInternal, fromCache?: boolean): void;
148
+ private checkForEpochError;
149
+ private checkForEpochErrorCore;
150
+ private fileEntryFromEntry;
151
+ }
152
+
153
+ /**
154
+ * @alpha
155
+ */
156
+ export declare type FetchType = "blob" | "createBlob" | "createFile" | "joinSession" | "ops" | "test" | "snapshotTree" | "treesLatest" | "uploadSummary" | "push" | "versions";
157
+
158
+ /**
159
+ * @alpha
160
+ */
161
+ export declare type FetchTypeInternal = FetchType | "cache";
162
+
163
+ /**
164
+ * Gets the correct API root for the given ODSP url, e.g. 'https://foo-my.sharepoint.com/_api/v2.1'
165
+ * @param origin - The URL origin
166
+ * @internal
167
+ */
168
+ export declare function getApiRoot(origin: string): string;
169
+
170
+ /**
171
+ * @alpha
172
+ */
173
+ export declare function getHashedDocumentId(driveId: string, itemId: string): Promise<string>;
174
+
175
+ /**
176
+ * Extract ODSP Fluid data store locator object from given ODSP url. This extracts things like
177
+ * driveId, ItemId, siteUrl etc from a url where these are encoded in nav query param.
178
+ * @param url - ODSP url representing Fluid file link
179
+ * @param requireFluidSignature - flag representing if the Fluid signature is expected in the url, default true
180
+ * @returns object representing Fluid data store location in ODSP terms
181
+ * @alpha
182
+ */
183
+ export declare function getLocatorFromOdspUrl(url: URL, requireFluidSignature?: boolean): OdspFluidDataStoreLocator | undefined;
184
+
185
+ /**
186
+ * Breaks an ODSP URL into its parts, extracting the site, drive ID, and item ID.
187
+ * Returns undefined for invalid/malformed URLs.
188
+ * @param url - The (raw) URL to parse
189
+ * @internal
190
+ */
191
+ export declare function getOdspUrlParts(url: URL): Promise<IOdspUrlParts | undefined>;
192
+
193
+ /**
194
+ * @alpha
195
+ */
196
+ export declare interface ICacheAndTracker {
197
+ cache: IOdspCache;
198
+ epochTracker: EpochTracker;
199
+ }
200
+
201
+ /**
202
+ * @internal
203
+ */
204
+ export declare interface IClpCompliantAppHeader {
205
+ [ClpCompliantAppHeader.isClpCompliantApp]: boolean;
206
+ }
207
+
208
+ /**
209
+ * Internal cache interface used within driver only
210
+ * @alpha
211
+ */
212
+ export declare interface INonPersistentCache {
213
+ /**
214
+ * Cache of joined/joining session info
215
+ */
216
+ readonly sessionJoinCache: PromiseCache<string, {
217
+ entryTime: number;
218
+ joinSessionResponse: ISocketStorageDiscovery;
219
+ }>;
220
+ /**
221
+ * Cache of resolved/resolving file URLs
222
+ */
223
+ readonly fileUrlCache: PromiseCache<string, IOdspResolvedUrl>;
224
+ /**
225
+ * Used to store the snapshot fetch promise if the prefetch has been made using the prefetchLatestSnapshot api.
226
+ * This is then used later to look for the promise during the container load.
227
+ */
228
+ readonly snapshotPrefetchResultCache: PromiseCache<string, IPrefetchSnapshotContents>;
229
+ }
230
+
231
+ /**
232
+ * Internal cache interface used within driver only
233
+ * @alpha
234
+ */
235
+ export declare interface IOdspCache extends INonPersistentCache {
236
+ /**
237
+ * Persisted cache - only serializable content is allowed
238
+ */
239
+ readonly persistedCache: IPersistedFileCache;
240
+ }
241
+
242
+ /**
243
+ * @alpha
244
+ */
245
+ export declare interface IOdspResponse<T> {
246
+ content: T;
247
+ headers: Map<string, string>;
248
+ propsToLog: ITelemetryProperties;
249
+ duration: number;
250
+ }
251
+
252
+ /**
253
+ * Similar to IPersistedCache, but exposes cache interface for single file
254
+ * @alpha
255
+ */
256
+ export declare interface IPersistedFileCache {
257
+ get(entry: IEntry): Promise<any>;
258
+ put(entry: IEntry, value: any): Promise<void>;
259
+ removeEntries(): Promise<void>;
260
+ }
261
+
262
+ /**
263
+ * @alpha
264
+ */
265
+ export declare interface IPrefetchSnapshotContents extends ISnapshotContents {
266
+ fluidEpoch: string;
267
+ prefetchStartTime: number;
268
+ }
269
+
270
+ /**
271
+ * @internal
272
+ */
273
+ export declare interface ISharingLinkHeader {
274
+ [SharingLinkHeader.isSharingLinkToRedeem]: boolean;
275
+ }
276
+
277
+ /**
278
+ * @alpha
279
+ */
280
+ export declare interface ISnapshotContents {
281
+ snapshotTree: ISnapshotTree;
282
+ blobs: Map<string, ArrayBuffer>;
283
+ ops: ISequencedDocumentMessage[];
284
+ /**
285
+ * Sequence number of the snapshot
286
+ */
287
+ sequenceNumber: number | undefined;
288
+ /**
289
+ * Sequence number for the latest op/snapshot for the file in ODSP
290
+ */
291
+ latestSequenceNumber: number | undefined;
292
+ }
293
+
294
+ /**
295
+ * The parsing is significantly faster if the position of props is well known instead of dynamic. So these variables
296
+ * represents how many times slower parsing path is executed. This will be then logged into telemetry.
297
+ * @internal
298
+ */
299
+ export declare interface ISnapshotContentsWithProps extends ISnapshotContents {
300
+ telemetryProps: Record<string, number>;
301
+ }
302
+
303
+ /**
304
+ * Checks whether or not the given URL origin is an ODC origin
305
+ * @param origin - The URL origin to check
306
+ * @internal
307
+ */
308
+ export declare function isOdcOrigin(origin: string): boolean;
309
+
310
+ /**
311
+ * Whether or not the given URL is a valid ODC URL
312
+ * @param url - The URL to check
313
+ * @internal
314
+ */
315
+ export declare function isOdcUrl(url: string | URL): boolean;
316
+
317
+ /**
318
+ * @internal
319
+ */
320
+ export declare function isOdspResolvedUrl(resolvedUrl: IResolvedUrl): resolvedUrl is IOdspResolvedUrl;
321
+
322
+ /**
323
+ * Whether or not the given URL is a valid SPO/ODB URL
324
+ * @param url - The URL to check
325
+ * @internal
326
+ */
327
+ export declare function isSpoUrl(url: string): boolean;
328
+
329
+ /**
330
+ * This parameter is provided by host in the resolve request and it contains information about the file
331
+ * like driveId, itemId, siteUrl, datastorePath, packageName etc.
332
+ * @alpha
333
+ */
334
+ export declare const locatorQueryParamName = "nav";
335
+
336
+ /**
337
+ * @alpha
338
+ */
339
+ export declare const OdcApiSiteOrigin = "https://my.microsoftpersonalcontent.com";
340
+
341
+ /**
342
+ * @alpha
343
+ */
344
+ export declare const OdcFileSiteOrigin = "https://1drv.ms";
345
+
346
+ /**
347
+ * Factory for creating the sharepoint document service. Use this if you want to
348
+ * use the sharepoint implementation.
349
+ * @alpha
350
+ */
351
+ export declare class OdspDocumentServiceFactory extends OdspDocumentServiceFactoryCore {
352
+ constructor(getStorageToken: TokenFetcher<OdspResourceTokenFetchOptions>, getWebsocketToken: TokenFetcher<OdspResourceTokenFetchOptions> | undefined, persistedCache?: IPersistedCache, hostPolicy?: HostStoragePolicy);
353
+ }
354
+
355
+ /**
356
+ * Factory for creating the sharepoint document service. Use this if you want to
357
+ * use the sharepoint implementation.
358
+ *
359
+ * This constructor should be used by environments that support dynamic imports and that wish
360
+ * to leverage code splitting as a means to keep bundles as small as possible.
361
+ * @alpha
362
+ */
363
+ export declare class OdspDocumentServiceFactoryCore implements IDocumentServiceFactory, IRelaySessionAwareDriverFactory {
364
+ private readonly getStorageToken;
365
+ private readonly getWebsocketToken;
366
+ protected persistedCache: IPersistedCache;
367
+ private readonly hostPolicy;
368
+ private readonly nonPersistentCache;
369
+ private readonly socketReferenceKeyPrefix?;
370
+ get snapshotPrefetchResultCache(): PromiseCache<string, IPrefetchSnapshotContents_2>;
371
+ get IRelaySessionAwareDriverFactory(): this;
372
+ /**
373
+ * This function would return info about relay service session only if this factory established (or attempted to
374
+ * establish) connection very recently. Otherwise, it will return undefined.
375
+ * @param resolvedUrl - resolved url for container
376
+ * @returns The current join session response stored in cache. `undefined` if not present.
377
+ */
378
+ getRelayServiceSessionInfo(resolvedUrl: IResolvedUrl): Promise<ISocketStorageDiscovery | undefined>;
379
+ createContainer(createNewSummary: ISummaryTree | undefined, createNewResolvedUrl: IResolvedUrl, logger?: ITelemetryBaseLogger, clientIsSummarizer?: boolean): Promise<IDocumentService>;
380
+ /**
381
+ * @param getStorageToken - function that can provide the storage token for a given site. This is
382
+ * is also referred to as the "Vroom" token in SPO.
383
+ * @param getWebsocketToken - function that can provide a token for accessing the web socket. This is also
384
+ * to as the "Push" token in SPO. If undefined then websocket token is expected to be returned with joinSession
385
+ * response payload.
386
+ * @param persistedCache - PersistedCache provided by host for use in this session.
387
+ * @param hostPolicy - Policy for storage provided by host.
388
+ */
389
+ constructor(getStorageToken: TokenFetcher<OdspResourceTokenFetchOptions>, getWebsocketToken: TokenFetcher<OdspResourceTokenFetchOptions> | undefined, persistedCache?: IPersistedCache, hostPolicy?: HostStoragePolicy);
390
+ createDocumentService(resolvedUrl: IResolvedUrl, logger?: ITelemetryBaseLogger, clientIsSummarizer?: boolean): Promise<IDocumentService>;
391
+ protected createDocumentServiceCore(resolvedUrl: IResolvedUrl, odspLogger: ITelemetryLogger, cacheAndTrackerArg?: ICacheAndTracker, clientIsSummarizer?: boolean): Promise<IDocumentService>;
392
+ }
393
+
394
+ /**
395
+ * @deprecated This is deprecated in favour of OdspDocumentServiceFactory as the socket io is now loaded inside the
396
+ * other dynamically imported module.
397
+ * @internal
398
+ */
399
+ export declare class OdspDocumentServiceFactoryWithCodeSplit extends OdspDocumentServiceFactoryCore implements IDocumentServiceFactory {
400
+ constructor(getStorageToken: TokenFetcher<OdspResourceTokenFetchOptions>, getWebsocketToken: TokenFetcher<OdspResourceTokenFetchOptions> | undefined, persistedCache?: IPersistedCache, hostPolicy?: HostStoragePolicy);
401
+ }
402
+
403
+ /**
404
+ * Resolver to resolve urls like the ones created by createOdspUrl which is driver inner
405
+ * url format. Ex: `${siteUrl}?driveId=${driveId}&itemId=${itemId}&path=${path}`
406
+ * @alpha
407
+ */
408
+ export declare class OdspDriverUrlResolver implements IUrlResolver {
409
+ constructor();
410
+ /**
411
+ * @alpha
412
+ */
413
+ resolve(request: IRequest): Promise<IOdspResolvedUrl>;
414
+ /**
415
+ * Requests a driver + data store storage URL.
416
+ * @param resolvedUrl - The driver resolved URL.
417
+ * @param relativeUrl - The relative data store path URL.
418
+ * For requesting a driver URL, this value should always be '/'. If an empty string is passed, then dataStorePath
419
+ * will be extracted from the resolved url if present.
420
+ * @param packageInfoSource - optional, represents container package information to be included in url.
421
+ */
422
+ getAbsoluteUrl(resolvedUrl: IResolvedUrl, relativeUrl: string, packageInfoSource?: IContainerPackageInfo): Promise<string>;
423
+ }
424
+
425
+ /**
426
+ * Resolver to resolve urls like the ones created by createOdspUrl which is driver inner
427
+ * url format and the ones which have things like driveId, siteId, itemId etc encoded in nav param.
428
+ * This resolver also handles share links and try to generate one for the use by the app.
429
+ * @alpha
430
+ */
431
+ export declare class OdspDriverUrlResolverForShareLink implements IUrlResolver {
432
+ private readonly appName?;
433
+ private readonly getContext?;
434
+ private readonly logger;
435
+ private readonly sharingLinkCache;
436
+ private readonly shareLinkFetcherProps;
437
+ /**
438
+ * Creates url resolver instance
439
+ * @param shareLinkFetcherProps - properties used when fetching share link.
440
+ * Can be set as 'undefined' for cases where share link is not needed. Currently, only
441
+ * getAbsoluteUrl() method requires share link.
442
+ * @param logger - logger object that is used as telemetry sink
443
+ * @param appName - application name hint that is encoded with url produced by getAbsoluteUrl() method.
444
+ * This hint is used by link handling logic which determines which app to redirect to when user
445
+ * navigates directly to the link.
446
+ * @param getContext - callback function which is used to get context for given resolved url. If context
447
+ * is returned then it will be embedded into url returned by getAbsoluteUrl() method.
448
+ */
449
+ constructor(shareLinkFetcherProps?: ShareLinkFetcherProps | undefined, logger?: ITelemetryBaseLogger, appName?: string | undefined, getContext?: ((resolvedUrl: IOdspResolvedUrl, dataStorePath: string) => Promise<string | undefined>) | undefined);
450
+ /**
451
+ * Takes an already generated data store url (from requestUrl) and appends a path to the
452
+ * existing data store information.
453
+ */
454
+ appendDataStorePath(requestUrl: URL, pathToAppend: string): string | undefined;
455
+ private getKey;
456
+ /**
457
+ * Resolves request URL into driver details
458
+ */
459
+ resolve(request: IRequest): Promise<IOdspResolvedUrl>;
460
+ private removeNavParam;
461
+ private getShareLinkPromise;
462
+ /**
463
+ * Requests a driver + data store storage URL. Note that this method requires share link to be fetched
464
+ * and it will throw in case share link fetcher props were not specified when instance was created.
465
+ * @param resolvedUrl - The driver resolved URL
466
+ * @param dataStorePath - The relative data store path URL.
467
+ * For requesting a driver URL, this value should always be '/'. If an empty string is passed, then dataStorePath
468
+ * will be extracted from the resolved url if present.
469
+ * @param packageInfoSource - optional, represents container package information to be included in url.
470
+ */
471
+ getAbsoluteUrl(resolvedUrl: IResolvedUrl, dataStorePath: string, packageInfoSource?: IContainerPackageInfo): Promise<string>;
472
+ /**
473
+ * Crafts a supported document/driver URL
474
+ */
475
+ static createDocumentUrl(baseUrl: string, driverInfo: OdspFluidDataStoreLocator): string;
476
+ /**
477
+ * Crafts a supported data store nav param
478
+ * @deprecated encodeOdspFluidDataStoreLocator should be used instead
479
+ */
480
+ static createNavParam(locator: OdspFluidDataStoreLocator): string;
481
+ }
482
+
483
+ /**
484
+ * @alpha
485
+ */
486
+ export declare interface OdspFluidDataStoreLocator extends IOdspUrlParts {
487
+ dataStorePath: string;
488
+ appName?: string;
489
+ containerPackageName?: string;
490
+ fileVersion?: string;
491
+ context?: string;
492
+ }
493
+
494
+ /**
495
+ * Converts snapshot from binary compact representation to tree/blobs/ops.
496
+ * @param buffer - Compact snapshot to be parsed into tree/blobs/ops.
497
+ * @returns Tree, blobs and ops from the snapshot.
498
+ * @internal
499
+ */
500
+ export declare function parseCompactSnapshotResponse(buffer: Uint8Array, logger: ITelemetryLoggerExt): ISnapshotContentsWithProps;
501
+
502
+ /**
503
+ * Function to prefetch the snapshot and cached it in the persistant cache, so that when the container is loaded
504
+ * the cached latest snapshot could be used and removes the network call from the critical path.
505
+ *
506
+ * @param resolvedUrl - Resolved url to fetch the snapshot.
507
+ * @param getStorageToken - function that can provide the storage token for a given site. This is
508
+ * is also referred to as the "VROOM" token in SPO.
509
+ * @param persistedCache - Cache to store the fetched snapshot.
510
+ * @param forceAccessTokenViaAuthorizationHeader - whether to force passing given token via authorization header.
511
+ * @param logger - Logger to have telemetry events.
512
+ * @param hostSnapshotFetchOptions - Options to fetch the snapshot if any. Otherwise default will be used.
513
+ * @param enableRedeemFallback - True to have the sharing link redeem fallback in case the Trees Latest/Redeem
514
+ * 1RT call fails with redeem error. During fallback it will first redeem the sharing link and then make
515
+ * the Trees latest call.
516
+ * Note: this can be considered deprecated - it will be replaced with `snapshotFormatFetchType`.
517
+ * @param fetchBinarySnapshotFormat - Control if we want to fetch binary format snapshot.
518
+ * @param snapshotFormatFetchType - Snapshot format to fetch.
519
+ * @param odspDocumentServiceFactory - factory to access the non persistent cache and store the prefetch promise.
520
+ *
521
+ * @returns `true` if the snapshot is cached, `false` otherwise.
522
+ * @alpha
523
+ */
524
+ export declare function prefetchLatestSnapshot(resolvedUrl: IResolvedUrl, getStorageToken: TokenFetcher<OdspResourceTokenFetchOptions>, persistedCache: IPersistedCache, forceAccessTokenViaAuthorizationHeader: boolean, logger: ITelemetryBaseLogger, hostSnapshotFetchOptions: ISnapshotOptions | undefined, enableRedeemFallback?: boolean, fetchBinarySnapshotFormat?: boolean, snapshotFormatFetchType?: SnapshotFormatSupportType, odspDocumentServiceFactory?: OdspDocumentServiceFactory): Promise<boolean>;
525
+
526
+ /**
527
+ * Properties passed to the code responsible for fetching share link for a file.
528
+ * @alpha
529
+ */
530
+ export declare interface ShareLinkFetcherProps {
531
+ /**
532
+ * Callback method that is used to fetch access token necessary to call API that produces share link
533
+ */
534
+ tokenFetcher: TokenFetcher<OdspResourceTokenFetchOptions>;
535
+ /**
536
+ * Identity type determining the shape of share link as it differs for Enterprise and Consumer users.
537
+ */
538
+ identityType: IdentityType;
539
+ }
540
+
541
+ /**
542
+ * @internal
543
+ */
544
+ export declare enum SharingLinkHeader {
545
+ isSharingLinkToRedeem = "isSharingLinkToRedeem"
546
+ }
547
+
548
+ /**
549
+ * Enum to support different types of snapshot formats.
550
+ * @alpha
551
+ */
552
+ export declare enum SnapshotFormatSupportType {
553
+ Json = 0,
554
+ Binary = 1,
555
+ JsonAndBinary = 2
556
+ }
557
+
558
+ /**
559
+ * Embeds Fluid data store locator data into given ODSP url
560
+ * @param url - file url in ODSP format (can be either canonical or share link)
561
+ * @param locator - object representing Fluid data store location in ODSP terms
562
+ * @alpha
563
+ */
564
+ export declare function storeLocatorInOdspUrl(url: URL, locator: OdspFluidDataStoreLocator): void;
565
+
566
+ export { }
@@ -1,12 +1,9 @@
1
- /*!
2
- * Copyright (c) Microsoft Corporation and contributors. All rights reserved.
3
- * Licensed under the MIT License.
4
- */
5
- import { PromiseCache } from "@fluidframework/common-utils";
6
- import { IOdspResolvedUrl, IFileEntry, IEntry, IPersistedCache, ICacheEntry } from "@fluidframework/odsp-driver-definitions";
7
- import { ISocketStorageDiscovery } from "./contracts";
1
+ import { PromiseCache } from "@fluidframework/core-utils";
2
+ import { IOdspResolvedUrl, IFileEntry, IEntry, IPersistedCache, ICacheEntry, ISocketStorageDiscovery } from "@fluidframework/odsp-driver-definitions";
3
+ import { ISnapshotContents } from "./odspPublicUtils.mjs";
8
4
  /**
9
5
  * Similar to IPersistedCache, but exposes cache interface for single file
6
+ * @alpha
10
7
  */
11
8
  export interface IPersistedFileCache {
12
9
  get(entry: IEntry): Promise<any>;
@@ -28,13 +25,13 @@ export declare class LocalPersistentCache implements IPersistedCache {
28
25
  private removeDocIdEntriesFromCache;
29
26
  private removeExpirationEntry;
30
27
  private updateExpirationEntry;
31
- private keyFromEntry;
32
28
  }
33
29
  export declare class PromiseCacheWithOneHourSlidingExpiry<T> extends PromiseCache<string, T> {
34
30
  constructor(removeOnError?: (e: any) => boolean);
35
31
  }
36
32
  /**
37
33
  * Internal cache interface used within driver only
34
+ * @alpha
38
35
  */
39
36
  export interface INonPersistentCache {
40
37
  /**
@@ -48,9 +45,15 @@ export interface INonPersistentCache {
48
45
  * Cache of resolved/resolving file URLs
49
46
  */
50
47
  readonly fileUrlCache: PromiseCache<string, IOdspResolvedUrl>;
48
+ /**
49
+ * Used to store the snapshot fetch promise if the prefetch has been made using the prefetchLatestSnapshot api.
50
+ * This is then used later to look for the promise during the container load.
51
+ */
52
+ readonly snapshotPrefetchResultCache: PromiseCache<string, IPrefetchSnapshotContents>;
51
53
  }
52
54
  /**
53
55
  * Internal cache interface used within driver only
56
+ * @alpha
54
57
  */
55
58
  export interface IOdspCache extends INonPersistentCache {
56
59
  /**
@@ -64,5 +67,13 @@ export declare class NonPersistentCache implements INonPersistentCache {
64
67
  joinSessionResponse: ISocketStorageDiscovery;
65
68
  }>;
66
69
  readonly fileUrlCache: PromiseCache<string, IOdspResolvedUrl>;
70
+ readonly snapshotPrefetchResultCache: PromiseCache<string, IPrefetchSnapshotContents>;
71
+ }
72
+ /**
73
+ * @alpha
74
+ */
75
+ export interface IPrefetchSnapshotContents extends ISnapshotContents {
76
+ fluidEpoch: string;
77
+ prefetchStartTime: number;
67
78
  }
68
79
  //# sourceMappingURL=odspCache.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"odspCache.d.ts","sourceRoot":"","sources":["../src/odspCache.ts"],"names":[],"mappings":"OAIO,EAAE,YAAY,EAAE,MAAM,4BAA4B;OAClD,EACN,gBAAgB,EAChB,UAAU,EACV,MAAM,EACN,eAAe,EACf,WAAW,EACX,uBAAuB,EAEvB,MAAM,yCAAyC;OACzC,EAAE,iBAAiB,EAAE;AAE5B;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IACnC,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;IACjC,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9C,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC/B;AAED;;;GAGG;AACH,qBAAa,oBAAqB,YAAW,eAAe;IAKxC,OAAO,CAAC,QAAQ,CAAC,oBAAoB;IAJxD,OAAO,CAAC,QAAQ,CAAC,KAAK,CAA0B;IAEhD,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAoD;gBAEnD,oBAAoB,SAAc;IAEhE,GAAG,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC;IAMrC,GAAG,CAAC,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,GAAG;IAMlC,aAAa,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAIpD,OAAO,CAAC,2BAA2B;IAcnC,OAAO,CAAC,qBAAqB;IAQ7B,OAAO,CAAC,qBAAqB;CAS7B;AACD,qBAAa,oCAAoC,CAAC,CAAC,CAAE,SAAQ,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC;gBACvE,aAAa,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,OAAO;CAG/C;AAED;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IACnC;;OAEG;IACH,QAAQ,CAAC,gBAAgB,EAAE,YAAY,CACtC,MAAM,EACN;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,mBAAmB,EAAE,uBAAuB,CAAA;KAAE,CACnE,CAAC;IAEF;;OAEG;IACH,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;IAE9D;;;OAGG;IACH,QAAQ,CAAC,2BAA2B,EAAE,YAAY,CAAC,MAAM,EAAE,yBAAyB,CAAC,CAAC;CACtF;AAED;;;GAGG;AACH,MAAM,WAAW,UAAW,SAAQ,mBAAmB;IACtD;;OAEG;IACH,QAAQ,CAAC,cAAc,EAAE,mBAAmB,CAAC;CAC7C;AAED,qBAAa,kBAAmB,YAAW,mBAAmB;IAC7D,SAAgB,gBAAgB;mBAElB,MAAM;6BAAuB,uBAAuB;OAC9D;IAEJ,SAAgB,YAAY,yCAAgD;IAE5E,SAAgB,2BAA2B,kDAGvC;CACJ;AAED;;GAEG;AACH,MAAM,WAAW,yBAA0B,SAAQ,iBAAiB;IACnE,UAAU,EAAE,MAAM,CAAC;IACnB,iBAAiB,EAAE,MAAM,CAAC;CAC1B"}
@@ -1,8 +1,5 @@
1
- /*!
2
- * Copyright (c) Microsoft Corporation and contributors. All rights reserved.
3
- * Licensed under the MIT License.
4
- */
5
- import { PromiseCache } from "@fluidframework/common-utils";
1
+ import { PromiseCache } from "@fluidframework/core-utils";
2
+ import { getKeyForCacheEntry, } from "@fluidframework/odsp-driver-definitions";
6
3
  /**
7
4
  * Default local-only implementation of IPersistedCache,
8
5
  * used if no persisted cache is provided by the host
@@ -15,12 +12,12 @@ export class LocalPersistentCache {
15
12
  this.docIdExpirationMap = new Map();
16
13
  }
17
14
  async get(entry) {
18
- const key = this.keyFromEntry(entry);
15
+ const key = getKeyForCacheEntry(entry);
19
16
  // eslint-disable-next-line @typescript-eslint/no-unsafe-return
20
17
  return this.cache.get(key);
21
18
  }
22
19
  async put(entry, value) {
23
- const key = this.keyFromEntry(entry);
20
+ const key = getKeyForCacheEntry(entry);
24
21
  this.cache.set(key, value);
25
22
  this.updateExpirationEntry(entry.file.docId);
26
23
  }
@@ -53,9 +50,6 @@ export class LocalPersistentCache {
53
50
  this.removeDocIdEntriesFromCache(docId);
54
51
  }, this.snapshotExpiryPolicy));
55
52
  }
56
- keyFromEntry(entry) {
57
- return `${entry.file.docId}_${entry.type}_${entry.key}`;
58
- }
59
53
  }
60
54
  export class PromiseCacheWithOneHourSlidingExpiry extends PromiseCache {
61
55
  constructor(removeOnError) {
@@ -66,6 +60,7 @@ export class NonPersistentCache {
66
60
  constructor() {
67
61
  this.sessionJoinCache = new PromiseCache();
68
62
  this.fileUrlCache = new PromiseCache();
63
+ this.snapshotPrefetchResultCache = new PromiseCache();
69
64
  }
70
65
  }
71
- //# sourceMappingURL=odspCache.js.map
66
+ //# sourceMappingURL=odspCache.mjs.map