@fluidframework/map 2.0.0-dev.6.4.0.192049 → 2.0.0-dev.7.2.0.203917
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 +52 -0
- package/api-extractor.json +1 -1
- package/api-report/map.api.md +299 -0
- package/dist/directory.d.ts +32 -8
- package/dist/directory.d.ts.map +1 -1
- package/dist/directory.js +42 -35
- package/dist/directory.js.map +1 -1
- package/dist/interfaces.d.ts +23 -1
- package/dist/interfaces.d.ts.map +1 -1
- package/dist/interfaces.js.map +1 -1
- package/dist/internalInterfaces.d.ts +2 -2
- package/dist/internalInterfaces.d.ts.map +1 -1
- package/dist/localValues.d.ts +4 -0
- package/dist/localValues.d.ts.map +1 -1
- package/dist/localValues.js +2 -0
- package/dist/localValues.js.map +1 -1
- package/dist/map-alpha.d.ts +950 -0
- package/dist/map-beta.d.ts +950 -0
- package/dist/map-public.d.ts +950 -0
- package/dist/map-untrimmed.d.ts +1035 -0
- package/dist/map.d.ts +3 -0
- package/dist/map.d.ts.map +1 -1
- package/dist/map.js +18 -15
- package/dist/map.js.map +1 -1
- package/dist/mapKernel.d.ts +2 -2
- package/dist/mapKernel.d.ts.map +1 -1
- package/dist/mapKernel.js +6 -6
- package/dist/mapKernel.js.map +1 -1
- package/dist/packageVersion.d.ts +1 -1
- package/dist/packageVersion.js +1 -1
- package/dist/packageVersion.js.map +1 -1
- package/dist/tsdoc-metadata.json +1 -1
- package/lib/directory.d.ts +32 -8
- package/lib/directory.d.ts.map +1 -1
- package/lib/directory.js +37 -34
- package/lib/directory.js.map +1 -1
- package/lib/interfaces.d.ts +23 -1
- package/lib/interfaces.d.ts.map +1 -1
- package/lib/interfaces.js.map +1 -1
- package/lib/internalInterfaces.d.ts +2 -2
- package/lib/internalInterfaces.d.ts.map +1 -1
- package/lib/localValues.d.ts +4 -0
- package/lib/localValues.d.ts.map +1 -1
- package/lib/localValues.js +2 -0
- package/lib/localValues.js.map +1 -1
- package/lib/map.d.ts +3 -0
- package/lib/map.d.ts.map +1 -1
- package/lib/map.js +18 -15
- package/lib/map.js.map +1 -1
- package/lib/mapKernel.d.ts +2 -2
- package/lib/mapKernel.d.ts.map +1 -1
- package/lib/mapKernel.js +6 -6
- package/lib/mapKernel.js.map +1 -1
- package/lib/packageVersion.d.ts +1 -1
- package/lib/packageVersion.js +1 -1
- package/lib/packageVersion.js.map +1 -1
- package/package.json +26 -27
- package/src/directory.ts +41 -16
- package/src/interfaces.ts +23 -1
- package/src/localValues.ts +4 -0
- package/src/map.ts +3 -0
- package/src/packageVersion.ts +1 -1
package/lib/directory.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"directory.d.ts","sourceRoot":"","sources":["../src/directory.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH,OAAO,EAAE,yBAAyB,EAAe,MAAM,sCAAsC,CAAC;AAC9F,OAAO,EACN,kBAAkB,EAClB,sBAAsB,EACtB,sBAAsB,EACtB,gBAAgB,EAChB,eAAe,EACf,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AAC/F,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAa,MAAM,oCAAoC,CAAC;AAG/F,OAAO,EACN,UAAU,EAIV,kBAAkB,EAElB,gBAAgB,EAChB,sBAAsB,EAEtB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAe,eAAe,EAAoB,MAAM,eAAe,CAAC;AAsC/E
|
|
1
|
+
{"version":3,"file":"directory.d.ts","sourceRoot":"","sources":["../src/directory.ts"],"names":[],"mappings":"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"}
|
package/lib/directory.js
CHANGED
|
@@ -21,6 +21,7 @@ const snapshotFileName = "header";
|
|
|
21
21
|
* {@link @fluidframework/datastore-definitions#IChannelFactory} for {@link SharedDirectory}.
|
|
22
22
|
*
|
|
23
23
|
* @sealed
|
|
24
|
+
* @public
|
|
24
25
|
*/
|
|
25
26
|
export class DirectoryFactory {
|
|
26
27
|
/**
|
|
@@ -76,8 +77,33 @@ DirectoryFactory.Attributes = {
|
|
|
76
77
|
* ```
|
|
77
78
|
*
|
|
78
79
|
* @sealed
|
|
80
|
+
* @public
|
|
79
81
|
*/
|
|
80
82
|
export class SharedDirectory extends SharedObject {
|
|
83
|
+
/**
|
|
84
|
+
* Create a new shared directory
|
|
85
|
+
*
|
|
86
|
+
* @param runtime - Data store runtime the new shared directory belongs to
|
|
87
|
+
* @param id - Optional name of the shared directory
|
|
88
|
+
* @returns Newly create shared directory (but not attached yet)
|
|
89
|
+
*/
|
|
90
|
+
static create(runtime, id) {
|
|
91
|
+
return runtime.createChannel(id, DirectoryFactory.Type);
|
|
92
|
+
}
|
|
93
|
+
/**
|
|
94
|
+
* Get a factory for SharedDirectory to register with the data store.
|
|
95
|
+
*
|
|
96
|
+
* @returns A factory that creates and load SharedDirectory
|
|
97
|
+
*/
|
|
98
|
+
static getFactory() {
|
|
99
|
+
return new DirectoryFactory();
|
|
100
|
+
}
|
|
101
|
+
/**
|
|
102
|
+
* {@inheritDoc IDirectory.absolutePath}
|
|
103
|
+
*/
|
|
104
|
+
get absolutePath() {
|
|
105
|
+
return this.root.absolutePath;
|
|
106
|
+
}
|
|
81
107
|
/**
|
|
82
108
|
* Constructs a new shared directory. If the object is non-local an id and service interfaces will
|
|
83
109
|
* be provided.
|
|
@@ -112,30 +138,6 @@ export class SharedDirectory extends SharedObject {
|
|
|
112
138
|
this.emit("subDirectoryDeleted", relativePath, local, this);
|
|
113
139
|
});
|
|
114
140
|
}
|
|
115
|
-
/**
|
|
116
|
-
* Create a new shared directory
|
|
117
|
-
*
|
|
118
|
-
* @param runtime - Data store runtime the new shared directory belongs to
|
|
119
|
-
* @param id - Optional name of the shared directory
|
|
120
|
-
* @returns Newly create shared directory (but not attached yet)
|
|
121
|
-
*/
|
|
122
|
-
static create(runtime, id) {
|
|
123
|
-
return runtime.createChannel(id, DirectoryFactory.Type);
|
|
124
|
-
}
|
|
125
|
-
/**
|
|
126
|
-
* Get a factory for SharedDirectory to register with the data store.
|
|
127
|
-
*
|
|
128
|
-
* @returns A factory that creates and load SharedDirectory
|
|
129
|
-
*/
|
|
130
|
-
static getFactory() {
|
|
131
|
-
return new DirectoryFactory();
|
|
132
|
-
}
|
|
133
|
-
/**
|
|
134
|
-
* {@inheritDoc IDirectory.absolutePath}
|
|
135
|
-
*/
|
|
136
|
-
get absolutePath() {
|
|
137
|
-
return this.root.absolutePath;
|
|
138
|
-
}
|
|
139
141
|
/**
|
|
140
142
|
* {@inheritDoc IDirectory.get}
|
|
141
143
|
*/
|
|
@@ -1250,9 +1252,12 @@ class SubDirectory extends TypedEventEmitter {
|
|
|
1250
1252
|
const pendingMessageIds = this.pendingKeys.get(op.key);
|
|
1251
1253
|
// Only submit the op, if we have record for it, otherwise it is possible that the older instance
|
|
1252
1254
|
// is already deleted, in which case we don't need to submit the op.
|
|
1253
|
-
if (pendingMessageIds !== undefined
|
|
1254
|
-
pendingMessageIds
|
|
1255
|
-
|
|
1255
|
+
if (pendingMessageIds !== undefined) {
|
|
1256
|
+
const index = pendingMessageIds.findIndex((id) => id === localOpMetadata.pendingMessageId);
|
|
1257
|
+
if (index === -1) {
|
|
1258
|
+
return;
|
|
1259
|
+
}
|
|
1260
|
+
pendingMessageIds.splice(index, 1);
|
|
1256
1261
|
if (pendingMessageIds.length === 0) {
|
|
1257
1262
|
this.pendingKeys.delete(op.key);
|
|
1258
1263
|
}
|
|
@@ -1494,17 +1499,15 @@ class SubDirectory extends TypedEventEmitter {
|
|
|
1494
1499
|
// If I have a NACK clear, we can ignore all ops.
|
|
1495
1500
|
return false;
|
|
1496
1501
|
}
|
|
1497
|
-
const
|
|
1498
|
-
if (
|
|
1502
|
+
const pendingKeyMessageIds = this.pendingKeys.get(op.key);
|
|
1503
|
+
if (pendingKeyMessageIds !== undefined) {
|
|
1499
1504
|
// Found an NACK op, clear it from the directory if the latest sequence number in the directory
|
|
1500
1505
|
// match the message's and don't process the op.
|
|
1501
1506
|
if (local) {
|
|
1502
1507
|
assert(localOpMetadata !== undefined && isKeyEditLocalOpMetadata(localOpMetadata), 0x011 /* pendingMessageId is missing from the local client's operation */);
|
|
1503
|
-
|
|
1504
|
-
|
|
1505
|
-
|
|
1506
|
-
pendingMessageIds.shift();
|
|
1507
|
-
if (pendingMessageIds.length === 0) {
|
|
1508
|
+
assert(pendingKeyMessageIds[0] === localOpMetadata.pendingMessageId, 0x331 /* Unexpected pending message received */);
|
|
1509
|
+
pendingKeyMessageIds.shift();
|
|
1510
|
+
if (pendingKeyMessageIds.length === 0) {
|
|
1508
1511
|
this.pendingKeys.delete(op.key);
|
|
1509
1512
|
}
|
|
1510
1513
|
}
|