@fluidframework/container-definitions 0.42.0-43813 → 0.43.0-45414

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 (56) hide show
  1. package/api-report/container-definitions.api.md +44 -12
  2. package/dist/deltas.d.ts +12 -1
  3. package/dist/deltas.d.ts.map +1 -1
  4. package/dist/deltas.js +3 -0
  5. package/dist/deltas.js.map +1 -1
  6. package/dist/error.d.ts +17 -1
  7. package/dist/error.d.ts.map +1 -1
  8. package/dist/error.js.map +1 -1
  9. package/dist/fluidModule.d.ts +3 -2
  10. package/dist/fluidModule.d.ts.map +1 -1
  11. package/dist/fluidModule.js.map +1 -1
  12. package/dist/index.d.ts +0 -6
  13. package/dist/index.d.ts.map +1 -1
  14. package/dist/index.js +4 -4
  15. package/dist/index.js.map +1 -1
  16. package/dist/legacy/chaincode.d.ts +15 -2
  17. package/dist/legacy/chaincode.d.ts.map +1 -1
  18. package/dist/legacy/chaincode.js +3 -0
  19. package/dist/legacy/chaincode.js.map +1 -1
  20. package/dist/loader.d.ts +81 -6
  21. package/dist/loader.d.ts.map +1 -1
  22. package/dist/loader.js.map +1 -1
  23. package/dist/runtime.d.ts +2 -2
  24. package/dist/runtime.d.ts.map +1 -1
  25. package/dist/runtime.js.map +1 -1
  26. package/lib/deltas.d.ts +12 -1
  27. package/lib/deltas.d.ts.map +1 -1
  28. package/lib/deltas.js +3 -0
  29. package/lib/deltas.js.map +1 -1
  30. package/lib/error.d.ts +17 -1
  31. package/lib/error.d.ts.map +1 -1
  32. package/lib/error.js.map +1 -1
  33. package/lib/fluidModule.d.ts +3 -2
  34. package/lib/fluidModule.d.ts.map +1 -1
  35. package/lib/fluidModule.js.map +1 -1
  36. package/lib/index.d.ts +0 -6
  37. package/lib/index.d.ts.map +1 -1
  38. package/lib/index.js.map +1 -1
  39. package/lib/legacy/chaincode.d.ts +15 -2
  40. package/lib/legacy/chaincode.d.ts.map +1 -1
  41. package/lib/legacy/chaincode.js +3 -0
  42. package/lib/legacy/chaincode.js.map +1 -1
  43. package/lib/loader.d.ts +81 -6
  44. package/lib/loader.d.ts.map +1 -1
  45. package/lib/loader.js.map +1 -1
  46. package/lib/runtime.d.ts +2 -2
  47. package/lib/runtime.d.ts.map +1 -1
  48. package/lib/runtime.js.map +1 -1
  49. package/package.json +62 -6
  50. package/src/deltas.ts +13 -2
  51. package/src/error.ts +19 -1
  52. package/src/fluidModule.ts +3 -2
  53. package/src/index.ts +0 -11
  54. package/src/legacy/chaincode.ts +16 -6
  55. package/src/loader.ts +94 -6
  56. package/src/runtime.ts +2 -1
@@ -6,6 +6,7 @@
6
6
 
7
7
  import { ConnectionMode } from '@fluidframework/protocol-definitions';
8
8
  import { EventEmitter } from 'events';
9
+ import { FluidObject } from '@fluidframework/core-interfaces';
9
10
  import { IClient } from '@fluidframework/protocol-definitions';
10
11
  import { IClientConfiguration } from '@fluidframework/protocol-definitions';
11
12
  import { IClientDetails } from '@fluidframework/protocol-definitions';
@@ -34,6 +35,7 @@ import { ISignalMessage } from '@fluidframework/protocol-definitions';
34
35
  import { ISnapshotTree } from '@fluidframework/protocol-definitions';
35
36
  import { ISummaryTree } from '@fluidframework/protocol-definitions';
36
37
  import { ITelemetryBaseLogger } from '@fluidframework/common-definitions';
38
+ import { ITelemetryProperties } from '@fluidframework/common-definitions';
37
39
  import { ITokenClaims } from '@fluidframework/protocol-definitions';
38
40
  import { ITree } from '@fluidframework/protocol-definitions';
39
41
  import { IVersion } from '@fluidframework/protocol-definitions';
@@ -56,6 +58,16 @@ export enum BindState {
56
58
  NotBound = "NotBound"
57
59
  }
58
60
 
61
+ // @public
62
+ export namespace ConnectionState {
63
+ export type Connected = 2;
64
+ export type Connecting = 1;
65
+ export type Disconnected = 0;
66
+ }
67
+
68
+ // @public
69
+ export type ConnectionState = ConnectionState.Disconnected | ConnectionState.Connecting | ConnectionState.Connected;
70
+
59
71
  // @public
