@atlaskit/collab-provider 9.29.3 → 9.30.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 +12 -0
- package/dist/cjs/document/document-service.js +17 -24
- package/dist/cjs/feature-flags/index.js +2 -4
- package/dist/cjs/provider/index.js +1 -2
- package/dist/cjs/version-wrapper.js +1 -1
- package/dist/es2019/document/document-service.js +3 -7
- package/dist/es2019/feature-flags/index.js +2 -4
- package/dist/es2019/provider/index.js +1 -2
- package/dist/es2019/version-wrapper.js +1 -1
- package/dist/esm/document/document-service.js +17 -24
- package/dist/esm/feature-flags/index.js +2 -4
- package/dist/esm/provider/index.js +1 -2
- package/dist/esm/version-wrapper.js +1 -1
- package/dist/types/document/document-service.d.ts +1 -2
- package/dist/types/feature-flags/types.d.ts +0 -1
- package/dist/types-ts4.5/document/document-service.d.ts +1 -2
- package/dist/types-ts4.5/feature-flags/types.d.ts +0 -1
- package/package.json +80 -80
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
# @atlaskit/collab-provider
|
|
2
2
|
|
|
3
|
+
## 9.30.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- [#114156](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/pull-requests/114156)
|
|
8
|
+
[`bc6a63af2d1d0`](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/commits/bc6a63af2d1d0) -
|
|
9
|
+
Bump adf-schema to 37.0.0 and adf-schema-json to 1.16.0
|
|
10
|
+
|
|
11
|
+
### Patch Changes
|
|
12
|
+
|
|
13
|
+
- Updated dependencies
|
|
14
|
+
|
|
3
15
|
## 9.29.3
|
|
4
16
|
|
|
5
17
|
### Patch Changes
|
|
@@ -50,8 +50,7 @@ var DocumentService = exports.DocumentService = /*#__PURE__*/function () {
|
|
|
50
50
|
function DocumentService(participantsService, analyticsHelper, fetchCatchup, fetchCatchupv2, fetchReconcile, providerEmitCallback, broadcast, getUserId, onErrorHandled, metadataService, isNameSpaceLocked) {
|
|
51
51
|
var _this = this;
|
|
52
52
|
var enableErrorOnFailedDocumentApply = arguments.length > 11 && arguments[11] !== undefined ? arguments[11] : false;
|
|
53
|
-
var
|
|
54
|
-
var options = arguments.length > 13 && arguments[13] !== undefined ? arguments[13] : {
|
|
53
|
+
var options = arguments.length > 12 && arguments[12] !== undefined ? arguments[12] : {
|
|
55
54
|
__livePage: false
|
|
56
55
|
};
|
|
57
56
|
(0, _classCallCheck2.default)(this, DocumentService);
|
|
@@ -330,17 +329,12 @@ var DocumentService = exports.DocumentService = /*#__PURE__*/function () {
|
|
|
330
329
|
// We preserve these as they will be lost apon this.updateDocument. This is because we are using document recovery.
|
|
331
330
|
// We can then reconcile the document with the preserved state.
|
|
332
331
|
unconfirmedSteps = _this.getUnconfirmedSteps();
|
|
333
|
-
|
|
334
|
-
_context4.next = 6;
|
|
335
|
-
break;
|
|
336
|
-
}
|
|
337
|
-
_context4.next = 5;
|
|
332
|
+
_context4.next = 4;
|
|
338
333
|
return _this.getCurrentState();
|
|
339
|
-
case
|
|
334
|
+
case 4:
|
|
340
335
|
currentState = _context4.sent;
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
_context4.prev = 7;
|
|
336
|
+
useReconcile = Boolean((unconfirmedSteps === null || unconfirmedSteps === void 0 ? void 0 : unconfirmedSteps.length) && currentState);
|
|
337
|
+
_context4.prev = 6;
|
|
344
338
|
// Reset the editor,
|
|
345
339
|
// - Replace the document, keep in sync with the server
|
|
346
340
|
// - Replace the version number, so editor is in sync with NCS server and can commit new changes.
|
|
@@ -357,29 +351,29 @@ var DocumentService = exports.DocumentService = /*#__PURE__*/function () {
|
|
|
357
351
|
|
|
358
352
|
// If there are unconfirmed steps, attempt to reconcile our current state with with recovered document
|
|
359
353
|
if (!(useReconcile && currentState)) {
|
|
360
|
-
_context4.next =
|
|
354
|
+
_context4.next = 14;
|
|
361
355
|
break;
|
|
362
356
|
}
|
|
363
|
-
_context4.next =
|
|
357
|
+
_context4.next = 12;
|
|
364
358
|
return _this.fetchReconcile(JSON.stringify(currentState.content), 'fe-restore');
|
|
365
|
-
case
|
|
366
|
-
_context4.next =
|
|
359
|
+
case 12:
|
|
360
|
+
_context4.next = 15;
|
|
367
361
|
break;
|
|
368
|
-
case
|
|
362
|
+
case 14:
|
|
369
363
|
if (unconfirmedSteps !== null && unconfirmedSteps !== void 0 && unconfirmedSteps.length) {
|
|
370
364
|
_this.applyLocalSteps(unconfirmedSteps);
|
|
371
365
|
}
|
|
372
|
-
case
|
|
366
|
+
case 15:
|
|
373
367
|
(_this$analyticsHelper13 = _this.analyticsHelper) === null || _this$analyticsHelper13 === void 0 || _this$analyticsHelper13.sendActionEvent(_const.EVENT_ACTION.REINITIALISE_DOCUMENT, _const.EVENT_STATUS.SUCCESS, {
|
|
374
368
|
numUnconfirmedSteps: unconfirmedSteps === null || unconfirmedSteps === void 0 ? void 0 : unconfirmedSteps.length,
|
|
375
369
|
hasTitle: !!(metadata !== null && metadata !== void 0 && metadata.title),
|
|
376
370
|
useReconcile: useReconcile
|
|
377
371
|
});
|
|
378
|
-
_context4.next =
|
|
372
|
+
_context4.next = 23;
|
|
379
373
|
break;
|
|
380
|
-
case
|
|
381
|
-
_context4.prev =
|
|
382
|
-
_context4.t0 = _context4["catch"](
|
|
374
|
+
case 18:
|
|
375
|
+
_context4.prev = 18;
|
|
376
|
+
_context4.t0 = _context4["catch"](6);
|
|
383
377
|
(_this$analyticsHelper14 = _this.analyticsHelper) === null || _this$analyticsHelper14 === void 0 || _this$analyticsHelper14.sendActionEvent(_const.EVENT_ACTION.REINITIALISE_DOCUMENT, _const.EVENT_STATUS.FAILURE, {
|
|
384
378
|
numUnconfirmedSteps: unconfirmedSteps === null || unconfirmedSteps === void 0 ? void 0 : unconfirmedSteps.length,
|
|
385
379
|
useReconcile: useReconcile
|
|
@@ -393,11 +387,11 @@ var DocumentService = exports.DocumentService = /*#__PURE__*/function () {
|
|
|
393
387
|
code: _internalErrors.INTERNAL_ERROR_CODE.DOCUMENT_RESTORE_ERROR
|
|
394
388
|
}
|
|
395
389
|
});
|
|
396
|
-
case
|
|
390
|
+
case 23:
|
|
397
391
|
case "end":
|
|
398
392
|
return _context4.stop();
|
|
399
393
|
}
|
|
400
|
-
}, _callee4, null, [[
|
|
394
|
+
}, _callee4, null, [[6, 18]]);
|
|
401
395
|
}));
|
|
402
396
|
return function (_x) {
|
|
403
397
|
return _ref6.apply(this, arguments);
|
|
@@ -667,7 +661,6 @@ var DocumentService = exports.DocumentService = /*#__PURE__*/function () {
|
|
|
667
661
|
this.metadataService = metadataService;
|
|
668
662
|
this.isNameSpaceLocked = isNameSpaceLocked;
|
|
669
663
|
this.enableErrorOnFailedDocumentApply = enableErrorOnFailedDocumentApply;
|
|
670
|
-
this.reconcileOnRecovery = reconcileOnRecovery;
|
|
671
664
|
this.options = options;
|
|
672
665
|
this.stepQueue = new _stepQueueState.StepQueueState();
|
|
673
666
|
}
|
|
@@ -9,8 +9,7 @@ exports.getProductSpecificFeatureFlags = void 0;
|
|
|
9
9
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
10
10
|
var defaultNCSFeatureFlags = {
|
|
11
11
|
testFF: false,
|
|
12
|
-
blockViewOnly: false
|
|
13
|
-
reconcileOnRecovery: false
|
|
12
|
+
blockViewOnly: false
|
|
14
13
|
};
|
|
15
14
|
|
|
16
15
|
/**
|
|
@@ -19,8 +18,7 @@ var defaultNCSFeatureFlags = {
|
|
|
19
18
|
var productKeys = {
|
|
20
19
|
confluence: {
|
|
21
20
|
testFF: 'confluence.frontend.collab.provider.testFF',
|
|
22
|
-
blockViewOnly: 'confluence.frontend.ncs.block-view-only'
|
|
23
|
-
reconcileOnRecovery: 'confluence.frontend.ncs.reconcile-on-recovery'
|
|
21
|
+
blockViewOnly: 'confluence.frontend.ncs.block-view-only'
|
|
24
22
|
}
|
|
25
23
|
};
|
|
26
24
|
var filterFeatureFlagNames = function filterFeatureFlagNames(flags) {
|
|
@@ -273,11 +273,10 @@ var Provider = exports.Provider = /*#__PURE__*/function (_Emitter) {
|
|
|
273
273
|
_this.isProviderInitialized = false;
|
|
274
274
|
_this.participantsService = new _participantsService.ParticipantsService(_this.analyticsHelper, undefined, _this.emitCallback, _this.config.getUser, _this.channel.broadcast, _this.channel.sendPresenceJoined, _this.getPresenceData, _this.setUserId);
|
|
275
275
|
_this.metadataService = new _metadataService.MetadataService(_this.emitCallback, _this.channel.sendMetadata);
|
|
276
|
-
var reconcileOnRecovery = (0, _featureFlags.getCollabProviderFeatureFlag)('reconcileOnRecovery', _this.config.featureFlags);
|
|
277
276
|
_this.namespaceService = new _namespaceService.NamespaceService();
|
|
278
277
|
_this.documentService = new _documentService.DocumentService(_this.participantsService, _this.analyticsHelper, _this.channel.fetchCatchup, _this.channel.fetchCatchupv2, _this.channel.fetchReconcile, _this.emitCallback, _this.channel.broadcast, function () {
|
|
279
278
|
return _this.userId;
|
|
280
|
-
}, _this.onErrorHandled, _this.metadataService, _this.namespaceService.getIsNamespaceLocked.bind(_this.namespaceService), _this.config.enableErrorOnFailedDocumentApply,
|
|
279
|
+
}, _this.onErrorHandled, _this.metadataService, _this.namespaceService.getIsNamespaceLocked.bind(_this.namespaceService), _this.config.enableErrorOnFailedDocumentApply, {
|
|
281
280
|
__livePage: _this.config.__livePage || false
|
|
282
281
|
});
|
|
283
282
|
_this.api = new _api.Api(config, _this.documentService, _this.channel);
|
|
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.version = exports.nextMajorVersion = exports.name = void 0;
|
|
7
7
|
var name = exports.name = "@atlaskit/collab-provider";
|
|
8
|
-
var version = exports.version = "9.
|
|
8
|
+
var version = exports.version = "9.30.0";
|
|
9
9
|
var nextMajorVersion = exports.nextMajorVersion = function nextMajorVersion() {
|
|
10
10
|
return [Number(version.split('.')[0]) + 1, 0, 0].join('.');
|
|
11
11
|
};
|
|
@@ -34,7 +34,7 @@ export class DocumentService {
|
|
|
34
34
|
* @param metadataService
|
|
35
35
|
* @param enableErrorOnFailedDocumentApply - Enable failed document update exceptions.
|
|
36
36
|
*/
|
|
37
|
-
constructor(participantsService, analyticsHelper, fetchCatchup, fetchCatchupv2, fetchReconcile, providerEmitCallback, broadcast, getUserId, onErrorHandled, metadataService, isNameSpaceLocked, enableErrorOnFailedDocumentApply = false,
|
|
37
|
+
constructor(participantsService, analyticsHelper, fetchCatchup, fetchCatchupv2, fetchReconcile, providerEmitCallback, broadcast, getUserId, onErrorHandled, metadataService, isNameSpaceLocked, enableErrorOnFailedDocumentApply = false, options = {
|
|
38
38
|
__livePage: false
|
|
39
39
|
}) {
|
|
40
40
|
// Fires analytics to editor when collab editor cannot sync up
|
|
@@ -285,11 +285,8 @@ export class DocumentService {
|
|
|
285
285
|
// We preserve these as they will be lost apon this.updateDocument. This is because we are using document recovery.
|
|
286
286
|
// We can then reconcile the document with the preserved state.
|
|
287
287
|
const unconfirmedSteps = this.getUnconfirmedSteps();
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
currentState = await this.getCurrentState();
|
|
291
|
-
}
|
|
292
|
-
const useReconcile = Boolean((unconfirmedSteps === null || unconfirmedSteps === void 0 ? void 0 : unconfirmedSteps.length) && this.reconcileOnRecovery && currentState);
|
|
288
|
+
const currentState = await this.getCurrentState();
|
|
289
|
+
const useReconcile = Boolean((unconfirmedSteps === null || unconfirmedSteps === void 0 ? void 0 : unconfirmedSteps.length) && currentState);
|
|
293
290
|
try {
|
|
294
291
|
var _this$analyticsHelper13;
|
|
295
292
|
// Reset the editor,
|
|
@@ -550,7 +547,6 @@ export class DocumentService {
|
|
|
550
547
|
this.metadataService = metadataService;
|
|
551
548
|
this.isNameSpaceLocked = isNameSpaceLocked;
|
|
552
549
|
this.enableErrorOnFailedDocumentApply = enableErrorOnFailedDocumentApply;
|
|
553
|
-
this.reconcileOnRecovery = reconcileOnRecovery;
|
|
554
550
|
this.options = options;
|
|
555
551
|
this.stepQueue = new StepQueueState();
|
|
556
552
|
}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
const defaultNCSFeatureFlags = {
|
|
2
2
|
testFF: false,
|
|
3
|
-
blockViewOnly: false
|
|
4
|
-
reconcileOnRecovery: false
|
|
3
|
+
blockViewOnly: false
|
|
5
4
|
};
|
|
6
5
|
|
|
7
6
|
/**
|
|
@@ -10,8 +9,7 @@ const defaultNCSFeatureFlags = {
|
|
|
10
9
|
const productKeys = {
|
|
11
10
|
confluence: {
|
|
12
11
|
testFF: 'confluence.frontend.collab.provider.testFF',
|
|
13
|
-
blockViewOnly: 'confluence.frontend.ncs.block-view-only'
|
|
14
|
-
reconcileOnRecovery: 'confluence.frontend.ncs.reconcile-on-recovery'
|
|
12
|
+
blockViewOnly: 'confluence.frontend.ncs.block-view-only'
|
|
15
13
|
}
|
|
16
14
|
};
|
|
17
15
|
const filterFeatureFlagNames = flags => {
|
|
@@ -228,9 +228,8 @@ export class Provider extends Emitter {
|
|
|
228
228
|
this.isProviderInitialized = false;
|
|
229
229
|
this.participantsService = new ParticipantsService(this.analyticsHelper, undefined, this.emitCallback, this.config.getUser, this.channel.broadcast, this.channel.sendPresenceJoined, this.getPresenceData, this.setUserId);
|
|
230
230
|
this.metadataService = new MetadataService(this.emitCallback, this.channel.sendMetadata);
|
|
231
|
-
const reconcileOnRecovery = getCollabProviderFeatureFlag('reconcileOnRecovery', this.config.featureFlags);
|
|
232
231
|
this.namespaceService = new NamespaceService();
|
|
233
|
-
this.documentService = new DocumentService(this.participantsService, this.analyticsHelper, this.channel.fetchCatchup, this.channel.fetchCatchupv2, this.channel.fetchReconcile, this.emitCallback, this.channel.broadcast, () => this.userId, this.onErrorHandled, this.metadataService, this.namespaceService.getIsNamespaceLocked.bind(this.namespaceService), this.config.enableErrorOnFailedDocumentApply,
|
|
232
|
+
this.documentService = new DocumentService(this.participantsService, this.analyticsHelper, this.channel.fetchCatchup, this.channel.fetchCatchupv2, this.channel.fetchReconcile, this.emitCallback, this.channel.broadcast, () => this.userId, this.onErrorHandled, this.metadataService, this.namespaceService.getIsNamespaceLocked.bind(this.namespaceService), this.config.enableErrorOnFailedDocumentApply, {
|
|
234
233
|
__livePage: this.config.__livePage || false
|
|
235
234
|
});
|
|
236
235
|
this.api = new Api(config, this.documentService, this.channel);
|
|
@@ -43,8 +43,7 @@ export var DocumentService = /*#__PURE__*/function () {
|
|
|
43
43
|
function DocumentService(participantsService, analyticsHelper, fetchCatchup, fetchCatchupv2, fetchReconcile, providerEmitCallback, broadcast, getUserId, onErrorHandled, metadataService, isNameSpaceLocked) {
|
|
44
44
|
var _this = this;
|
|
45
45
|
var enableErrorOnFailedDocumentApply = arguments.length > 11 && arguments[11] !== undefined ? arguments[11] : false;
|
|
46
|
-
var
|
|
47
|
-
var options = arguments.length > 13 && arguments[13] !== undefined ? arguments[13] : {
|
|
46
|
+
var options = arguments.length > 12 && arguments[12] !== undefined ? arguments[12] : {
|
|
48
47
|
__livePage: false
|
|
49
48
|
};
|
|
50
49
|
_classCallCheck(this, DocumentService);
|
|
@@ -323,17 +322,12 @@ export var DocumentService = /*#__PURE__*/function () {
|
|
|
323
322
|
// We preserve these as they will be lost apon this.updateDocument. This is because we are using document recovery.
|
|
324
323
|
// We can then reconcile the document with the preserved state.
|
|
325
324
|
unconfirmedSteps = _this.getUnconfirmedSteps();
|
|
326
|
-
|
|
327
|
-
_context4.next = 6;
|
|
328
|
-
break;
|
|
329
|
-
}
|
|
330
|
-
_context4.next = 5;
|
|
325
|
+
_context4.next = 4;
|
|
331
326
|
return _this.getCurrentState();
|
|
332
|
-
case
|
|
327
|
+
case 4:
|
|
333
328
|
currentState = _context4.sent;
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
_context4.prev = 7;
|
|
329
|
+
useReconcile = Boolean((unconfirmedSteps === null || unconfirmedSteps === void 0 ? void 0 : unconfirmedSteps.length) && currentState);
|
|
330
|
+
_context4.prev = 6;
|
|
337
331
|
// Reset the editor,
|
|
338
332
|
// - Replace the document, keep in sync with the server
|
|
339
333
|
// - Replace the version number, so editor is in sync with NCS server and can commit new changes.
|
|
@@ -350,29 +344,29 @@ export var DocumentService = /*#__PURE__*/function () {
|
|
|
350
344
|
|
|
351
345
|
// If there are unconfirmed steps, attempt to reconcile our current state with with recovered document
|
|
352
346
|
if (!(useReconcile && currentState)) {
|
|
353
|
-
_context4.next =
|
|
347
|
+
_context4.next = 14;
|
|
354
348
|
break;
|
|
355
349
|
}
|
|
356
|
-
_context4.next =
|
|
350
|
+
_context4.next = 12;
|
|
357
351
|
return _this.fetchReconcile(JSON.stringify(currentState.content), 'fe-restore');
|
|
358
|
-
case
|
|
359
|
-
_context4.next =
|
|
352
|
+
case 12:
|
|
353
|
+
_context4.next = 15;
|
|
360
354
|
break;
|
|
361
|
-
case
|
|
355
|
+
case 14:
|
|
362
356
|
if (unconfirmedSteps !== null && unconfirmedSteps !== void 0 && unconfirmedSteps.length) {
|
|
363
357
|
_this.applyLocalSteps(unconfirmedSteps);
|
|
364
358
|
}
|
|
365
|
-
case
|
|
359
|
+
case 15:
|
|
366
360
|
(_this$analyticsHelper13 = _this.analyticsHelper) === null || _this$analyticsHelper13 === void 0 || _this$analyticsHelper13.sendActionEvent(EVENT_ACTION.REINITIALISE_DOCUMENT, EVENT_STATUS.SUCCESS, {
|
|
367
361
|
numUnconfirmedSteps: unconfirmedSteps === null || unconfirmedSteps === void 0 ? void 0 : unconfirmedSteps.length,
|
|
368
362
|
hasTitle: !!(metadata !== null && metadata !== void 0 && metadata.title),
|
|
369
363
|
useReconcile: useReconcile
|
|
370
364
|
});
|
|
371
|
-
_context4.next =
|
|
365
|
+
_context4.next = 23;
|
|
372
366
|
break;
|
|
373
|
-
case
|
|
374
|
-
_context4.prev =
|
|
375
|
-
_context4.t0 = _context4["catch"](
|
|
367
|
+
case 18:
|
|
368
|
+
_context4.prev = 18;
|
|
369
|
+
_context4.t0 = _context4["catch"](6);
|
|
376
370
|
(_this$analyticsHelper14 = _this.analyticsHelper) === null || _this$analyticsHelper14 === void 0 || _this$analyticsHelper14.sendActionEvent(EVENT_ACTION.REINITIALISE_DOCUMENT, EVENT_STATUS.FAILURE, {
|
|
377
371
|
numUnconfirmedSteps: unconfirmedSteps === null || unconfirmedSteps === void 0 ? void 0 : unconfirmedSteps.length,
|
|
378
372
|
useReconcile: useReconcile
|
|
@@ -386,11 +380,11 @@ export var DocumentService = /*#__PURE__*/function () {
|
|
|
386
380
|
code: INTERNAL_ERROR_CODE.DOCUMENT_RESTORE_ERROR
|
|
387
381
|
}
|
|
388
382
|
});
|
|
389
|
-
case
|
|
383
|
+
case 23:
|
|
390
384
|
case "end":
|
|
391
385
|
return _context4.stop();
|
|
392
386
|
}
|
|
393
|
-
}, _callee4, null, [[
|
|
387
|
+
}, _callee4, null, [[6, 18]]);
|
|
394
388
|
}));
|
|
395
389
|
return function (_x) {
|
|
396
390
|
return _ref6.apply(this, arguments);
|
|
@@ -660,7 +654,6 @@ export var DocumentService = /*#__PURE__*/function () {
|
|
|
660
654
|
this.metadataService = metadataService;
|
|
661
655
|
this.isNameSpaceLocked = isNameSpaceLocked;
|
|
662
656
|
this.enableErrorOnFailedDocumentApply = enableErrorOnFailedDocumentApply;
|
|
663
|
-
this.reconcileOnRecovery = reconcileOnRecovery;
|
|
664
657
|
this.options = options;
|
|
665
658
|
this.stepQueue = new StepQueueState();
|
|
666
659
|
}
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
|
|
2
2
|
var defaultNCSFeatureFlags = {
|
|
3
3
|
testFF: false,
|
|
4
|
-
blockViewOnly: false
|
|
5
|
-
reconcileOnRecovery: false
|
|
4
|
+
blockViewOnly: false
|
|
6
5
|
};
|
|
7
6
|
|
|
8
7
|
/**
|
|
@@ -11,8 +10,7 @@ var defaultNCSFeatureFlags = {
|
|
|
11
10
|
var productKeys = {
|
|
12
11
|
confluence: {
|
|
13
12
|
testFF: 'confluence.frontend.collab.provider.testFF',
|
|
14
|
-
blockViewOnly: 'confluence.frontend.ncs.block-view-only'
|
|
15
|
-
reconcileOnRecovery: 'confluence.frontend.ncs.reconcile-on-recovery'
|
|
13
|
+
blockViewOnly: 'confluence.frontend.ncs.block-view-only'
|
|
16
14
|
}
|
|
17
15
|
};
|
|
18
16
|
var filterFeatureFlagNames = function filterFeatureFlagNames(flags) {
|
|
@@ -266,11 +266,10 @@ export var Provider = /*#__PURE__*/function (_Emitter) {
|
|
|
266
266
|
_this.isProviderInitialized = false;
|
|
267
267
|
_this.participantsService = new ParticipantsService(_this.analyticsHelper, undefined, _this.emitCallback, _this.config.getUser, _this.channel.broadcast, _this.channel.sendPresenceJoined, _this.getPresenceData, _this.setUserId);
|
|
268
268
|
_this.metadataService = new MetadataService(_this.emitCallback, _this.channel.sendMetadata);
|
|
269
|
-
var reconcileOnRecovery = getCollabProviderFeatureFlag('reconcileOnRecovery', _this.config.featureFlags);
|
|
270
269
|
_this.namespaceService = new NamespaceService();
|
|
271
270
|
_this.documentService = new DocumentService(_this.participantsService, _this.analyticsHelper, _this.channel.fetchCatchup, _this.channel.fetchCatchupv2, _this.channel.fetchReconcile, _this.emitCallback, _this.channel.broadcast, function () {
|
|
272
271
|
return _this.userId;
|
|
273
|
-
}, _this.onErrorHandled, _this.metadataService, _this.namespaceService.getIsNamespaceLocked.bind(_this.namespaceService), _this.config.enableErrorOnFailedDocumentApply,
|
|
272
|
+
}, _this.onErrorHandled, _this.metadataService, _this.namespaceService.getIsNamespaceLocked.bind(_this.namespaceService), _this.config.enableErrorOnFailedDocumentApply, {
|
|
274
273
|
__livePage: _this.config.__livePage || false
|
|
275
274
|
});
|
|
276
275
|
_this.api = new Api(config, _this.documentService, _this.channel);
|
|
@@ -21,7 +21,6 @@ export declare class DocumentService {
|
|
|
21
21
|
private metadataService;
|
|
22
22
|
private isNameSpaceLocked;
|
|
23
23
|
private enableErrorOnFailedDocumentApply;
|
|
24
|
-
private reconcileOnRecovery;
|
|
25
24
|
private options;
|
|
26
25
|
private getState;
|
|
27
26
|
private onSyncUpError?;
|
|
@@ -45,7 +44,7 @@ export declare class DocumentService {
|
|
|
45
44
|
* @param metadataService
|
|
46
45
|
* @param enableErrorOnFailedDocumentApply - Enable failed document update exceptions.
|
|
47
46
|
*/
|
|
48
|
-
constructor(participantsService: ParticipantsService, analyticsHelper: AnalyticsHelper | undefined, fetchCatchup: (fromVersion: number, clientId: number | string | undefined) => Promise<CatchupResponse>, fetchCatchupv2: (fromVersion: number, clientId: number | string | undefined, catchUpOutofSync: boolean) => Promise<Catchupv2Response>, fetchReconcile: (currentStateDoc: string, reason: string) => Promise<ReconcileResponse>, providerEmitCallback: (evt: keyof CollabEvents, data: any) => void, broadcast: <K extends keyof ChannelEvent>(type: K, data: Omit<ChannelEvent[K], 'timestamp'>, callback?: Function) => void, getUserId: () => string | undefined, onErrorHandled: (error: InternalError) => void, metadataService: MetadataService, isNameSpaceLocked: () => boolean, enableErrorOnFailedDocumentApply?: boolean,
|
|
47
|
+
constructor(participantsService: ParticipantsService, analyticsHelper: AnalyticsHelper | undefined, fetchCatchup: (fromVersion: number, clientId: number | string | undefined) => Promise<CatchupResponse>, fetchCatchupv2: (fromVersion: number, clientId: number | string | undefined, catchUpOutofSync: boolean) => Promise<Catchupv2Response>, fetchReconcile: (currentStateDoc: string, reason: string) => Promise<ReconcileResponse>, providerEmitCallback: (evt: keyof CollabEvents, data: any) => void, broadcast: <K extends keyof ChannelEvent>(type: K, data: Omit<ChannelEvent[K], 'timestamp'>, callback?: Function) => void, getUserId: () => string | undefined, onErrorHandled: (error: InternalError) => void, metadataService: MetadataService, isNameSpaceLocked: () => boolean, enableErrorOnFailedDocumentApply?: boolean, options?: {
|
|
49
48
|
__livePage: boolean;
|
|
50
49
|
});
|
|
51
50
|
/**
|
|
@@ -21,7 +21,6 @@ export declare class DocumentService {
|
|
|
21
21
|
private metadataService;
|
|
22
22
|
private isNameSpaceLocked;
|
|
23
23
|
private enableErrorOnFailedDocumentApply;
|
|
24
|
-
private reconcileOnRecovery;
|
|
25
24
|
private options;
|
|
26
25
|
private getState;
|
|
27
26
|
private onSyncUpError?;
|
|
@@ -45,7 +44,7 @@ export declare class DocumentService {
|
|
|
45
44
|
* @param metadataService
|
|
46
45
|
* @param enableErrorOnFailedDocumentApply - Enable failed document update exceptions.
|
|
47
46
|
*/
|
|
48
|
-
constructor(participantsService: ParticipantsService, analyticsHelper: AnalyticsHelper | undefined, fetchCatchup: (fromVersion: number, clientId: number | string | undefined) => Promise<CatchupResponse>, fetchCatchupv2: (fromVersion: number, clientId: number | string | undefined, catchUpOutofSync: boolean) => Promise<Catchupv2Response>, fetchReconcile: (currentStateDoc: string, reason: string) => Promise<ReconcileResponse>, providerEmitCallback: (evt: keyof CollabEvents, data: any) => void, broadcast: <K extends keyof ChannelEvent>(type: K, data: Omit<ChannelEvent[K], 'timestamp'>, callback?: Function) => void, getUserId: () => string | undefined, onErrorHandled: (error: InternalError) => void, metadataService: MetadataService, isNameSpaceLocked: () => boolean, enableErrorOnFailedDocumentApply?: boolean,
|
|
47
|
+
constructor(participantsService: ParticipantsService, analyticsHelper: AnalyticsHelper | undefined, fetchCatchup: (fromVersion: number, clientId: number | string | undefined) => Promise<CatchupResponse>, fetchCatchupv2: (fromVersion: number, clientId: number | string | undefined, catchUpOutofSync: boolean) => Promise<Catchupv2Response>, fetchReconcile: (currentStateDoc: string, reason: string) => Promise<ReconcileResponse>, providerEmitCallback: (evt: keyof CollabEvents, data: any) => void, broadcast: <K extends keyof ChannelEvent>(type: K, data: Omit<ChannelEvent[K], 'timestamp'>, callback?: Function) => void, getUserId: () => string | undefined, onErrorHandled: (error: InternalError) => void, metadataService: MetadataService, isNameSpaceLocked: () => boolean, enableErrorOnFailedDocumentApply?: boolean, options?: {
|
|
49
48
|
__livePage: boolean;
|
|
50
49
|
});
|
|
51
50
|
/**
|
package/package.json
CHANGED
|
@@ -1,81 +1,81 @@
|
|
|
1
1
|
{
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
}
|
|
2
|
+
"name": "@atlaskit/collab-provider",
|
|
3
|
+
"version": "9.30.0",
|
|
4
|
+
"description": "A provider for collaborative editing.",
|
|
5
|
+
"publishConfig": {
|
|
6
|
+
"registry": "https://registry.npmjs.org/"
|
|
7
|
+
},
|
|
8
|
+
"repository": "https://bitbucket.org/atlassian/atlassian-frontend-mirror",
|
|
9
|
+
"author": "Atlassian Pty Ltd",
|
|
10
|
+
"license": "Apache-2.0",
|
|
11
|
+
"main": "dist/cjs/index.js",
|
|
12
|
+
"module": "dist/esm/index.js",
|
|
13
|
+
"module:es2019": "dist/es2019/index.js",
|
|
14
|
+
"types": "dist/types/index.d.ts",
|
|
15
|
+
"typesVersions": {
|
|
16
|
+
">=4.5 <4.9": {
|
|
17
|
+
"*": [
|
|
18
|
+
"dist/types-ts4.5/*",
|
|
19
|
+
"dist/types-ts4.5/index.d.ts"
|
|
20
|
+
]
|
|
21
|
+
}
|
|
22
|
+
},
|
|
23
|
+
"sideEffects": false,
|
|
24
|
+
"atlaskit:src": "src/index.ts",
|
|
25
|
+
"atlassian": {
|
|
26
|
+
"team": "Editor: Collaboration",
|
|
27
|
+
"inPublicMirror": true,
|
|
28
|
+
"releaseModel": "continuous",
|
|
29
|
+
"productPushConsumption": [
|
|
30
|
+
"jira"
|
|
31
|
+
]
|
|
32
|
+
},
|
|
33
|
+
"af:exports": {
|
|
34
|
+
".": "./src/index.ts",
|
|
35
|
+
"./socket-io-provider": "./src/socket-io-provider.ts",
|
|
36
|
+
"./types": "./src/types.ts",
|
|
37
|
+
"./version-wrapper": "./src/version-wrapper.ts"
|
|
38
|
+
},
|
|
39
|
+
"dependencies": {
|
|
40
|
+
"@atlaskit/analytics-gas-types": "^5.1.0",
|
|
41
|
+
"@atlaskit/analytics-listeners": "^8.10.0",
|
|
42
|
+
"@atlaskit/editor-common": "^82.12.0",
|
|
43
|
+
"@atlaskit/editor-json-transformer": "^8.14.0",
|
|
44
|
+
"@atlaskit/editor-prosemirror": "4.0.1",
|
|
45
|
+
"@atlaskit/platform-feature-flags": "^0.2.0",
|
|
46
|
+
"@atlaskit/prosemirror-collab": "^0.5.0",
|
|
47
|
+
"@atlaskit/ufo": "^0.2.0",
|
|
48
|
+
"@atlaskit/util-service-support": "^6.2.0",
|
|
49
|
+
"@babel/runtime": "^7.0.0",
|
|
50
|
+
"eventemitter2": "^4.1.0",
|
|
51
|
+
"lodash": "^4.17.21",
|
|
52
|
+
"socket.io-client": "^4.7.1"
|
|
53
|
+
},
|
|
54
|
+
"techstack": {
|
|
55
|
+
"@atlassian/frontend": {
|
|
56
|
+
"tree-shaking": []
|
|
57
|
+
},
|
|
58
|
+
"@repo/internal": {
|
|
59
|
+
"deprecation": "no-deprecated-imports",
|
|
60
|
+
"design-tokens": [
|
|
61
|
+
"color"
|
|
62
|
+
],
|
|
63
|
+
"styling": [
|
|
64
|
+
"emotion"
|
|
65
|
+
]
|
|
66
|
+
}
|
|
67
|
+
},
|
|
68
|
+
"devDependencies": {
|
|
69
|
+
"@atlaskit/adf-schema": "^37.0.0",
|
|
70
|
+
"@atlassian/feature-flags-test-utils": "^0.2.0",
|
|
71
|
+
"typescript": "~5.4.2"
|
|
72
|
+
},
|
|
73
|
+
"platform-feature-flags": {
|
|
74
|
+
"platform.editor.live-pages-expand-divergence": {
|
|
75
|
+
"type": "boolean"
|
|
76
|
+
},
|
|
77
|
+
"platform.editor.ncs.log-error-stacks": {
|
|
78
|
+
"type": "boolean"
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
}
|