@fluidframework/task-manager 2.0.0-dev-rc.1.0.0.224419
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/.eslintrc.js +29 -0
- package/.mocharc.js +12 -0
- package/CHANGELOG.md +144 -0
- package/LICENSE +21 -0
- package/README.md +70 -0
- package/api-extractor-lint.json +4 -0
- package/api-extractor.json +4 -0
- package/api-report/task-manager.api.md +71 -0
- package/dist/index.cjs +10 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.ts +13 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/interfaces.cjs +7 -0
- package/dist/interfaces.cjs.map +1 -0
- package/dist/interfaces.d.ts +178 -0
- package/dist/interfaces.d.ts.map +1 -0
- package/dist/packageVersion.cjs +12 -0
- package/dist/packageVersion.cjs.map +1 -0
- package/dist/packageVersion.d.ts +9 -0
- package/dist/packageVersion.d.ts.map +1 -0
- package/dist/task-manager-alpha.d.ts +27 -0
- package/dist/task-manager-beta.d.ts +27 -0
- package/dist/task-manager-public.d.ts +27 -0
- package/dist/task-manager-untrimmed.d.ts +335 -0
- package/dist/taskManager.cjs +621 -0
- package/dist/taskManager.cjs.map +1 -0
- package/dist/taskManager.d.ts +150 -0
- package/dist/taskManager.d.ts.map +1 -0
- package/dist/taskManagerFactory.cjs +41 -0
- package/dist/taskManagerFactory.cjs.map +1 -0
- package/dist/taskManagerFactory.d.ts +21 -0
- package/dist/taskManagerFactory.d.ts.map +1 -0
- package/dist/tsdoc-metadata.json +11 -0
- package/lib/index.d.mts +7 -0
- package/lib/index.d.mts.map +1 -0
- package/lib/index.mjs +6 -0
- package/lib/index.mjs.map +1 -0
- package/lib/interfaces.d.mts +178 -0
- package/lib/interfaces.d.mts.map +1 -0
- package/lib/interfaces.mjs +6 -0
- package/lib/interfaces.mjs.map +1 -0
- package/lib/packageVersion.d.mts +9 -0
- package/lib/packageVersion.d.mts.map +1 -0
- package/lib/packageVersion.mjs +9 -0
- package/lib/packageVersion.mjs.map +1 -0
- package/lib/task-manager-alpha.d.mts +27 -0
- package/lib/task-manager-beta.d.mts +27 -0
- package/lib/task-manager-public.d.mts +27 -0
- package/lib/task-manager-untrimmed.d.mts +335 -0
- package/lib/taskManager.d.mts +150 -0
- package/lib/taskManager.d.mts.map +1 -0
- package/lib/taskManager.mjs +617 -0
- package/lib/taskManager.mjs.map +1 -0
- package/lib/taskManagerFactory.d.mts +21 -0
- package/lib/taskManagerFactory.d.mts.map +1 -0
- package/lib/taskManagerFactory.mjs +37 -0
- package/lib/taskManagerFactory.mjs.map +1 -0
- package/package.json +137 -0
- package/prettier.config.cjs +8 -0
- package/src/index.ts +14 -0
- package/src/interfaces.ts +190 -0
- package/src/packageVersion.ts +9 -0
- package/src/taskManager.ts +776 -0
- package/src/taskManagerFactory.ts +55 -0
- package/tsc-multi.test.json +4 -0
- package/tsconfig.json +12 -0
package/.eslintrc.js
ADDED
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Copyright (c) Microsoft Corporation and contributors. All rights reserved.
|
|
3
|
+
* Licensed under the MIT License.
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
module.exports = {
|
|
7
|
+
extends: [require.resolve("@fluidframework/eslint-config-fluid/minimal"), "prettier"],
|
|
8
|
+
|
|
9
|
+
parserOptions: {
|
|
10
|
+
project: ["./tsconfig.json", "./src/test/tsconfig.json"],
|
|
11
|
+
},
|
|
12
|
+
rules: {
|
|
13
|
+
// This library is used in the browser, so we don't want dependencies on most node libraries.
|
|
14
|
+
"import/no-nodejs-modules": ["error", { allow: ["events"] }],
|
|
15
|
+
},
|
|
16
|
+
overrides: [
|
|
17
|
+
{
|
|
18
|
+
// Rules only for test files
|
|
19
|
+
files: ["*.spec.ts", "src/test/**"],
|
|
20
|
+
rules: {
|
|
21
|
+
// Test files are run in node only so additional node libraries can be used.
|
|
22
|
+
"import/no-nodejs-modules": [
|
|
23
|
+
"error",
|
|
24
|
+
{ allow: ["assert", "events", "fs", "path"] },
|
|
25
|
+
],
|
|
26
|
+
},
|
|
27
|
+
},
|
|
28
|
+
],
|
|
29
|
+
};
|
package/.mocharc.js
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Copyright (c) Microsoft Corporation and contributors. All rights reserved.
|
|
3
|
+
* Licensed under the MIT License.
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
"use strict";
|
|
7
|
+
|
|
8
|
+
const getFluidTestMochaConfig = require("@fluidframework/mocha-test-setup/mocharc-common");
|
|
9
|
+
|
|
10
|
+
const packageDir = __dirname;
|
|
11
|
+
const config = getFluidTestMochaConfig(packageDir);
|
|
12
|
+
module.exports = config;
|
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,144 @@
|
|
|
1
|
+
# @fluidframework/task-manager
|
|
2
|
+
|
|
3
|
+
## 2.0.0-internal.8.0.0
|
|
4
|
+
|
|
5
|
+
Dependency updates only.
|
|
6
|
+
|
|
7
|
+
## 2.0.0-internal.7.4.0
|
|
8
|
+
|
|
9
|
+
Dependency updates only.
|
|
10
|
+
|
|
11
|
+
## 2.0.0-internal.7.3.0
|
|
12
|
+
|
|
13
|
+
Dependency updates only.
|
|
14
|
+
|
|
15
|
+
## 2.0.0-internal.7.2.0
|
|
16
|
+
|
|
17
|
+
Dependency updates only.
|
|
18
|
+
|
|
19
|
+
## 2.0.0-internal.7.1.0
|
|
20
|
+
|
|
21
|
+
Dependency updates only.
|
|
22
|
+
|
|
23
|
+
## 2.0.0-internal.7.0.0
|
|
24
|
+
|
|
25
|
+
### Major Changes
|
|
26
|
+
|
|
27
|
+
- Dependencies on @fluidframework/protocol-definitions package updated to 3.0.0 [871b3493dd](https://github.com/microsoft/FluidFramework/commits/871b3493dd0d7ea3a89be64998ceb6cb9021a04e)
|
|
28
|
+
|
|
29
|
+
This included the following changes from the protocol-definitions release:
|
|
30
|
+
|
|
31
|
+
- Updating signal interfaces for some planned improvements. The intention is split the interface between signals
|
|
32
|
+
submitted by clients to the server and the resulting signals sent from the server to clients.
|
|
33
|
+
- A new optional type member is available on the ISignalMessage interface and a new ISentSignalMessage interface has
|
|
34
|
+
been added, which will be the typing for signals sent from the client to the server. Both extend a new
|
|
35
|
+
ISignalMessageBase interface that contains common members.
|
|
36
|
+
- The @fluidframework/common-definitions package dependency has been updated to version 1.0.0.
|
|
37
|
+
|
|
38
|
+
- Server upgrade: dependencies on Fluid server packages updated to 2.0.1 [871b3493dd](https://github.com/microsoft/FluidFramework/commits/871b3493dd0d7ea3a89be64998ceb6cb9021a04e)
|
|
39
|
+
|
|
40
|
+
Dependencies on the following Fluid server package have been updated to version 2.0.1:
|
|
41
|
+
|
|
42
|
+
- @fluidframework/gitresources: 2.0.1
|
|
43
|
+
- @fluidframework/server-kafka-orderer: 2.0.1
|
|
44
|
+
- @fluidframework/server-lambdas: 2.0.1
|
|
45
|
+
- @fluidframework/server-lambdas-driver: 2.0.1
|
|
46
|
+
- @fluidframework/server-local-server: 2.0.1
|
|
47
|
+
- @fluidframework/server-memory-orderer: 2.0.1
|
|
48
|
+
- @fluidframework/protocol-base: 2.0.1
|
|
49
|
+
- @fluidframework/server-routerlicious: 2.0.1
|
|
50
|
+
- @fluidframework/server-routerlicious-base: 2.0.1
|
|
51
|
+
- @fluidframework/server-services: 2.0.1
|
|
52
|
+
- @fluidframework/server-services-client: 2.0.1
|
|
53
|
+
- @fluidframework/server-services-core: 2.0.1
|
|
54
|
+
- @fluidframework/server-services-ordering-kafkanode: 2.0.1
|
|
55
|
+
- @fluidframework/server-services-ordering-rdkafka: 2.0.1
|
|
56
|
+
- @fluidframework/server-services-ordering-zookeeper: 2.0.1
|
|
57
|
+
- @fluidframework/server-services-shared: 2.0.1
|
|
58
|
+
- @fluidframework/server-services-telemetry: 2.0.1
|
|
59
|
+
- @fluidframework/server-services-utils: 2.0.1
|
|
60
|
+
- @fluidframework/server-test-utils: 2.0.1
|
|
61
|
+
- tinylicious: 2.0.1
|
|
62
|
+
|
|
63
|
+
- Minimum TypeScript version now 5.1.6 [871b3493dd](https://github.com/microsoft/FluidFramework/commits/871b3493dd0d7ea3a89be64998ceb6cb9021a04e)
|
|
64
|
+
|
|
65
|
+
The minimum supported TypeScript version for Fluid 2.0 clients is now 5.1.6.
|
|
66
|
+
|
|
67
|
+
## 2.0.0-internal.6.4.0
|
|
68
|
+
|
|
69
|
+
Dependency updates only.
|
|
70
|
+
|
|
71
|
+
## 2.0.0-internal.6.3.0
|
|
72
|
+
|
|
73
|
+
Dependency updates only.
|
|
74
|
+
|
|
75
|
+
## 2.0.0-internal.6.2.0
|
|
76
|
+
|
|
77
|
+
### Minor Changes
|
|
78
|
+
|
|
79
|
+
- Remove use of @fluidframework/common-definitions ([#16638](https://github.com/microsoft/FluidFramework/issues/16638)) [a8c81509c9](https://github.com/microsoft/FluidFramework/commits/a8c81509c9bf09cfb2092ebcf7265205f9eb6dbf)
|
|
80
|
+
|
|
81
|
+
The **@fluidframework/common-definitions** package is being deprecated, so the following interfaces and types are now
|
|
82
|
+
imported from the **@fluidframework/core-interfaces** package:
|
|
83
|
+
|
|
84
|
+
- interface IDisposable
|
|
85
|
+
- interface IErrorEvent
|
|
86
|
+
- interface IErrorEvent
|
|
87
|
+
- interface IEvent
|
|
88
|
+
- interface IEventProvider
|
|
89
|
+
- interface ILoggingError
|
|
90
|
+
- interface ITaggedTelemetryPropertyType
|
|
91
|
+
- interface ITelemetryBaseEvent
|
|
92
|
+
- interface ITelemetryBaseLogger
|
|
93
|
+
- interface ITelemetryErrorEvent
|
|
94
|
+
- interface ITelemetryGenericEvent
|
|
95
|
+
- interface ITelemetryLogger
|
|
96
|
+
- interface ITelemetryPerformanceEvent
|
|
97
|
+
- interface ITelemetryProperties
|
|
98
|
+
- type ExtendEventProvider
|
|
99
|
+
- type IEventThisPlaceHolder
|
|
100
|
+
- type IEventTransformer
|
|
101
|
+
- type ReplaceIEventThisPlaceHolder
|
|
102
|
+
- type ReplaceIEventThisPlaceHolder
|
|
103
|
+
- type TelemetryEventCategory
|
|
104
|
+
- type TelemetryEventPropertyType
|
|
105
|
+
|
|
106
|
+
## 2.0.0-internal.6.1.0
|
|
107
|
+
|
|
108
|
+
Dependency updates only.
|
|
109
|
+
|
|
110
|
+
## 2.0.0-internal.6.0.0
|
|
111
|
+
|
|
112
|
+
### Major Changes
|
|
113
|
+
|
|
114
|
+
- Upgraded typescript transpilation target to ES2020 [8abce8cdb4](https://github.com/microsoft/FluidFramework/commits/8abce8cdb4e2832fb6405fb44e393bef03d5648a)
|
|
115
|
+
|
|
116
|
+
Upgraded typescript transpilation target to ES2020. This is done in order to decrease the bundle sizes of Fluid Framework packages. This has provided size improvements across the board for ex. Loader, Driver, Runtime etc. Reduced bundle sizes helps to load lesser code in apps and hence also helps to improve the perf.If any app wants to target any older versions of browsers with which this target version is not compatible, then they can use packages like babel to transpile to a older target.
|
|
117
|
+
|
|
118
|
+
## 2.0.0-internal.5.4.0
|
|
119
|
+
|
|
120
|
+
Dependency updates only.
|
|
121
|
+
|
|
122
|
+
## 2.0.0-internal.5.3.0
|
|
123
|
+
|
|
124
|
+
Dependency updates only.
|
|
125
|
+
|
|
126
|
+
## 2.0.0-internal.5.2.0
|
|
127
|
+
|
|
128
|
+
Dependency updates only.
|
|
129
|
+
|
|
130
|
+
## 2.0.0-internal.5.1.0
|
|
131
|
+
|
|
132
|
+
Dependency updates only.
|
|
133
|
+
|
|
134
|
+
## 2.0.0-internal.5.0.0
|
|
135
|
+
|
|
136
|
+
Dependency updates only.
|
|
137
|
+
|
|
138
|
+
## 2.0.0-internal.4.4.0
|
|
139
|
+
|
|
140
|
+
Dependency updates only.
|
|
141
|
+
|
|
142
|
+
## 2.0.0-internal.4.1.0
|
|
143
|
+
|
|
144
|
+
Dependency updates only.
|
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
Copyright (c) Microsoft Corporation and contributors. All rights reserved.
|
|
2
|
+
|
|
3
|
+
MIT License
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED *AS IS*, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
ADDED
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
# @fluidframework/task-manager
|
|
2
|
+
|
|
3
|
+
<!-- AUTO-GENERATED-CONTENT:START (LIBRARY_PACKAGE_README:scripts=FALSE) -->
|
|
4
|
+
|
|
5
|
+
<!-- prettier-ignore-start -->
|
|
6
|
+
<!-- NOTE: This section is automatically generated using @fluid-tools/markdown-magic. Do not update these generated contents directly. -->
|
|
7
|
+
|
|
8
|
+
## Using Fluid Framework libraries
|
|
9
|
+
|
|
10
|
+
When taking a dependency on a Fluid Framework library, we recommend using a `^` (caret) version range, such as `^1.3.4`.
|
|
11
|
+
While Fluid Framework libraries may use different ranges with interdependencies between other Fluid Framework libraries,
|
|
12
|
+
library consumers should always prefer `^`.
|
|
13
|
+
|
|
14
|
+
Note that when depending on a library version of the form `2.0.0-internal.x.y.z`, called the Fluid internal version scheme,
|
|
15
|
+
you must use a `>= <` dependency range (such as `>=2.0.0-internal.x.y.z <2.0.0-internal.w.0.0` where `w` is `x+1`).
|
|
16
|
+
Standard `^` and `~` ranges will not work as expected.
|
|
17
|
+
See the [@fluid-tools/version-tools](https://github.com/microsoft/FluidFramework/blob/main/build-tools/packages/version-tools/README.md)
|
|
18
|
+
package for more information including tools to convert between version schemes.
|
|
19
|
+
|
|
20
|
+
## Installation
|
|
21
|
+
|
|
22
|
+
To get started, install the package by running the following command:
|
|
23
|
+
|
|
24
|
+
```bash
|
|
25
|
+
npm i @fluidframework/task-manager
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
## API Documentation
|
|
29
|
+
|
|
30
|
+
API documentation for **@fluidframework/task-manager** is available at <https://fluidframework.com/docs/apis/task-manager>.
|
|
31
|
+
|
|
32
|
+
## Contribution Guidelines
|
|
33
|
+
|
|
34
|
+
There are many ways to [contribute](https://github.com/microsoft/FluidFramework/blob/main/CONTRIBUTING.md) to Fluid.
|
|
35
|
+
|
|
36
|
+
- Participate in Q&A in our [GitHub Discussions](https://github.com/microsoft/FluidFramework/discussions).
|
|
37
|
+
- [Submit bugs](https://github.com/microsoft/FluidFramework/issues) and help us verify fixes as they are checked in.
|
|
38
|
+
- Review the [source code changes](https://github.com/microsoft/FluidFramework/pulls).
|
|
39
|
+
- [Contribute bug fixes](https://github.com/microsoft/FluidFramework/blob/main/CONTRIBUTING.md).
|
|
40
|
+
|
|
41
|
+
Detailed instructions for working in the repo can be found in the [Wiki](https://github.com/microsoft/FluidFramework/wiki).
|
|
42
|
+
|
|
43
|
+
This project has adopted the [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/).
|
|
44
|
+
For more information see the [Code of Conduct FAQ](https://opensource.microsoft.com/codeofconduct/faq/) or contact [opencode@microsoft.com](mailto:opencode@microsoft.com) with any additional questions or comments.
|
|
45
|
+
|
|
46
|
+
This project may contain Microsoft trademarks or logos for Microsoft projects, products, or services.
|
|
47
|
+
Use of these trademarks or logos must follow Microsoft’s [Trademark & Brand Guidelines](https://www.microsoft.com/trademarks).
|
|
48
|
+
Use of Microsoft trademarks or logos in modified versions of this project must not cause confusion or imply Microsoft sponsorship.
|
|
49
|
+
|
|
50
|
+
## Help
|
|
51
|
+
|
|
52
|
+
Not finding what you're looking for in this README? Check out our [GitHub
|
|
53
|
+
Wiki](https://github.com/microsoft/FluidFramework/wiki) or [fluidframework.com](https://fluidframework.com/docs/).
|
|
54
|
+
|
|
55
|
+
Still not finding what you're looking for? Please [file an
|
|
56
|
+
issue](https://github.com/microsoft/FluidFramework/wiki/Submitting-Bugs-and-Feature-Requests).
|
|
57
|
+
|
|
58
|
+
Thank you!
|
|
59
|
+
|
|
60
|
+
## Trademark
|
|
61
|
+
|
|
62
|
+
This project may contain Microsoft trademarks or logos for Microsoft projects, products, or services.
|
|
63
|
+
|
|
64
|
+
Use of these trademarks or logos must follow Microsoft's [Trademark & Brand Guidelines](https://www.microsoft.com/en-us/legal/intellectualproperty/trademarks/usage/general).
|
|
65
|
+
|
|
66
|
+
Use of Microsoft trademarks or logos in modified versions of this project must not cause confusion or imply Microsoft sponsorship.
|
|
67
|
+
|
|
68
|
+
<!-- prettier-ignore-end -->
|
|
69
|
+
|
|
70
|
+
<!-- AUTO-GENERATED-CONTENT:END -->
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
## API Report File for "@fluidframework/task-manager"
|
|
2
|
+
|
|
3
|
+
> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/).
|
|
4
|
+
|
|
5
|
+
```ts
|
|
6
|
+
|
|
7
|
+
import { IChannelAttributes } from '@fluidframework/datastore-definitions';
|
|
8
|
+
import { IChannelFactory } from '@fluidframework/datastore-definitions';
|
|
9
|
+
import { IChannelStorageService } from '@fluidframework/datastore-definitions';
|
|
10
|
+
import { IFluidDataStoreRuntime } from '@fluidframework/datastore-definitions';
|
|
11
|
+
import { IFluidSerializer } from '@fluidframework/shared-object-base';
|
|
12
|
+
import { ISequencedDocumentMessage } from '@fluidframework/protocol-definitions';
|
|
13
|
+
import { ISharedObject } from '@fluidframework/shared-object-base';
|
|
14
|
+
import { ISharedObjectEvents } from '@fluidframework/shared-object-base';
|
|
15
|
+
import { ISummaryTreeWithStats } from '@fluidframework/runtime-definitions';
|
|
16
|
+
import { SharedObject } from '@fluidframework/shared-object-base';
|
|
17
|
+
|
|
18
|
+
// @internal
|
|
19
|
+
export interface ITaskManager extends ISharedObject<ITaskManagerEvents> {
|
|
20
|
+
abandon(taskId: string): void;
|
|
21
|
+
assigned(taskId: string): boolean;
|
|
22
|
+
canVolunteer(): boolean;
|
|
23
|
+
complete(taskId: string): void;
|
|
24
|
+
queued(taskId: string): boolean;
|
|
25
|
+
subscribed(taskId: string): boolean;
|
|
26
|
+
subscribeToTask(taskId: string): void;
|
|
27
|
+
volunteerForTask(taskId: string): Promise<boolean>;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
// @internal
|
|
31
|
+
export interface ITaskManagerEvents extends ISharedObjectEvents {
|
|
32
|
+
// @eventProperty
|
|
33
|
+
(event: "assigned", listener: TaskEventListener): any;
|
|
34
|
+
// @eventProperty
|
|
35
|
+
(event: "completed", listener: TaskEventListener): any;
|
|
36
|
+
// @eventProperty
|
|
37
|
+
(event: "lost", listener: TaskEventListener): any;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
// @internal
|
|
41
|
+
export type TaskEventListener = (taskId: string) => void;
|
|
42
|
+
|
|
43
|
+
// @internal @sealed
|
|
44
|
+
export class TaskManager extends SharedObject<ITaskManagerEvents> implements ITaskManager {
|
|
45
|
+
constructor(id: string, runtime: IFluidDataStoreRuntime, attributes: IChannelAttributes);
|
|
46
|
+
abandon(taskId: string): void;
|
|
47
|
+
// (undocumented)
|
|
48
|
+
applyStashedOp(): void;
|
|
49
|
+
assigned(taskId: string): boolean;
|
|
50
|
+
canVolunteer(): boolean;
|
|
51
|
+
complete(taskId: string): void;
|
|
52
|
+
static create(runtime: IFluidDataStoreRuntime, id?: string): TaskManager;
|
|
53
|
+
static getFactory(): IChannelFactory;
|
|
54
|
+
// (undocumented)
|
|
55
|
+
protected initializeLocalCore(): void;
|
|
56
|
+
// (undocumented)
|
|
57
|
+
protected loadCore(storage: IChannelStorageService): Promise<void>;
|
|
58
|
+
// (undocumented)
|
|
59
|
+
protected onConnect(): void;
|
|
60
|
+
// (undocumented)
|
|
61
|
+
protected onDisconnect(): void;
|
|
62
|
+
protected processCore(message: ISequencedDocumentMessage, local: boolean, localOpMetadata: unknown): void;
|
|
63
|
+
queued(taskId: string): boolean;
|
|
64
|
+
protected reSubmitCore(): void;
|
|
65
|
+
subscribed(taskId: string): boolean;
|
|
66
|
+
subscribeToTask(taskId: string): void;
|
|
67
|
+
protected summarizeCore(serializer: IFluidSerializer): ISummaryTreeWithStats;
|
|
68
|
+
volunteerForTask(taskId: string): Promise<boolean>;
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
```
|
package/dist/index.cjs
ADDED
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/*!
|
|
3
|
+
* Copyright (c) Microsoft Corporation and contributors. All rights reserved.
|
|
4
|
+
* Licensed under the MIT License.
|
|
5
|
+
*/
|
|
6
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
+
exports.TaskManager = void 0;
|
|
8
|
+
var taskManager_1 = require("./taskManager.cjs");
|
|
9
|
+
Object.defineProperty(exports, "TaskManager", { enumerable: true, get: function () { return taskManager_1.TaskManager; } });
|
|
10
|
+
//# sourceMappingURL=index.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.cjs","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAUH,iDAA4C;AAAnC,0GAAA,WAAW,OAAA","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\n/**\n * Contains a distributed data structure, {@link ITaskManager}, to track the queues of clients that want to\n * exclusively run tasks.\n *\n * @packageDocumentation\n */\n\nexport { ITaskManager, ITaskManagerEvents, TaskEventListener } from \"./interfaces\";\nexport { TaskManager } from \"./taskManager\";\n"]}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Copyright (c) Microsoft Corporation and contributors. All rights reserved.
|
|
3
|
+
* Licensed under the MIT License.
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* Contains a distributed data structure, {@link ITaskManager}, to track the queues of clients that want to
|
|
7
|
+
* exclusively run tasks.
|
|
8
|
+
*
|
|
9
|
+
* @packageDocumentation
|
|
10
|
+
*/
|
|
11
|
+
export { ITaskManager, ITaskManagerEvents, TaskEventListener } from "./interfaces";
|
|
12
|
+
export { TaskManager } from "./taskManager";
|
|
13
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;GAKG;AAEH,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACnF,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"interfaces.cjs","sourceRoot":"","sources":["../src/interfaces.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 { ISharedObject, ISharedObjectEvents } from \"@fluidframework/shared-object-base\";\n\n/**\n * Describes the event listener format for {@link ITaskManagerEvents} events.\n *\n * @param taskId - The unique identifier of the related task.\n * @internal\n */\nexport type TaskEventListener = (taskId: string) => void;\n\n/**\n * Events emitted by {@link TaskManager}.\n * @internal\n */\nexport interface ITaskManagerEvents extends ISharedObjectEvents {\n\t/**\n\t * Fires when a task has been exclusively assigned to the client.\n\t *\n\t * @remarks Does not account for known pending ops, but instead only reflects the current state.\n\t *\n\t * @eventProperty\n\t */\n\t(event: \"assigned\", listener: TaskEventListener);\n\n\t/**\n\t * Fires when a task the client is queued for is completed.\n\t *\n\t * @eventProperty\n\t */\n\t(event: \"completed\", listener: TaskEventListener);\n\n\t/**\n\t * Fires when the task assignment is lost by the local client.\n\t *\n\t * @remarks This could be due to the client disconnecting or by manually calling {@link ITaskManager.abandon}.\n\t *\n\t * @eventProperty\n\t */\n\t(event: \"lost\", listener: TaskEventListener);\n}\n\n/**\n * A distributed data structure that tracks queues of clients that want to exclusively run a task.\n *\n * @example Creation\n *\n * To create a {@link TaskManager}, call the static create method:\n *\n * ```typescript\n * const taskManager = TaskManager.create(this.runtime, id);\n * ```\n *\n * @example Usage\n *\n * To volunteer for a task, use the {@link ITaskManager.volunteerForTask} method.\n * This returns a Promise that will resolve once the client has acquired exclusive rights to run the task,\n * or reject if the client is removed from the queue without acquiring the rights.\n *\n * ```typescript\n * taskManager.volunteerForTask(\"NameOfTask\")\n * .then(() => { doTheTask(); })\n * .catch((err) => { console.error(err); });\n * ```\n *\n * Alternatively, you can indefinitely volunteer for a task with the synchronous {@link ITaskManager.subscribeToTask}\n * method. This method does not return a value, therefore you need to rely on eventing to know when you have acquired\n * the rights to run the task (see below).\n *\n * ```typescript\n * taskManager.subscribeToTask(\"NameOfTask\");\n * ```\n *\n * To check if the local client is currently subscribed to a task, use the {@link ITaskManager.subscribed} method.\n *\n * ```typescript\n * if (taskManager.subscribed(\"NameOfTask\")) {\n * console.log(\"This client is currently subscribed to the task.\");\n * }\n * ```\n *\n * To release the rights to the task, use the {@link ITaskManager.abandon} method.\n * The next client in the queue will then get the rights to run the task.\n *\n * ```typescript\n * taskManager.abandon(\"NameOfTask\");\n * ```\n *\n * To inspect your state in the queue, you can use the {@link ITaskManager.queued} and {@link ITaskManager.assigned}\n * methods.\n *\n * ```typescript\n * if (taskManager.queued(\"NameOfTask\")) {\n * console.log(\"This client is somewhere in the queue, potentially even having the task assignment.\");\n * }\n *\n * if (taskManager.assigned(\"NameOfTask\")) {\n * console.log(\"This client currently has the rights to run the task\");\n * }\n * ```\n *\n * To signal to other connected clients that a task is completed, use the {@link ITaskManager.complete} method.\n * This will release all clients from the queue and emit the \"completed\" event.\n *\n * ```typescript\n * taskManager.complete(\"NameOfTask\");\n * ```\n *\n * @example Eventing\n *\n * `ITaskManager` will emit events when a task is assigned to the client, when the task assignment is lost,\n * and when a task was completed by another client.\n *\n * ```typescript\n * taskManager.on(\"assigned\", (taskId: string) => {\n * console.log(`Client was assigned task: ${taskId}`);\n * });\n *\n * taskManager.on(\"lost\", (taskId: string) => {\n * console.log(`Client released task: ${taskId}`);\n * });\n *\n * taskManager.on(\"completed\", (taskId: string) => {\n * console.log(`Another client completed task: ${taskId}`);\n * });\n * ```\n *\n * These can be useful if the logic to volunteer for a task is separated from the logic to perform the task, such as\n * when using {@link ITaskManager.subscribeToTask}.\n *\n * See {@link ITaskManagerEvents} for more details.\n * @internal\n */\nexport interface ITaskManager extends ISharedObject<ITaskManagerEvents> {\n\t/**\n\t * Volunteer for the task. Returns a promise that resolves `true` if the task is assigned to the local client and\n\t * `false` if the task was completed by another client. It rejects if the local client abandoned the task or\n\t * disconnected while in queue.\n\t * @param taskId - Identifier for the task\n\t */\n\tvolunteerForTask(taskId: string): Promise<boolean>;\n\n\t/**\n\t * Continuously volunteer for the task. Watch the \"assigned\" event to determine if the task is assigned.\n\t * The local client will automatically re-enter the queue if it disconnects.\n\t * @param taskId - Identifier for the task\n\t */\n\tsubscribeToTask(taskId: string): void;\n\n\t/**\n\t * Exit the queue, releasing the task if currently assigned.\n\t * @param taskId - Identifier for the task\n\t */\n\tabandon(taskId: string): void;\n\n\t/**\n\t * Check whether this client is the current assignee for the task and there is no outstanding abandon op that\n\t * would abandon the assignment.\n\t * @param taskId - Identifier for the task\n\t */\n\tassigned(taskId: string): boolean;\n\n\t/**\n\t * Check whether this client is either the current assignee, in queue, or we expect they will be in queue after\n\t * outstanding ops have been ack'd.\n\t * @param taskId - Identifier for the task\n\t */\n\tqueued(taskId: string): boolean;\n\n\t/**\n\t * Check whether this client is currently subscribed to the task.\n\t * @param taskId - Identifier for the task\n\t */\n\tsubscribed(taskId: string): boolean;\n\n\t/**\n\t * Marks a task as completed and releases all clients from its queue.\n\t * @param taskId - Identifier for the task\n\t */\n\tcomplete(taskId: string): void;\n\n\t/**\n\t * Check whether this client can currently volunteer for a task.\n\t */\n\tcanVolunteer(): boolean;\n}\n"]}
|
|
@@ -0,0 +1,178 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Copyright (c) Microsoft Corporation and contributors. All rights reserved.
|
|
3
|
+
* Licensed under the MIT License.
|
|
4
|
+
*/
|
|
5
|
+
import { ISharedObject, ISharedObjectEvents } from "@fluidframework/shared-object-base";
|
|
6
|
+
/**
|
|
7
|
+
* Describes the event listener format for {@link ITaskManagerEvents} events.
|
|
8
|
+
*
|
|
9
|
+
* @param taskId - The unique identifier of the related task.
|
|
10
|
+
* @internal
|
|
11
|
+
*/
|
|
12
|
+
export type TaskEventListener = (taskId: string) => void;
|
|
13
|
+
/**
|
|
14
|
+
* Events emitted by {@link TaskManager}.
|
|
15
|
+
* @internal
|
|
16
|
+
*/
|
|
17
|
+
export interface ITaskManagerEvents extends ISharedObjectEvents {
|
|
18
|
+
/**
|
|
19
|
+
* Fires when a task has been exclusively assigned to the client.
|
|
20
|
+
*
|
|
21
|
+
* @remarks Does not account for known pending ops, but instead only reflects the current state.
|
|
22
|
+
*
|
|
23
|
+
* @eventProperty
|
|
24
|
+
*/
|
|
25
|
+
(event: "assigned", listener: TaskEventListener): any;
|
|
26
|
+
/**
|
|
27
|
+
* Fires when a task the client is queued for is completed.
|
|
28
|
+
*
|
|
29
|
+
* @eventProperty
|
|
30
|
+
*/
|
|
31
|
+
(event: "completed", listener: TaskEventListener): any;
|
|
32
|
+
/**
|
|
33
|
+
* Fires when the task assignment is lost by the local client.
|
|
34
|
+
*
|
|
35
|
+
* @remarks This could be due to the client disconnecting or by manually calling {@link ITaskManager.abandon}.
|
|
36
|
+
*
|
|
37
|
+
* @eventProperty
|
|
38
|
+
*/
|
|
39
|
+
(event: "lost", listener: TaskEventListener): any;
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* A distributed data structure that tracks queues of clients that want to exclusively run a task.
|
|
43
|
+
*
|
|
44
|
+
* @example Creation
|
|
45
|
+
*
|
|
46
|
+
* To create a {@link TaskManager}, call the static create method:
|
|
47
|
+
*
|
|
48
|
+
* ```typescript
|
|
49
|
+
* const taskManager = TaskManager.create(this.runtime, id);
|
|
50
|
+
* ```
|
|
51
|
+
*
|
|
52
|
+
* @example Usage
|
|
53
|
+
*
|
|
54
|
+
* To volunteer for a task, use the {@link ITaskManager.volunteerForTask} method.
|
|
55
|
+
* This returns a Promise that will resolve once the client has acquired exclusive rights to run the task,
|
|
56
|
+
* or reject if the client is removed from the queue without acquiring the rights.
|
|
57
|
+
*
|
|
58
|
+
* ```typescript
|
|
59
|
+
* taskManager.volunteerForTask("NameOfTask")
|
|
60
|
+
* .then(() => { doTheTask(); })
|
|
61
|
+
* .catch((err) => { console.error(err); });
|
|
62
|
+
* ```
|
|
63
|
+
*
|
|
64
|
+
* Alternatively, you can indefinitely volunteer for a task with the synchronous {@link ITaskManager.subscribeToTask}
|
|
65
|
+
* method. This method does not return a value, therefore you need to rely on eventing to know when you have acquired
|
|
66
|
+
* the rights to run the task (see below).
|
|
67
|
+
*
|
|
68
|
+
* ```typescript
|
|
69
|
+
* taskManager.subscribeToTask("NameOfTask");
|
|
70
|
+
* ```
|
|
71
|
+
*
|
|
72
|
+
* To check if the local client is currently subscribed to a task, use the {@link ITaskManager.subscribed} method.
|
|
73
|
+
*
|
|
74
|
+
* ```typescript
|
|
75
|
+
* if (taskManager.subscribed("NameOfTask")) {
|
|
76
|
+
* console.log("This client is currently subscribed to the task.");
|
|
77
|
+
* }
|
|
78
|
+
* ```
|
|
79
|
+
*
|
|
80
|
+
* To release the rights to the task, use the {@link ITaskManager.abandon} method.
|
|
81
|
+
* The next client in the queue will then get the rights to run the task.
|
|
82
|
+
*
|
|
83
|
+
* ```typescript
|
|
84
|
+
* taskManager.abandon("NameOfTask");
|
|
85
|
+
* ```
|
|
86
|
+
*
|
|
87
|
+
* To inspect your state in the queue, you can use the {@link ITaskManager.queued} and {@link ITaskManager.assigned}
|
|
88
|
+
* methods.
|
|
89
|
+
*
|
|
90
|
+
* ```typescript
|
|
91
|
+
* if (taskManager.queued("NameOfTask")) {
|
|
92
|
+
* console.log("This client is somewhere in the queue, potentially even having the task assignment.");
|
|
93
|
+
* }
|
|
94
|
+
*
|
|
95
|
+
* if (taskManager.assigned("NameOfTask")) {
|
|
96
|
+
* console.log("This client currently has the rights to run the task");
|
|
97
|
+
* }
|
|
98
|
+
* ```
|
|
99
|
+
*
|
|
100
|
+
* To signal to other connected clients that a task is completed, use the {@link ITaskManager.complete} method.
|
|
101
|
+
* This will release all clients from the queue and emit the "completed" event.
|
|
102
|
+
*
|
|
103
|
+
* ```typescript
|
|
104
|
+
* taskManager.complete("NameOfTask");
|
|
105
|
+
* ```
|
|
106
|
+
*
|
|
107
|
+
* @example Eventing
|
|
108
|
+
*
|
|
109
|
+
* `ITaskManager` will emit events when a task is assigned to the client, when the task assignment is lost,
|
|
110
|
+
* and when a task was completed by another client.
|
|
111
|
+
*
|
|
112
|
+
* ```typescript
|
|
113
|
+
* taskManager.on("assigned", (taskId: string) => {
|
|
114
|
+
* console.log(`Client was assigned task: ${taskId}`);
|
|
115
|
+
* });
|
|
116
|
+
*
|
|
117
|
+
* taskManager.on("lost", (taskId: string) => {
|
|
118
|
+
* console.log(`Client released task: ${taskId}`);
|
|
119
|
+
* });
|
|
120
|
+
*
|
|
121
|
+
* taskManager.on("completed", (taskId: string) => {
|
|
122
|
+
* console.log(`Another client completed task: ${taskId}`);
|
|
123
|
+
* });
|
|
124
|
+
* ```
|
|
125
|
+
*
|
|
126
|
+
* These can be useful if the logic to volunteer for a task is separated from the logic to perform the task, such as
|
|
127
|
+
* when using {@link ITaskManager.subscribeToTask}.
|
|
128
|
+
*
|
|
129
|
+
* See {@link ITaskManagerEvents} for more details.
|
|
130
|
+
* @internal
|
|
131
|
+
*/
|
|
132
|
+
export interface ITaskManager extends ISharedObject<ITaskManagerEvents> {
|
|
133
|
+
/**
|
|
134
|
+
* Volunteer for the task. Returns a promise that resolves `true` if the task is assigned to the local client and
|
|
135
|
+
* `false` if the task was completed by another client. It rejects if the local client abandoned the task or
|
|
136
|
+
* disconnected while in queue.
|
|
137
|
+
* @param taskId - Identifier for the task
|
|
138
|
+
*/
|
|
139
|
+
volunteerForTask(taskId: string): Promise<boolean>;
|
|
140
|
+
/**
|
|
141
|
+
* Continuously volunteer for the task. Watch the "assigned" event to determine if the task is assigned.
|
|
142
|
+
* The local client will automatically re-enter the queue if it disconnects.
|
|
143
|
+
* @param taskId - Identifier for the task
|
|
144
|
+
*/
|
|
145
|
+
subscribeToTask(taskId: string): void;
|
|
146
|
+
/**
|
|
147
|
+
* Exit the queue, releasing the task if currently assigned.
|
|
148
|
+
* @param taskId - Identifier for the task
|
|
149
|
+
*/
|
|
150
|
+
abandon(taskId: string): void;
|
|
151
|
+
/**
|
|
152
|
+
* Check whether this client is the current assignee for the task and there is no outstanding abandon op that
|
|
153
|
+
* would abandon the assignment.
|
|
154
|
+
* @param taskId - Identifier for the task
|
|
155
|
+
*/
|
|
156
|
+
assigned(taskId: string): boolean;
|
|
157
|
+
/**
|
|
158
|
+
* Check whether this client is either the current assignee, in queue, or we expect they will be in queue after
|
|
159
|
+
* outstanding ops have been ack'd.
|
|
160
|
+
* @param taskId - Identifier for the task
|
|
161
|
+
*/
|
|
162
|
+
queued(taskId: string): boolean;
|
|
163
|
+
/**
|
|
164
|
+
* Check whether this client is currently subscribed to the task.
|
|
165
|
+
* @param taskId - Identifier for the task
|
|
166
|
+
*/
|
|
167
|
+
subscribed(taskId: string): boolean;
|
|
168
|
+
/**
|
|
169
|
+
* Marks a task as completed and releases all clients from its queue.
|
|
170
|
+
* @param taskId - Identifier for the task
|
|
171
|
+
*/
|
|
172
|
+
complete(taskId: string): void;
|
|
173
|
+
/**
|
|
174
|
+
* Check whether this client can currently volunteer for a task.
|
|
175
|
+
*/
|
|
176
|
+
canVolunteer(): boolean;
|
|
177
|
+
}
|
|
178
|
+
//# sourceMappingURL=interfaces.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../src/interfaces.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,oCAAoC,CAAC;AAExF;;;;;GAKG;AACH,MAAM,MAAM,iBAAiB,GAAG,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;AAEzD;;;GAGG;AACH,MAAM,WAAW,kBAAmB,SAAQ,mBAAmB;IAC9D;;;;;;OAMG;IACH,CAAC,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,iBAAiB,OAAE;IAEjD;;;;OAIG;IACH,CAAC,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,iBAAiB,OAAE;IAElD;;;;;;OAMG;IACH,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,iBAAiB,OAAE;CAC7C;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0FG;AACH,MAAM,WAAW,YAAa,SAAQ,aAAa,CAAC,kBAAkB,CAAC;IACtE;;;;;OAKG;IACH,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAEnD;;;;OAIG;IACH,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAEtC;;;OAGG;IACH,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAE9B;;;;OAIG;IACH,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC;IAElC;;;;OAIG;IACH,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC;IAEhC;;;OAGG;IACH,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC;IAEpC;;;OAGG;IACH,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAE/B;;OAEG;IACH,YAAY,IAAI,OAAO,CAAC;CACxB"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/*!
|
|
3
|
+
* Copyright (c) Microsoft Corporation and contributors. All rights reserved.
|
|
4
|
+
* Licensed under the MIT License.
|
|
5
|
+
*
|
|
6
|
+
* THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY
|
|
7
|
+
*/
|
|
8
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.pkgVersion = exports.pkgName = void 0;
|
|
10
|
+
exports.pkgName = "@fluidframework/task-manager";
|
|
11
|
+
exports.pkgVersion = "2.0.0-dev-rc.1.0.0.224419";
|
|
12
|
+
//# sourceMappingURL=packageVersion.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"packageVersion.cjs","sourceRoot":"","sources":["../src/packageVersion.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEU,QAAA,OAAO,GAAG,8BAA8B,CAAC;AACzC,QAAA,UAAU,GAAG,2BAA2B,CAAC","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n *\n * THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY\n */\n\nexport const pkgName = \"@fluidframework/task-manager\";\nexport const pkgVersion = \"2.0.0-dev-rc.1.0.0.224419\";\n"]}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Copyright (c) Microsoft Corporation and contributors. All rights reserved.
|
|
3
|
+
* Licensed under the MIT License.
|
|
4
|
+
*
|
|
5
|
+
* THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY
|
|
6
|
+
*/
|
|
7
|
+
export declare const pkgName = "@fluidframework/task-manager";
|
|
8
|
+
export declare const pkgVersion = "2.0.0-dev-rc.1.0.0.224419";
|
|
9
|
+
//# sourceMappingURL=packageVersion.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"packageVersion.d.ts","sourceRoot":"","sources":["../src/packageVersion.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,eAAO,MAAM,OAAO,iCAAiC,CAAC;AACtD,eAAO,MAAM,UAAU,8BAA8B,CAAC"}
|