mirror of
				https://github.com/excalidraw/excalidraw.git
				synced 2025-11-04 12:54:23 +01:00 
			
		
		
		
	add comments
This commit is contained in:
		@@ -263,9 +263,14 @@ export class App extends React.Component<any, AppState> {
 | 
			
		||||
                sceneAppState || getDefaultAppState(),
 | 
			
		||||
                { scrollToContent: true },
 | 
			
		||||
              );
 | 
			
		||||
              // Perform reconciliation - in collaboration, if we encounter
 | 
			
		||||
              // elements with more staler versions than ours, ignore them
 | 
			
		||||
              // and keep ours.
 | 
			
		||||
              if (elements == null || elements.length === 0) {
 | 
			
		||||
                elements = restoredState.elements;
 | 
			
		||||
              } else {
 | 
			
		||||
                // create a map of ids so we don't have to iterate
 | 
			
		||||
                // over the array more than once.
 | 
			
		||||
                const elementMap = elements.reduce(
 | 
			
		||||
                  (
 | 
			
		||||
                    acc: { [key: string]: ExcalidrawElement },
 | 
			
		||||
@@ -276,6 +281,7 @@ export class App extends React.Component<any, AppState> {
 | 
			
		||||
                  },
 | 
			
		||||
                  {},
 | 
			
		||||
                );
 | 
			
		||||
                // Reconcile
 | 
			
		||||
                elements = restoredState.elements.map(element => {
 | 
			
		||||
                  if (
 | 
			
		||||
                    elementMap.hasOwnProperty(element.id) &&
 | 
			
		||||
 
 | 
			
		||||
@@ -3,6 +3,9 @@ import {
 | 
			
		||||
  MutableExcalidrawTextElement,
 | 
			
		||||
} from "./types";
 | 
			
		||||
 | 
			
		||||
// This function tracks updates of text elements for the purposes for collaboration.
 | 
			
		||||
// The version is used to compare updates when more than one user is working in
 | 
			
		||||
// the same drawing.
 | 
			
		||||
export function mutateElement(
 | 
			
		||||
  element: MutableExcalidrawElement,
 | 
			
		||||
  callback: (mutatableElement: MutableExcalidrawElement) => void,
 | 
			
		||||
@@ -11,6 +14,9 @@ export function mutateElement(
 | 
			
		||||
  callback(element);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// This function tracks updates of text elements for the purposes for collaboration.
 | 
			
		||||
// The version is used to compare updates when more than one user is working in
 | 
			
		||||
// the same document.
 | 
			
		||||
export function mutateTextElement(
 | 
			
		||||
  element: MutableExcalidrawTextElement,
 | 
			
		||||
  callback: (mutatableElement: MutableExcalidrawTextElement) => void,
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user