All files / collaborative-str/src util.ts

46.15% Statements 6/13
0% Branches 0/2
33.33% Functions 1/3
40% Lines 4/10

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 161x     1x 3x 3x                    
export const applyChange = (view: string, position: number, remove: number, insert: string): string =>
  view.slice(0, position) + insert + view.slice(position + remove);
 
export const invokeFirstOnly = () => {
  let invoked: boolean = false;
  return (fn: () => void): void => {
    if (invoked) return;
    invoked = true;
    try {
      fn();
    } finally {
      invoked = false;
    }
  };
};