/** * 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 */ // `test` is part of Jest's serializer API export function test(maybeDehydratedValue) { const {meta} = require('react-devtools-shared/src/hydration'); const hasOwnProperty = Object.prototype.hasOwnProperty.bind(maybeDehydratedValue); return ( maybeDehydratedValue !== null && typeof maybeDehydratedValue === 'object' && hasOwnProperty(meta.inspectable) && maybeDehydratedValue[meta.inspected] !== true ); } // print() is part of Jest's serializer API export function print(dehydratedValue, serialize, indent) { const {meta} = require('react-devtools-shared/src/hydration'); const indentation = Math.max(indent('.').indexOf('.') - 2, 0); const paddingLeft = ' '.repeat(indentation); return ( 'Dehydrated {\n' + paddingLeft + ' "preview_short": ' + dehydratedValue[meta.preview_short] + ',\n' + paddingLeft + ' "preview_long": ' + dehydratedValue[meta.preview_long] + ',\n' + paddingLeft + '}' ); }