text: 'use strict';
  
  Object.defineProperty(exports, "__esModule", {
    value: true
  });
  exports.default = nodeModulesPaths;
  
  var _path;
  
  function _load_path() {
    return _path = _interopRequireDefault(require('path'));
  }
  
  var _realpathNative;
  
  function _load_realpathNative() {
    return _realpathNative = require('realpath-native');
  }
  
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
  
  function nodeModulesPaths(basedir, options) {
    const modules = options && options.moduleDirectory ? [].concat(options.moduleDirectory) : ['node_modules'];
  
    // ensure that `basedir` is an absolute path at this point,
    // resolving against the process' current working directory
    const basedirAbs = (_path || _load_path()).default.resolve(basedir);
  
    let prefix = '/';
    if (/^([A-Za-z]:)/.test(basedirAbs)) {
      prefix = '';
    } else if (/^\\\\/.test(basedirAbs)) {
      prefix = '\\\\';
    }
  
    // The node resolution algorithm (as implemented by NodeJS
    // and TypeScript) traverses parents of the physical path,
    // not the symlinked path
    const physicalBasedir = (0, (_realpathNative || _load_realpathNative()).sync)(basedirAbs);
  
    const paths = [physicalBasedir];
    let parsed = (_path || _load_path()).default.parse(physicalBasedir);
    while (parsed.dir !== paths[paths.length - 1]) {
      const realParsedDir = (0, (_realpathNative || _load_realpathNative()).sync)(parsed.dir);
      paths.push(realParsedDir);
      parsed = (_path || _load_path()).default.parse(realParsedDir);
    }
  
    const dirs = paths.reduce((dirs, aPath) => {
      return dirs.concat(modules.map(moduleDir => {
        return (_path || _load_path()).default.isAbsolute(moduleDir) ? aPath === basedirAbs ? moduleDir : '' : (_path || _load_path()).default.join(prefix, aPath, moduleDir);
      }));
    }, []).filter(dir => dir !== '');
  
    return options.paths ? dirs.concat(options.paths) : dirs;
  } /**
     * Copyright (c) 2014-present, Facebook, Inc. All rights reserved.
     *
     * This source code is licensed under the MIT license found in the
     * LICENSE file in the root directory of this source tree.
     *
     * Adapted from: https://github.com/substack/node-resolve
     *
     * 
     */