@atlaskit/editor-plugin-collab-edit 27.0.1 → 27.0.3

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 CHANGED
@@ -1,5 +1,33 @@
1
1
  # @atlaskit/editor-plugin-collab-edit
2
2
 
3
+ ## 27.0.3
4
+
5
+ ### Patch Changes
6
+
7
+ - Updated dependencies
8
+
9
+ ## 27.0.2
10
+
11
+ ### Patch Changes
12
+
13
+ - [`9d77c18b03981`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/9d77c18b03981) -
14
+ Add transaction-aware mapping for existing agent edit highlight ranges, used by
15
+ platform_editor_ai_streaming_ux_experience_m1 to preserve surviving targets across streaming
16
+ replacements.
17
+
18
+ Keep agent highlights on edited blocks across shorter responses, restores, and cumulative AI
19
+ streaming replacements. Preserve earlier activity through temporary previews and restore, discard
20
+ ambiguous node identities, and rebuild normalized preview activity after structural collaborator
21
+ edits instead of indexing the saved document on every inline edit.
22
+
23
+ Use bounded snapshot traversal and require unambiguous source and destination identities when
24
+ preserving carried activity.
25
+
26
+ Preserve the existing changed-range detector behavior outside M1. Require unique source IDs only
27
+ for M1 callers, and retain unchanged preview state references on no-op transactions.
28
+
29
+ - Updated dependencies
30
+
3
31
  ## 27.0.1
4
32
 
5
33
  ### Patch Changes
@@ -288,7 +288,8 @@ var getAgentEditChromeRanges = exports.getAgentEditChromeRanges = function getAg
288
288
  // rolls back unconfirmed local steps before applying these remote steps, and
289
289
  // replays the local steps afterwards. Select the actual applied remote indexes;
290
290
  // the shared extractor maps them through every later step into tr.doc.
291
- var requester = (0, _isExperimentEnabled.isExperimentEnabled)('platform_editor_ai_streaming_ux_experience_m1') ? (0, _agentEditRequester.getAgentEditRequester)(json, view) : null;
291
+ var m1Enabled = (0, _isExperimentEnabled.isExperimentEnabled)('platform_editor_ai_streaming_ux_experience_m1');
292
+ var requester = m1Enabled ? (0, _agentEditRequester.getAgentEditRequester)(json, view) : null;
292
293
  var includedStepIndexes = [];
293
294
  json.forEach(function (rawStep, index) {
294
295
  var belongsToSelectedAgent = !requester || (0, _agentEditRequester.isStepFromAgentEdit)(rawStep, requester);
@@ -296,7 +297,9 @@ var getAgentEditChromeRanges = exports.getAgentEditChromeRanges = function getAg
296
297
  includedStepIndexes.push(rebasedSteps + index);
297
298
  }
298
299
  });
299
- var ranges = (0, _collabAgentEditChangedRanges.getAgentEditChangedRanges)(tr, includedStepIndexes);
300
+ var ranges = (0, _collabAgentEditChangedRanges.getAgentEditChangedRanges)(tr, includedStepIndexes, {
301
+ requireUniqueSourceIds: m1Enabled
302
+ });
300
303
  if (!ranges.length) {
301
304
  onNotShown === null || onNotShown === void 0 || onNotShown('nothingToShow', agentType);
302
305
  }