60
72
  export enum ContainerErrorType {
61
73
  dataCorruptionError = "dataCorruptionError",
@@ -114,21 +126,33 @@ export interface IConnectionDetails {
114
126
  export interface IContainer extends IEventProvider<IContainerEvents>, IFluidRouter {
115
127
  attach(request: IRequest): Promise<void>;
116
128
  readonly attachState: AttachState;
129
+ readonly audience?: IAudience;
130
+ // @alpha
131
+ readonly clientId?: string | undefined;
117
132
  close(error?: ICriticalContainerError): void;
118
133
  closeAndGetPendingLocalState(): string;
119
134
  readonly closed: boolean;
120
135
  // @deprecated
121
- readonly codeDetails: IFluidCodeDetails | undefined;
136
+ readonly codeDetails?: IFluidCodeDetails | undefined;
137
+ readonly connected?: boolean;
138
+ readonly connectionState?: ConnectionState;
122
139
  deltaManager: IDeltaManager<ISequencedDocumentMessage, IDocumentMessage>;
140
+ // @alpha
141
+ forceReadonly?(readonly: boolean): any;
123
142
  getAbsoluteUrl(relativeUrl: string): Promise<string | undefined>;
124
143
  getLoadedCodeDetails?(): IFluidCodeDetails | undefined;
125
144
  getQuorum(): IQuorum;
126
145
  getSpecifiedCodeDetails?(): IFluidCodeDetails | undefined;
127
146
  readonly isDirty: boolean;
128
147
  proposeCodeDetails(codeDetails: IFluidCodeDetails): Promise<boolean>;
148
+ readonly readOnlyInfo?: ReadOnlyInfo;
129
149
  request(request: IRequest): Promise<IResponse>;
130
150
  resolvedUrl: IResolvedUrl | undefined;
151
+ // @alpha
152
+ resume?(): void;
131
153
  serialize(): string;
154
+ // @alpha
155
+ setAutoReconnect?(reconnect: boolean): void;
132
156
  }
133
157
 
134
158
  // @public
@@ -169,7 +193,7 @@ export interface IContainerContext extends IDisposable {
169
193
  readonly quorum: IQuorum;
170
194
  // (undocumented)
171
195
  raiseContainerWarning(warning: ContainerWarning): void;
172
- readonly scope: IFluidObject;
196
+ readonly scope: IFluidObject & FluidObject;
173
197
  // (undocumented)
174
198
  readonly serviceConfiguration: IClientConfiguration | undefined;
175
199
  // (undocumented)
@@ -287,7 +311,7 @@ export interface IDeltaQueueEvents<T> extends IErrorEvent {
287
311
  (event: "idle", listener: (count: number, duration: number) => void): any;
288
312
  }
289
313
 
290
- // @public (undocumented)
314
+ // @public @deprecated (undocumented)
291
315
  export const IDeltaSender: keyof IProvideDeltaSender;
292
316
 
293
317
  // @public
@@ -296,10 +320,12 @@ export interface IDeltaSender extends IProvideDeltaSender {
296
320
  }
297
321
 
298
322
  // @public
299
- export interface IErrorBase {
323
+ export interface IErrorBase extends Partial<Error> {
300
324
  readonly errorType: string;
301
- // (undocumented)
325
+ getTelemetryProperties?(): ITelemetryProperties;
302
326
  readonly message: string;
327
+ readonly name?: string;
328
+ readonly stack?: string;
303
329
  }
304
330
 
305
331
  // @public
@@ -327,13 +353,13 @@ export interface IFluidCodeResolver {
327
353
  // @public (undocumented)
328
354
  export interface IFluidModule {
329
355
  // (undocumented)
330
- fluidExport: IFluidObject & Partial<Readonly<IProvideFluidCodeDetailsComparer>>;
356
+ fluidExport: IFluidObject & FluidObject<IRuntimeFactory & IProvideFluidCodeDetailsComparer>;
331
357
  }
332
358
 
333
- // @public (undocumented)
359
+ // @public @deprecated (undocumented)
334
360
  export const IFluidTokenProvider: keyof IProvideFluidTokenProvider;
335
361
 
336
- // @public (undocumented)
362
+ // @public @deprecated (undocumented)
337
363
  export interface IFluidTokenProvider extends IProvideFluidTokenProvider {
338
364
  // (undocumented)
339
365
  intelligence: {
@@ -356,7 +382,7 @@ export interface IHostLoader extends ILoader {
356
382
  }
357
383
 
358
384
  // @public
359
- export interface ILoader extends IFluidRouter {
385
+ export interface ILoader extends IFluidRouter, Partial<IProvideLoader> {
360
386
  resolve(request: IRequest, pendingLocalState?: string): Promise<IContainer>;
361
387
  }
362
388
 
@@ -395,18 +421,24 @@ export interface IPendingLocalState {
395
421
  url: string;
396
422
  }
397
423
 
398
- // @public (undocumented)
424
+ // @public @deprecated (undocumented)
399
425
  export interface IProvideDeltaSender {
400
- // (undocumented)
426
+ // @deprecated (undocumented)
401
427
  readonly IDeltaSender: IDeltaSender;
402
428
  }
403
429
 
404
- // @public (undocumented)
430
+ // @public @deprecated (undocumented)
405
431
  export interface IProvideFluidTokenProvider {
406
432
  // (undocumented)
407
433
  readonly IFluidTokenProvider: IFluidTokenProvider;
408
434
  }
409
435
 
436
+ // @public (undocumented)
437
+ export interface IProvideLoader {
438
+ // (undocumented)
439
+ readonly ILoader: ILoader;
440
+ }
441
+
410
442
  // @public (undocumented)
411
443
  export interface IProvideRuntimeFactory {
412
444
  // (undocumented)
package/dist/deltas.d.ts CHANGED
@@ -42,11 +42,22 @@ export interface IDeltaHandlerStrategy {
42
42
  processSignal: (message: ISignalMessage) => void;
43
43
  }
44
44
  declare module "@fluidframework/core-interfaces" {
45
- interface IFluidObject extends Readonly<Partial<IProvideDeltaSender>> {
45
+ interface IFluidObject {
46
+ /** @deprecated - use `FluidObject<IDeltaSender>` instead */
47
+ readonly IDeltaSender?: IDeltaSender;
46
48
  }
47
49
  }
50
+ /**
51
+ * @deprecated - This will be removed in a later release.
52
+ */
48
53
  export declare const IDeltaSender: keyof IProvideDeltaSender;
54
+ /**
55
+ * @deprecated - This will be removed in a later release.
56
+ */
49
57
  export interface IProvideDeltaSender {
58
+ /**
59
+ * @deprecated - This will be removed in a later release.
60
+ */
50
61
  readonly IDeltaSender: IDeltaSender;
51
62
  }
52
63
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"deltas.d.ts","sourceRoot":"","sources":["../src/deltas.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"deltas.d.ts","sourceRoot":"","sources":["../src/deltas.ts"],"names":[],"mappings":"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"}
package/dist/deltas.js CHANGED
@@ -5,5 +5,8 @@
5
5
  */
6
6
  Object.defineProperty(exports, "__esModule", { value: true });
7
7
  exports.IDeltaSender = void 0;
8
+ /**
9
+ * @deprecated - This will be removed in a later release.
10
+ */
8
11
  exports.IDeltaSender = "IDeltaSender";
9
12
  //# sourceMappingURL=deltas.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"deltas.js","sourceRoot":"","sources":["../src/deltas.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AA2DU,QAAA,YAAY,GAA8B,cAAc,CAAC","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\nimport { IDisposable, IEventProvider, IEvent, IErrorEvent } from \"@fluidframework/common-definitions\";\nimport {\n ConnectionMode,\n IClientConfiguration,\n IClientDetails,\n IDocumentMessage,\n ISequencedDocumentMessage,\n ISignalClient,\n ISignalMessage,\n ITokenClaims,\n} from \"@fluidframework/protocol-definitions\";\n\n/**\n * Contract representing the result of a newly established connection to the server for syncing deltas\n */\nexport interface IConnectionDetails {\n clientId: string;\n claims: ITokenClaims;\n existing: boolean;\n mode: ConnectionMode;\n version: string;\n initialClients: ISignalClient[];\n /**\n * @deprecated - please use `serviceConfiguration.maxMessageSize`\n */\n maxMessageSize: number;\n serviceConfiguration: IClientConfiguration;\n /**\n * Last known sequence number to ordering service at the time of connection\n * It may lap actual last sequence number (quite a bit, if container is very active).\n * But it's best information for client to figure out how far it is behind, at least\n * for \"read\" connections. \"write\" connections may use own \"join\" op to similar information,\n * that is likely to be more up-to-date.\n */\n checkpointSequenceNumber: number | undefined;\n}\n\n/**\n * Interface used to define a strategy for handling incoming delta messages\n */\nexport interface IDeltaHandlerStrategy {\n /**\n * Processes the message.\n */\n process: (message: ISequencedDocumentMessage) => void;\n\n /**\n * Processes the signal.\n */\n processSignal: (message: ISignalMessage) => void;\n}\n\ndeclare module \"@fluidframework/core-interfaces\" {\n // eslint-disable-next-line @typescript-eslint/no-empty-interface\n interface IFluidObject extends Readonly<Partial<IProvideDeltaSender>> { }\n}\n\nexport const IDeltaSender: keyof IProvideDeltaSender = \"IDeltaSender\";\n\nexport interface IProvideDeltaSender {\n readonly IDeltaSender: IDeltaSender;\n}\n\n/**\n * Contract supporting delivery of outbound messages to the server\n */\nexport interface IDeltaSender extends IProvideDeltaSender {\n /**\n * Flush all pending messages through the outbound queue\n */\n flush(): void;\n}\n\n/** Events emitted by the Delta Manager */\nexport interface IDeltaManagerEvents extends IEvent {\n (event: \"prepareSend\", listener: (messageBuffer: any[]) => void);\n (event: \"submitOp\", listener: (message: IDocumentMessage) => void);\n (event: \"op\", listener: (message: ISequencedDocumentMessage, processingTime: number) => void);\n (event: \"allSentOpsAckd\", listener: () => void);\n (event: \"pong\" | \"processTime\", listener: (latency: number) => void);\n /**\n * The connect event fires once we've received the connect_document_success message from the\n * server. This happens prior to the client's join message (if there is a join message).\n */\n (event: \"connect\", listener: (details: IConnectionDetails, opsBehind?: number) => void);\n (event: \"disconnect\", listener: (reason: string) => void);\n (event: \"readonly\", listener: (readonly: boolean) => void);\n}\n\n/**\n * Manages the transmission of ops between the runtime and storage.\n */\nexport interface IDeltaManager<T, U> extends IEventProvider<IDeltaManagerEvents>, IDeltaSender, IDisposable {\n /** The queue of inbound delta messages */\n readonly inbound: IDeltaQueue<T>;\n\n /** The queue of outbound delta messages */\n readonly outbound: IDeltaQueue<U[]>;\n\n /** The queue of inbound delta signals */\n readonly inboundSignal: IDeltaQueue<ISignalMessage>;\n\n /** The current minimum sequence number */\n readonly minimumSequenceNumber: number;\n\n /** The last sequence number processed by the delta manager */\n readonly lastSequenceNumber: number;\n\n /** The last message processed by the delta manager */\n readonly lastMessage: ISequencedDocumentMessage | undefined;\n\n /** The latest sequence number the delta manager is aware of */\n readonly lastKnownSeqNumber: number;\n\n /** The initial sequence number set when attaching the op handler */\n readonly initialSequenceNumber: number;\n\n /**\n * Tells if current connection has checkpoint information.\n * I.e. we know how far behind the client was at the time of establishing connection\n */\n readonly hasCheckpointSequenceNumber: boolean;\n\n /** Details of client */\n readonly clientDetails: IClientDetails;\n\n /** Protocol version being used to communicate with the service */\n readonly version: string;\n\n /** Max message size allowed to the delta manager */\n readonly maxMessageSize: number;\n\n /** Service configuration provided by the service. */\n readonly serviceConfiguration: IClientConfiguration | undefined;\n\n /** Flag to indicate whether the client can write or not. */\n readonly active: boolean;\n\n /**\n * Tells if container is in read-only mode.\n * Data stores should listen for \"readonly\" notifications and disallow user making changes to data stores.\n * Readonly state can be because of no storage write permission,\n * or due to host forcing readonly mode for container.\n *\n * We do not differentiate here between no write access to storage vs. host disallowing changes to container -\n * in all cases container runtime and data stores should respect readonly state and not allow local changes.\n *\n * It is undefined if we have not yet established websocket connection\n * and do not know if user has write access to a file.\n * @deprecated - use readOnlyInfo\n */\n readonly readonly?: boolean;\n\n readonly readOnlyInfo: ReadOnlyInfo;\n\n /** Terminate the connection to storage */\n close(): void;\n\n /** Submit a signal to the service to be broadcast to other connected clients, but not persisted */\n submitSignal(content: any): void;\n}\n\n/** Events emitted by a Delta Queue */\nexport interface IDeltaQueueEvents<T> extends IErrorEvent {\n (event: \"push\" | \"op\", listener: (task: T) => void);\n /**\n * @param count - number of events (T) processed before becoming idle\n * @param duration - amount of time it took to process elements (milliseconds).\n */\n (event: \"idle\", listener: (count: number, duration: number) => void);\n}\n\n/**\n * Queue of ops to be sent to or processed from storage\n */\nexport interface IDeltaQueue<T> extends IEventProvider<IDeltaQueueEvents<T>>, IDisposable {\n /**\n * Flag indicating whether or not the queue was paused\n */\n paused: boolean;\n\n /**\n * The number of messages remaining in the queue\n */\n length: number;\n\n /**\n * Flag indicating whether or not the queue is idle\n */\n idle: boolean;\n\n /**\n * Pauses processing on the queue\n * @returns A promise which resolves when processing has been paused.\n */\n pause(): Promise<void>;\n\n /**\n * Resumes processing on the queue\n */\n resume(): void;\n\n /**\n * Peeks at the next message in the queue\n */\n peek(): T | undefined;\n\n /**\n * Returns all the items in the queue as an array. Does not remove them from the queue.\n */\n toArray(): T[];\n\n waitTillProcessingDone(): Promise<void>;\n}\n\nexport type ReadOnlyInfo = {\n readonly readonly: false | undefined;\n} | {\n readonly readonly: true;\n /** read-only because forceReadOnly() was called */\n readonly forced: boolean;\n /** read-only because client does not have write permissions for document */\n readonly permissions: boolean | undefined;\n /** read-only with no delta stream connection */\n readonly storageOnly: boolean;\n};\n"]}
1
+ {"version":3,"file":"deltas.js","sourceRoot":"","sources":["../src/deltas.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AA6DH;;GAEG;AACU,QAAA,YAAY,GAA8B,cAAc,CAAC","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\nimport { IDisposable, IEventProvider, IEvent, IErrorEvent } from \"@fluidframework/common-definitions\";\nimport {\n ConnectionMode,\n IClientConfiguration,\n IClientDetails,\n IDocumentMessage,\n ISequencedDocumentMessage,\n ISignalClient,\n ISignalMessage,\n ITokenClaims,\n} from \"@fluidframework/protocol-definitions\";\n\n/**\n * Contract representing the result of a newly established connection to the server for syncing deltas\n */\nexport interface IConnectionDetails {\n clientId: string;\n claims: ITokenClaims;\n existing: boolean;\n mode: ConnectionMode;\n version: string;\n initialClients: ISignalClient[];\n /**\n * @deprecated - please use `serviceConfiguration.maxMessageSize`\n */\n maxMessageSize: number;\n serviceConfiguration: IClientConfiguration;\n /**\n * Last known sequence number to ordering service at the time of connection\n * It may lap actual last sequence number (quite a bit, if container is very active).\n * But it's best information for client to figure out how far it is behind, at least\n * for \"read\" connections. \"write\" connections may use own \"join\" op to similar information,\n * that is likely to be more up-to-date.\n */\n checkpointSequenceNumber: number | undefined;\n}\n\n/**\n * Interface used to define a strategy for handling incoming delta messages\n */\nexport interface IDeltaHandlerStrategy {\n /**\n * Processes the message.\n */\n process: (message: ISequencedDocumentMessage) => void;\n\n /**\n * Processes the signal.\n */\n processSignal: (message: ISignalMessage) => void;\n}\n\ndeclare module \"@fluidframework/core-interfaces\" {\n interface IFluidObject {\n /** @deprecated - use `FluidObject<IDeltaSender>` instead */\n readonly IDeltaSender?: IDeltaSender\n }\n}\n\n/**\n * @deprecated - This will be removed in a later release.\n */\nexport const IDeltaSender: keyof IProvideDeltaSender = \"IDeltaSender\";\n\n/**\n * @deprecated - This will be removed in a later release.\n */\nexport interface IProvideDeltaSender {\n /**\n * @deprecated - This will be removed in a later release.\n */\n readonly IDeltaSender: IDeltaSender;\n}\n\n/**\n * Contract supporting delivery of outbound messages to the server\n */\nexport interface IDeltaSender extends IProvideDeltaSender {\n /**\n * Flush all pending messages through the outbound queue\n */\n flush(): void;\n}\n\n/** Events emitted by the Delta Manager */\nexport interface IDeltaManagerEvents extends IEvent {\n (event: \"prepareSend\", listener: (messageBuffer: any[]) => void);\n (event: \"submitOp\", listener: (message: IDocumentMessage) => void);\n (event: \"op\", listener: (message: ISequencedDocumentMessage, processingTime: number) => void);\n (event: \"allSentOpsAckd\", listener: () => void);\n (event: \"pong\" | \"processTime\", listener: (latency: number) => void);\n /**\n * The connect event fires once we've received the connect_document_success message from the\n * server. This happens prior to the client's join message (if there is a join message).\n */\n (event: \"connect\", listener: (details: IConnectionDetails, opsBehind?: number) => void);\n (event: \"disconnect\", listener: (reason: string) => void);\n (event: \"readonly\", listener: (readonly: boolean) => void);\n}\n\n/**\n * Manages the transmission of ops between the runtime and storage.\n */\nexport interface IDeltaManager<T, U> extends IEventProvider<IDeltaManagerEvents>, IDeltaSender, IDisposable {\n /** The queue of inbound delta messages */\n readonly inbound: IDeltaQueue<T>;\n\n /** The queue of outbound delta messages */\n readonly outbound: IDeltaQueue<U[]>;\n\n /** The queue of inbound delta signals */\n readonly inboundSignal: IDeltaQueue<ISignalMessage>;\n\n /** The current minimum sequence number */\n readonly minimumSequenceNumber: number;\n\n /** The last sequence number processed by the delta manager */\n readonly lastSequenceNumber: number;\n\n /** The last message processed by the delta manager */\n readonly lastMessage: ISequencedDocumentMessage | undefined;\n\n /** The latest sequence number the delta manager is aware of */\n readonly lastKnownSeqNumber: number;\n\n /** The initial sequence number set when attaching the op handler */\n readonly initialSequenceNumber: number;\n\n /**\n * Tells if current connection has checkpoint information.\n * I.e. we know how far behind the client was at the time of establishing connection\n */\n readonly hasCheckpointSequenceNumber: boolean;\n\n /** Details of client */\n readonly clientDetails: IClientDetails;\n\n /** Protocol version being used to communicate with the service */\n readonly version: string;\n\n /** Max message size allowed to the delta manager */\n readonly maxMessageSize: number;\n\n /** Service configuration provided by the service. */\n readonly serviceConfiguration: IClientConfiguration | undefined;\n\n /** Flag to indicate whether the client can write or not. */\n readonly active: boolean;\n\n /**\n * Tells if container is in read-only mode.\n * Data stores should listen for \"readonly\" notifications and disallow user making changes to data stores.\n * Readonly state can be because of no storage write permission,\n * or due to host forcing readonly mode for container.\n *\n * We do not differentiate here between no write access to storage vs. host disallowing changes to container -\n * in all cases container runtime and data stores should respect readonly state and not allow local changes.\n *\n * It is undefined if we have not yet established websocket connection\n * and do not know if user has write access to a file.\n * @deprecated - use readOnlyInfo\n */\n readonly readonly?: boolean;\n\n readonly readOnlyInfo: ReadOnlyInfo;\n\n /** Terminate the connection to storage */\n close(): void;\n\n /** Submit a signal to the service to be broadcast to other connected clients, but not persisted */\n submitSignal(content: any): void;\n}\n\n/** Events emitted by a Delta Queue */\nexport interface IDeltaQueueEvents<T> extends IErrorEvent {\n (event: \"push\" | \"op\", listener: (task: T) => void);\n /**\n * @param count - number of events (T) processed before becoming idle\n * @param duration - amount of time it took to process elements (milliseconds).\n */\n (event: \"idle\", listener: (count: number, duration: number) => void);\n}\n\n/**\n * Queue of ops to be sent to or processed from storage\n */\nexport interface IDeltaQueue<T> extends IEventProvider<IDeltaQueueEvents<T>>, IDisposable {\n /**\n * Flag indicating whether or not the queue was paused\n */\n paused: boolean;\n\n /**\n * The number of messages remaining in the queue\n */\n length: number;\n\n /**\n * Flag indicating whether or not the queue is idle\n */\n idle: boolean;\n\n /**\n * Pauses processing on the queue\n * @returns A promise which resolves when processing has been paused.\n */\n pause(): Promise<void>;\n\n /**\n * Resumes processing on the queue\n */\n resume(): void;\n\n /**\n * Peeks at the next message in the queue\n */\n peek(): T | undefined;\n\n /**\n * Returns all the items in the queue as an array. Does not remove them from the queue.\n */\n toArray(): T[];\n\n waitTillProcessingDone(): Promise<void>;\n}\n\nexport type ReadOnlyInfo = {\n readonly readonly: false | undefined;\n} | {\n readonly readonly: true;\n /** read-only because forceReadOnly() was called */\n readonly forced: boolean;\n /** read-only because client does not have write permissions for document */\n readonly permissions: boolean | undefined;\n /** read-only with no delta stream connection */\n readonly storageOnly: boolean;\n};\n"]}
package/dist/error.d.ts CHANGED
@@ -2,6 +2,7 @@
2
2
  * Copyright (c) Microsoft Corporation and contributors. All rights reserved.
3
3
  * Licensed under the MIT License.
4
4
  */
5
+ import { ITelemetryProperties } from "@fluidframework/common-definitions";
5
6
  /**
6
7
  * Different error types the Container may report out to the Host
7
8
  */
@@ -30,14 +31,29 @@ export declare enum ContainerErrorType {
30
31
  /**
31
32
  * Base interface for all errors and warnings at container level
32
33
  */
33
- export interface IErrorBase {
34
+ export interface IErrorBase extends Partial<Error> {
34
35
  /** errorType is a union of error types from
35
36
  * - container
36
37
  * - runtime
37
38
  * - drivers
38
39
  */
39
40
  readonly errorType: string;
41
+ /**
42
+ * See Error.message
43
+ * Privacy Note - This is a freeform string that we may not control in all cases (e.g. a dependency throws an error)
44
+ * If there are known cases where this contains privacy-sensitive data it will be tagged and included in the result
45
+ * of getTelemetryProperties. When logging, consider fetching it that way rather than straight from this field.
46
+ */
40
47
  readonly message: string;
48
+ /** See Error.name */
49
+ readonly name?: string;
50
+ /** See Error.stack */
51
+ readonly stack?: string;
52
+ /**
53
+ * Returns all properties of this error object that are either safe to log
54
+ * or explicitly tagged as containing privacy-sensitive data.
55
+ */
56
+ getTelemetryProperties?(): ITelemetryProperties;
41
57
  }
42
58
  /**
43
59
  * Represents warnings raised on container.
@@ -1 +1 @@
1
- {"version":3,"file":"error.d.ts","sourceRoot":"","sources":["../src/error.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;GAEG;AACH,oBAAY,kBAAkB;IAC1B;;OAEG;IACH,YAAY,iBAAiB;IAE7B;;OAEG;IACH,eAAe,oBAAoB;IAEnC;;OAEG;IACH,mBAAmB,wBAAwB;IAE3C;;OAEG;IACH,mBAAmB,wBAAwB;IAE3C;;OAEG;IACF,UAAU,eAAe;CACzB;AAEL;;GAEG;AACH,MAAM,WAAW,UAAU;IACvB;;;;OAIG;IACH,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC5B;AAED;;GAEG;AACH,MAAM,WAAW,gBAAiB,SAAQ,UAAU;IAChD;;;OAGG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;CACpB;AAED;;GAEG;AACH,oBAAY,uBAAuB,GAAG,UAAU,CAAC;AAEjD;;GAEG;AACH,MAAM,WAAW,aAAc,SAAQ,UAAU;IAC7C,QAAQ,CAAC,SAAS,EAAE,kBAAkB,CAAC,YAAY,CAAC;IACpD,KAAK,CAAC,EAAE,GAAG,CAAC;CACf;AAED;;GAEG;AACF,MAAM,WAAW,WAAY,SAAQ,UAAU;IAC5C,QAAQ,CAAC,SAAS,EAAE,kBAAkB,CAAC,UAAU,CAAC;CACrD;AAED;;GAEG;AACH,MAAM,WAAW,kBAAmB,SAAQ,UAAU;IAClD,QAAQ,CAAC,SAAS,EAAE,kBAAkB,CAAC,eAAe,CAAC;IACvD,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;CACtC"}
1
+ {"version":3,"file":"error.d.ts","sourceRoot":"","sources":["../src/error.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAE1E;;GAEG;AACH,oBAAY,kBAAkB;IAC1B;;OAEG;IACH,YAAY,iBAAiB;IAE7B;;OAEG;IACH,eAAe,oBAAoB;IAEnC;;OAEG;IACH,mBAAmB,wBAAwB;IAE3C;;OAEG;IACH,mBAAmB,wBAAwB;IAE3C;;OAEG;IACF,UAAU,eAAe;CACzB;AAEL;;GAEG;AACH,MAAM,WAAW,UAAW,SAAQ,OAAO,CAAC,KAAK,CAAC;IAC9C;;;;OAIG;IACH,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAE3B;;;;;OAKG;IACH,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,qBAAqB;IACrB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,sBAAsB;IACtB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB;;;OAGG;IACH,sBAAsB,CAAC,IAAI,oBAAoB,CAAC;CACnD;AAED;;GAEG;AACH,MAAM,WAAW,gBAAiB,SAAQ,UAAU;IAChD;;;OAGG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;CACpB;AAED;;GAEG;AACH,oBAAY,uBAAuB,GAAG,UAAU,CAAC;AAEjD;;GAEG;AACH,MAAM,WAAW,aAAc,SAAQ,UAAU;IAC7C,QAAQ,CAAC,SAAS,EAAE,kBAAkB,CAAC,YAAY,CAAC;IACpD,KAAK,CAAC,EAAE,GAAG,CAAC;CACf;AAED;;GAEG;AACF,MAAM,WAAW,WAAY,SAAQ,UAAU;IAC5C,QAAQ,CAAC,SAAS,EAAE,kBAAkB,CAAC,UAAU,CAAC;CACrD;AAED;;GAEG;AACH,MAAM,WAAW,kBAAmB,SAAQ,UAAU;IAClD,QAAQ,CAAC,SAAS,EAAE,kBAAkB,CAAC,eAAe,CAAC;IACvD,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;CACtC"}
package/dist/error.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"error.js","sourceRoot":"","sources":["../src/error.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAEH;;GAEG;AACH,IAAY,kBAyBP;AAzBL,WAAY,kBAAkB;IAC1B;;OAEG;IACH,mDAA6B,CAAA;IAE7B;;OAEG;IACH,yDAAmC,CAAA;IAEnC;;OAEG;IACH,iEAA2C,CAAA;IAE3C;;OAEG;IACH,iEAA2C,CAAA;IAE3C;;OAEG;IACF,+CAAyB,CAAA;AAC1B,CAAC,EAzBO,kBAAkB,GAAlB,0BAAkB,KAAlB,0BAAkB,QAyBzB","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\n/**\n * Different error types the Container may report out to the Host\n */\nexport enum ContainerErrorType {\n /**\n * Some error, most likely an exception caught by runtime and propagated to container as critical error\n */\n genericError = \"genericError\",\n\n /**\n * Throttling error from server. Server is busy and is asking not to reconnect for some time\n */\n throttlingError = \"throttlingError\",\n\n /**\n * Data loss error detected by Container / DeltaManager. Likely points to storage issue.\n */\n dataCorruptionError = \"dataCorruptionError\",\n\n /**\n * Error encountered when processing an operation. May correlate with data corruption.\n */\n dataProcessingError = \"dataProcessingError\",\n\n /**\n * Error indicating an API is being used improperly resulting in an invalid operation.\n */\n usageError = \"usageError\",\n }\n\n/**\n * Base interface for all errors and warnings at container level\n */\nexport interface IErrorBase {\n /** errorType is a union of error types from\n * - container\n * - runtime\n * - drivers\n */\n readonly errorType: string;\n readonly message: string;\n}\n\n/**\n * Represents warnings raised on container.\n */\nexport interface ContainerWarning extends IErrorBase {\n /**\n * Whether this error has already been logged. Used to avoid logging errors twice.\n * Default is false.\n */\n logged?: boolean;\n}\n\n/**\n * Represents errors raised on container.\n */\nexport type ICriticalContainerError = IErrorBase;\n\n/**\n * Generic wrapper for an unrecognized/uncategorized error object\n */\nexport interface IGenericError extends IErrorBase {\n readonly errorType: ContainerErrorType.genericError;\n error?: any;\n}\n\n/**\n * Error indicating an API is being used improperly resulting in an invalid operation.\n */\n export interface IUsageError extends IErrorBase {\n readonly errorType: ContainerErrorType.usageError;\n}\n\n/**\n * Warning emitted when requests to storage are being throttled\n */\nexport interface IThrottlingWarning extends IErrorBase {\n readonly errorType: ContainerErrorType.throttlingError;\n readonly retryAfterSeconds: number;\n}\n"]}
1
+ {"version":3,"file":"error.js","sourceRoot":"","sources":["../src/error.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAIH;;GAEG;AACH,IAAY,kBAyBP;AAzBL,WAAY,kBAAkB;IAC1B;;OAEG;IACH,mDAA6B,CAAA;IAE7B;;OAEG;IACH,yDAAmC,CAAA;IAEnC;;OAEG;IACH,iEAA2C,CAAA;IAE3C;;OAEG;IACH,iEAA2C,CAAA;IAE3C;;OAEG;IACF,+CAAyB,CAAA;AAC1B,CAAC,EAzBO,kBAAkB,GAAlB,0BAAkB,KAAlB,0BAAkB,QAyBzB","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\nimport { ITelemetryProperties } from \"@fluidframework/common-definitions\";\n\n/**\n * Different error types the Container may report out to the Host\n */\nexport enum ContainerErrorType {\n /**\n * Some error, most likely an exception caught by runtime and propagated to container as critical error\n */\n genericError = \"genericError\",\n\n /**\n * Throttling error from server. Server is busy and is asking not to reconnect for some time\n */\n throttlingError = \"throttlingError\",\n\n /**\n * Data loss error detected by Container / DeltaManager. Likely points to storage issue.\n */\n dataCorruptionError = \"dataCorruptionError\",\n\n /**\n * Error encountered when processing an operation. May correlate with data corruption.\n */\n dataProcessingError = \"dataProcessingError\",\n\n /**\n * Error indicating an API is being used improperly resulting in an invalid operation.\n */\n usageError = \"usageError\",\n }\n\n/**\n * Base interface for all errors and warnings at container level\n */\nexport interface IErrorBase extends Partial<Error> {\n /** errorType is a union of error types from\n * - container\n * - runtime\n * - drivers\n */\n readonly errorType: string;\n\n /**\n * See Error.message\n * Privacy Note - This is a freeform string that we may not control in all cases (e.g. a dependency throws an error)\n * If there are known cases where this contains privacy-sensitive data it will be tagged and included in the result\n * of getTelemetryProperties. When logging, consider fetching it that way rather than straight from this field.\n */\n readonly message: string;\n /** See Error.name */\n readonly name?: string;\n /** See Error.stack */\n readonly stack?: string;\n /**\n * Returns all properties of this error object that are either safe to log\n * or explicitly tagged as containing privacy-sensitive data.\n */\n getTelemetryProperties?(): ITelemetryProperties;\n}\n\n/**\n * Represents warnings raised on container.\n */\nexport interface ContainerWarning extends IErrorBase {\n /**\n * Whether this error has already been logged. Used to avoid logging errors twice.\n * Default is false.\n */\n logged?: boolean;\n}\n\n/**\n * Represents errors raised on container.\n */\nexport type ICriticalContainerError = IErrorBase;\n\n/**\n * Generic wrapper for an unrecognized/uncategorized error object\n */\nexport interface IGenericError extends IErrorBase {\n readonly errorType: ContainerErrorType.genericError;\n error?: any;\n}\n\n/**\n * Error indicating an API is being used improperly resulting in an invalid operation.\n */\n export interface IUsageError extends IErrorBase {\n readonly errorType: ContainerErrorType.usageError;\n}\n\n/**\n * Warning emitted when requests to storage are being throttled\n */\nexport interface IThrottlingWarning extends IErrorBase {\n readonly errorType: ContainerErrorType.throttlingError;\n readonly retryAfterSeconds: number;\n}\n"]}
@@ -2,8 +2,9 @@
2
2
  * Copyright (c) Microsoft Corporation and contributors. All rights reserved.
3
3
  * Licensed under the MIT License.
4
4
  */
5
- import { IFluidObject, IProvideFluidCodeDetailsComparer } from "@fluidframework/core-interfaces";
5
+ import { FluidObject, IFluidObject, IProvideFluidCodeDetailsComparer } from "@fluidframework/core-interfaces";
6
+ import { IRuntimeFactory } from "./runtime";
6
7
  export interface IFluidModule {
7
- fluidExport: IFluidObject & Partial<Readonly<IProvideFluidCodeDetailsComparer>>;
8
+ fluidExport: IFluidObject & FluidObject<IRuntimeFactory & IProvideFluidCodeDetailsComparer>;
8
9
  }
9
10
  //# sourceMappingURL=fluidModule.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"fluidModule.d.ts","sourceRoot":"","sources":["../src/fluidModule.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,YAAY,EAAE,gCAAgC,EAAE,MAAM,iCAAiC,CAAC;AAEjG,MAAM,WAAW,YAAY;IACzB,WAAW,EAAE,YAAY,GAAG,OAAO,CAAC,QAAQ,CAAC,gCAAgC,CAAC,CAAC,CAAC;CACnF"}
1
+ {"version":3,"file":"fluidModule.d.ts","sourceRoot":"","sources":["../src/fluidModule.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,gCAAgC,EAAE,MAAM,iCAAiC,CAAC;AAC9G,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAE5C,MAAM,WAAW,YAAY;IACzB,WAAW,EAAE,YAAY,GAAG,WAAW,CAAC,eAAe,GAAG,gCAAgC,CAAC,CAAC;CAC/F"}
@@ -1 +1 @@
1
- {"version":3,"file":"fluidModule.js","sourceRoot":"","sources":["../src/fluidModule.ts"],"names":[],"mappings":";AAAA;;;GAGG","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\nimport { IFluidObject, IProvideFluidCodeDetailsComparer } from \"@fluidframework/core-interfaces\";\n\nexport interface IFluidModule {\n fluidExport: IFluidObject & Partial<Readonly<IProvideFluidCodeDetailsComparer>>;\n}\n"]}
1
+ {"version":3,"file":"fluidModule.js","sourceRoot":"","sources":["../src/fluidModule.ts"],"names":[],"mappings":";AAAA;;;GAGG","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\nimport { FluidObject, IFluidObject, IProvideFluidCodeDetailsComparer } from \"@fluidframework/core-interfaces\";\nimport { IRuntimeFactory } from \"./runtime\";\n\nexport interface IFluidModule {\n fluidExport: IFluidObject & FluidObject<IRuntimeFactory & IProvideFluidCodeDetailsComparer>;\n}\n"]}
package/dist/index.d.ts CHANGED
@@ -2,12 +2,6 @@
2
2
  * Copyright (c) Microsoft Corporation and contributors. All rights reserved.
3
3
  * Licensed under the MIT License.
4
4
  */
5
- import { IProvideRuntimeFactory } from "./runtime";
6
- import { IProvideFluidTokenProvider } from "./tokenProvider";
7
- declare module "@fluidframework/core-interfaces" {
8
- interface IFluidObject extends Readonly<Partial<IProvideRuntimeFactory & IProvideFluidTokenProvider>> {
9
- }
10
- }
11
5
  export * from "./audience";
12
6
  export * from "./browserPackage";
13
7
  export * from "./legacy/chaincode";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,sBAAsB,EAAE,MAAM,WAAW,CAAC;AACnD,OAAO,EAAE,0BAA0B,EAAE,MAAM,iBAAiB,CAAC;AAE7D,OAAO,QAAQ,iCAAiC,CAAC;IAE7C,UAAiB,YAAa,SAAQ,QAAQ,CAAC,OAAO,CAClD,sBAAsB,GACtB,0BAA0B,CAAC,CAAC;KAAI;CACvC;AAED,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC;AAEjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,WAAW,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC;AAEjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,WAAW,CAAC"}
package/dist/index.js CHANGED
@@ -1,8 +1,4 @@
1
1
  "use strict";
2
- /*!
3
- * Copyright (c) Microsoft Corporation and contributors. All rights reserved.
4
- * Licensed under the MIT License.
5
- */
6
2
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
7
3
  if (k2 === undefined) k2 = k;
8
4
  Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
@@ -14,6 +10,10 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
10
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
11
  };
16
12
  Object.defineProperty(exports, "__esModule", { value: true });
13
+ /*!
14
+ * Copyright (c) Microsoft Corporation and contributors. All rights reserved.
15
+ * Licensed under the MIT License.
16
+ */
17
17
  __exportStar(require("./audience"), exports);
18
18
  __exportStar(require("./browserPackage"), exports);
19
19
  // eslint-disable-next-line import/no-internal-modules
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;;;;;;;;;AAYH,6CAA2B;AAC3B,mDAAiC;AACjC,sDAAsD;AACtD,qDAAmC;AACnC,2CAAyB;AACzB,0CAAwB;AACxB,2CAAyB;AACzB,gDAA8B;AAC9B,gDAA8B;AAC9B,4CAA0B","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\nimport { IProvideRuntimeFactory } from \"./runtime\";\nimport { IProvideFluidTokenProvider } from \"./tokenProvider\";\n\ndeclare module \"@fluidframework/core-interfaces\" {\n // eslint-disable-next-line @typescript-eslint/no-empty-interface\n export interface IFluidObject extends Readonly<Partial<\n IProvideRuntimeFactory &\n IProvideFluidTokenProvider>> { }\n}\n\nexport * from \"./audience\";\nexport * from \"./browserPackage\";\n// eslint-disable-next-line import/no-internal-modules\nexport * from \"./legacy/chaincode\";\nexport * from \"./deltas\";\nexport * from \"./error\";\nexport * from \"./loader\";\nexport * from \"./fluidModule\";\nexport * from \"./proxyLoader\";\nexport * from \"./runtime\";\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA;;;GAGG;AACH,6CAA2B;AAC3B,mDAAiC;AACjC,sDAAsD;AACtD,qDAAmC;AACnC,2CAAyB;AACzB,0CAAwB;AACxB,2CAAyB;AACzB,gDAA8B;AAC9B,gDAA8B;AAC9B,4CAA0B","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\nexport * from \"./audience\";\nexport * from \"./browserPackage\";\n// eslint-disable-next-line import/no-internal-modules\nexport * from \"./legacy/chaincode\";\nexport * from \"./deltas\";\nexport * from \"./error\";\nexport * from \"./loader\";\nexport * from \"./fluidModule\";\nexport * from \"./proxyLoader\";\nexport * from \"./runtime\";\n"]}
@@ -2,18 +2,31 @@
2
2
  * Copyright (c) Microsoft Corporation and contributors. All rights reserved.
3
3
  * Licensed under the MIT License.
4
4
  */
5
- import { IProvideRuntimeFactory } from "../runtime";
5
+ import { IRuntimeFactory } from "../runtime";
6
+ /**
7
+ * @deprecated - This will be removed in a later release.
8
+ */
6
9
  export declare const IFluidTokenProvider: keyof IProvideFluidTokenProvider;
10
+ /**
11
+ * @deprecated - This will be removed in a later release.
12
+ */
7
13
  export interface IProvideFluidTokenProvider {
8
14
  readonly IFluidTokenProvider: IFluidTokenProvider;
9
15
  }
16
+ /**
17
+ * @deprecated - This will be removed in a later release.
18
+ */
10
19
  export interface IFluidTokenProvider extends IProvideFluidTokenProvider {
11
20
  intelligence: {
12
21
  [service: string]: any;
13
22
  };
14
23
  }
15
24
  declare module "@fluidframework/core-interfaces" {
16
- interface IFluidObject extends Readonly<Partial<IProvideRuntimeFactory & IProvideFluidTokenProvider>> {
25
+ interface IFluidObject {
26
+ /** @deprecated - use `FluidObject<IRuntimeFactory>` instead */
27
+ readonly IRuntimeFactory?: IRuntimeFactory;
28
+ /** @deprecated - use `FluidObject<IFluidTokenProvider>` instead */
29
+ readonly IFluidTokenProvider?: IFluidTokenProvider;
17
30
  }
18
31
  }
19
32
  //# sourceMappingURL=chaincode.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"chaincode.d.ts","sourceRoot":"","sources":["../../src/legacy/chaincode.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAC;AAEpD,eAAO,MAAM,mBAAmB,EAAE,MAAM,0BAAkD,CAAC;AAE3F,MAAM,WAAW,0BAA0B;IACvC,QAAQ,CAAC,mBAAmB,EAAE,mBAAmB,CAAC;CACrD;AAED,MAAM,WAAW,mBAAoB,SAAQ,0BAA0B;IACnE,YAAY,EAAE;QAAE,CAAC,OAAO,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,CAAC;CAC5C;AAED,OAAO,QAAQ,iCAAiC,CAAC;IAE7C,UAAiB,YAAa,SAAQ,QAAQ,CAAC,OAAO,CAClD,sBAAsB,GACtB,0BAA0B,CAAC,CAAC;KAAI;CAEvC"}
1
+ {"version":3,"file":"chaincode.d.ts","sourceRoot":"","sources":["../../src/legacy/chaincode.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAE7C;;GAEG;AACH,eAAO,MAAM,mBAAmB,EAAE,MAAM,0BAAkD,CAAC;AAE3F;;GAEG;AACH,MAAM,WAAW,0BAA0B;IACvC,QAAQ,CAAC,mBAAmB,EAAE,mBAAmB,CAAC;CACrD;AAED;;GAEG;AACH,MAAM,WAAW,mBAAoB,SAAQ,0BAA0B;IACnE,YAAY,EAAE;QAAE,CAAC,OAAO,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,CAAC;CAC5C;AAED,OAAO,QAAQ,iCAAiC,CAAC;IAC7C,UAAiB,YAAY;QACzB,+DAA+D;QAC/D,QAAQ,CAAC,eAAe,CAAC,EAAE,eAAe,CAAC;QAC3C,mEAAmE;QACnE,QAAQ,CAAC,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;KACtD;CACJ"}
@@ -5,5 +5,8 @@
5
5
  */
6
6
  Object.defineProperty(exports, "__esModule", { value: true });
7
7
  exports.IFluidTokenProvider = void 0;
8
+ /**
9
+ * @deprecated - This will be removed in a later release.
10
+ */
8
11
  exports.IFluidTokenProvider = "IFluidTokenProvider";
9
12
  //# sourceMappingURL=chaincode.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"chaincode.js","sourceRoot":"","sources":["../../src/legacy/chaincode.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAIU,QAAA,mBAAmB,GAAqC,qBAAqB,CAAC","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\nimport { IProvideRuntimeFactory } from \"../runtime\";\n\nexport const IFluidTokenProvider: keyof IProvideFluidTokenProvider = \"IFluidTokenProvider\";\n\nexport interface IProvideFluidTokenProvider {\n readonly IFluidTokenProvider: IFluidTokenProvider;\n}\n\nexport interface IFluidTokenProvider extends IProvideFluidTokenProvider {\n intelligence: { [service: string]: any };\n}\n\ndeclare module \"@fluidframework/core-interfaces\" {\n /* eslint-disable @typescript-eslint/no-empty-interface */\n export interface IFluidObject extends Readonly<Partial<\n IProvideRuntimeFactory &\n IProvideFluidTokenProvider>> { }\n /* eslint-enable @typescript-eslint/no-empty-interface */\n}\n"]}
1
+ {"version":3,"file":"chaincode.js","sourceRoot":"","sources":["../../src/legacy/chaincode.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAIH;;GAEG;AACU,QAAA,mBAAmB,GAAqC,qBAAqB,CAAC","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\nimport { IRuntimeFactory } from \"../runtime\";\n\n/**\n * @deprecated - This will be removed in a later release.\n */\nexport const IFluidTokenProvider: keyof IProvideFluidTokenProvider = \"IFluidTokenProvider\";\n\n/**\n * @deprecated - This will be removed in a later release.\n */\nexport interface IProvideFluidTokenProvider {\n readonly IFluidTokenProvider: IFluidTokenProvider;\n}\n\n/**\n * @deprecated - This will be removed in a later release.\n */\nexport interface IFluidTokenProvider extends IProvideFluidTokenProvider {\n intelligence: { [service: string]: any };\n}\n\ndeclare module \"@fluidframework/core-interfaces\" {\n export interface IFluidObject {\n /** @deprecated - use `FluidObject<IRuntimeFactory>` instead */\n readonly IRuntimeFactory?: IRuntimeFactory;\n /** @deprecated - use `FluidObject<IFluidTokenProvider>` instead */\n readonly IFluidTokenProvider?: IFluidTokenProvider;\n }\n}\n"]}
package/dist/loader.d.ts CHANGED
@@ -6,7 +6,8 @@ import { IRequest, IResponse, IFluidRouter, IFluidCodeDetails, IFluidPackage, IP
6
6
  import { IClientDetails, IDocumentMessage, IPendingProposal, IQuorum, ISequencedDocumentMessage } from "@fluidframework/protocol-definitions";
7
7
  import { IResolvedUrl } from "@fluidframework/driver-definitions";
8
8
  import { IEvent, IEventProvider } from "@fluidframework/common-definitions";
9
- import { IDeltaManager } from "./deltas";
9
+ import { IAudience } from "./audience";
10
+ import { IDeltaManager, ReadOnlyInfo } from "./deltas";
10
11
  import { ICriticalContainerError, ContainerWarning } from "./error";
11
12
  import { IFluidModule } from "./fluidModule";
12
13
  import { AttachState } from "./runtime";
@@ -73,6 +74,27 @@ export interface IContainerEvents extends IEvent {
73
74
  (event: "op", listener: (message: ISequencedDocumentMessage) => void): any;
74
75
  (event: "dirty" | "saved", listener: (dirty: boolean) => void): any;
75
76
  }
77
+ /**
78
+ * Namespace for the different connection states a container can be in
79
+ */
80
+ export declare namespace ConnectionState {
81
+ /**
82
+ * The document is no longer connected to the delta server
83
+ */
84
+ type Disconnected = 0;
85
+ /**
86
+ * The document has an inbound connection but is still pending for outbound deltas
87
+ */
88
+ type Connecting = 1;
89
+ /**
90
+ * The document is fully connected
91
+ */
92
+ type Connected = 2;
93
+ }
94
+ /**
95
+ * Type defining the different states of connectivity a container can be in
96
+ */
97
+ export declare type ConnectionState = ConnectionState.Disconnected | ConnectionState.Connecting | ConnectionState.Connected;
76
98
  /**
77
99
  * The Host's view of the Container and its connection to storage
78
100
  */
@@ -99,8 +121,9 @@ export interface IContainer extends IEventProvider<IContainerEvents>, IFluidRout
99
121
  * @deprecated use getSpecifiedCodeDetails for the code details currently specified for this container, or
100
122
  * getLoadedCodeDetails for the code details that the container's context was loaded with.
101
123
  * To be removed after getSpecifiedCodeDetails and getLoadedCodeDetails become ubiquitous.
124
+ * This is now marked as optional and due to be removed in next release.
102
125
  */
103
- readonly codeDetails: IFluidCodeDetails | undefined;
126
+ readonly codeDetails?: IFluidCodeDetails | undefined;
104
127
  /**
105
128
  * Get the code details that are currently specified for the container.
106
129
  * @returns The current code details if any are specified, undefined if none are specified.
@@ -161,11 +184,60 @@ export interface IContainer extends IEventProvider<IContainerEvents>, IFluidRout
161
184
  * @param request - The request to be issued against the container
162
185
  */
163
186
  request(request: IRequest): Promise<IResponse>;
187
+ /**
188
+ * Provides the current connected state of the container
189
+ */
190
+ readonly connectionState?: ConnectionState;
191
+ /**
192
+ * Boolean indicating whether the container is currently connected or not
193
+ */
194
+ readonly connected?: boolean;
195
+ /**
196
+ * Dictates whether or not the current container will automatically attempt to reconnect to the delta stream
197
+ * after receiving a disconnect event
198
+ * @param reconnect - Boolean indicating if reconnect should automatically occur
199
+ * @alpha
200
+ */
201
+ setAutoReconnect?(reconnect: boolean): void;
202
+ /**
203
+ * Have the container attempt to resume processing ops
204
+ * @alpha
205
+ */
206
+ resume?(): void;
207
+ /**
208
+ * The audience information for all clients currently associated with the document in the current session
209
+ */
210
+ readonly audience?: IAudience;
211
+ /**
212
+ * The server provided ID of the client.
213
+ * Set once this.connected is true, otherwise undefined
214
+ * @alpha
215
+ */
216
+ readonly clientId?: string | undefined;
217
+ /**
218
+ * Tells if container is in read-only mode.
219
+ * Data stores should listen for "readonly" notifications and disallow user making changes to data stores.
220
+ * Readonly state can be because of no storage write permission,
221
+ * or due to host forcing readonly mode for container.
222
+ *
223
+ * We do not differentiate here between no write access to storage vs. host disallowing changes to container -
224
+ * in all cases container runtime and data stores should respect readonly state and not allow local changes.
225
+ *
226
+ * It is undefined if we have not yet established websocket connection
227
+ * and do not know if user has write access to a file.
228
+ */
229
+ readonly readOnlyInfo?: ReadOnlyInfo;
230
+ /**
231
+ * Allows the host to have the container force to be in read-only mode
232
+ * @param readonly - Boolean that toggles if read-only policies will be enforced
233
+ * @alpha
234
+ */
235
+ forceReadonly?(readonly: boolean): any;
164
236
  }
165
237
  /**
166
238
  * The Runtime's view of the Loader, used for loading Containers
167
239
  */
168
- export interface ILoader extends IFluidRouter {
240
+ export interface ILoader extends IFluidRouter, Partial<IProvideLoader> {
169
241
  /**
170
242
  * Resolves the resource specified by the URL + headers contained in the request object
171
243
  * to the underlying container that will resolve the request.
@@ -262,18 +334,21 @@ export interface ILoaderHeader {
262
334
  [LoaderHeader.reconnect]: boolean;
263
335
  [LoaderHeader.version]: string | undefined;
264
336
  }
265
- interface IProvideLoader {
337
+ export interface IProvideLoader {
266
338
  readonly ILoader: ILoader;
267
339
  }
268
340
  declare module "@fluidframework/core-interfaces" {
269
341
  interface IRequestHeader extends Partial<ILoaderHeader> {
270
342
  }
271
- interface IFluidObject extends Readonly<Partial<IProvideLoader>> {
343
+ interface IFluidObject {
344
+ /**
345
+ * @deprecated - use `FluidObject<ILoader>` instead
346
+ */
347
+ readonly ILoader?: ILoader;
272
348
  }
273
349
  }
274
350
  export interface IPendingLocalState {
275
351
  url: string;
276
352
  pendingRuntimeState: unknown;
277
353
  }
278
- export {};
279
354
  //# sourceMappingURL=loader.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../src/loader.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../src/loader.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACH,QAAQ,EACR,SAAS,EACT,YAAY,EACZ,iBAAiB,EACjB,aAAa,EACb,gCAAgC,EACnC,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACH,cAAc,EACd,gBAAgB,EAChB,gBAAgB,EAChB,OAAO,EACP,yBAAyB,EAC5B,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAClE,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AAC5E,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AACvC,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AACvD,OAAO,EAAE,uBAAuB,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AACpE,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAExC;;;;GAIG;AACH,MAAM,WAAW,WAAY,SAAQ,OAAO,CAAC,gCAAgC,CAAC;IAC1E;;OAEG;IACH,IAAI,CAAC,MAAM,EAAE,iBAAiB,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;CAC1D;AAED;;;GAGG;AACH,MAAM,WAAW,yBAA0B,SAAQ,iBAAiB;IAChE;;OAEG;IACH,QAAQ,CAAC,eAAe,EAAE,QAAQ,CAAC,aAAa,CAAC,CAAC;IAClD;;OAEG;IACH,QAAQ,CAAC,sBAAsB,EAAE,MAAM,GAAG,SAAS,CAAC;CACvD;AAED;;;;;;GAMG;AACH,MAAM,WAAW,kBAAkB;IAC/B;;;;;;;OAOG;IACH,kBAAkB,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,yBAAyB,CAAC,CAAC;CACtF;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC3B,UAAU,CAAC,MAAM,EAAE,yBAAyB,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CACnE;AAED;;GAEG;AACH,MAAM,WAAW,gBAAiB,SAAQ,MAAM;IAC5C,CAAC,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,OAAO,KAAK,IAAI,GAAG,IAAI,CAAC;IACjE,CAAC,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,OAAE;IAC3D,CAAC,KAAK,EAAE,qBAAqB,EAAE,QAAQ,EAAE,CAAC,WAAW,EAAE,iBAAiB,EAAE,QAAQ,EAAE,gBAAgB,KAAK,IAAI,OAAE;IAC/G,CAAC,KAAK,EAAE,gBAAgB,EAAE,QAAQ,EAAE,CAAC,WAAW,EAAE,iBAAiB,KAAK,IAAI,OAAE;IAC9E,CAAC,KAAK,EAAE,cAAc,GAAG,UAAU,EAAE,QAAQ,EAAE,MAAM,IAAI,OAAE;IAC3D,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,KAAK,CAAC,EAAE,uBAAuB,KAAK,IAAI,OAAE;IACvE,CAAC,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,gBAAgB,KAAK,IAAI,OAAE;IAChE,CAAC,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,OAAO,EAAE,yBAAyB,KAAK,IAAI,OAAE;IACtE,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,OAAE;CAClE;AAED;;GAEG;AACH,yBAAiB,eAAe,CAAC;IAC7B;;OAEG;IACH,KAAY,YAAY,GAAG,CAAC,CAAC;IAE7B;;OAEG;IACH,KAAY,UAAU,GAAG,CAAC,CAAC;IAE3B;;OAEG;IACF,KAAY,SAAS,GAAG,CAAC,CAAC;CAC9B;AAED;;GAEG;AACH,oBAAY,eAAe,GAAG,eAAe,CAAC,YAAY,GAAG,eAAe,CAAC,UAAU,GAAG,eAAe,CAAC,SAAS,CAAC;AAEpH;;GAEG;AACH,MAAM,WAAW,UAAW,SAAQ,cAAc,CAAC,gBAAgB,CAAC,EAAE,YAAY;IAE9E;;OAEG;IACH,YAAY,EAAE,aAAa,CAAC,yBAAyB,EAAE,gBAAgB,CAAC,CAAC;IAEzE;;;OAGG;IACH,SAAS,IAAI,OAAO,CAAC;IAErB;;OAEG;IACH,WAAW,EAAE,YAAY,GAAG,SAAS,CAAC;IAEtC;;OAEG;IACH,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC;IAElC;;;;;;OAMG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,iBAAiB,GAAG,SAAS,CAAC;IAErD;;;OAGG;IACH,uBAAuB,CAAC,IAAI,iBAAiB,GAAG,SAAS,CAAC;IAE1D;;;;OAIG;IACH,oBAAoB,CAAC,IAAI,iBAAiB,GAAG,SAAS,CAAC;IAEvD;;OAEG;IACH,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IAEzB;;;;OAIG;IACH,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAE1B;;OAEG;IACH,KAAK,CAAC,KAAK,CAAC,EAAE,uBAAuB,GAAG,IAAI,CAAC;IAE7C;;;OAGG;IACH,4BAA4B,IAAI,MAAM,CAAC;IAEvC;;;;;OAKG;IACH,kBAAkB,CAAC,WAAW,EAAE,iBAAiB,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IAEpE;;;;;OAKG;IACH,MAAM,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEzC;;OAEG;IACH,SAAS,IAAI,MAAM,CAAC;IAEpB;;;;;OAKG;IACH,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAEjE;;;OAGG;IACH,OAAO,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;IAE/C;;OAEG;IACH,QAAQ,CAAC,eAAe,CAAC,EAAE,eAAe,CAAC;IAE3C;;OAEG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;IAE7B;;;;;OAKG;IACH,gBAAgB,CAAC,CAAC,SAAS,EAAE,OAAO,GAAG,IAAI,CAAC;IAE5C;;;OAGG;IACH,MAAM,CAAC,IAAI,IAAI,CAAC;IAEhB;;OAEG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC;IAE9B;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAEvC;;;;;;;;;;;OAWG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,YAAY,CAAC;IAErC;;;;OAIG;IACH,aAAa,CAAC,CAAC,QAAQ,EAAE,OAAO,OAAE;CACrC;AAED;;GAEG;AACH,MAAM,WAAW,OAAQ,SAAQ,YAAY,EAAE,OAAO,CAAC,cAAc,CAAC;IAClE;;;;;;OAMG;IACH,OAAO,CAAC,OAAO,EAAE,QAAQ,EAAE,iBAAiB,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;CAC/E;AAED;;GAEG;AACH,MAAM,WAAW,WAAY,SAAQ,OAAO;IACxC;;;OAGG;IACH,uBAAuB,CAAC,WAAW,EAAE,iBAAiB,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IAE7E;;;OAGG;IACH,sCAAsC,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;CACjF;AAED,oBAAY,cAAc,GAAG;KACxB,GAAG,IAAI,MAAM,GAAG,MAAM,GAAG,GAAG;CAChC,GAAG;IACA;;;;;;;OAOG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;IAEhB;;;;;;OAMG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAK7B;;;OAGG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3B;;OAEG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAE5B;;MAEE;IACF,sBAAsB,CAAC,EAAE,MAAM,CAAC;CACnC,CAAC;AAEF;;GAEG;AACH,oBAAY,YAAY;IACpB;;OAEG;IACH,KAAK,gBAAgB;IAErB,aAAa,yBAAyB;IAEtC;;OAEG;IACH,QAAQ,aAAa;IACrB,SAAS,oBAAoB;IAC7B,cAAc,0BAA0B;IAExC;;;;;OAKG;IACH,OAAO,YAAY;CACtB;AAED,MAAM,WAAW,kBAAkB;IAC/B,eAAe,CAAC,EAKV,SAAS,GAOT,QAAQ,GAOR,KAAK,CAAA;IACX,eAAe,CAAC,EAKV,MAAM,GAON,SAAS,GAMT,SAAS,CAAA;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC1B,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;IAC9B,CAAC,YAAY,CAAC,aAAa,CAAC,EAAE,cAAc,CAAC;IAC7C,CAAC,YAAY,CAAC,QAAQ,CAAC,EAAE,kBAAkB,CAAC;IAC5C,CAAC,YAAY,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IACtC,CAAC,YAAY,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;IAClC,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC9C;AAED,MAAM,WAAW,cAAc;IAC3B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;CAC7B;AAED,OAAO,QAAQ,iCAAiC,CAAC;IAE7C,UAAiB,cAAe,SAAQ,OAAO,CAAC,aAAa,CAAC;KAAI;IAElE,UAAiB,YAAY;QACzB;;WAEG;QACH,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;KAC9B;CACJ;AAED,MAAM,WAAW,kBAAkB;IAC/B,GAAG,EAAE,MAAM,CAAC;IACZ,mBAAmB,EAAE,OAAO,CAAC;CAChC"}