"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.getPkgPath = getPkgPath; exports.shouldTransform = shouldTransform; function _react() { const data = _interopRequireDefault(require("react")); _react = function _react() { return data; }; return data; } function _path() { const data = require("path"); _path = function _path() { return data; }; return data; } function _pkgUp() { const data = _interopRequireDefault(require("pkg-up")); _pkgUp = function _pkgUp() { return data; }; return data; } function _semver() { const data = require("semver"); _semver = function _semver() { return data; }; return data; } function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } const pkgPathCache = {}; const pkgCache = {}; const _require = require('es5-imcompatible-versions/package.json'), config = _require.config['es5-imcompatible-versions']; function getPkgPath(filePath) { const dir = (0, _path().dirname)(filePath); if (dir in pkgPathCache) return pkgPathCache[dir]; pkgPathCache[dir] = _pkgUp().default.sync({ cwd: filePath }); return pkgPathCache[dir]; } function shouldTransform(pkgPath) { if (pkgPath in pkgCache) return pkgCache[pkgPath]; const _require2 = require(pkgPath), name = _require2.name, version = _require2.version; // eslint-disable-line pkgCache[pkgPath] = isMatch(name, version); return pkgCache[pkgPath]; } function isMatch(name, version) { if (config[name]) { return Object.keys(config[name]).some(sv => (0, _semver().satisfies)(version, sv)); } else { return false; } }