@@ -266,7 +266,8 @@ export const getAgentEditChromeRanges = (json, steps, tr, view, onNotShown) => {
266
266
  // rolls back unconfirmed local steps before applying these remote steps, and
267
267
  // replays the local steps afterwards. Select the actual applied remote indexes;
268
268
  // the shared extractor maps them through every later step into tr.doc.
269
- const requester = isExperimentEnabled('platform_editor_ai_streaming_ux_experience_m1') ? getAgentEditRequester(json, view) : null;
269
+ const m1Enabled = isExperimentEnabled('platform_editor_ai_streaming_ux_experience_m1');
270
+ const requester = m1Enabled ? getAgentEditRequester(json, view) : null;
270
271
  const includedStepIndexes = [];
271
272
  json.forEach((rawStep, index) => {
272
273
  const belongsToSelectedAgent = !requester || isStepFromAgentEdit(rawStep, requester);
@@ -274,7 +275,9 @@ export const getAgentEditChromeRanges = (json, steps, tr, view, onNotShown) => {
274
275
  includedStepIndexes.push(rebasedSteps + index);
275
276
  }
276
277
  });
277
- const ranges = getAgentEditChangedRanges(tr, includedStepIndexes);
278
+ const ranges = getAgentEditChangedRanges(tr, includedStepIndexes, {
279
+ requireUniqueSourceIds: m1Enabled
280
+ });
278
281
  if (!ranges.length) {
279
282
  onNotShown === null || onNotShown === void 0 ? void 0 : onNotShown('nothingToShow', agentType);
280
283
  }
@@ -282,7 +282,8 @@ export var getAgentEditChromeRanges = function getAgentEditChromeRanges(json, st
282
282
  // rolls back unconfirmed local steps before applying these remote steps, and
283
283
  // replays the local steps afterwards. Select the actual applied remote indexes;
284
284
  // the shared extractor maps them through every later step into tr.doc.
285
- var requester = isExperimentEnabled('platform_editor_ai_streaming_ux_experience_m1') ? getAgentEditRequester(json, view) : null;
285
+ var m1Enabled = isExperimentEnabled('platform_editor_ai_streaming_ux_experience_m1');
286
+ var requester = m1Enabled ? getAgentEditRequester(json, view) : null;
286
287
  var includedStepIndexes = [];
287
288
  json.forEach(function (rawStep, index) {
288
289
  var belongsToSelectedAgent = !requester || isStepFromAgentEdit(rawStep, requester);
@@ -290,7 +291,9 @@ export var getAgentEditChromeRanges = function getAgentEditChromeRanges(json, st
290
291
  includedStepIndexes.push(rebasedSteps + index);
291
292
  }
292
293
  });
293
- var ranges = getAgentEditChangedRanges(tr, includedStepIndexes);
294
+ var ranges = getAgentEditChangedRanges(tr, includedStepIndexes, {
295
+ requireUniqueSourceIds: m1Enabled
296
+ });
294
297
  if (!ranges.length) {
295
298
  onNotShown === null || onNotShown === void 0 || onNotShown('nothingToShow', agentType);
296
299
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atlaskit/editor-plugin-collab-edit",
3
- "version": "27.0.1",
3
+ "version": "27.0.3",
4
4
  "description": "Collab Edit plugin for @atlaskit/editor-core",
5
5
  "author": "Atlassian Pty Ltd",
6
6
  "license": "Apache-2.0",
@@ -27,17 +27,17 @@
27
27
  "@atlaskit/editor-plugin-editor-viewmode": "^28.0.0",
28
28
  "@atlaskit/editor-plugin-feature-flags": "^25.0.0",
29
29
  "@atlaskit/editor-prosemirror": "^9.0.0",
30
- "@atlaskit/editor-shared-styles": "^4.3.0",
30
+ "@atlaskit/editor-shared-styles": "^4.4.0",
31
31
  "@atlaskit/platform-feature-experiments": "^0.3.0",
32
32
  "@atlaskit/platform-feature-flags": "^2.2.0",
33
33
  "@atlaskit/prosemirror-collab": "^1.1.0",
34
- "@atlaskit/tmp-editor-statsig": "^228.0.0",
34
+ "@atlaskit/tmp-editor-statsig": "^229.0.0",
35
35
  "@atlaskit/tokens": "^20.4.0",
36
36
  "@babel/runtime": "^7.0.0",
37
37
  "memoize-one": "^6.0.0"
38
38
  },
39
39
  "peerDependencies": {
40
- "@atlaskit/editor-common": "^130.1.0",
40
+ "@atlaskit/editor-common": "^130.3.0",
41
41
  "react": "^18.2.0 || ^19.2.0",
42
42
  "react-dom": "^18.2.0 || ^19.2.0"
43
43
  },