@magic-marker/prosemirror-suggest-changes 0.3.3-wrap-unwrap.28 → 0.3.3-wrap-unwrap.29

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.
@@ -7,7 +7,10 @@ export declare class EditorPage {
7
7
  constructor(page: Page, deletionMarksVisibility?: "hidden" | "visible");
8
8
  get editor(): Locator;
9
9
  getParagraphText(index: number, childIndexes?: number[]): Promise<string>;
10
+ getParagraphAt(index: number): Locator;
10
11
  getParagraphCount(): Promise<number>;
12
+ getListItems(): Locator;
13
+ getParagraphs(): Locator;
11
14
  getListItemCount(): Promise<number>;
12
15
  getProseMirrorMarkCount(name: string): Promise<number>;
13
16
  getProseMirrorMarksJSON(): Promise<unknown[]>;
package/dist/commands.js CHANGED
@@ -370,11 +370,18 @@ export function applySuggestionsToRange(doc, from, to) {
370
370
  suggestionsTransform.steps.forEach((step)=>{
371
371
  structureTransform.step(step);
372
372
  });
373
- restoredStructureSuggestionIds.forEach((suggestionId)=>{
373
+ if (restoredStructureSuggestionIds.has(suggestionId)) {
374
374
  const restoredStructureTransform = revertStructureSuggestion(structureTransform.doc, suggestionId);
375
375
  restoredStructureTransform.steps.forEach((step)=>{
376
376
  structureTransform.step(step);
377
377
  });
378
+ }
379
+ restoredStructureSuggestionIds.forEach((restoredSuggestionId)=>{
380
+ if (restoredSuggestionId === suggestionId) return;
381
+ const restoredStructureTransform = revertStructureSuggestion(structureTransform.doc, restoredSuggestionId);
382
+ restoredStructureTransform.steps.forEach((step)=>{
383
+ structureTransform.step(step);
384
+ });
378
385
  });
379
386
  // apply the structure transform to the transaction
380
387
  const transaction = state.tr;
@@ -1,5 +1,6 @@
1
1
  import { EditorState } from "prosemirror-state";
2
2
  import { preserveTransactionData, transformToSuggestionTransaction } from "../../../transformToSuggestionTransaction.js";
3
+ import { generateNextNumberId } from "../../../generateId.js";
3
4
  import { suggestStructureChanges } from "../../wrapUnwrap/structureChangesPlugin.js";
4
5
  import { detectSpecialTransactionShape } from "../detectSpecialTransactionShape.js";
5
6
  // handle the specific TipTap pattern when backspacing from a paragraph into a list above
@@ -14,6 +15,8 @@ export function handleTipTapParagraphIntoListJoin(args) {
14
15
  const docBefore = args.transaction.docs[0];
15
16
  if (!docBefore) return null;
16
17
  const trackedTransaction = args.state.tr;
18
+ const sharedSuggestionId = args.generateId ? args.generateId(args.state.schema, docBefore) : generateNextNumberId(args.state.schema, docBefore);
19
+ const generateSharedSuggestionId = ()=>sharedSuggestionId;
17
20
  try {
18
21
  trackedTransaction.step(shape.deleteStep);
19
22
  trackedTransaction.step(shape.insertStep);
@@ -26,7 +29,7 @@ export function handleTipTapParagraphIntoListJoin(args) {
26
29
  uniqueNodeIdsTransform.steps.forEach((step)=>{
27
30
  trackedTransaction.step(step);
28
31
  });
29
- const structureChangesResult = suggestStructureChanges(docBefore, uniqueNodeIdsTransform.doc, args.structuralContextPaths, args.generateId);
32
+ const structureChangesResult = suggestStructureChanges(docBefore, uniqueNodeIdsTransform.doc, args.structuralContextPaths, generateSharedSuggestionId);
30
33
  if (!structureChangesResult.handled) {
31
34
  return null;
32
35
  }
@@ -43,7 +46,7 @@ export function handleTipTapParagraphIntoListJoin(args) {
43
46
  } catch {
44
47
  return null;
45
48
  }
46
- const trackedJoinTransaction = transformToSuggestionTransaction(joinTransaction, intermediateState, args.generateId);
49
+ const trackedJoinTransaction = transformToSuggestionTransaction(joinTransaction, intermediateState, generateSharedSuggestionId);
47
50
  trackedJoinTransaction.steps.forEach((step)=>{
48
51
  trackedTransaction.step(step);
49
52
  });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@magic-marker/prosemirror-suggest-changes",
3
- "version": "0.3.3-wrap-unwrap.28",
3
+ "version": "0.3.3-wrap-unwrap.29",
4
4
  "license": "MIT",
5
5
  "type": "module",
6
6
  "module": "dist/index.js",