fluid-framework 2.0.0-dev-rc.1.0.0.228517 → 2.0.0-dev-rc.2.0.0.245554
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 +55 -0
- package/README.md +30 -48
- package/{api-extractor-esm.json → api-extractor-cjs.json} +6 -1
- package/api-extractor-lint.json +1 -1
- package/api-extractor.json +3 -3
- package/api-report/fluid-framework.api.md +222 -161
- package/dist/fluid-framework-alpha.d.ts +996 -379
- package/dist/fluid-framework-beta.d.ts +975 -379
- package/dist/fluid-framework-public.d.ts +975 -379
- package/dist/fluid-framework-untrimmed.d.ts +996 -380
- package/dist/index.d.ts +8 -9
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +23 -21
- package/dist/index.js.map +1 -1
- package/dist/package.json +3 -0
- package/dist/tsdoc-metadata.json +1 -1
- package/lib/fluid-framework-alpha.d.ts +2157 -0
- package/lib/fluid-framework-beta.d.ts +2136 -0
- package/lib/fluid-framework-public.d.ts +2136 -0
- package/lib/fluid-framework-untrimmed.d.ts +2157 -0
- package/lib/index.d.ts +20 -0
- package/lib/index.d.ts.map +1 -0
- package/lib/index.js +15 -0
- package/lib/index.js.map +1 -0
- package/package.json +30 -41
- package/src/index.ts +17 -67
- package/tsconfig.cjs.json +7 -0
- package/tsconfig.json +2 -5
- package/lib/fluid-framework-alpha.d.mts +0 -238
- package/lib/fluid-framework-beta.d.mts +0 -238
- package/lib/fluid-framework-public.d.mts +0 -238
- package/lib/fluid-framework-untrimmed.d.mts +0 -239
- package/lib/index.d.mts +0 -14
- package/lib/index.d.mts.map +0 -1
- package/lib/index.mjs +0 -10
- package/lib/index.mjs.map +0 -1
- /package/{.eslintrc.js → .eslintrc.cjs} +0 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,60 @@
|
|
|
1
1
|
# fluid-framework
|
|
2
2
|
|
|
3
|
+
## 2.0.0-rc.2.0.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- fluid-framework: EventEmitterWithErrorHandling is no longer publicly exported ([#19717](https://github.com/microsoft/FluidFramework/issues/19717)) [ae1d0be26d](https://github.com/microsoft/FluidFramework/commits/ae1d0be26d61453cff316b3f622a9f3647149167)
|
|
8
|
+
|
|
9
|
+
EventEmitterWithErrorHandling is intended for authoring DDSes, and thus is only intended for use within the Fluid Framework client packages.
|
|
10
|
+
It is no longer publicly exported: any users should fine their own solution or be upstreamed.
|
|
11
|
+
EventEmitterWithErrorHandling is available for now as `@alpha` to make this migration less disrupting for any existing users.
|
|
12
|
+
|
|
13
|
+
- fluid-framework: SharedObject classes are no longer exported as public ([#19717](https://github.com/microsoft/FluidFramework/issues/19717)) [ae1d0be26d](https://github.com/microsoft/FluidFramework/commits/ae1d0be26d61453cff316b3f622a9f3647149167)
|
|
14
|
+
|
|
15
|
+
`SharedObject` and `SharedObjectCore` are intended for authoring DDSes, and thus are only intended for use within the Fluid Framework client packages.
|
|
16
|
+
They is no longer publicly exported: any users should fine their own solution or be upstreamed.
|
|
17
|
+
`SharedObject` and `SharedObjectCore` are available for now as `@alpha` to make this migration less disrupting for any existing users.
|
|
18
|
+
|
|
19
|
+
- API tightening ([#20012](https://github.com/microsoft/FluidFramework/issues/20012)) [049de899dd](https://github.com/microsoft/FluidFramework/commits/049de899ddfd5c0155251cb0ea00ecbe3a7f7665)
|
|
20
|
+
|
|
21
|
+
The Fluid Framework API has been clarified with tags applied to package exports. As we are working toward a clear, safe,
|
|
22
|
+
and stable API surface, some build settings and imports may need to be adjusted.
|
|
23
|
+
|
|
24
|
+
**Now:** Most packages are specifying "exports" - import specifierss like` @fluidframework/foo/lib/internals` will
|
|
25
|
+
become build errors. The fix is to use only public APIs from @fluidframework/foo.
|
|
26
|
+
|
|
27
|
+
**Coming soon:** Build resolutions (`moduleResolution` in tsconfig compilerOptions) will need to be resolved with
|
|
28
|
+
Node16, NodeNext, or a bundler that supports resolution of named import/export paths. Internally, some FF packages will
|
|
29
|
+
use `@fluidframework/foo/internal` import paths that allow packages to talk to each other using non-public APIs.
|
|
30
|
+
|
|
31
|
+
**Final stage:** APIs that are not tagged @public will be removed from @fluidframework/foo imports.
|
|
32
|
+
|
|
33
|
+
- Deprecated error-related enums have been removed ([#19067](https://github.com/microsoft/FluidFramework/issues/19067)) [59793302e5](https://github.com/microsoft/FluidFramework/commits/59793302e56784cfb6ace0e6469345f3565b3312)
|
|
34
|
+
|
|
35
|
+
Error-related enums `ContainerErrorType`, `DriverErrorType`, `OdspErrorType` and `RouterliciousErrorType` were previously
|
|
36
|
+
deprecated and are now removed. There are replacement object-based enumerations of `ContainerErrorTypes`,
|
|
37
|
+
`DriverErrorTypes`, `OdspErrorTypes` and `RouterliciousErrorTypes`. Refer to the release notes of [Fluid Framework version
|
|
38
|
+
2.0.0-internal.7.0.0](https://github.com/microsoft/FluidFramework/releases/tag/client_v2.0.0-internal.7.0.0) for details
|
|
39
|
+
on the replacements.
|
|
40
|
+
|
|
41
|
+
- map, tree: DDS classes are no longer publicly exported ([#19717](https://github.com/microsoft/FluidFramework/issues/19717)) [ae1d0be26d](https://github.com/microsoft/FluidFramework/commits/ae1d0be26d61453cff316b3f622a9f3647149167)
|
|
42
|
+
|
|
43
|
+
SharedMap and SharedTree now only export their factories and the interface types.
|
|
44
|
+
The actual concrete classes which leak implementation details are no longer exported.
|
|
45
|
+
Users of the `SharedMap` type should use `ISharedMap`.
|
|
46
|
+
Users of the `SharedTree` type should use `ISharedTree`.
|
|
47
|
+
|
|
48
|
+
- tree: Minor API fixes for "@fluidframework/tree" package. ([#19057](https://github.com/microsoft/FluidFramework/issues/19057)) [3e0f218832](https://github.com/microsoft/FluidFramework/commits/3e0f21883255317f8bb1f7c420543650502a5b66)
|
|
49
|
+
|
|
50
|
+
Rename `IterableTreeListContent` to `IterableTreeArrayContent`, inline `TreeMapNodeBase` into `TreeMapNode`, rename `TreeArrayNode.spread` to `TreeArrayNode.spread` and remove `create` which was not supposed to be public (use `TreeArrayNode.spread` instead).
|
|
51
|
+
|
|
52
|
+
- fluid-framework: ContainerSchema is now readonly ([#19717](https://github.com/microsoft/FluidFramework/issues/19717)) [ae1d0be26d](https://github.com/microsoft/FluidFramework/commits/ae1d0be26d61453cff316b3f622a9f3647149167)
|
|
53
|
+
|
|
54
|
+
The `ContainerSchema` type is intended for defining input to these packages. This should make the APIs more tolerant and
|
|
55
|
+
thus be non-breaking, however its possible for some users of `ContainerSchema` to use it in ways where this could be a
|
|
56
|
+
breaking change: any such users should remove their mutations and/or use a different type.
|
|
57
|
+
|
|
3
58
|
## 2.0.0-rc.1.0.0
|
|
4
59
|
|
|
5
60
|
Dependency updates only.
|
package/README.md
CHANGED
|
@@ -1,25 +1,30 @@
|
|
|
1
|
-
#
|
|
1
|
+
# fluid-framework
|
|
2
2
|
|
|
3
|
-
The `
|
|
3
|
+
The `fluid-framework` package bundles a collection of Fluid Framework client libraries for easy use when paired with a corresponding service client package (e.g. `@fluidframework/azure-client`, `@fluidframework/tinylicious-client`, or `@fluid-experimental/osdp-client (BETA)`).
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
## Contents
|
|
6
6
|
|
|
7
|
-
|
|
8
|
-
<!-- NOTE: This section is automatically generated using @fluid-tools/markdown-magic. Do not update these generated contents directly. -->
|
|
7
|
+
The `fluid-framework` package consists primarily of two portions: the `IFluidContainer` and a selection of distributed data structures (DDSes).
|
|
9
8
|
|
|
10
|
-
|
|
9
|
+
### IFluidContainer
|
|
11
10
|
|
|
12
|
-
|
|
11
|
+
The **[IFluidContainer][]** interface is one of the types returned by calls to `createContainer()` and `getContainer()` on the service clients such as `AzureClient`.
|
|
12
|
+
It includes functionality to retrieve the Fluid data contained within, as well as to inspect the state of the collaboration session connection.
|
|
13
13
|
|
|
14
|
-
|
|
15
|
-
npm i fluid-framework
|
|
16
|
-
```
|
|
14
|
+
### DDS packages
|
|
17
15
|
|
|
18
|
-
|
|
16
|
+
You'll use one or more DDS data structures in your container to model your collaborative data.
|
|
17
|
+
The `fluid-framework` package offers the following data structures:
|
|
19
18
|
|
|
20
|
-
|
|
19
|
+
1. **[SharedTree][]**
|
|
20
|
+
1. **[SharedMap][]**, a map-like data structure for storing key/value pair data
|
|
21
|
+
- Note: as of version 2.0, `SharedMap` is deprecated. Please use `SharedTree` instead.
|
|
21
22
|
|
|
22
|
-
|
|
23
|
+
## Tutorial
|
|
24
|
+
|
|
25
|
+
Check out the [Hello World tutorial](https://fluidframework.com/docs/start/tutorial/) using `fluid-framework`.
|
|
26
|
+
|
|
27
|
+
<!-- AUTO-GENERATED-CONTENT:START (LIBRARY_PACKAGE_README:scripts=FALSE) -->
|
|
23
28
|
|
|
24
29
|
<!-- prettier-ignore-start -->
|
|
25
30
|
<!-- NOTE: This section is automatically generated using @fluid-tools/markdown-magic. Do not update these generated contents directly. -->
|
|
@@ -30,28 +35,17 @@ When taking a dependency on a Fluid Framework library, we recommend using a `^`
|
|
|
30
35
|
While Fluid Framework libraries may use different ranges with interdependencies between other Fluid Framework libraries,
|
|
31
36
|
library consumers should always prefer `^`.
|
|
32
37
|
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
<!-- AUTO-GENERATED-CONTENT:END -->
|
|
36
|
-
|
|
37
|
-
<!-- AUTO-GENERATED-CONTENT:START (README_API_DOCS_SECTION:includeHeading=TRUE) -->
|
|
38
|
+
## Installation
|
|
38
39
|
|
|
39
|
-
|
|
40
|
+
To get started, install the package by running the following command:
|
|
40
41
|
|
|
41
|
-
|
|
42
|
+
```bash
|
|
43
|
+
npm i fluid-framework
|
|
44
|
+
```
|
|
42
45
|
|
|
43
46
|
## API Documentation
|
|
44
47
|
|
|
45
|
-
API documentation for
|
|
46
|
-
|
|
47
|
-
<!-- prettier-ignore-end -->
|
|
48
|
-
|
|
49
|
-
<!-- AUTO-GENERATED-CONTENT:END -->
|
|
50
|
-
|
|
51
|
-
<!-- AUTO-GENERATED-CONTENT:START (README_CONTRIBUTION_GUIDELINES_SECTION:includeHeading=TRUE) -->
|
|
52
|
-
|
|
53
|
-
<!-- prettier-ignore-start -->
|
|
54
|
-
<!-- NOTE: This section is automatically generated using @fluid-tools/markdown-magic. Do not update these generated contents directly. -->
|
|
48
|
+
API documentation for **fluid-framework** is available at <https://fluidframework.com/docs/apis/fluid-framework>.
|
|
55
49
|
|
|
56
50
|
## Contribution Guidelines
|
|
57
51
|
|
|
@@ -71,15 +65,6 @@ This project may contain Microsoft trademarks or logos for Microsoft projects, p
|
|
|
71
65
|
Use of these trademarks or logos must follow Microsoft’s [Trademark & Brand Guidelines](https://www.microsoft.com/trademarks).
|
|
72
66
|
Use of Microsoft trademarks or logos in modified versions of this project must not cause confusion or imply Microsoft sponsorship.
|
|
73
67
|
|
|
74
|
-
<!-- prettier-ignore-end -->
|
|
75
|
-
|
|
76
|
-
<!-- AUTO-GENERATED-CONTENT:END -->
|
|
77
|
-
|
|
78
|
-
<!-- AUTO-GENERATED-CONTENT:START (README_HELP_SECTION:includeHeading=TRUE) -->
|
|
79
|
-
|
|
80
|
-
<!-- prettier-ignore-start -->
|
|
81
|
-
<!-- NOTE: This section is automatically generated using @fluid-tools/markdown-magic. Do not update these generated contents directly. -->
|
|
82
|
-
|
|
83
68
|
## Help
|
|
84
69
|
|
|
85
70
|
Not finding what you're looking for in this README? Check out our [GitHub
|
|
@@ -90,15 +75,6 @@ issue](https://github.com/microsoft/FluidFramework/wiki/Submitting-Bugs-and-Feat
|
|
|
90
75
|
|
|
91
76
|
Thank you!
|
|
92
77
|
|
|
93
|
-
<!-- prettier-ignore-end -->
|
|
94
|
-
|
|
95
|
-
<!-- AUTO-GENERATED-CONTENT:END -->
|
|
96
|
-
|
|
97
|
-
<!-- AUTO-GENERATED-CONTENT:START (README_TRADEMARK_SECTION:includeHeading=TRUE) -->
|
|
98
|
-
|
|
99
|
-
<!-- prettier-ignore-start -->
|
|
100
|
-
<!-- NOTE: This section is automatically generated using @fluid-tools/markdown-magic. Do not update these generated contents directly. -->
|
|
101
|
-
|
|
102
78
|
## Trademark
|
|
103
79
|
|
|
104
80
|
This project may contain Microsoft trademarks or logos for Microsoft projects, products, or services.
|
|
@@ -110,3 +86,9 @@ Use of Microsoft trademarks or logos in modified versions of this project must n
|
|
|
110
86
|
<!-- prettier-ignore-end -->
|
|
111
87
|
|
|
112
88
|
<!-- AUTO-GENERATED-CONTENT:END -->
|
|
89
|
+
|
|
90
|
+
<!-- Links -->
|
|
91
|
+
|
|
92
|
+
[ifluidcontainer]: https://fluidframework.com/docs/api/v2/fluid-framework/ifluidcontainer-interface
|
|
93
|
+
[sharedmap]: https://fluidframework.com/docs/data-structures/map/
|
|
94
|
+
[sharedtree]: https://fluidframework.com/docs/data-structures/tree/
|
|
@@ -1,4 +1,9 @@
|
|
|
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
|
|
3
|
+
"extends": "../../../common/build/build-common/api-extractor-base.cjs.primary.json",
|
|
4
|
+
"bundledPackages": ["@fluidframework/*"],
|
|
5
|
+
// CJS is actually secondary; so, no report.
|
|
6
|
+
"apiReport": {
|
|
7
|
+
"enabled": false
|
|
8
|
+
}
|
|
4
9
|
}
|
package/api-extractor-lint.json
CHANGED
package/api-extractor.json
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
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.json",
|
|
4
|
-
"bundledPackages": ["@fluidframework
|
|
3
|
+
"extends": "../../../common/build/build-common/api-extractor-base.esm.primary.json",
|
|
4
|
+
"bundledPackages": ["@fluidframework/*"],
|
|
5
5
|
"messages": {
|
|
6
6
|
"extractorMessageReporting": {
|
|
7
|
-
// TODO:
|
|
7
|
+
// TODO: Fix violations and set logLevel to "error"
|
|
8
8
|
"ae-undocumented": {
|
|
9
9
|
"logLevel": "none"
|
|
10
10
|
}
|