@fluidframework/container-loader 0.53.0-46105 → 0.54.1
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/dist/connectionManager.d.ts +153 -0
- package/dist/connectionManager.d.ts.map +1 -0
- package/dist/connectionManager.js +664 -0
- package/dist/connectionManager.js.map +1 -0
- package/dist/container.d.ts +2 -1
- package/dist/container.d.ts.map +1 -1
- package/dist/container.js +25 -28
- package/dist/container.js.map +1 -1
- package/dist/contracts.d.ts +112 -0
- package/dist/contracts.d.ts.map +1 -0
- package/dist/contracts.js +14 -0
- package/dist/contracts.js.map +1 -0
- package/dist/deltaManager.d.ts +26 -135
- package/dist/deltaManager.d.ts.map +1 -1
- package/dist/deltaManager.js +142 -768
- package/dist/deltaManager.js.map +1 -1
- package/dist/loader.d.ts +9 -4
- package/dist/loader.d.ts.map +1 -1
- package/dist/loader.js +5 -4
- package/dist/loader.js.map +1 -1
- package/dist/packageVersion.d.ts +1 -1
- package/dist/packageVersion.d.ts.map +1 -1
- package/dist/packageVersion.js +1 -1
- package/dist/packageVersion.js.map +1 -1
- package/dist/protocolTreeDocumentStorageService.d.ts +2 -2
- package/dist/protocolTreeDocumentStorageService.d.ts.map +1 -1
- package/lib/connectionManager.d.ts +153 -0
- package/lib/connectionManager.d.ts.map +1 -0
- package/lib/connectionManager.js +660 -0
- package/lib/connectionManager.js.map +1 -0
- package/lib/container.d.ts +2 -1
- package/lib/container.d.ts.map +1 -1
- package/lib/container.js +25 -28
- package/lib/container.js.map +1 -1
- package/lib/contracts.d.ts +112 -0
- package/lib/contracts.d.ts.map +1 -0
- package/lib/contracts.js +11 -0
- package/lib/contracts.js.map +1 -0
- package/lib/deltaManager.d.ts +26 -135
- package/lib/deltaManager.d.ts.map +1 -1
- package/lib/deltaManager.js +146 -772
- package/lib/deltaManager.js.map +1 -1
- package/lib/loader.d.ts +9 -4
- package/lib/loader.d.ts.map +1 -1
- package/lib/loader.js +6 -5
- package/lib/loader.js.map +1 -1
- package/lib/packageVersion.d.ts +1 -1
- package/lib/packageVersion.d.ts.map +1 -1
- package/lib/packageVersion.js +1 -1
- package/lib/packageVersion.js.map +1 -1
- package/lib/protocolTreeDocumentStorageService.d.ts +2 -2
- package/lib/protocolTreeDocumentStorageService.d.ts.map +1 -1
- package/package.json +9 -9
- package/src/connectionManager.ts +892 -0
- package/src/container.ts +39 -39
- package/src/contracts.ts +156 -0
- package/src/deltaManager.ts +181 -979
- package/src/loader.ts +31 -9
- package/src/packageVersion.ts +1 -1
package/src/loader.ts
CHANGED
|
@@ -25,7 +25,16 @@ import {
|
|
|
25
25
|
IProxyLoaderFactory,
|
|
26
26
|
LoaderHeader,
|
|
27
27
|
} from "@fluidframework/container-definitions";
|
|
28
|
-
import {
|
|
28
|
+
import {
|
|
29
|
+
ChildLogger,
|
|
30
|
+
DebugLogger,
|
|
31
|
+
IConfigProviderBase,
|
|
32
|
+
loggerToMonitoringContext,
|
|
33
|
+
mixinMonitoringContext,
|
|
34
|
+
MonitoringContext,
|
|
35
|
+
PerformanceEvent,
|
|
36
|
+
sessionStorageConfigProvider,
|
|
37
|
+
} from "@fluidframework/telemetry-utils";
|
|
29
38
|
import {
|
|
30
39
|
IDocumentServiceFactory,
|
|
31
40
|
IDocumentStorageService,
|
|
@@ -207,6 +216,11 @@ export interface ILoaderProps {
|
|
|
207
216
|
* Blobs storage for detached containers.
|
|
208
217
|
*/
|
|
209
218
|
readonly detachedBlobStorage?: IDetachedBlobStorage;
|
|
219
|
+
|
|
220
|
+
/**
|
|
221
|
+
* The configuration provider which may be used to control features.
|
|
222
|
+
*/
|
|
223
|
+
readonly configProvider?: IConfigProviderBase;
|
|
210
224
|
}
|
|
211
225
|
|
|
212
226
|
/**
|
|
@@ -278,7 +292,7 @@ export type IDetachedBlobStorage = Pick<IDocumentStorageService, "createBlob" |
|
|
|
278
292
|
export class Loader implements IHostLoader {
|
|
279
293
|
private readonly containers = new Map<string, Promise<Container>>();
|
|
280
294
|
public readonly services: ILoaderServices;
|
|
281
|
-
private readonly
|
|
295
|
+
private readonly mc: MonitoringContext;
|
|
282
296
|
|
|
283
297
|
constructor(loaderProps: ILoaderProps) {
|
|
284
298
|
const scope = { ...loaderProps.scope as FluidObject<ILoader> };
|
|
@@ -289,22 +303,30 @@ export class Loader implements IHostLoader {
|
|
|
289
303
|
loaderId: uuid(),
|
|
290
304
|
loaderVersion: pkgVersion,
|
|
291
305
|
};
|
|
306
|
+
|
|
307
|
+
const subMc = mixinMonitoringContext(
|
|
308
|
+
DebugLogger.mixinDebugLogger("fluid:telemetry", loaderProps.logger, { all: telemetryProps }),
|
|
309
|
+
sessionStorageConfigProvider.value,
|
|
310
|
+
loaderProps.configProvider,
|
|
311
|
+
);
|
|
312
|
+
|
|
292
313
|
this.services = {
|
|
293
314
|
urlResolver: createCachedResolver(MultiUrlResolver.create(loaderProps.urlResolver)),
|
|
294
315
|
documentServiceFactory: MultiDocumentServiceFactory.create(loaderProps.documentServiceFactory),
|
|
295
316
|
codeLoader: loaderProps.codeLoader,
|
|
296
317
|
options: loaderProps.options ?? {},
|
|
297
318
|
scope,
|
|
298
|
-
subLogger:
|
|
319
|
+
subLogger: subMc.logger,
|
|
299
320
|
proxyLoaderFactories: loaderProps.proxyLoaderFactories ?? new Map<string, IProxyLoaderFactory>(),
|
|
300
321
|
detachedBlobStorage: loaderProps.detachedBlobStorage,
|
|
301
322
|
};
|
|
302
|
-
this.
|
|
323
|
+
this.mc = loggerToMonitoringContext(
|
|
324
|
+
ChildLogger.create(this.services.subLogger, "Loader"));
|
|
303
325
|
}
|
|
304
326
|
|
|
305
327
|
public get IFluidRouter(): IFluidRouter { return this; }
|
|
306
328
|
|
|
307
|
-
public async createDetachedContainer(codeDetails: IFluidCodeDetails): Promise<
|
|
329
|
+
public async createDetachedContainer(codeDetails: IFluidCodeDetails): Promise<IContainer> {
|
|
308
330
|
const container = await Container.createDetached(
|
|
309
331
|
this,
|
|
310
332
|
codeDetails,
|
|
@@ -323,13 +345,13 @@ export class Loader implements IHostLoader {
|
|
|
323
345
|
return container;
|
|
324
346
|
}
|
|
325
347
|
|
|
326
|
-
public async rehydrateDetachedContainerFromSnapshot(snapshot: string): Promise<
|
|
348
|
+
public async rehydrateDetachedContainerFromSnapshot(snapshot: string): Promise<IContainer> {
|
|
327
349
|
return Container.rehydrateDetachedFromSnapshot(this, snapshot);
|
|
328
350
|
}
|
|
329
351
|
|
|
330
|
-
public async resolve(request: IRequest, pendingLocalState?: string): Promise<
|
|
352
|
+
public async resolve(request: IRequest, pendingLocalState?: string): Promise<IContainer> {
|
|
331
353
|
const eventName = pendingLocalState === undefined ? "Resolve" : "ResolveWithPendingState";
|
|
332
|
-
return PerformanceEvent.timedExecAsync(this.logger, { eventName }, async () => {
|
|
354
|
+
return PerformanceEvent.timedExecAsync(this.mc.logger, { eventName }, async () => {
|
|
333
355
|
const resolved = await this.resolveCore(
|
|
334
356
|
request,
|
|
335
357
|
pendingLocalState !== undefined ? JSON.parse(pendingLocalState) : undefined,
|
|
@@ -339,7 +361,7 @@ export class Loader implements IHostLoader {
|
|
|
339
361
|
}
|
|
340
362
|
|
|
341
363
|
public async request(request: IRequest): Promise<IResponse> {
|
|
342
|
-
return PerformanceEvent.timedExecAsync(this.logger, { eventName: "Request" }, async () => {
|
|
364
|
+
return PerformanceEvent.timedExecAsync(this.mc.logger, { eventName: "Request" }, async () => {
|
|
343
365
|
const resolved = await this.resolveCore(request);
|
|
344
366
|
return resolved.container.request({
|
|
345
367
|
...request,
|
package/src/packageVersion.ts
CHANGED