/* * 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 strict-local */ import type { BasicSourceMap, MixedSourceMap, IndexSourceMap, } from './SourceMapTypes'; export function sourceMapIncludesSource( sourcemap: MixedSourceMap, source: ?string, ): boolean { if (source == null) { return false; } if (sourcemap.mappings === undefined) { const indexSourceMap: IndexSourceMap = sourcemap; return indexSourceMap.sections.some(section => { return sourceMapIncludesSource(section.map, source); }); } const basicMap: BasicSourceMap = sourcemap; return basicMap.sources.some( s => s === 'Inline Babel script' || source.endsWith(s), ); }