function touchMove(e) {
		if (mode === "selection") {
			removeListeners();
			return;
		}

		let currentDirectionX; // direction in x
		let currentDirectionY; // direction in y
		const { clientX, clientY } = e.touches[0];

		moveX = clientX - lastX;
		moveY = clientY - lastY;
		currentDirectionX = moveX > 0 ? 1 : -1;
		currentDirectionY = moveY > 0 ? 1 : -1;

		if (directionX !== currentDirectionX) {
			initialX = clientX;
			initialTimeX = e.timeStamp;
		}

		if (directionY !== currentDirectionY) {
			initialY = clientY;
			initialTimeY = e.timeStamp;
		}

		directionX = currentDirectionX;
		directionY = currentDirectionY;
		lastX = clientX;
		lastY = clientY;

		if (!moveX && !moveY) {
			return;
		}

		if (!diagonalScrolling && !lockX && !lockY) {
			if (Math.abs(moveX) > Math.abs(moveY)) {
				lockY = true;
			} else {
				lockX = true;
			}
		}

		if (lockX || Math.abs(moveX) < threshold) {
			moveX = 0;
		}

		if (lockY || Math.abs(moveY) < threshold) {
			moveY = 0;
		}

		if (moveX || moveY) {
			e.preventDefault();
			[moveX, moveY] = testScroll(moveX, moveY);
			mode = "scroll";
			scroll(moveX, moveY);
		}
	}
Editor container on touch move
@param {TouchEvent} e Event