Clean up process globals
Summary: Cleaned up some `process` references Reviewed By: passy Differential Revision: D33184882 fbshipit-source-id: 6fc56bcea4e145ba97aa8bf9e689e53e2bf239cc
This commit is contained in:
committed by
Facebook GitHub Bot
parent
e46fcba0b2
commit
4630f37786
@@ -20,6 +20,7 @@ export * from './server-types';
|
|||||||
export {sleep} from './utils/sleep';
|
export {sleep} from './utils/sleep';
|
||||||
export {timeout} from './utils/timeout';
|
export {timeout} from './utils/timeout';
|
||||||
export {isTest} from './utils/isTest';
|
export {isTest} from './utils/isTest';
|
||||||
|
export {isProduction} from './utils/isProduction';
|
||||||
export {assertNever} from './utils/assertNever';
|
export {assertNever} from './utils/assertNever';
|
||||||
export {fsConstants} from './utils/fsConstants';
|
export {fsConstants} from './utils/fsConstants';
|
||||||
export {
|
export {
|
||||||
|
|||||||
18
desktop/flipper-common/src/utils/isProduction.tsx
Normal file
18
desktop/flipper-common/src/utils/isProduction.tsx
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
/**
|
||||||
|
* Copyright (c) Facebook, Inc. and its affiliates.
|
||||||
|
*
|
||||||
|
* This source code is licensed under the MIT license found in the
|
||||||
|
* LICENSE file in the root directory of this source tree.
|
||||||
|
*
|
||||||
|
* @format
|
||||||
|
*/
|
||||||
|
|
||||||
|
declare const process: any;
|
||||||
|
|
||||||
|
// TODO: there are currently two definitions of isProduction active,
|
||||||
|
// this one, and one provided by the RenderHostConfig. Ideally they should be unified
|
||||||
|
export function isProduction(): boolean {
|
||||||
|
return (
|
||||||
|
typeof process === 'undefined' || process.env.NODE_ENV === 'production'
|
||||||
|
);
|
||||||
|
}
|
||||||
@@ -8,8 +8,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
declare const process: any;
|
declare const process: any;
|
||||||
const _isTest = typeof process !== 'undefined' && !!process.env.JEST_WORKER_ID;
|
|
||||||
|
|
||||||
export function isTest(): boolean {
|
export function isTest(): boolean {
|
||||||
return _isTest;
|
return typeof process !== 'undefined' && !!process.env.JEST_WORKER_ID;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -349,5 +349,6 @@ export function useTableRedraw() {
|
|||||||
declare const process: any;
|
declare const process: any;
|
||||||
|
|
||||||
function useInUnitTest(): boolean {
|
function useInUnitTest(): boolean {
|
||||||
|
// N.B. Not reusing flipper-common here, since data-source is published as separate package
|
||||||
return typeof process !== 'undefined' && process?.env?.NODE_ENV === 'test';
|
return typeof process !== 'undefined' && process?.env?.NODE_ENV === 'test';
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -7,6 +7,8 @@
|
|||||||
* @format
|
* @format
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
import {isProduction} from 'flipper-common';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* makeShallowSerializable will prepare common data structures, like Map and Set, for JSON serialization.
|
* makeShallowSerializable will prepare common data structures, like Map and Set, for JSON serialization.
|
||||||
* However, this will happen only for the root object and not recursively to keep things efficiently.
|
* However, this will happen only for the root object and not recursively to keep things efficiently.
|
||||||
@@ -66,18 +68,12 @@ export function deserializeShallowObject(obj: any): any {
|
|||||||
return obj;
|
return obj;
|
||||||
}
|
}
|
||||||
|
|
||||||
// TODO: introduce a isProduction utility!
|
|
||||||
declare const process: any;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Asserts a value is JSON serializable.
|
* Asserts a value is JSON serializable.
|
||||||
* Will print a warning if a value is JSON serializable, but isn't a pure tree
|
* Will print a warning if a value is JSON serializable, but isn't a pure tree
|
||||||
*/
|
*/
|
||||||
export function assertSerializable(obj: any) {
|
export function assertSerializable(obj: any) {
|
||||||
if (
|
if (isProduction()) {
|
||||||
typeof process === 'undefined' ||
|
|
||||||
(process.env.NODE_ENV !== 'test' && process.env.NODE_ENV !== 'development')
|
|
||||||
) {
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
// path to current object
|
// path to current object
|
||||||
|
|||||||
@@ -7,19 +7,15 @@
|
|||||||
* @format
|
* @format
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
import {isProduction} from 'flipper-common';
|
||||||
import {useRef} from 'react';
|
import {useRef} from 'react';
|
||||||
|
|
||||||
// TODO: create isProduction utility!
|
|
||||||
declare const process: any;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This hook will throw in development builds if the value passed in is unstable.
|
* This hook will throw in development builds if the value passed in is unstable.
|
||||||
* Use this if to make sure consumers aren't creating or changing certain props over time
|
* Use this if to make sure consumers aren't creating or changing certain props over time
|
||||||
* (intentionally or accidentally)
|
* (intentionally or accidentally)
|
||||||
*/
|
*/
|
||||||
export const useAssertStableRef =
|
export const useAssertStableRef = !isProduction()
|
||||||
typeof process !== 'undefined' &&
|
|
||||||
(process.env.NODE_ENV === 'development' || process.env.NODE_ENV === 'test')
|
|
||||||
? function useAssertStableRef(value: any, prop: string) {
|
? function useAssertStableRef(value: any, prop: string) {
|
||||||
const ref = useRef(value);
|
const ref = useRef(value);
|
||||||
if (ref.current !== value) {
|
if (ref.current !== value) {
|
||||||
|
|||||||
Reference in New Issue
Block a user