fix: check if process is defined before using so it works in browser (#4497)
* refactor: use isTestEnv() utils where applicable * check if process is defined
This commit is contained in:
parent
38236bc5e0
commit
11396a21de
@ -13,7 +13,7 @@ import {
|
||||
FontFamilyValues,
|
||||
ExcalidrawRectangleElement,
|
||||
} from "../element/types";
|
||||
import { getFontString, getUpdatedTimestamp } from "../utils";
|
||||
import { getFontString, getUpdatedTimestamp, isTestEnv } from "../utils";
|
||||
import { randomInteger, randomId } from "../random";
|
||||
import { mutateElement, newElementWith } from "./mutateElement";
|
||||
import { getNewGroupIdsForDuplication } from "../groups";
|
||||
@ -369,7 +369,7 @@ export const duplicateElement = <TElement extends Mutable<ExcalidrawElement>>(
|
||||
overrides?: Partial<TElement>,
|
||||
): TElement => {
|
||||
let copy: TElement = deepCopyElement(element);
|
||||
if (process.env.NODE_ENV === "test") {
|
||||
if (isTestEnv()) {
|
||||
copy.id = `${copy.id}_copy`;
|
||||
// `window.h` may not be defined in some unit tests
|
||||
if (
|
||||
|
@ -1,5 +1,6 @@
|
||||
import { Random } from "roughjs/bin/math";
|
||||
import { nanoid } from "nanoid";
|
||||
import { isTestEnv } from "./utils";
|
||||
|
||||
let random = new Random(Date.now());
|
||||
let testIdBase = 0;
|
||||
@ -11,5 +12,4 @@ export const reseed = (seed: number) => {
|
||||
testIdBase = 0;
|
||||
};
|
||||
|
||||
export const randomId = () =>
|
||||
process.env.NODE_ENV === "test" ? `id${testIdBase++}` : nanoid();
|
||||
export const randomId = () => (isTestEnv() ? `id${testIdBase++}` : nanoid());
|
||||
|
@ -443,8 +443,7 @@ export const bytesToHexString = (bytes: Uint8Array) => {
|
||||
.join("");
|
||||
};
|
||||
|
||||
export const getUpdatedTimestamp = () =>
|
||||
process.env.NODE_ENV === "test" ? 1 : Date.now();
|
||||
export const getUpdatedTimestamp = () => (isTestEnv() ? 1 : Date.now());
|
||||
|
||||
/**
|
||||
* Transforms array of objects containing `id` attribute,
|
||||
@ -459,4 +458,5 @@ export const arrayToMap = <T extends { id: string } | string>(
|
||||
}, new Map());
|
||||
};
|
||||
|
||||
export const isTestEnv = () => process?.env?.NODE_ENV === "test";
|
||||
export const isTestEnv = () =>
|
||||
typeof process !== "undefined" && process.env?.NODE_ENV === "test";
|
||||
|
Loading…
x
Reference in New Issue
Block a user