/**
 * Copyright (c) Meta Platforms, Inc. and affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 *
 * @flow
 */

import type {ReactRecoverable, ReactRecoverableReason} from 'shared/ReactTypes';

import {REACT_RECOVERABLE_TYPE} from 'shared/ReactSymbols';

export function browser(reason?: ReactRecoverableReason): ReactRecoverable {
  // This also runs in the browser, where the reason is never observed. Keep the
  // value cheap and let an SSR renderer initialize the error if it defers work.
  return {
    $$typeof: REACT_RECOVERABLE_TYPE,
    _reason: reason,
  };
}