@fluidframework/devtools 2.10.0-307399 → 2.11.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 +25 -0
- package/api-extractor.json +2 -1
- package/api-report/devtools.alpha.api.md +17 -10
- package/api-report/devtools.beta.api.md +17 -10
- package/api-report/devtools.public.api.md +0 -8
- package/dist/alpha.d.ts +5 -2
- package/dist/beta.d.ts +5 -2
- package/dist/index.d.ts +15 -5
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/public.d.ts +5 -2
- package/lib/alpha.d.ts +5 -2
- package/lib/beta.d.ts +5 -2
- package/lib/index.d.ts +15 -5
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +1 -0
- package/lib/index.js.map +1 -1
- package/lib/public.d.ts +5 -2
- package/package.json +8 -8
- package/src/index.ts +15 -5
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,30 @@
|
|
|
1
1
|
# @fluidframework/devtools
|
|
2
2
|
|
|
3
|
+
## 2.11.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- API clarifications for devtools packages ([#23165](https://github.com/microsoft/FluidFramework/pull/23165)) [cea34d10d0](https://github.com/microsoft/FluidFramework/commit/cea34d10d0f816335ab1b88b190940046ae7b696)
|
|
8
|
+
|
|
9
|
+
APIs that were never intended for direct consumer use have been marked as `@system`.
|
|
10
|
+
These are:
|
|
11
|
+
|
|
12
|
+
- HasContainerKey
|
|
13
|
+
|
|
14
|
+
APIs that were not intended to be extended by consumers have been marked as `@sealed`.
|
|
15
|
+
These are:
|
|
16
|
+
|
|
17
|
+
- ContainerDevtoolsProps
|
|
18
|
+
- DevtoolsProps
|
|
19
|
+
- HasContainerKey
|
|
20
|
+
- IDevtools
|
|
21
|
+
|
|
22
|
+
Additionally, interface properties have been marked as `readonly`.
|
|
23
|
+
|
|
24
|
+
## 2.10.0
|
|
25
|
+
|
|
26
|
+
Dependency updates only.
|
|
27
|
+
|
|
3
28
|
## 2.5.0
|
|
4
29
|
|
|
5
30
|
Dependency updates only.
|
package/api-extractor.json
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://developer.microsoft.com/json-schemas/api-extractor/v7/api-extractor.schema.json",
|
|
3
|
-
"extends": "../../../../common/build/build-common/api-extractor-base.esm.no-legacy.json"
|
|
3
|
+
"extends": "../../../../common/build/build-common/api-extractor-base.esm.no-legacy.json",
|
|
4
|
+
"bundledPackages": ["@fluidframework/devtools-core"]
|
|
4
5
|
}
|
|
@@ -4,30 +4,37 @@
|
|
|
4
4
|
|
|
5
5
|
```ts
|
|
6
6
|
|
|
7
|
-
// @beta
|
|
7
|
+
// @beta @sealed
|
|
8
8
|
export interface ContainerDevtoolsProps extends HasContainerKey {
|
|
9
|
-
container: IFluidContainer;
|
|
9
|
+
readonly container: IFluidContainer;
|
|
10
10
|
}
|
|
11
11
|
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
export { createDevtoolsLogger }
|
|
12
|
+
// @beta
|
|
13
|
+
export type ContainerKey = string;
|
|
15
14
|
|
|
16
15
|
// @beta
|
|
16
|
+
export function createDevtoolsLogger(baseLogger?: ITelemetryBaseLogger): IDevtoolsLogger;
|
|
17
|
+
|
|
18
|
+
// @beta @sealed
|
|
17
19
|
export interface DevtoolsProps {
|
|
18
|
-
initialContainers?: ContainerDevtoolsProps[];
|
|
19
|
-
logger?: IDevtoolsLogger;
|
|
20
|
+
readonly initialContainers?: ContainerDevtoolsProps[];
|
|
21
|
+
readonly logger?: IDevtoolsLogger;
|
|
20
22
|
}
|
|
21
23
|
|
|
22
|
-
|
|
24
|
+
// @beta @sealed
|
|
25
|
+
export interface HasContainerKey {
|
|
26
|
+
readonly containerKey: ContainerKey;
|
|
27
|
+
}
|
|
23
28
|
|
|
24
|
-
// @beta
|
|
29
|
+
// @beta @sealed
|
|
25
30
|
export interface IDevtools extends IDisposable {
|
|
26
31
|
closeContainerDevtools(id: string): void;
|
|
27
32
|
registerContainerDevtools(props: ContainerDevtoolsProps): void;
|
|
28
33
|
}
|
|
29
34
|
|
|
30
|
-
|
|
35
|
+
// @beta @sealed
|
|
36
|
+
export interface IDevtoolsLogger extends ITelemetryBaseLogger {
|
|
37
|
+
}
|
|
31
38
|
|
|
32
39
|
// @beta
|
|
33
40
|
export function initializeDevtools(props: DevtoolsProps): IDevtools;
|
|
@@ -4,30 +4,37 @@
|
|
|
4
4
|
|
|
5
5
|
```ts
|
|
6
6
|
|
|
7
|
-
// @beta
|
|
7
|
+
// @beta @sealed
|
|
8
8
|
export interface ContainerDevtoolsProps extends HasContainerKey {
|
|
9
|
-
container: IFluidContainer;
|
|
9
|
+
readonly container: IFluidContainer;
|
|
10
10
|
}
|
|
11
11
|
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
export { createDevtoolsLogger }
|
|
12
|
+
// @beta
|
|
13
|
+
export type ContainerKey = string;
|
|
15
14
|
|
|
16
15
|
// @beta
|
|
16
|
+
export function createDevtoolsLogger(baseLogger?: ITelemetryBaseLogger): IDevtoolsLogger;
|
|
17
|
+
|
|
18
|
+
// @beta @sealed
|
|
17
19
|
export interface DevtoolsProps {
|
|
18
|
-
initialContainers?: ContainerDevtoolsProps[];
|
|
19
|
-
logger?: IDevtoolsLogger;
|
|
20
|
+
readonly initialContainers?: ContainerDevtoolsProps[];
|
|
21
|
+
readonly logger?: IDevtoolsLogger;
|
|
20
22
|
}
|
|
21
23
|
|
|
22
|
-
|
|
24
|
+
// @beta @sealed
|
|
25
|
+
export interface HasContainerKey {
|
|
26
|
+
readonly containerKey: ContainerKey;
|
|
27
|
+
}
|
|
23
28
|
|
|
24
|
-
// @beta
|
|
29
|
+
// @beta @sealed
|
|
25
30
|
export interface IDevtools extends IDisposable {
|
|
26
31
|
closeContainerDevtools(id: string): void;
|
|
27
32
|
registerContainerDevtools(props: ContainerDevtoolsProps): void;
|
|
28
33
|
}
|
|
29
34
|
|
|
30
|
-
|
|
35
|
+
// @beta @sealed
|
|
36
|
+
export interface IDevtoolsLogger extends ITelemetryBaseLogger {
|
|
37
|
+
}
|
|
31
38
|
|
|
32
39
|
// @beta
|
|
33
40
|
export function initializeDevtools(props: DevtoolsProps): IDevtools;
|
package/dist/alpha.d.ts
CHANGED
|
@@ -9,7 +9,8 @@
|
|
|
9
9
|
*/
|
|
10
10
|
|
|
11
11
|
/**
|
|
12
|
-
*
|
|
12
|
+
* Used in conjunction with the Fluid Framework Developer Tools browser extension to allow visualization of
|
|
13
|
+
* and interaction with Fluid data.
|
|
13
14
|
*
|
|
14
15
|
* To initialize the Devtools alongside your application's {@link @fluidframework/fluid-static#IFluidContainer}, call
|
|
15
16
|
* {@link initializeDevtools}.
|
|
@@ -17,9 +18,11 @@
|
|
|
17
18
|
* The Devtools will automatically dispose of themselves upon Window unload, but if you would like to close them
|
|
18
19
|
* earlier, call {@link IDevtools.dispose}.
|
|
19
20
|
*
|
|
20
|
-
* To enable visualization of Telemetry data, you may create a {@link
|
|
21
|
+
* To enable visualization of Telemetry data, you may create a {@link DevtoolsLogger} and
|
|
21
22
|
* provide it during Devtools initialization.
|
|
22
23
|
*
|
|
24
|
+
* For more details and examples, see the {@link https://github.com/microsoft/FluidFramework/tree/main/packages/tools/devtools/devtools | package README}.
|
|
25
|
+
*
|
|
23
26
|
* @packageDocumentation
|
|
24
27
|
*/
|
|
25
28
|
|
package/dist/beta.d.ts
CHANGED
|
@@ -9,7 +9,8 @@
|
|
|
9
9
|
*/
|
|
10
10
|
|
|
11
11
|
/**
|
|
12
|
-
*
|
|
12
|
+
* Used in conjunction with the Fluid Framework Developer Tools browser extension to allow visualization of
|
|
13
|
+
* and interaction with Fluid data.
|
|
13
14
|
*
|
|
14
15
|
* To initialize the Devtools alongside your application's {@link @fluidframework/fluid-static#IFluidContainer}, call
|
|
15
16
|
* {@link initializeDevtools}.
|
|
@@ -17,9 +18,11 @@
|
|
|
17
18
|
* The Devtools will automatically dispose of themselves upon Window unload, but if you would like to close them
|
|
18
19
|
* earlier, call {@link IDevtools.dispose}.
|
|
19
20
|
*
|
|
20
|
-
* To enable visualization of Telemetry data, you may create a {@link
|
|
21
|
+
* To enable visualization of Telemetry data, you may create a {@link DevtoolsLogger} and
|
|
21
22
|
* provide it during Devtools initialization.
|
|
22
23
|
*
|
|
24
|
+
* For more details and examples, see the {@link https://github.com/microsoft/FluidFramework/tree/main/packages/tools/devtools/devtools | package README}.
|
|
25
|
+
*
|
|
23
26
|
* @packageDocumentation
|
|
24
27
|
*/
|
|
25
28
|
|
package/dist/index.d.ts
CHANGED
|
@@ -3,7 +3,8 @@
|
|
|
3
3
|
* Licensed under the MIT License.
|
|
4
4
|
*/
|
|
5
5
|
/**
|
|
6
|
-
*
|
|
6
|
+
* Used in conjunction with the Fluid Framework Developer Tools browser extension to allow visualization of
|
|
7
|
+
* and interaction with Fluid data.
|
|
7
8
|
*
|
|
8
9
|
* To initialize the Devtools alongside your application's {@link @fluidframework/fluid-static#IFluidContainer}, call
|
|
9
10
|
* {@link initializeDevtools}.
|
|
@@ -11,9 +12,11 @@
|
|
|
11
12
|
* The Devtools will automatically dispose of themselves upon Window unload, but if you would like to close them
|
|
12
13
|
* earlier, call {@link IDevtools.dispose}.
|
|
13
14
|
*
|
|
14
|
-
* To enable visualization of Telemetry data, you may create a {@link
|
|
15
|
+
* To enable visualization of Telemetry data, you may create a {@link DevtoolsLogger} and
|
|
15
16
|
* provide it during Devtools initialization.
|
|
16
17
|
*
|
|
18
|
+
* For more details and examples, see the {@link https://github.com/microsoft/FluidFramework/tree/main/packages/tools/devtools/devtools | package README}.
|
|
19
|
+
*
|
|
17
20
|
* @packageDocumentation
|
|
18
21
|
*/
|
|
19
22
|
import type { IDisposable } from "@fluidframework/core-interfaces";
|
|
@@ -21,6 +24,8 @@ import { type HasContainerKey, type IDevtoolsLogger } from "@fluidframework/devt
|
|
|
21
24
|
import type { IFluidContainer } from "@fluidframework/fluid-static";
|
|
22
25
|
/**
|
|
23
26
|
* Properties for configuring {@link IDevtools}.
|
|
27
|
+
*
|
|
28
|
+
* @sealed
|
|
24
29
|
* @beta
|
|
25
30
|
*/
|
|
26
31
|
export interface DevtoolsProps {
|
|
@@ -34,23 +39,25 @@ export interface DevtoolsProps {
|
|
|
34
39
|
* This is provided to the Devtools instance strictly to enable communicating supported / desired functionality with
|
|
35
40
|
* external listeners.
|
|
36
41
|
*/
|
|
37
|
-
logger?: IDevtoolsLogger;
|
|
42
|
+
readonly logger?: IDevtoolsLogger;
|
|
38
43
|
/**
|
|
39
44
|
* (optional) List of Containers to initialize the devtools with.
|
|
40
45
|
*
|
|
41
46
|
* @remarks Additional Containers can be registered with the Devtools via {@link IDevtools.registerContainerDevtools}.
|
|
42
47
|
*/
|
|
43
|
-
initialContainers?: ContainerDevtoolsProps[];
|
|
48
|
+
readonly initialContainers?: ContainerDevtoolsProps[];
|
|
44
49
|
}
|
|
45
50
|
/**
|
|
46
51
|
* Properties for configuring Devtools for an individual {@link @fluidframework/fluid-static#IFluidContainer}.
|
|
52
|
+
*
|
|
53
|
+
* @sealed
|
|
47
54
|
* @beta
|
|
48
55
|
*/
|
|
49
56
|
export interface ContainerDevtoolsProps extends HasContainerKey {
|
|
50
57
|
/**
|
|
51
58
|
* The Container to register with the Devtools.
|
|
52
59
|
*/
|
|
53
|
-
container: IFluidContainer;
|
|
60
|
+
readonly container: IFluidContainer;
|
|
54
61
|
}
|
|
55
62
|
/**
|
|
56
63
|
* Fluid Devtools. A single, global instance is used to generate and communicate stats associated with the general Fluid
|
|
@@ -64,6 +71,8 @@ export interface ContainerDevtoolsProps extends HasContainerKey {
|
|
|
64
71
|
* The lifetime of the associated singleton is bound by that of the Window (globalThis), and it will be automatically
|
|
65
72
|
* disposed of on Window unload.
|
|
66
73
|
* If you wish to dispose of it earlier, you may call its {@link @fluidframework/core-interfaces#IDisposable.dispose} method.
|
|
74
|
+
*
|
|
75
|
+
* @sealed
|
|
67
76
|
* @beta
|
|
68
77
|
*/
|
|
69
78
|
export interface IDevtools extends IDisposable {
|
|
@@ -85,6 +94,7 @@ export interface IDevtools extends IDisposable {
|
|
|
85
94
|
* Initializes the Devtools singleton and returns a handle to it.
|
|
86
95
|
*
|
|
87
96
|
* @see {@link @fluidframework/devtools-core#initializeDevtoolsBase}
|
|
97
|
+
*
|
|
88
98
|
* @beta
|
|
89
99
|
*/
|
|
90
100
|
export declare function initializeDevtools(props: DevtoolsProps): IDevtools;
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAkB,MAAM,iCAAiC,CAAC;AACnF,OAAO,EAEN,KAAK,eAAe,EAEpB,KAAK,eAAe,EAEpB,MAAM,wCAAwC,CAAC;AAChD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAGpE;;;;;GAKG;AACH,MAAM,WAAW,aAAa;IAC7B;;;;;;;;;OASG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,eAAe,CAAC;IAElC;;;;OAIG;IACH,QAAQ,CAAC,iBAAiB,CAAC,EAAE,sBAAsB,EAAE,CAAC;CAGtD;AAED;;;;;GAKG;AACH,MAAM,WAAW,sBAAuB,SAAQ,eAAe;IAC9D;;OAEG;IACH,QAAQ,CAAC,SAAS,EAAE,eAAe,CAAC;CAGpC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,WAAW,SAAU,SAAQ,WAAW;IAC7C;;;;;;;OAOG;IACH,yBAAyB,CAAC,KAAK,EAAE,sBAAsB,GAAG,IAAI,CAAC;IAE/D;;OAEG;IACH,sBAAsB,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC;CACzC;AAwCD;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,aAAa,GAAG,SAAS,CAUlE;AA2BD,OAAO,EACN,KAAK,YAAY,EACjB,KAAK,eAAe,EACpB,oBAAoB,EACpB,KAAK,eAAe,GACpB,MAAM,wCAAwC,CAAC"}
|
package/dist/index.js
CHANGED
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAqBH,qEAMgD;AAEhD,oEAAiF;AA+EjF,MAAM,QAAQ;IACb;IACC;;OAEG;IACc,SAAwB;QAAxB,cAAS,GAAT,SAAS,CAAe;IACvC,CAAC;IAEJ;;OAEG;IACI,yBAAyB,CAAC,KAA6B;QAC7D,MAAM,WAAW,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;QAC7C,IAAI,CAAC,SAAS,CAAC,yBAAyB,CAAC,WAAW,CAAC,CAAC;IACvD,CAAC;IAED;;OAEG;IACI,sBAAsB,CAAC,EAAU;QACvC,IAAI,CAAC,SAAS,CAAC,sBAAsB,CAAC,EAAE,CAAC,CAAC;IAC3C,CAAC;IAED;;OAEG;IACH,IAAW,QAAQ;QAClB,OAAO,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC;IAChC,CAAC;IAED;;OAEG;IACI,OAAO;QACb,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;IAC1B,CAAC;CACD;AAED;;;;;;GAMG;AACH,SAAgB,kBAAkB,CAAC,KAAoB;IACtD,MAAM,EAAE,iBAAiB,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC;IAE5C,MAAM,uBAAuB,GAAG,iBAAiB,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC;IAEpF,MAAM,YAAY,GAAG,IAAA,6BAAsB,EAAC;QAC3C,MAAM;QACN,iBAAiB,EAAE,uBAAuB;KAC1C,CAAC,CAAC;IACH,OAAO,IAAI,QAAQ,CAAC,YAAY,CAAC,CAAC;AACnC,CAAC;AAVD,gDAUC;AAED;;;GAGG;AACH,SAAS,iBAAiB,CACzB,cAAsC;IAEtC,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,GAAG,cAAc,CAAC;IACnD,IAAI,CAAC,IAAA,mCAAwB,EAAC,SAAS,CAAC,EAAE,CAAC;QAC1C,MAAM,IAAI,SAAS,CAClB,qGAAqG,CACrG,CAAC;IACH,CAAC;IAED,OAAO;QACN,SAAS,EAAE,SAAS,CAAC,SAAS;QAC9B,YAAY;QACZ,aAAa,EAAE,SAAS,CAAC,cAAgD;KACzE,CAAC;AACH,CAAC;AAED,gFAAgF;AAChF,uEAAuE;AACvE,gEAAgE;AAChE,4EAA4E;AAC5E,mEAKgD;AAF/C,gHAAA,oBAAoB,OAAA","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\n/**\n * Used in conjunction with the Fluid Framework Developer Tools browser extension to allow visualization of\n * and interaction with Fluid data.\n *\n * To initialize the Devtools alongside your application's {@link @fluidframework/fluid-static#IFluidContainer}, call\n * {@link initializeDevtools}.\n *\n * The Devtools will automatically dispose of themselves upon Window unload, but if you would like to close them\n * earlier, call {@link IDevtools.dispose}.\n *\n * To enable visualization of Telemetry data, you may create a {@link DevtoolsLogger} and\n * provide it during Devtools initialization.\n *\n * For more details and examples, see the {@link https://github.com/microsoft/FluidFramework/tree/main/packages/tools/devtools/devtools | package README}.\n *\n * @packageDocumentation\n */\n\nimport type { IDisposable, IFluidLoadable } from \"@fluidframework/core-interfaces\";\nimport {\n\ttype ContainerDevtoolsProps as ContainerDevtoolsPropsBase,\n\ttype HasContainerKey,\n\ttype IFluidDevtools as IDevtoolsBase,\n\ttype IDevtoolsLogger,\n\tinitializeDevtools as initializeDevtoolsBase,\n} from \"@fluidframework/devtools-core/internal\";\nimport type { IFluidContainer } from \"@fluidframework/fluid-static\";\nimport { isInternalFluidContainer } from \"@fluidframework/fluid-static/internal\";\n\n/**\n * Properties for configuring {@link IDevtools}.\n *\n * @sealed\n * @beta\n */\nexport interface DevtoolsProps {\n\t/**\n\t * (optional) telemetry logger associated with the Fluid runtime.\n\t *\n\t * @remarks\n\t *\n\t * Note: the Devtools do not register this logger with the Fluid runtime; that must be done separately.\n\t *\n\t * This is provided to the Devtools instance strictly to enable communicating supported / desired functionality with\n\t * external listeners.\n\t */\n\treadonly logger?: IDevtoolsLogger;\n\n\t/**\n\t * (optional) List of Containers to initialize the devtools with.\n\t *\n\t * @remarks Additional Containers can be registered with the Devtools via {@link IDevtools.registerContainerDevtools}.\n\t */\n\treadonly initialContainers?: ContainerDevtoolsProps[];\n\n\t// TODO: Add ability for customers to specify custom data visualizer overrides\n}\n\n/**\n * Properties for configuring Devtools for an individual {@link @fluidframework/fluid-static#IFluidContainer}.\n *\n * @sealed\n * @beta\n */\nexport interface ContainerDevtoolsProps extends HasContainerKey {\n\t/**\n\t * The Container to register with the Devtools.\n\t */\n\treadonly container: IFluidContainer;\n\n\t// TODO: Add ability for customers to specify custom data visualizer overrides\n}\n\n/**\n * Fluid Devtools. A single, global instance is used to generate and communicate stats associated with the general Fluid\n * runtime (i.e., it is not associated with any single Framework entity).\n *\n * @remarks\n *\n * Supports registering {@link @fluidframework/fluid-static#IFluidContainer}s for Container-level stats\n * (via {@link IDevtools.registerContainerDevtools}).\n *\n * The lifetime of the associated singleton is bound by that of the Window (globalThis), and it will be automatically\n * disposed of on Window unload.\n * If you wish to dispose of it earlier, you may call its {@link @fluidframework/core-interfaces#IDisposable.dispose} method.\n *\n * @sealed\n * @beta\n */\nexport interface IDevtools extends IDisposable {\n\t/**\n\t * Initializes a {@link IDevtools} from the provided properties and stores it for future reference.\n\t *\n\t * @throws\n\t *\n\t * Will throw if devtools have already been registered for the specified\n\t * {@link @fluidframework/devtools-core#HasContainerKey.containerKey}.\n\t */\n\tregisterContainerDevtools(props: ContainerDevtoolsProps): void;\n\n\t/**\n\t * Closes registered Container-level Devtools associated with the provided ID.\n\t */\n\tcloseContainerDevtools(id: string): void;\n}\n\nclass Devtools implements IDevtools {\n\tpublic constructor(\n\t\t/**\n\t\t * Handle to the underlying Devtools instance (singleton).\n\t\t */\n\t\tprivate readonly _devtools: IDevtoolsBase,\n\t) {}\n\n\t/**\n\t * {@inheritDoc IDevtools.registerContainerDevtools}\n\t */\n\tpublic registerContainerDevtools(props: ContainerDevtoolsProps): void {\n\t\tconst mappedProps = mapContainerProps(props);\n\t\tthis._devtools.registerContainerDevtools(mappedProps);\n\t}\n\n\t/**\n\t * {@inheritDoc IDevtools.closeContainerDevtools}\n\t */\n\tpublic closeContainerDevtools(id: string): void {\n\t\tthis._devtools.closeContainerDevtools(id);\n\t}\n\n\t/**\n\t * {@inheritDoc IDevtools.disposed}\n\t */\n\tpublic get disposed(): boolean {\n\t\treturn this._devtools.disposed;\n\t}\n\n\t/**\n\t * {@inheritDoc IDevtools.dispose}\n\t */\n\tpublic dispose(): void {\n\t\tthis._devtools.dispose();\n\t}\n}\n\n/**\n * Initializes the Devtools singleton and returns a handle to it.\n *\n * @see {@link @fluidframework/devtools-core#initializeDevtoolsBase}\n *\n * @beta\n */\nexport function initializeDevtools(props: DevtoolsProps): IDevtools {\n\tconst { initialContainers, logger } = props;\n\n\tconst mappedInitialContainers = initialContainers?.map((p) => mapContainerProps(p));\n\n\tconst baseDevtools = initializeDevtoolsBase({\n\t\tlogger,\n\t\tinitialContainers: mappedInitialContainers,\n\t});\n\treturn new Devtools(baseDevtools);\n}\n\n/**\n * Maps the input props to lower-level {@link @fluidframework/devtools-core#ContainerDevtoolsPropsBase},\n * to be forwarded on to the base library.\n */\nfunction mapContainerProps(\n\tcontainerProps: ContainerDevtoolsProps,\n): ContainerDevtoolsPropsBase {\n\tconst { container, containerKey } = containerProps;\n\tif (!isInternalFluidContainer(container)) {\n\t\tthrow new TypeError(\n\t\t\t\"IFluidContainer was not recognized. Only Containers generated by the Fluid Framework are supported.\",\n\t\t);\n\t}\n\n\treturn {\n\t\tcontainer: container.container,\n\t\tcontainerKey,\n\t\tcontainerData: container.initialObjects as Record<string, IFluidLoadable>,\n\t};\n}\n\n// Convenience re-exports. Need to cover the things we export form this package,\n// so consumers don't need to import from this one *and* devtools-core.\n// DevtoolsLogger is necessary for consumers to set up Devtools.\n// ContainerDevtoolsProps extends HasContainerKey, so it needs ContainerKey.\nexport {\n\ttype ContainerKey,\n\ttype HasContainerKey,\n\tcreateDevtoolsLogger,\n\ttype IDevtoolsLogger,\n} from \"@fluidframework/devtools-core/internal\";\n"]}
|
package/dist/public.d.ts
CHANGED
|
@@ -9,7 +9,8 @@
|
|
|
9
9
|
*/
|
|
10
10
|
|
|
11
11
|
/**
|
|
12
|
-
*
|
|
12
|
+
* Used in conjunction with the Fluid Framework Developer Tools browser extension to allow visualization of
|
|
13
|
+
* and interaction with Fluid data.
|
|
13
14
|
*
|
|
14
15
|
* To initialize the Devtools alongside your application's {@link @fluidframework/fluid-static#IFluidContainer}, call
|
|
15
16
|
* {@link initializeDevtools}.
|
|
@@ -17,9 +18,11 @@
|
|
|
17
18
|
* The Devtools will automatically dispose of themselves upon Window unload, but if you would like to close them
|
|
18
19
|
* earlier, call {@link IDevtools.dispose}.
|
|
19
20
|
*
|
|
20
|
-
* To enable visualization of Telemetry data, you may create a {@link
|
|
21
|
+
* To enable visualization of Telemetry data, you may create a {@link DevtoolsLogger} and
|
|
21
22
|
* provide it during Devtools initialization.
|
|
22
23
|
*
|
|
24
|
+
* For more details and examples, see the {@link https://github.com/microsoft/FluidFramework/tree/main/packages/tools/devtools/devtools | package README}.
|
|
25
|
+
*
|
|
23
26
|
* @packageDocumentation
|
|
24
27
|
*/export {}
|
|
25
28
|
|
package/lib/alpha.d.ts
CHANGED
|
@@ -9,7 +9,8 @@
|
|
|
9
9
|
*/
|
|
10
10
|
|
|
11
11
|
/**
|
|
12
|
-
*
|
|
12
|
+
* Used in conjunction with the Fluid Framework Developer Tools browser extension to allow visualization of
|
|
13
|
+
* and interaction with Fluid data.
|
|
13
14
|
*
|
|
14
15
|
* To initialize the Devtools alongside your application's {@link @fluidframework/fluid-static#IFluidContainer}, call
|
|
15
16
|
* {@link initializeDevtools}.
|
|
@@ -17,9 +18,11 @@
|
|
|
17
18
|
* The Devtools will automatically dispose of themselves upon Window unload, but if you would like to close them
|
|
18
19
|
* earlier, call {@link IDevtools.dispose}.
|
|
19
20
|
*
|
|
20
|
-
* To enable visualization of Telemetry data, you may create a {@link
|
|
21
|
+
* To enable visualization of Telemetry data, you may create a {@link DevtoolsLogger} and
|
|
21
22
|
* provide it during Devtools initialization.
|
|
22
23
|
*
|
|
24
|
+
* For more details and examples, see the {@link https://github.com/microsoft/FluidFramework/tree/main/packages/tools/devtools/devtools | package README}.
|
|
25
|
+
*
|
|
23
26
|
* @packageDocumentation
|
|
24
27
|
*/
|
|
25
28
|
|
package/lib/beta.d.ts
CHANGED
|
@@ -9,7 +9,8 @@
|
|
|
9
9
|
*/
|
|
10
10
|
|
|
11
11
|
/**
|
|
12
|
-
*
|
|
12
|
+
* Used in conjunction with the Fluid Framework Developer Tools browser extension to allow visualization of
|
|
13
|
+
* and interaction with Fluid data.
|
|
13
14
|
*
|
|
14
15
|
* To initialize the Devtools alongside your application's {@link @fluidframework/fluid-static#IFluidContainer}, call
|
|
15
16
|
* {@link initializeDevtools}.
|
|
@@ -17,9 +18,11 @@
|
|
|
17
18
|
* The Devtools will automatically dispose of themselves upon Window unload, but if you would like to close them
|
|
18
19
|
* earlier, call {@link IDevtools.dispose}.
|
|
19
20
|
*
|
|
20
|
-
* To enable visualization of Telemetry data, you may create a {@link
|
|
21
|
+
* To enable visualization of Telemetry data, you may create a {@link DevtoolsLogger} and
|
|
21
22
|
* provide it during Devtools initialization.
|
|
22
23
|
*
|
|
24
|
+
* For more details and examples, see the {@link https://github.com/microsoft/FluidFramework/tree/main/packages/tools/devtools/devtools | package README}.
|
|
25
|
+
*
|
|
23
26
|
* @packageDocumentation
|
|
24
27
|
*/
|
|
25
28
|
|
package/lib/index.d.ts
CHANGED
|
@@ -3,7 +3,8 @@
|
|
|
3
3
|
* Licensed under the MIT License.
|
|
4
4
|
*/
|
|
5
5
|
/**
|
|
6
|
-
*
|
|
6
|
+
* Used in conjunction with the Fluid Framework Developer Tools browser extension to allow visualization of
|
|
7
|
+
* and interaction with Fluid data.
|
|
7
8
|
*
|
|
8
9
|
* To initialize the Devtools alongside your application's {@link @fluidframework/fluid-static#IFluidContainer}, call
|
|
9
10
|
* {@link initializeDevtools}.
|
|
@@ -11,9 +12,11 @@
|
|
|
11
12
|
* The Devtools will automatically dispose of themselves upon Window unload, but if you would like to close them
|
|
12
13
|
* earlier, call {@link IDevtools.dispose}.
|
|
13
14
|
*
|
|
14
|
-
* To enable visualization of Telemetry data, you may create a {@link
|
|
15
|
+
* To enable visualization of Telemetry data, you may create a {@link DevtoolsLogger} and
|
|
15
16
|
* provide it during Devtools initialization.
|
|
16
17
|
*
|
|
18
|
+
* For more details and examples, see the {@link https://github.com/microsoft/FluidFramework/tree/main/packages/tools/devtools/devtools | package README}.
|
|
19
|
+
*
|
|
17
20
|
* @packageDocumentation
|
|
18
21
|
*/
|
|
19
22
|
import type { IDisposable } from "@fluidframework/core-interfaces";
|
|
@@ -21,6 +24,8 @@ import { type HasContainerKey, type IDevtoolsLogger } from "@fluidframework/devt
|
|
|
21
24
|
import type { IFluidContainer } from "@fluidframework/fluid-static";
|
|
22
25
|
/**
|
|
23
26
|
* Properties for configuring {@link IDevtools}.
|
|
27
|
+
*
|
|
28
|
+
* @sealed
|
|
24
29
|
* @beta
|
|
25
30
|
*/
|
|
26
31
|
export interface DevtoolsProps {
|
|
@@ -34,23 +39,25 @@ export interface DevtoolsProps {
|
|
|
34
39
|
* This is provided to the Devtools instance strictly to enable communicating supported / desired functionality with
|
|
35
40
|
* external listeners.
|
|
36
41
|
*/
|
|
37
|
-
logger?: IDevtoolsLogger;
|
|
42
|
+
readonly logger?: IDevtoolsLogger;
|
|
38
43
|
/**
|
|
39
44
|
* (optional) List of Containers to initialize the devtools with.
|
|
40
45
|
*
|
|
41
46
|
* @remarks Additional Containers can be registered with the Devtools via {@link IDevtools.registerContainerDevtools}.
|
|
42
47
|
*/
|
|
43
|
-
initialContainers?: ContainerDevtoolsProps[];
|
|
48
|
+
readonly initialContainers?: ContainerDevtoolsProps[];
|
|
44
49
|
}
|
|
45
50
|
/**
|
|
46
51
|
* Properties for configuring Devtools for an individual {@link @fluidframework/fluid-static#IFluidContainer}.
|
|
52
|
+
*
|
|
53
|
+
* @sealed
|
|
47
54
|
* @beta
|
|
48
55
|
*/
|
|
49
56
|
export interface ContainerDevtoolsProps extends HasContainerKey {
|
|
50
57
|
/**
|
|
51
58
|
* The Container to register with the Devtools.
|
|
52
59
|
*/
|
|
53
|
-
container: IFluidContainer;
|
|
60
|
+
readonly container: IFluidContainer;
|
|
54
61
|
}
|
|
55
62
|
/**
|
|
56
63
|
* Fluid Devtools. A single, global instance is used to generate and communicate stats associated with the general Fluid
|
|
@@ -64,6 +71,8 @@ export interface ContainerDevtoolsProps extends HasContainerKey {
|
|
|
64
71
|
* The lifetime of the associated singleton is bound by that of the Window (globalThis), and it will be automatically
|
|
65
72
|
* disposed of on Window unload.
|
|
66
73
|
* If you wish to dispose of it earlier, you may call its {@link @fluidframework/core-interfaces#IDisposable.dispose} method.
|
|
74
|
+
*
|
|
75
|
+
* @sealed
|
|
67
76
|
* @beta
|
|
68
77
|
*/
|
|
69
78
|
export interface IDevtools extends IDisposable {
|
|
@@ -85,6 +94,7 @@ export interface IDevtools extends IDisposable {
|
|
|
85
94
|
* Initializes the Devtools singleton and returns a handle to it.
|
|
86
95
|
*
|
|
87
96
|
* @see {@link @fluidframework/devtools-core#initializeDevtoolsBase}
|
|
97
|
+
*
|
|
88
98
|
* @beta
|
|
89
99
|
*/
|
|
90
100
|
export declare function initializeDevtools(props: DevtoolsProps): IDevtools;
|
package/lib/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAkB,MAAM,iCAAiC,CAAC;AACnF,OAAO,EAEN,KAAK,eAAe,EAEpB,KAAK,eAAe,EAEpB,MAAM,wCAAwC,CAAC;AAChD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAGpE;;;;;GAKG;AACH,MAAM,WAAW,aAAa;IAC7B;;;;;;;;;OASG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,eAAe,CAAC;IAElC;;;;OAIG;IACH,QAAQ,CAAC,iBAAiB,CAAC,EAAE,sBAAsB,EAAE,CAAC;CAGtD;AAED;;;;;GAKG;AACH,MAAM,WAAW,sBAAuB,SAAQ,eAAe;IAC9D;;OAEG;IACH,QAAQ,CAAC,SAAS,EAAE,eAAe,CAAC;CAGpC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,WAAW,SAAU,SAAQ,WAAW;IAC7C;;;;;;;OAOG;IACH,yBAAyB,CAAC,KAAK,EAAE,sBAAsB,GAAG,IAAI,CAAC;IAE/D;;OAEG;IACH,sBAAsB,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC;CACzC;AAwCD;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,aAAa,GAAG,SAAS,CAUlE;AA2BD,OAAO,EACN,KAAK,YAAY,EACjB,KAAK,eAAe,EACpB,oBAAoB,EACpB,KAAK,eAAe,GACpB,MAAM,wCAAwC,CAAC"}
|
package/lib/index.js
CHANGED
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAqBH,OAAO,EAKN,kBAAkB,IAAI,sBAAsB,GAC5C,MAAM,wCAAwC,CAAC;AAEhD,OAAO,EAAE,wBAAwB,EAAE,MAAM,uCAAuC,CAAC;AA+EjF,MAAM,QAAQ;IACb;IACC;;OAEG;IACc,SAAwB;QAAxB,cAAS,GAAT,SAAS,CAAe;IACvC,CAAC;IAEJ;;OAEG;IACI,yBAAyB,CAAC,KAA6B;QAC7D,MAAM,WAAW,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;QAC7C,IAAI,CAAC,SAAS,CAAC,yBAAyB,CAAC,WAAW,CAAC,CAAC;IACvD,CAAC;IAED;;OAEG;IACI,sBAAsB,CAAC,EAAU;QACvC,IAAI,CAAC,SAAS,CAAC,sBAAsB,CAAC,EAAE,CAAC,CAAC;IAC3C,CAAC;IAED;;OAEG;IACH,IAAW,QAAQ;QAClB,OAAO,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC;IAChC,CAAC;IAED;;OAEG;IACI,OAAO;QACb,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;IAC1B,CAAC;CACD;AAED;;;;;;GAMG;AACH,MAAM,UAAU,kBAAkB,CAAC,KAAoB;IACtD,MAAM,EAAE,iBAAiB,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC;IAE5C,MAAM,uBAAuB,GAAG,iBAAiB,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC;IAEpF,MAAM,YAAY,GAAG,sBAAsB,CAAC;QAC3C,MAAM;QACN,iBAAiB,EAAE,uBAAuB;KAC1C,CAAC,CAAC;IACH,OAAO,IAAI,QAAQ,CAAC,YAAY,CAAC,CAAC;AACnC,CAAC;AAED;;;GAGG;AACH,SAAS,iBAAiB,CACzB,cAAsC;IAEtC,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,GAAG,cAAc,CAAC;IACnD,IAAI,CAAC,wBAAwB,CAAC,SAAS,CAAC,EAAE,CAAC;QAC1C,MAAM,IAAI,SAAS,CAClB,qGAAqG,CACrG,CAAC;IACH,CAAC;IAED,OAAO;QACN,SAAS,EAAE,SAAS,CAAC,SAAS;QAC9B,YAAY;QACZ,aAAa,EAAE,SAAS,CAAC,cAAgD;KACzE,CAAC;AACH,CAAC;AAED,gFAAgF;AAChF,uEAAuE;AACvE,gEAAgE;AAChE,4EAA4E;AAC5E,OAAO,EAGN,oBAAoB,GAEpB,MAAM,wCAAwC,CAAC","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\n/**\n * Used in conjunction with the Fluid Framework Developer Tools browser extension to allow visualization of\n * and interaction with Fluid data.\n *\n * To initialize the Devtools alongside your application's {@link @fluidframework/fluid-static#IFluidContainer}, call\n * {@link initializeDevtools}.\n *\n * The Devtools will automatically dispose of themselves upon Window unload, but if you would like to close them\n * earlier, call {@link IDevtools.dispose}.\n *\n * To enable visualization of Telemetry data, you may create a {@link DevtoolsLogger} and\n * provide it during Devtools initialization.\n *\n * For more details and examples, see the {@link https://github.com/microsoft/FluidFramework/tree/main/packages/tools/devtools/devtools | package README}.\n *\n * @packageDocumentation\n */\n\nimport type { IDisposable, IFluidLoadable } from \"@fluidframework/core-interfaces\";\nimport {\n\ttype ContainerDevtoolsProps as ContainerDevtoolsPropsBase,\n\ttype HasContainerKey,\n\ttype IFluidDevtools as IDevtoolsBase,\n\ttype IDevtoolsLogger,\n\tinitializeDevtools as initializeDevtoolsBase,\n} from \"@fluidframework/devtools-core/internal\";\nimport type { IFluidContainer } from \"@fluidframework/fluid-static\";\nimport { isInternalFluidContainer } from \"@fluidframework/fluid-static/internal\";\n\n/**\n * Properties for configuring {@link IDevtools}.\n *\n * @sealed\n * @beta\n */\nexport interface DevtoolsProps {\n\t/**\n\t * (optional) telemetry logger associated with the Fluid runtime.\n\t *\n\t * @remarks\n\t *\n\t * Note: the Devtools do not register this logger with the Fluid runtime; that must be done separately.\n\t *\n\t * This is provided to the Devtools instance strictly to enable communicating supported / desired functionality with\n\t * external listeners.\n\t */\n\treadonly logger?: IDevtoolsLogger;\n\n\t/**\n\t * (optional) List of Containers to initialize the devtools with.\n\t *\n\t * @remarks Additional Containers can be registered with the Devtools via {@link IDevtools.registerContainerDevtools}.\n\t */\n\treadonly initialContainers?: ContainerDevtoolsProps[];\n\n\t// TODO: Add ability for customers to specify custom data visualizer overrides\n}\n\n/**\n * Properties for configuring Devtools for an individual {@link @fluidframework/fluid-static#IFluidContainer}.\n *\n * @sealed\n * @beta\n */\nexport interface ContainerDevtoolsProps extends HasContainerKey {\n\t/**\n\t * The Container to register with the Devtools.\n\t */\n\treadonly container: IFluidContainer;\n\n\t// TODO: Add ability for customers to specify custom data visualizer overrides\n}\n\n/**\n * Fluid Devtools. A single, global instance is used to generate and communicate stats associated with the general Fluid\n * runtime (i.e., it is not associated with any single Framework entity).\n *\n * @remarks\n *\n * Supports registering {@link @fluidframework/fluid-static#IFluidContainer}s for Container-level stats\n * (via {@link IDevtools.registerContainerDevtools}).\n *\n * The lifetime of the associated singleton is bound by that of the Window (globalThis), and it will be automatically\n * disposed of on Window unload.\n * If you wish to dispose of it earlier, you may call its {@link @fluidframework/core-interfaces#IDisposable.dispose} method.\n *\n * @sealed\n * @beta\n */\nexport interface IDevtools extends IDisposable {\n\t/**\n\t * Initializes a {@link IDevtools} from the provided properties and stores it for future reference.\n\t *\n\t * @throws\n\t *\n\t * Will throw if devtools have already been registered for the specified\n\t * {@link @fluidframework/devtools-core#HasContainerKey.containerKey}.\n\t */\n\tregisterContainerDevtools(props: ContainerDevtoolsProps): void;\n\n\t/**\n\t * Closes registered Container-level Devtools associated with the provided ID.\n\t */\n\tcloseContainerDevtools(id: string): void;\n}\n\nclass Devtools implements IDevtools {\n\tpublic constructor(\n\t\t/**\n\t\t * Handle to the underlying Devtools instance (singleton).\n\t\t */\n\t\tprivate readonly _devtools: IDevtoolsBase,\n\t) {}\n\n\t/**\n\t * {@inheritDoc IDevtools.registerContainerDevtools}\n\t */\n\tpublic registerContainerDevtools(props: ContainerDevtoolsProps): void {\n\t\tconst mappedProps = mapContainerProps(props);\n\t\tthis._devtools.registerContainerDevtools(mappedProps);\n\t}\n\n\t/**\n\t * {@inheritDoc IDevtools.closeContainerDevtools}\n\t */\n\tpublic closeContainerDevtools(id: string): void {\n\t\tthis._devtools.closeContainerDevtools(id);\n\t}\n\n\t/**\n\t * {@inheritDoc IDevtools.disposed}\n\t */\n\tpublic get disposed(): boolean {\n\t\treturn this._devtools.disposed;\n\t}\n\n\t/**\n\t * {@inheritDoc IDevtools.dispose}\n\t */\n\tpublic dispose(): void {\n\t\tthis._devtools.dispose();\n\t}\n}\n\n/**\n * Initializes the Devtools singleton and returns a handle to it.\n *\n * @see {@link @fluidframework/devtools-core#initializeDevtoolsBase}\n *\n * @beta\n */\nexport function initializeDevtools(props: DevtoolsProps): IDevtools {\n\tconst { initialContainers, logger } = props;\n\n\tconst mappedInitialContainers = initialContainers?.map((p) => mapContainerProps(p));\n\n\tconst baseDevtools = initializeDevtoolsBase({\n\t\tlogger,\n\t\tinitialContainers: mappedInitialContainers,\n\t});\n\treturn new Devtools(baseDevtools);\n}\n\n/**\n * Maps the input props to lower-level {@link @fluidframework/devtools-core#ContainerDevtoolsPropsBase},\n * to be forwarded on to the base library.\n */\nfunction mapContainerProps(\n\tcontainerProps: ContainerDevtoolsProps,\n): ContainerDevtoolsPropsBase {\n\tconst { container, containerKey } = containerProps;\n\tif (!isInternalFluidContainer(container)) {\n\t\tthrow new TypeError(\n\t\t\t\"IFluidContainer was not recognized. Only Containers generated by the Fluid Framework are supported.\",\n\t\t);\n\t}\n\n\treturn {\n\t\tcontainer: container.container,\n\t\tcontainerKey,\n\t\tcontainerData: container.initialObjects as Record<string, IFluidLoadable>,\n\t};\n}\n\n// Convenience re-exports. Need to cover the things we export form this package,\n// so consumers don't need to import from this one *and* devtools-core.\n// DevtoolsLogger is necessary for consumers to set up Devtools.\n// ContainerDevtoolsProps extends HasContainerKey, so it needs ContainerKey.\nexport {\n\ttype ContainerKey,\n\ttype HasContainerKey,\n\tcreateDevtoolsLogger,\n\ttype IDevtoolsLogger,\n} from \"@fluidframework/devtools-core/internal\";\n"]}
|
package/lib/public.d.ts
CHANGED
|
@@ -9,7 +9,8 @@
|
|
|
9
9
|
*/
|
|
10
10
|
|
|
11
11
|
/**
|
|
12
|
-
*
|
|
12
|
+
* Used in conjunction with the Fluid Framework Developer Tools browser extension to allow visualization of
|
|
13
|
+
* and interaction with Fluid data.
|
|
13
14
|
*
|
|
14
15
|
* To initialize the Devtools alongside your application's {@link @fluidframework/fluid-static#IFluidContainer}, call
|
|
15
16
|
* {@link initializeDevtools}.
|
|
@@ -17,9 +18,11 @@
|
|
|
17
18
|
* The Devtools will automatically dispose of themselves upon Window unload, but if you would like to close them
|
|
18
19
|
* earlier, call {@link IDevtools.dispose}.
|
|
19
20
|
*
|
|
20
|
-
* To enable visualization of Telemetry data, you may create a {@link
|
|
21
|
+
* To enable visualization of Telemetry data, you may create a {@link DevtoolsLogger} and
|
|
21
22
|
* provide it during Devtools initialization.
|
|
22
23
|
*
|
|
24
|
+
* For more details and examples, see the {@link https://github.com/microsoft/FluidFramework/tree/main/packages/tools/devtools/devtools | package README}.
|
|
25
|
+
*
|
|
23
26
|
* @packageDocumentation
|
|
24
27
|
*/export {}
|
|
25
28
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@fluidframework/devtools",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.11.0",
|
|
4
4
|
"description": "Fluid Framework developer tools",
|
|
5
5
|
"homepage": "https://fluidframework.com",
|
|
6
6
|
"repository": {
|
|
@@ -77,20 +77,20 @@
|
|
|
77
77
|
"temp-directory": "nyc/.nyc_output"
|
|
78
78
|
},
|
|
79
79
|
"dependencies": {
|
|
80
|
-
"@fluidframework/container-definitions": "2.
|
|
81
|
-
"@fluidframework/core-interfaces": "2.
|
|
82
|
-
"@fluidframework/devtools-core": "2.
|
|
83
|
-
"@fluidframework/fluid-static": "2.
|
|
80
|
+
"@fluidframework/container-definitions": "~2.11.0",
|
|
81
|
+
"@fluidframework/core-interfaces": "~2.11.0",
|
|
82
|
+
"@fluidframework/devtools-core": "~2.11.0",
|
|
83
|
+
"@fluidframework/fluid-static": "~2.11.0"
|
|
84
84
|
},
|
|
85
85
|
"devDependencies": {
|
|
86
86
|
"@arethetypeswrong/cli": "^0.16.4",
|
|
87
87
|
"@biomejs/biome": "~1.9.3",
|
|
88
|
-
"@fluid-internal/mocha-test-setup": "2.
|
|
88
|
+
"@fluid-internal/mocha-test-setup": "~2.11.0",
|
|
89
89
|
"@fluid-tools/build-cli": "^0.51.0",
|
|
90
90
|
"@fluidframework/build-common": "^2.0.3",
|
|
91
91
|
"@fluidframework/build-tools": "^0.51.0",
|
|
92
|
-
"@fluidframework/devtools-previous": "npm:@fluidframework/devtools
|
|
93
|
-
"@fluidframework/eslint-config-fluid": "^5.
|
|
92
|
+
"@fluidframework/devtools-previous": "npm:@fluidframework/devtools@2.10.0",
|
|
93
|
+
"@fluidframework/eslint-config-fluid": "^5.6.0",
|
|
94
94
|
"@microsoft/api-extractor": "7.47.8",
|
|
95
95
|
"@types/chai": "^4.0.0",
|
|
96
96
|
"@types/mocha": "^9.1.1",
|
package/src/index.ts
CHANGED
|
@@ -4,7 +4,8 @@
|
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
6
|
/**
|
|
7
|
-
*
|
|
7
|
+
* Used in conjunction with the Fluid Framework Developer Tools browser extension to allow visualization of
|
|
8
|
+
* and interaction with Fluid data.
|
|
8
9
|
*
|
|
9
10
|
* To initialize the Devtools alongside your application's {@link @fluidframework/fluid-static#IFluidContainer}, call
|
|
10
11
|
* {@link initializeDevtools}.
|
|
@@ -12,9 +13,11 @@
|
|
|
12
13
|
* The Devtools will automatically dispose of themselves upon Window unload, but if you would like to close them
|
|
13
14
|
* earlier, call {@link IDevtools.dispose}.
|
|
14
15
|
*
|
|
15
|
-
* To enable visualization of Telemetry data, you may create a {@link
|
|
16
|
+
* To enable visualization of Telemetry data, you may create a {@link DevtoolsLogger} and
|
|
16
17
|
* provide it during Devtools initialization.
|
|
17
18
|
*
|
|
19
|
+
* For more details and examples, see the {@link https://github.com/microsoft/FluidFramework/tree/main/packages/tools/devtools/devtools | package README}.
|
|
20
|
+
*
|
|
18
21
|
* @packageDocumentation
|
|
19
22
|
*/
|
|
20
23
|
|
|
@@ -31,6 +34,8 @@ import { isInternalFluidContainer } from "@fluidframework/fluid-static/internal"
|
|
|
31
34
|
|
|
32
35
|
/**
|
|
33
36
|
* Properties for configuring {@link IDevtools}.
|
|
37
|
+
*
|
|
38
|
+
* @sealed
|
|
34
39
|
* @beta
|
|
35
40
|
*/
|
|
36
41
|
export interface DevtoolsProps {
|
|
@@ -44,27 +49,29 @@ export interface DevtoolsProps {
|
|
|
44
49
|
* This is provided to the Devtools instance strictly to enable communicating supported / desired functionality with
|
|
45
50
|
* external listeners.
|
|
46
51
|
*/
|
|
47
|
-
logger?: IDevtoolsLogger;
|
|
52
|
+
readonly logger?: IDevtoolsLogger;
|
|
48
53
|
|
|
49
54
|
/**
|
|
50
55
|
* (optional) List of Containers to initialize the devtools with.
|
|
51
56
|
*
|
|
52
57
|
* @remarks Additional Containers can be registered with the Devtools via {@link IDevtools.registerContainerDevtools}.
|
|
53
58
|
*/
|
|
54
|
-
initialContainers?: ContainerDevtoolsProps[];
|
|
59
|
+
readonly initialContainers?: ContainerDevtoolsProps[];
|
|
55
60
|
|
|
56
61
|
// TODO: Add ability for customers to specify custom data visualizer overrides
|
|
57
62
|
}
|
|
58
63
|
|
|
59
64
|
/**
|
|
60
65
|
* Properties for configuring Devtools for an individual {@link @fluidframework/fluid-static#IFluidContainer}.
|
|
66
|
+
*
|
|
67
|
+
* @sealed
|
|
61
68
|
* @beta
|
|
62
69
|
*/
|
|
63
70
|
export interface ContainerDevtoolsProps extends HasContainerKey {
|
|
64
71
|
/**
|
|
65
72
|
* The Container to register with the Devtools.
|
|
66
73
|
*/
|
|
67
|
-
container: IFluidContainer;
|
|
74
|
+
readonly container: IFluidContainer;
|
|
68
75
|
|
|
69
76
|
// TODO: Add ability for customers to specify custom data visualizer overrides
|
|
70
77
|
}
|
|
@@ -81,6 +88,8 @@ export interface ContainerDevtoolsProps extends HasContainerKey {
|
|
|
81
88
|
* The lifetime of the associated singleton is bound by that of the Window (globalThis), and it will be automatically
|
|
82
89
|
* disposed of on Window unload.
|
|
83
90
|
* If you wish to dispose of it earlier, you may call its {@link @fluidframework/core-interfaces#IDisposable.dispose} method.
|
|
91
|
+
*
|
|
92
|
+
* @sealed
|
|
84
93
|
* @beta
|
|
85
94
|
*/
|
|
86
95
|
export interface IDevtools extends IDisposable {
|
|
@@ -142,6 +151,7 @@ class Devtools implements IDevtools {
|
|
|
142
151
|
* Initializes the Devtools singleton and returns a handle to it.
|
|
143
152
|
*
|
|
144
153
|
* @see {@link @fluidframework/devtools-core#initializeDevtoolsBase}
|
|
154
|
+
*
|
|
145
155
|
* @beta
|
|
146
156
|
*/
|
|
147
157
|
export function initializeDevtools(props: DevtoolsProps): IDevtools {
|