PHP WebShell

Текущая директория: /usr/lib/node_modules/bitgo/node_modules/metro/src/DeltaBundler/Serializers

Просмотр файла: getExplodedSourceMap.js.flow

/**
 * 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
 * @format
 * @oncall react_native
 */

import type {Module} from '../types';
import type {
  FBSourceFunctionMap,
  MetroSourceMapSegmentTuple,
} from 'metro-source-map';

import {getJsOutput, isJsModule} from './helpers/js';

export type ExplodedSourceMap = $ReadOnlyArray<{
  +map: Array<MetroSourceMapSegmentTuple>,
  +firstLine1Based: number,
  +functionMap: ?FBSourceFunctionMap,
  +path: string,
}>;

export function getExplodedSourceMap(
  modules: $ReadOnlyArray<Module<>>,
  options: {
    +processModuleFilter: (module: Module<>) => boolean,
  },
): ExplodedSourceMap {
  const modulesToProcess = modules
    .filter(isJsModule)
    .filter(options.processModuleFilter);

  const result = [];
  let firstLine1Based = 1;

  for (const module of modulesToProcess) {
    const {path} = module;
    const {lineCount, functionMap, map} = getJsOutput(module).data;
    result.push({firstLine1Based, functionMap, path, map});
    firstLine1Based += lineCount;
  }
  return result;
}

Выполнить команду


Для локальной разработки. Не используйте в интернете!