@fluidframework/driver-utils 2.81.1 → 2.82.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.
- package/CHANGELOG.md +4 -0
- package/dist/adapters/compression/documentServiceCompressionAdapter.d.ts +2 -2
- package/dist/adapters/compression/documentServiceCompressionAdapter.d.ts.map +1 -1
- package/dist/adapters/compression/documentServiceCompressionAdapter.js.map +1 -1
- package/dist/adapters/compression/documentServiceFactoryCompressionAdapter.d.ts +4 -4
- package/dist/adapters/compression/documentServiceFactoryCompressionAdapter.d.ts.map +1 -1
- package/dist/adapters/compression/documentServiceFactoryCompressionAdapter.js.map +1 -1
- package/dist/adapters/compression/index.d.ts +1 -1
- package/dist/adapters/compression/index.d.ts.map +1 -1
- package/dist/adapters/compression/index.js.map +1 -1
- package/dist/adapters/compression/summaryblob/documentStorageServiceSummaryBlobCompressionAdapter.d.ts +2 -2
- package/dist/adapters/compression/summaryblob/documentStorageServiceSummaryBlobCompressionAdapter.d.ts.map +1 -1
- package/dist/adapters/compression/summaryblob/documentStorageServiceSummaryBlobCompressionAdapter.js +15 -11
- package/dist/adapters/compression/summaryblob/documentStorageServiceSummaryBlobCompressionAdapter.js.map +1 -1
- package/dist/adapters/index.d.ts +1 -1
- package/dist/adapters/index.d.ts.map +1 -1
- package/dist/adapters/index.js.map +1 -1
- package/dist/adapters/predefinedAdapters.d.ts +3 -3
- package/dist/adapters/predefinedAdapters.d.ts.map +1 -1
- package/dist/adapters/predefinedAdapters.js +4 -1
- package/dist/adapters/predefinedAdapters.js.map +1 -1
- package/dist/blob.d.ts +2 -1
- package/dist/blob.d.ts.map +1 -1
- package/dist/blob.js +3 -1
- package/dist/blob.js.map +1 -1
- package/dist/buildSnapshotTree.d.ts +1 -1
- package/dist/buildSnapshotTree.d.ts.map +1 -1
- package/dist/buildSnapshotTree.js.map +1 -1
- package/dist/cacheUtils.js +1 -1
- package/dist/cacheUtils.js.map +1 -1
- package/dist/documentServiceFactoryProxy.d.ts +3 -3
- package/dist/documentServiceFactoryProxy.d.ts.map +1 -1
- package/dist/documentServiceFactoryProxy.js.map +1 -1
- package/dist/documentServiceProxy.d.ts +3 -3
- package/dist/documentServiceProxy.d.ts.map +1 -1
- package/dist/documentServiceProxy.js.map +1 -1
- package/dist/documentStorageServiceProxy.d.ts +2 -2
- package/dist/documentStorageServiceProxy.d.ts.map +1 -1
- package/dist/documentStorageServiceProxy.js +3 -1
- package/dist/documentStorageServiceProxy.js.map +1 -1
- package/dist/error.d.ts +2 -2
- package/dist/error.d.ts.map +1 -1
- package/dist/error.js.map +1 -1
- package/dist/index.d.ts +4 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/insecureUrlResolver.d.ts +2 -2
- package/dist/insecureUrlResolver.d.ts.map +1 -1
- package/dist/insecureUrlResolver.js +4 -4
- package/dist/insecureUrlResolver.js.map +1 -1
- package/dist/messageRecognition.d.ts +3 -1
- package/dist/messageRecognition.d.ts.map +1 -1
- package/dist/messageRecognition.js +2 -0
- package/dist/messageRecognition.js.map +1 -1
- package/dist/network.d.ts +10 -6
- package/dist/network.d.ts.map +1 -1
- package/dist/network.js +18 -3
- package/dist/network.js.map +1 -1
- package/dist/networkUtils.d.ts +4 -3
- package/dist/networkUtils.d.ts.map +1 -1
- package/dist/networkUtils.js +6 -0
- package/dist/networkUtils.js.map +1 -1
- package/dist/packageVersion.d.ts +1 -1
- package/dist/packageVersion.js +1 -1
- package/dist/packageVersion.js.map +1 -1
- package/dist/parallelRequests.d.ts +8 -4
- package/dist/parallelRequests.d.ts.map +1 -1
- package/dist/parallelRequests.js +24 -21
- package/dist/parallelRequests.js.map +1 -1
- package/dist/prefetchDocumentStorageService.d.ts.map +1 -1
- package/dist/prefetchDocumentStorageService.js +8 -10
- package/dist/prefetchDocumentStorageService.js.map +1 -1
- package/dist/protocol/gitHelper.d.ts +1 -1
- package/dist/protocol/gitHelper.d.ts.map +1 -1
- package/dist/protocol/gitHelper.js +12 -6
- package/dist/protocol/gitHelper.js.map +1 -1
- package/dist/readAndParse.d.ts +1 -1
- package/dist/readAndParse.d.ts.map +1 -1
- package/dist/readAndParse.js.map +1 -1
- package/dist/runWithRetry.d.ts +4 -2
- package/dist/runWithRetry.d.ts.map +1 -1
- package/dist/runWithRetry.js +14 -11
- package/dist/runWithRetry.js.map +1 -1
- package/dist/storageUtils.d.ts +1 -1
- package/dist/storageUtils.d.ts.map +1 -1
- package/dist/storageUtils.js.map +1 -1
- package/dist/summaryForCreateNew.d.ts +2 -2
- package/dist/summaryForCreateNew.d.ts.map +1 -1
- package/dist/summaryForCreateNew.js.map +1 -1
- package/dist/treeConversions.d.ts +2 -2
- package/dist/treeConversions.d.ts.map +1 -1
- package/dist/treeConversions.js +3 -1
- package/dist/treeConversions.js.map +1 -1
- package/eslint.config.mts +2 -2
- package/lib/adapters/compression/documentServiceCompressionAdapter.d.ts +2 -2
- package/lib/adapters/compression/documentServiceCompressionAdapter.d.ts.map +1 -1
- package/lib/adapters/compression/documentServiceCompressionAdapter.js.map +1 -1
- package/lib/adapters/compression/documentServiceFactoryCompressionAdapter.d.ts +4 -4
- package/lib/adapters/compression/documentServiceFactoryCompressionAdapter.d.ts.map +1 -1
- package/lib/adapters/compression/documentServiceFactoryCompressionAdapter.js.map +1 -1
- package/lib/adapters/compression/index.d.ts +1 -1
- package/lib/adapters/compression/index.d.ts.map +1 -1
- package/lib/adapters/compression/index.js.map +1 -1
- package/lib/adapters/compression/summaryblob/documentStorageServiceSummaryBlobCompressionAdapter.d.ts +2 -2
- package/lib/adapters/compression/summaryblob/documentStorageServiceSummaryBlobCompressionAdapter.d.ts.map +1 -1
- package/lib/adapters/compression/summaryblob/documentStorageServiceSummaryBlobCompressionAdapter.js +15 -11
- package/lib/adapters/compression/summaryblob/documentStorageServiceSummaryBlobCompressionAdapter.js.map +1 -1
- package/lib/adapters/index.d.ts +1 -1
- package/lib/adapters/index.d.ts.map +1 -1
- package/lib/adapters/index.js.map +1 -1
- package/lib/adapters/predefinedAdapters.d.ts +3 -3
- package/lib/adapters/predefinedAdapters.d.ts.map +1 -1
- package/lib/adapters/predefinedAdapters.js +4 -1
- package/lib/adapters/predefinedAdapters.js.map +1 -1
- package/lib/blob.d.ts +2 -1
- package/lib/blob.d.ts.map +1 -1
- package/lib/blob.js +4 -2
- package/lib/blob.js.map +1 -1
- package/lib/buildSnapshotTree.d.ts +1 -1
- package/lib/buildSnapshotTree.d.ts.map +1 -1
- package/lib/buildSnapshotTree.js.map +1 -1
- package/lib/cacheUtils.js +1 -1
- package/lib/cacheUtils.js.map +1 -1
- package/lib/documentServiceFactoryProxy.d.ts +3 -3
- package/lib/documentServiceFactoryProxy.d.ts.map +1 -1
- package/lib/documentServiceFactoryProxy.js.map +1 -1
- package/lib/documentServiceProxy.d.ts +3 -3
- package/lib/documentServiceProxy.d.ts.map +1 -1
- package/lib/documentServiceProxy.js.map +1 -1
- package/lib/documentStorageServiceProxy.d.ts +2 -2
- package/lib/documentStorageServiceProxy.d.ts.map +1 -1
- package/lib/documentStorageServiceProxy.js +3 -1
- package/lib/documentStorageServiceProxy.js.map +1 -1
- package/lib/error.d.ts +2 -2
- package/lib/error.d.ts.map +1 -1
- package/lib/error.js.map +1 -1
- package/lib/index.d.ts +4 -4
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js.map +1 -1
- package/lib/insecureUrlResolver.d.ts +2 -2
- package/lib/insecureUrlResolver.d.ts.map +1 -1
- package/lib/insecureUrlResolver.js +4 -4
- package/lib/insecureUrlResolver.js.map +1 -1
- package/lib/messageRecognition.d.ts +3 -1
- package/lib/messageRecognition.d.ts.map +1 -1
- package/lib/messageRecognition.js +2 -0
- package/lib/messageRecognition.js.map +1 -1
- package/lib/network.d.ts +10 -6
- package/lib/network.d.ts.map +1 -1
- package/lib/network.js +18 -3
- package/lib/network.js.map +1 -1
- package/lib/networkUtils.d.ts +4 -3
- package/lib/networkUtils.d.ts.map +1 -1
- package/lib/networkUtils.js +6 -0
- package/lib/networkUtils.js.map +1 -1
- package/lib/packageVersion.d.ts +1 -1
- package/lib/packageVersion.js +1 -1
- package/lib/packageVersion.js.map +1 -1
- package/lib/parallelRequests.d.ts +8 -4
- package/lib/parallelRequests.d.ts.map +1 -1
- package/lib/parallelRequests.js +24 -21
- package/lib/parallelRequests.js.map +1 -1
- package/lib/prefetchDocumentStorageService.d.ts.map +1 -1
- package/lib/prefetchDocumentStorageService.js +8 -10
- package/lib/prefetchDocumentStorageService.js.map +1 -1
- package/lib/protocol/gitHelper.d.ts +1 -1
- package/lib/protocol/gitHelper.d.ts.map +1 -1
- package/lib/protocol/gitHelper.js +12 -6
- package/lib/protocol/gitHelper.js.map +1 -1
- package/lib/readAndParse.d.ts +1 -1
- package/lib/readAndParse.d.ts.map +1 -1
- package/lib/readAndParse.js.map +1 -1
- package/lib/runWithRetry.d.ts +4 -2
- package/lib/runWithRetry.d.ts.map +1 -1
- package/lib/runWithRetry.js +15 -12
- package/lib/runWithRetry.js.map +1 -1
- package/lib/storageUtils.d.ts +1 -1
- package/lib/storageUtils.d.ts.map +1 -1
- package/lib/storageUtils.js.map +1 -1
- package/lib/summaryForCreateNew.d.ts +2 -2
- package/lib/summaryForCreateNew.d.ts.map +1 -1
- package/lib/summaryForCreateNew.js +1 -1
- package/lib/summaryForCreateNew.js.map +1 -1
- package/lib/treeConversions.d.ts +2 -2
- package/lib/treeConversions.d.ts.map +1 -1
- package/lib/treeConversions.js +3 -1
- package/lib/treeConversions.js.map +1 -1
- package/package.json +10 -9
- package/src/adapters/compression/documentServiceCompressionAdapter.ts +2 -2
- package/src/adapters/compression/documentServiceFactoryCompressionAdapter.ts +4 -4
- package/src/adapters/compression/index.ts +1 -1
- package/src/adapters/compression/summaryblob/documentStorageServiceSummaryBlobCompressionAdapter.ts +25 -21
- package/src/adapters/index.ts +1 -1
- package/src/adapters/predefinedAdapters.ts +7 -4
- package/src/blob.ts +3 -7
- package/src/buildSnapshotTree.ts +6 -6
- package/src/cacheUtils.ts +1 -1
- package/src/documentServiceFactoryProxy.ts +3 -3
- package/src/documentServiceProxy.ts +3 -3
- package/src/documentStorageServiceProxy.ts +4 -2
- package/src/error.ts +2 -2
- package/src/index.ts +4 -4
- package/src/insecureUrlResolver.ts +7 -7
- package/src/messageRecognition.ts +4 -2
- package/src/network.ts +26 -12
- package/src/networkUtils.ts +12 -4
- package/src/packageVersion.ts +1 -1
- package/src/parallelRequests.ts +33 -30
- package/src/prefetchDocumentStorageService.ts +10 -10
- package/src/protocol/gitHelper.ts +15 -9
- package/src/readAndParse.ts +1 -1
- package/src/runWithRetry.ts +20 -14
- package/src/storageUtils.ts +1 -1
- package/src/summaryForCreateNew.ts +5 -1
- package/src/treeConversions.ts +5 -3
- package/biome.jsonc +0 -4
|
@@ -28,6 +28,7 @@ export class PrefetchDocumentStorageService extends DocumentStorageServiceProxy
|
|
|
28
28
|
}
|
|
29
29
|
}
|
|
30
30
|
|
|
31
|
+
// eslint-disable-next-line @rushstack/no-new-null -- TODO: use `undefined` instead
|
|
31
32
|
public async getSnapshotTree(version?: IVersion): Promise<ISnapshotTree | null> {
|
|
32
33
|
const p = this.internalStorageService.getSnapshotTree(version);
|
|
33
34
|
if (this.prefetchEnabled) {
|
|
@@ -67,12 +68,13 @@ export class PrefetchDocumentStorageService extends DocumentStorageServiceProxy
|
|
|
67
68
|
// 2. Prevent unhandled rejection warning for fire-and-forget prefetch
|
|
68
69
|
// Note: Callers who await the cached promise will still see the rejection
|
|
69
70
|
prefetchedBlobPFromStorage.catch((error) => {
|
|
70
|
-
if
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
71
|
+
// Only clear cache if our promise is still the cached one
|
|
72
|
+
// (avoids race condition with concurrent requests)
|
|
73
|
+
if (
|
|
74
|
+
canRetryOnError(error) &&
|
|
75
|
+
this.prefetchCache.get(blobId) === prefetchedBlobPFromStorage
|
|
76
|
+
) {
|
|
77
|
+
this.prefetchCache.delete(blobId);
|
|
76
78
|
}
|
|
77
79
|
});
|
|
78
80
|
this.prefetchCache.set(blobId, prefetchedBlobPFromStorage);
|
|
@@ -105,10 +107,8 @@ export class PrefetchDocumentStorageService extends DocumentStorageServiceProxy
|
|
|
105
107
|
// since cachedRead is async and returns a separate promise chain.
|
|
106
108
|
this.cachedRead(blob).catch(() => {});
|
|
107
109
|
}
|
|
108
|
-
} else if (!blobKey.startsWith("deltas")) {
|
|
109
|
-
|
|
110
|
-
secondary.push(blob);
|
|
111
|
-
}
|
|
110
|
+
} else if (!blobKey.startsWith("deltas") && blob !== null) {
|
|
111
|
+
secondary.push(blob);
|
|
112
112
|
}
|
|
113
113
|
}
|
|
114
114
|
|
|
@@ -6,10 +6,10 @@
|
|
|
6
6
|
import { unreachableCase } from "@fluidframework/core-utils/internal";
|
|
7
7
|
import {
|
|
8
8
|
FileMode,
|
|
9
|
-
IGitTree,
|
|
10
|
-
ISnapshotTreeEx,
|
|
9
|
+
type IGitTree,
|
|
10
|
+
type ISnapshotTreeEx,
|
|
11
|
+
type SummaryObject,
|
|
11
12
|
SummaryType,
|
|
12
|
-
SummaryObject,
|
|
13
13
|
} from "@fluidframework/driver-definitions/internal";
|
|
14
14
|
|
|
15
15
|
/**
|
|
@@ -23,12 +23,15 @@ export function getGitMode(value: SummaryObject): string {
|
|
|
23
23
|
const type = value.type === SummaryType.Handle ? value.handleType : value.type;
|
|
24
24
|
switch (type) {
|
|
25
25
|
case SummaryType.Blob:
|
|
26
|
-
case SummaryType.Attachment:
|
|
26
|
+
case SummaryType.Attachment: {
|
|
27
27
|
return FileMode.File;
|
|
28
|
-
|
|
28
|
+
}
|
|
29
|
+
case SummaryType.Tree: {
|
|
29
30
|
return FileMode.Directory;
|
|
30
|
-
|
|
31
|
+
}
|
|
32
|
+
default: {
|
|
31
33
|
unreachableCase(type, `Unknown type: ${type}`);
|
|
34
|
+
}
|
|
32
35
|
}
|
|
33
36
|
}
|
|
34
37
|
|
|
@@ -44,12 +47,15 @@ export function getGitType(value: SummaryObject): "blob" | "tree" {
|
|
|
44
47
|
|
|
45
48
|
switch (type) {
|
|
46
49
|
case SummaryType.Blob:
|
|
47
|
-
case SummaryType.Attachment:
|
|
50
|
+
case SummaryType.Attachment: {
|
|
48
51
|
return "blob";
|
|
49
|
-
|
|
52
|
+
}
|
|
53
|
+
case SummaryType.Tree: {
|
|
50
54
|
return "tree";
|
|
51
|
-
|
|
55
|
+
}
|
|
56
|
+
default: {
|
|
52
57
|
unreachableCase(type, `Unknown type: ${type}`);
|
|
58
|
+
}
|
|
53
59
|
}
|
|
54
60
|
}
|
|
55
61
|
|
package/src/readAndParse.ts
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
6
|
import { bufferToString } from "@fluid-internal/client-utils";
|
|
7
|
-
import { IDocumentStorageService } from "@fluidframework/driver-definitions/internal";
|
|
7
|
+
import type { IDocumentStorageService } from "@fluidframework/driver-definitions/internal";
|
|
8
8
|
|
|
9
9
|
/**
|
|
10
10
|
* Read a blob from {@link @fluidframework/driver-definitions#IDocumentStorageService} and
|
package/src/runWithRetry.ts
CHANGED
|
@@ -6,7 +6,10 @@
|
|
|
6
6
|
import { performanceNow } from "@fluid-internal/client-utils";
|
|
7
7
|
import { delay } from "@fluidframework/core-utils/internal";
|
|
8
8
|
import { DriverErrorTypes } from "@fluidframework/driver-definitions/internal";
|
|
9
|
-
import {
|
|
9
|
+
import {
|
|
10
|
+
isFluidError,
|
|
11
|
+
type ITelemetryLoggerExt,
|
|
12
|
+
} from "@fluidframework/telemetry-utils/internal";
|
|
10
13
|
|
|
11
14
|
import { NonRetryableError, canRetryOnError, getRetryDelayFromError } from "./network.js";
|
|
12
15
|
import { pkgVersion } from "./packageVersion.js";
|
|
@@ -41,10 +44,12 @@ export interface IProgress {
|
|
|
41
44
|
* as well as information provided by service (like 429 error asking to wait for some time before retry)
|
|
42
45
|
* @param error - error object returned from the call.
|
|
43
46
|
*/
|
|
44
|
-
onRetry?(delayInMs: number, error:
|
|
47
|
+
onRetry?(delayInMs: number, error: unknown): void;
|
|
45
48
|
}
|
|
46
49
|
|
|
47
50
|
/**
|
|
51
|
+
* Runs the provided API call with automatic retry logic.
|
|
52
|
+
*
|
|
48
53
|
* @internal
|
|
49
54
|
*/
|
|
50
55
|
export async function runWithRetry<T>(
|
|
@@ -59,14 +64,14 @@ export async function runWithRetry<T>(
|
|
|
59
64
|
let retryAfterMs = 500; // has to be positive!
|
|
60
65
|
let numRetries = 0;
|
|
61
66
|
const startTime = performanceNow();
|
|
62
|
-
let lastError:
|
|
67
|
+
let lastError: unknown;
|
|
63
68
|
do {
|
|
64
69
|
try {
|
|
65
70
|
result = await api(progress.cancel);
|
|
66
71
|
success = true;
|
|
67
|
-
} catch (
|
|
72
|
+
} catch (error) {
|
|
68
73
|
// If it is not retriable, then just throw the error.
|
|
69
|
-
if (!canRetryOnError(
|
|
74
|
+
if (!canRetryOnError(error)) {
|
|
70
75
|
logger.sendTelemetryEvent(
|
|
71
76
|
{
|
|
72
77
|
eventName: `${fetchCallName}_cancel`,
|
|
@@ -74,21 +79,22 @@ export async function runWithRetry<T>(
|
|
|
74
79
|
duration: performanceNow() - startTime,
|
|
75
80
|
fetchCallName,
|
|
76
81
|
},
|
|
77
|
-
|
|
82
|
+
error,
|
|
78
83
|
);
|
|
79
|
-
throw
|
|
84
|
+
throw error;
|
|
80
85
|
}
|
|
81
86
|
|
|
82
87
|
if (progress.cancel?.aborted === true) {
|
|
88
|
+
const abortReason = progress.cancel.reason as string;
|
|
83
89
|
logger.sendTelemetryEvent(
|
|
84
90
|
{
|
|
85
91
|
eventName: `${fetchCallName}_runWithRetryAborted`,
|
|
86
92
|
retry: numRetries,
|
|
87
93
|
duration: performanceNow() - startTime,
|
|
88
94
|
fetchCallName,
|
|
89
|
-
reason:
|
|
95
|
+
reason: abortReason,
|
|
90
96
|
},
|
|
91
|
-
|
|
97
|
+
error,
|
|
92
98
|
);
|
|
93
99
|
throw new NonRetryableError(
|
|
94
100
|
"runWithRetry was Aborted",
|
|
@@ -96,7 +102,7 @@ export async function runWithRetry<T>(
|
|
|
96
102
|
{
|
|
97
103
|
driverVersion: pkgVersion,
|
|
98
104
|
fetchCallName,
|
|
99
|
-
reason:
|
|
105
|
+
reason: abortReason,
|
|
100
106
|
},
|
|
101
107
|
);
|
|
102
108
|
}
|
|
@@ -111,16 +117,16 @@ export async function runWithRetry<T>(
|
|
|
111
117
|
duration: performanceNow() - startTime,
|
|
112
118
|
fetchCallName,
|
|
113
119
|
},
|
|
114
|
-
|
|
120
|
+
error,
|
|
115
121
|
);
|
|
116
122
|
}
|
|
117
123
|
|
|
118
124
|
numRetries++;
|
|
119
|
-
lastError =
|
|
125
|
+
lastError = error;
|
|
120
126
|
// Wait for the calculated time before retrying.
|
|
121
|
-
retryAfterMs = calculateMaxWaitTime(retryAfterMs,
|
|
127
|
+
retryAfterMs = calculateMaxWaitTime(retryAfterMs, error);
|
|
122
128
|
if (progress.onRetry) {
|
|
123
|
-
progress.onRetry(retryAfterMs,
|
|
129
|
+
progress.onRetry(retryAfterMs, error);
|
|
124
130
|
}
|
|
125
131
|
await delay(retryAfterMs);
|
|
126
132
|
}
|
package/src/storageUtils.ts
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* Licensed under the MIT License.
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
|
-
import { ISnapshot, ISnapshotTree } from "@fluidframework/driver-definitions/internal";
|
|
6
|
+
import type { ISnapshot, ISnapshotTree } from "@fluidframework/driver-definitions/internal";
|
|
7
7
|
|
|
8
8
|
/**
|
|
9
9
|
* Utility API to check if the type of snapshot contents is `ISnapshot`.
|
|
@@ -3,8 +3,12 @@
|
|
|
3
3
|
* Licensed under the MIT License.
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
|
-
import { ISummaryBlob, ISummaryTree, SummaryType } from "@fluidframework/driver-definitions";
|
|
7
6
|
import {
|
|
7
|
+
type ISummaryBlob,
|
|
8
|
+
type ISummaryTree,
|
|
9
|
+
SummaryType,
|
|
10
|
+
} from "@fluidframework/driver-definitions";
|
|
11
|
+
import type {
|
|
8
12
|
ICommittedProposal,
|
|
9
13
|
IDocumentAttributes,
|
|
10
14
|
} from "@fluidframework/driver-definitions/internal";
|
package/src/treeConversions.ts
CHANGED
|
@@ -5,8 +5,8 @@
|
|
|
5
5
|
|
|
6
6
|
import { Uint8ArrayToString } from "@fluid-internal/client-utils";
|
|
7
7
|
import { unreachableCase } from "@fluidframework/core-utils/internal";
|
|
8
|
-
import { ISummaryTree, SummaryType } from "@fluidframework/driver-definitions";
|
|
9
|
-
import { ITree, ITreeEntry } from "@fluidframework/driver-definitions/internal";
|
|
8
|
+
import { type ISummaryTree, SummaryType } from "@fluidframework/driver-definitions";
|
|
9
|
+
import type { ITree, ITreeEntry } from "@fluidframework/driver-definitions/internal";
|
|
10
10
|
|
|
11
11
|
import { AttachmentTreeEntry, BlobTreeEntry, TreeTreeEntry } from "./blob.js";
|
|
12
12
|
import { isCombinedAppAndProtocolSummary } from "./summaryForCreateNew.js";
|
|
@@ -31,6 +31,7 @@ export function convertSummaryTreeToSnapshotITree(summaryTree: ISummaryTree): IT
|
|
|
31
31
|
switch (value.type) {
|
|
32
32
|
case SummaryType.Blob: {
|
|
33
33
|
let parsedContent: string;
|
|
34
|
+
// eslint-disable-next-line unicorn/text-encoding-identifier-case
|
|
34
35
|
let encoding: "utf-8" | "base64" = "utf-8";
|
|
35
36
|
if (typeof value.content === "string") {
|
|
36
37
|
parsedContent = value.content;
|
|
@@ -56,8 +57,9 @@ export function convertSummaryTreeToSnapshotITree(summaryTree: ISummaryTree): IT
|
|
|
56
57
|
throw new Error("Should not have Handle type in summary tree");
|
|
57
58
|
}
|
|
58
59
|
|
|
59
|
-
default:
|
|
60
|
+
default: {
|
|
60
61
|
unreachableCase(value, "Unexpected summary tree type");
|
|
62
|
+
}
|
|
61
63
|
}
|
|
62
64
|
}
|
|
63
65
|
return {
|
package/biome.jsonc
DELETED