fix
This commit is contained in:
parent
8157c84d11
commit
b5151bda5a
@ -1,4 +1,3 @@
|
|||||||
// @ts-nocheck
|
|
||||||
import { Point, simplify } from "points-on-curve";
|
import { Point, simplify } from "points-on-curve";
|
||||||
import React from "react";
|
import React from "react";
|
||||||
import { RoughCanvas } from "roughjs/bin/canvas";
|
import { RoughCanvas } from "roughjs/bin/canvas";
|
||||||
@ -854,9 +853,15 @@ class App extends React.Component<ExcalidrawProps, AppState> {
|
|||||||
) {
|
) {
|
||||||
if (this.state.showStats && this.props.isCollaborating) {
|
if (this.state.showStats && this.props.isCollaborating) {
|
||||||
this.calculateNetStats();
|
this.calculateNetStats();
|
||||||
navigator.connection.addEventListener("change", this.calculateNetStats);
|
|
||||||
|
// @ts-ignore
|
||||||
|
navigator?.connection?.addEventListener(
|
||||||
|
"change",
|
||||||
|
this.calculateNetStats,
|
||||||
|
);
|
||||||
} else {
|
} else {
|
||||||
navigator.connection.removeEventListener(
|
// @ts-ignore
|
||||||
|
navigator?.connection?.removeEventListener(
|
||||||
"change",
|
"change",
|
||||||
this.calculateNetStats,
|
this.calculateNetStats,
|
||||||
);
|
);
|
||||||
@ -990,7 +995,7 @@ class App extends React.Component<ExcalidrawProps, AppState> {
|
|||||||
|
|
||||||
private calculateNetStats = async () => {
|
private calculateNetStats = async () => {
|
||||||
const speed = await getNetworkSpeed();
|
const speed = await getNetworkSpeed();
|
||||||
const networkSpeed = speed === -1 ? "Error!" : speed;
|
const networkSpeed = speed === "-1" ? "Error!" : speed;
|
||||||
this.setState({ networkSpeed });
|
this.setState({ networkSpeed });
|
||||||
};
|
};
|
||||||
// Copy/paste
|
// Copy/paste
|
||||||
|
@ -30,7 +30,7 @@ export const Stats = (props: {
|
|||||||
setAppState: React.Component<any, AppState>["setState"];
|
setAppState: React.Component<any, AppState>["setState"];
|
||||||
elements: readonly NonDeletedExcalidrawElement[];
|
elements: readonly NonDeletedExcalidrawElement[];
|
||||||
onClose: () => void;
|
onClose: () => void;
|
||||||
isCollaborating: boolean;
|
isCollaborating?: boolean;
|
||||||
}) => {
|
}) => {
|
||||||
const isMobile = useIsMobile();
|
const isMobile = useIsMobile();
|
||||||
const [storageSizes, setStorageSizes] = useState<StorageSizes>({
|
const [storageSizes, setStorageSizes] = useState<StorageSizes>({
|
||||||
|
@ -14,7 +14,7 @@ const calculateSpeed = (startTime: number, endTime: number) => {
|
|||||||
return `${speed.toFixed(2)} ${suffix[index]}`;
|
return `${speed.toFixed(2)} ${suffix[index]}`;
|
||||||
};
|
};
|
||||||
|
|
||||||
const processImage = () => {
|
const processImage = (): Promise<string> => {
|
||||||
return new Promise((resolve, reject) => {
|
return new Promise((resolve, reject) => {
|
||||||
const image = new Image();
|
const image = new Image();
|
||||||
let endTime: number;
|
let endTime: number;
|
||||||
@ -25,13 +25,13 @@ const processImage = () => {
|
|||||||
};
|
};
|
||||||
|
|
||||||
image.onerror = () => {
|
image.onerror = () => {
|
||||||
resolve(-1);
|
resolve("-1");
|
||||||
};
|
};
|
||||||
|
|
||||||
const startTime = new Date().getTime();
|
const startTime = new Date().getTime();
|
||||||
image.src = `${IMAGE_URL}?t=${startTime}`; // start time acts as a cache buster so everytime new url is requested
|
image.src = `${IMAGE_URL}?t=${startTime}`; // start time acts as a cache buster so everytime new url is requested
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
export const getNetworkSpeed = async () => {
|
export const getNetworkSpeed = async (): Promise<string> => {
|
||||||
return await processImage();
|
return await processImage();
|
||||||
};
|
};
|
||||||
|
@ -88,7 +88,7 @@ export type AppState = {
|
|||||||
appearance: "light" | "dark";
|
appearance: "light" | "dark";
|
||||||
gridSize: number | null;
|
gridSize: number | null;
|
||||||
viewModeEnabled: boolean;
|
viewModeEnabled: boolean;
|
||||||
networkSpeed?: string;
|
networkSpeed: string;
|
||||||
|
|
||||||
/** top-most selected groups (i.e. does not include nested groups) */
|
/** top-most selected groups (i.e. does not include nested groups) */
|
||||||
selectedGroupIds: { [groupId: string]: boolean };
|
selectedGroupIds: { [groupId: string]: boolean };
|
||||||
|
Loading…
x
Reference in New Issue
Block a user