New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

babel-plugin-symlink-import

Package Overview
Dependencies
Maintainers
1
Versions
5
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

babel-plugin-symlink-import - npm Package Compare versions

Comparing version 0.0.3 to 0.1.0

2

package.json
{
"name": "babel-plugin-symlink-import",
"version": "0.0.3",
"version": "0.1.0",
"description": "Import and compile local npm packages",

@@ -5,0 +5,0 @@ "keywords": [],

@@ -32,3 +32,3 @@ # babel-plugin-symlink-import

"dependencies": {
"local-package": "link:./lib/local-package"
"local-package": "v0.1.0"
}

@@ -38,2 +38,11 @@ }

and you have a `.myLinks` file in the same folder as your `package.json` containing:
```json
{
"links": {
"local-package": "link:./lib/local-package"
}
}
```
You can import files from the local library:

@@ -47,1 +56,3 @@

`node_modules` directory.
As a side-note, when you commit, you can ommit including the `.myLinks` file and everything will still work for your teammates.

@@ -20,2 +20,5 @@ 'use strict';

let myLinksFilePath = '';
let myLinks = {};
if (isLocalPackagePath(importedPath)) {

@@ -30,3 +33,8 @@ return;

} = (0, _findNearestPackageJson.findNearestPackageJsonSync)(sourceFilePath);
const localDependencies = readLocalDependencies(packageJson);
myLinksFilePath = (0, _findNearestPackageJson.findNearestPackageJsonSync)(sourceFilePath).path.replace('package.json', '.myLinks');
myLinks = readMyLinksFile(myLinksFilePath);
const localDependencies = readLocalDependencies(packageJson, myLinks);
const projectPath = path.dirname(packageJsonPath);

@@ -55,2 +63,6 @@ const importedModuleName = importedPath.split(path.sep)[0];

var _fs = require('fs');
var fs = _interopRequireWildcard(_fs);
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }

@@ -64,8 +76,21 @@

function readLocalDependencies(packageJson) {
function readMyLinksFile(myLinksFilePath) {
try {
return JSON.parse(fs.readFileSync(myLinksFilePath, { encoding: 'utf8' })).links;
} catch (err) {
return {};
}
}
function readLocalDependencies(packageJson, myLinksFile) {
const dependencies = _extends({}, packageJson.dependencies, packageJson.devDependencies);
return Object.keys(dependencies).reduce((localDependencies, name) => isLocalPackagePath(dependencies[name]) ? _extends({}, localDependencies, {
[name]: parseLocalPackagePath(dependencies[name])
}) : localDependencies, {});
return Object.keys(dependencies).reduce((localDependencies, name) => {
if (myLinksFile[name] && isLocalPackagePath(myLinksFile[name])) {
dependencies[name] = myLinksFile[name];
}
return isLocalPackagePath(dependencies[name]) ? _extends({}, localDependencies, {
[name]: parseLocalPackagePath(dependencies[name])
}) : localDependencies;
}, {});
}

@@ -90,2 +115,2 @@

}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGV4LmpzIl0sIm5hbWVzIjpbInZpc2l0b3IiLCJpbXBvcnRBbmRFeHBvcnQiLCJhc3RQYXRoIiwiYXN0U3RhdGUiLCJub2RlIiwic291cmNlIiwiaW1wb3J0ZWRQYXRoIiwidmFsdWUiLCJzb3VyY2VGaWxlUGF0aCIsImZpbGUiLCJvcHRzIiwiZmlsZW5hbWUiLCJpc0xvY2FsUGFja2FnZVBhdGgiLCJwYXRoIiwicGFja2FnZUpzb25QYXRoIiwiZGF0YSIsInBhY2thZ2VKc29uIiwibG9jYWxEZXBlbmRlbmNpZXMiLCJyZWFkTG9jYWxEZXBlbmRlbmNpZXMiLCJwcm9qZWN0UGF0aCIsImRpcm5hbWUiLCJpbXBvcnRlZE1vZHVsZU5hbWUiLCJzcGxpdCIsInNlcCIsImltcG9ydGVkTW9kdWxlUm9vdFBhdGgiLCJpbXBvcnRlZFBhdGhSZWxhdGl2ZVRvUHJvamVjdFBhdGgiLCJqb2luIiwic2xpY2UiLCJyZXNvbHZlUmVsYXRpdmVQYXRoIiwiZXJyb3IiLCJ2ZXJzaW9uT3JVcmxPclBhdGgiLCJzb21lIiwicHJlZml4Iiwic3RhcnRzV2l0aCIsImRlcGVuZGVuY2llcyIsImRldkRlcGVuZGVuY2llcyIsIk9iamVjdCIsImtleXMiLCJyZWR1Y2UiLCJuYW1lIiwicGFyc2VMb2NhbFBhY2thZ2VQYXRoIiwibG9jYWxQYWNrYWdlUGF0aCIsInJlcGxhY2UiLCJmcm9tUGF0aCIsInRvUGF0aCIsInJlbGF0aXZlUGF0aCIsInJlbGF0aXZlIl0sIm1hcHBpbmdzIjoiOzs7Ozs7OztrQkF1QmUsWUFBVztBQUN4QixTQUFPO0FBQ0xBLGFBQVM7QUFDUCxPQUFDQyxlQUFELEVBQWtCQyxPQUFsQixFQUFvQ0MsUUFBcEMsRUFBd0Q7QUFDdEQsWUFBSSxDQUFDRCxRQUFRRSxJQUFSLENBQWFDLE1BQWxCLEVBQTBCO0FBQ3hCO0FBQ0Q7O0FBRUQsY0FBTUMsZUFBZUosUUFBUUUsSUFBUixDQUFhQyxNQUFiLENBQW9CRSxLQUF6QztBQUNBLGNBQU1DLGlCQUFpQkwsU0FBU00sSUFBVCxDQUFjQyxJQUFkLENBQW1CQyxRQUExQzs7QUFFQSxZQUFJQyxtQkFBbUJOLFlBQW5CLENBQUosRUFBc0M7QUFDcEM7QUFDRDs7QUFFRCxZQUFJO0FBQ0YsZ0JBQU07QUFDSk8sa0JBQU1DLGVBREY7QUFFSkMsa0JBQU1DO0FBRkYsY0FHRix3REFBMkJSLGNBQTNCLENBSEo7QUFJQSxnQkFBTVMsb0JBQW9CQyxzQkFBc0JGLFdBQXRCLENBQTFCO0FBQ0EsZ0JBQU1HLGNBQWNOLEtBQUtPLE9BQUwsQ0FBYU4sZUFBYixDQUFwQjtBQUNBLGdCQUFNTyxxQkFBcUJmLGFBQWFnQixLQUFiLENBQW1CVCxLQUFLVSxHQUF4QixFQUE2QixDQUE3QixDQUEzQjs7QUFFQSxjQUFJLEVBQUVGLHNCQUFzQkosaUJBQXhCLENBQUosRUFBZ0Q7QUFDOUM7QUFDRDs7QUFFRCxnQkFBTU8seUJBQXlCUCxrQkFBa0JJLGtCQUFsQixDQUEvQjtBQUNBLGdCQUFNSSxvQ0FBb0NaLEtBQUthLElBQUwsQ0FDeENGLHNCQUR3QyxFQUV4QyxHQUFHbEIsYUFBYWdCLEtBQWIsQ0FBbUJULEtBQUtVLEdBQXhCLEVBQTZCSSxLQUE3QixDQUFtQyxDQUFuQyxDQUZxQyxDQUExQzs7QUFLQXpCLGtCQUFRRSxJQUFSLENBQWFDLE1BQWIsQ0FBb0JFLEtBQXBCLEdBQTRCcUIsb0JBQzFCZixLQUFLTyxPQUFMLENBQWFaLGNBQWIsQ0FEMEIsRUFFMUJLLEtBQUthLElBQUwsQ0FBVVAsV0FBVixFQUF1Qk0saUNBQXZCLENBRjBCLENBQTVCO0FBSUQsU0F2QkQsQ0F1QkUsT0FBT0ksS0FBUCxFQUFjLENBQUU7QUFDbkI7QUFyQ007QUFESixHQUFQO0FBeUNELEM7O0FBaEVEOztJQUFZaEIsSTs7QUFDWjs7OztBQWtCQSxNQUFNWixrQkFDSiwrREFERjs7QUErQ0EsU0FBU1csa0JBQVQsQ0FBNEJrQixrQkFBNUIsRUFBaUU7QUFDL0QsU0FBTyxDQUFDLE9BQUQsRUFBVSxPQUFWLEVBQW1CLEtBQW5CLEVBQTBCLElBQTFCLEVBQWdDLElBQWhDLEVBQXNDLEdBQXRDLEVBQTJDQyxJQUEzQyxDQUFnREMsVUFDckRGLG1CQUFtQkcsVUFBbkIsQ0FBOEJELE1BQTlCLENBREssQ0FBUDtBQUdEOztBQUVELFNBQVNkLHFCQUFULENBQStCRixXQUEvQixFQUFrRTtBQUNoRSxRQUFNa0IsNEJBQ0RsQixZQUFZa0IsWUFEWCxFQUVEbEIsWUFBWW1CLGVBRlgsQ0FBTjs7QUFLQSxTQUFPQyxPQUFPQyxJQUFQLENBQVlILFlBQVosRUFBMEJJLE1BQTFCLENBQ0wsQ0FBQ3JCLGlCQUFELEVBQW9Cc0IsSUFBcEIsS0FDRTNCLG1CQUFtQnNCLGFBQWFLLElBQWIsQ0FBbkIsaUJBRVN0QixpQkFGVDtBQUdNLEtBQUNzQixJQUFELEdBQVFDLHNCQUFzQk4sYUFBYUssSUFBYixDQUF0QjtBQUhkLE9BS0l0QixpQkFQRCxFQVFMLEVBUkssQ0FBUDtBQVVEOztBQUVELFNBQVN1QixxQkFBVCxDQUErQkMsZ0JBQS9CLEVBQWlFO0FBQy9ELFNBQU9BLGlCQUFpQkMsT0FBakIsQ0FBeUIsT0FBekIsRUFBa0MsRUFBbEMsQ0FBUDtBQUNEOztBQUVELFNBQVNkLG1CQUFULENBQTZCZSxRQUE3QixFQUErQ0MsTUFBL0MsRUFBK0Q7QUFDN0QsUUFBTUMsZUFBZWhDLEtBQUtpQyxRQUFMLENBQWNILFFBQWQsRUFBd0JDLE1BQXhCLENBQXJCOztBQUVBLE1BQUlDLGlCQUFpQixFQUFyQixFQUF5QjtBQUN2QixXQUFPLEdBQVA7QUFDRDs7QUFFRCxNQUFJQSxpQkFBaUIsSUFBckIsRUFBMkI7QUFDekIsV0FBTyxJQUFQO0FBQ0Q7O0FBRUQsU0FBUSxJQUFHaEMsS0FBS1UsR0FBSSxHQUFFc0IsWUFBYSxFQUFuQztBQUNEIiwiZmlsZSI6ImluZGV4LmpzIiwic291cmNlc0NvbnRlbnQiOlsiLyogQGZsb3cgKi9cbmltcG9ydCAqIGFzIHBhdGggZnJvbSAncGF0aCdcbmltcG9ydCB7IGZpbmROZWFyZXN0UGFja2FnZUpzb25TeW5jIH0gZnJvbSAnZmluZC1uZWFyZXN0LXBhY2thZ2UtanNvbidcblxudHlwZSBBc3RQYXRoID0ge1xuICBub2RlOiB7XG4gICAgc291cmNlOiB7XG4gICAgICB2YWx1ZTogc3RyaW5nXG4gICAgfVxuICB9XG59XG5cbnR5cGUgQXN0U3RhdGUgPSB7XG4gIGZpbGU6IHtcbiAgICBvcHRzOiB7XG4gICAgICBmaWxlbmFtZTogc3RyaW5nXG4gICAgfVxuICB9XG59XG5cbmNvbnN0IGltcG9ydEFuZEV4cG9ydCA9XG4gICdJbXBvcnREZWNsYXJhdGlvbnxFeHBvcnRBbGxEZWNsYXJhdGlvbnxFeHBvcnROYW1lZERlY2xhcmF0aW9uJ1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbigpIHtcbiAgcmV0dXJuIHtcbiAgICB2aXNpdG9yOiB7XG4gICAgICBbaW1wb3J0QW5kRXhwb3J0XShhc3RQYXRoOiBBc3RQYXRoLCBhc3RTdGF0ZTogQXN0U3RhdGUpIHtcbiAgICAgICAgaWYgKCFhc3RQYXRoLm5vZGUuc291cmNlKSB7XG4gICAgICAgICAgcmV0dXJuXG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBpbXBvcnRlZFBhdGggPSBhc3RQYXRoLm5vZGUuc291cmNlLnZhbHVlXG4gICAgICAgIGNvbnN0IHNvdXJjZUZpbGVQYXRoID0gYXN0U3RhdGUuZmlsZS5vcHRzLmZpbGVuYW1lXG5cbiAgICAgICAgaWYgKGlzTG9jYWxQYWNrYWdlUGF0aChpbXBvcnRlZFBhdGgpKSB7XG4gICAgICAgICAgcmV0dXJuXG4gICAgICAgIH1cblxuICAgICAgICB0cnkge1xuICAgICAgICAgIGNvbnN0IHtcbiAgICAgICAgICAgIHBhdGg6IHBhY2thZ2VKc29uUGF0aCxcbiAgICAgICAgICAgIGRhdGE6IHBhY2thZ2VKc29uXG4gICAgICAgICAgfSA9IGZpbmROZWFyZXN0UGFja2FnZUpzb25TeW5jKHNvdXJjZUZpbGVQYXRoKVxuICAgICAgICAgIGNvbnN0IGxvY2FsRGVwZW5kZW5jaWVzID0gcmVhZExvY2FsRGVwZW5kZW5jaWVzKHBhY2thZ2VKc29uKVxuICAgICAgICAgIGNvbnN0IHByb2plY3RQYXRoID0gcGF0aC5kaXJuYW1lKHBhY2thZ2VKc29uUGF0aClcbiAgICAgICAgICBjb25zdCBpbXBvcnRlZE1vZHVsZU5hbWUgPSBpbXBvcnRlZFBhdGguc3BsaXQocGF0aC5zZXApWzBdXG5cbiAgICAgICAgICBpZiAoIShpbXBvcnRlZE1vZHVsZU5hbWUgaW4gbG9jYWxEZXBlbmRlbmNpZXMpKSB7XG4gICAgICAgICAgICByZXR1cm5cbiAgICAgICAgICB9XG5cbiAgICAgICAgICBjb25zdCBpbXBvcnRlZE1vZHVsZVJvb3RQYXRoID0gbG9jYWxEZXBlbmRlbmNpZXNbaW1wb3J0ZWRNb2R1bGVOYW1lXVxuICAgICAgICAgIGNvbnN0IGltcG9ydGVkUGF0aFJlbGF0aXZlVG9Qcm9qZWN0UGF0aCA9IHBhdGguam9pbihcbiAgICAgICAgICAgIGltcG9ydGVkTW9kdWxlUm9vdFBhdGgsXG4gICAgICAgICAgICAuLi5pbXBvcnRlZFBhdGguc3BsaXQocGF0aC5zZXApLnNsaWNlKDEpXG4gICAgICAgICAgKVxuXG4gICAgICAgICAgYXN0UGF0aC5ub2RlLnNvdXJjZS52YWx1ZSA9IHJlc29sdmVSZWxhdGl2ZVBhdGgoXG4gICAgICAgICAgICBwYXRoLmRpcm5hbWUoc291cmNlRmlsZVBhdGgpLFxuICAgICAgICAgICAgcGF0aC5qb2luKHByb2plY3RQYXRoLCBpbXBvcnRlZFBhdGhSZWxhdGl2ZVRvUHJvamVjdFBhdGgpXG4gICAgICAgICAgKVxuICAgICAgICB9IGNhdGNoIChlcnJvcikge31cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuZnVuY3Rpb24gaXNMb2NhbFBhY2thZ2VQYXRoKHZlcnNpb25PclVybE9yUGF0aDogc3RyaW5nKTogYm9vbGVhbiB7XG4gIHJldHVybiBbJ2ZpbGU6JywgJ2xpbms6JywgJy4uLycsICcuLycsICd+LycsICcvJ10uc29tZShwcmVmaXggPT5cbiAgICB2ZXJzaW9uT3JVcmxPclBhdGguc3RhcnRzV2l0aChwcmVmaXgpXG4gIClcbn1cblxuZnVuY3Rpb24gcmVhZExvY2FsRGVwZW5kZW5jaWVzKHBhY2thZ2VKc29uKTogeyBbc3RyaW5nXTogc3RyaW5nIH0ge1xuICBjb25zdCBkZXBlbmRlbmNpZXMgPSB7XG4gICAgLi4ucGFja2FnZUpzb24uZGVwZW5kZW5jaWVzLFxuICAgIC4uLnBhY2thZ2VKc29uLmRldkRlcGVuZGVuY2llc1xuICB9XG5cbiAgcmV0dXJuIE9iamVjdC5rZXlzKGRlcGVuZGVuY2llcykucmVkdWNlKFxuICAgIChsb2NhbERlcGVuZGVuY2llcywgbmFtZSkgPT5cbiAgICAgIGlzTG9jYWxQYWNrYWdlUGF0aChkZXBlbmRlbmNpZXNbbmFtZV0pXG4gICAgICAgID8ge1xuICAgICAgICAgICAgLi4ubG9jYWxEZXBlbmRlbmNpZXMsXG4gICAgICAgICAgICBbbmFtZV06IHBhcnNlTG9jYWxQYWNrYWdlUGF0aChkZXBlbmRlbmNpZXNbbmFtZV0pXG4gICAgICAgICAgfVxuICAgICAgICA6IGxvY2FsRGVwZW5kZW5jaWVzLFxuICAgIHt9XG4gIClcbn1cblxuZnVuY3Rpb24gcGFyc2VMb2NhbFBhY2thZ2VQYXRoKGxvY2FsUGFja2FnZVBhdGg6IHN0cmluZyk6IHN0cmluZyB7XG4gIHJldHVybiBsb2NhbFBhY2thZ2VQYXRoLnJlcGxhY2UoL14uKj86LywgJycpXG59XG5cbmZ1bmN0aW9uIHJlc29sdmVSZWxhdGl2ZVBhdGgoZnJvbVBhdGg6IHN0cmluZywgdG9QYXRoOiBzdHJpbmcpIHtcbiAgY29uc3QgcmVsYXRpdmVQYXRoID0gcGF0aC5yZWxhdGl2ZShmcm9tUGF0aCwgdG9QYXRoKVxuXG4gIGlmIChyZWxhdGl2ZVBhdGggPT09ICcnKSB7XG4gICAgcmV0dXJuICcuJ1xuICB9XG5cbiAgaWYgKHJlbGF0aXZlUGF0aCA9PT0gJy4uJykge1xuICAgIHJldHVybiAnLi4nXG4gIH1cblxuICByZXR1cm4gYC4ke3BhdGguc2VwfSR7cmVsYXRpdmVQYXRofWBcbn1cbiJdfQ==
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGV4LmpzIl0sIm5hbWVzIjpbInZpc2l0b3IiLCJpbXBvcnRBbmRFeHBvcnQiLCJhc3RQYXRoIiwiYXN0U3RhdGUiLCJub2RlIiwic291cmNlIiwiaW1wb3J0ZWRQYXRoIiwidmFsdWUiLCJzb3VyY2VGaWxlUGF0aCIsImZpbGUiLCJvcHRzIiwiZmlsZW5hbWUiLCJteUxpbmtzRmlsZVBhdGgiLCJteUxpbmtzIiwiaXNMb2NhbFBhY2thZ2VQYXRoIiwicGF0aCIsInBhY2thZ2VKc29uUGF0aCIsImRhdGEiLCJwYWNrYWdlSnNvbiIsInJlcGxhY2UiLCJyZWFkTXlMaW5rc0ZpbGUiLCJsb2NhbERlcGVuZGVuY2llcyIsInJlYWRMb2NhbERlcGVuZGVuY2llcyIsInByb2plY3RQYXRoIiwiZGlybmFtZSIsImltcG9ydGVkTW9kdWxlTmFtZSIsInNwbGl0Iiwic2VwIiwiaW1wb3J0ZWRNb2R1bGVSb290UGF0aCIsImltcG9ydGVkUGF0aFJlbGF0aXZlVG9Qcm9qZWN0UGF0aCIsImpvaW4iLCJzbGljZSIsInJlc29sdmVSZWxhdGl2ZVBhdGgiLCJlcnJvciIsImZzIiwidmVyc2lvbk9yVXJsT3JQYXRoIiwic29tZSIsInByZWZpeCIsInN0YXJ0c1dpdGgiLCJKU09OIiwicGFyc2UiLCJyZWFkRmlsZVN5bmMiLCJlbmNvZGluZyIsImxpbmtzIiwiZXJyIiwibXlMaW5rc0ZpbGUiLCJkZXBlbmRlbmNpZXMiLCJkZXZEZXBlbmRlbmNpZXMiLCJPYmplY3QiLCJrZXlzIiwicmVkdWNlIiwibmFtZSIsInBhcnNlTG9jYWxQYWNrYWdlUGF0aCIsImxvY2FsUGFja2FnZVBhdGgiLCJmcm9tUGF0aCIsInRvUGF0aCIsInJlbGF0aXZlUGF0aCIsInJlbGF0aXZlIl0sIm1hcHBpbmdzIjoiOzs7Ozs7OztrQkF3QmUsWUFBVztBQUN4QixTQUFPO0FBQ0xBLGFBQVM7QUFDUCxPQUFDQyxlQUFELEVBQWtCQyxPQUFsQixFQUFvQ0MsUUFBcEMsRUFBd0Q7QUFDdEQsWUFBSSxD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WixDQUFyQjtBQUNEO0FBQ0QsV0FBT3JDLG1CQUFtQmdDLGFBQWFLLElBQWIsQ0FBbkIsaUJBRUU5QixpQkFGRjtBQUdELE9BQUM4QixJQUFELEdBQVFDLHNCQUFzQk4sYUFBYUssSUFBYixDQUF0QjtBQUhQLFNBS0g5QixpQkFMSjtBQU1ELEdBVk0sRUFVSixFQVZJLENBQVA7QUFXRDs7QUFFRCxTQUFTK0IscUJBQVQsQ0FBK0JDLGdCQUEvQixFQUFpRTtBQUMvRCxTQUFPQSxpQkFBaUJsQyxPQUFqQixDQUF5QixPQUF6QixFQUFrQyxFQUFsQyxDQUFQO0FBQ0Q7O0FBRUQsU0FBU2EsbUJBQVQsQ0FBNkJzQixRQUE3QixFQUErQ0MsTUFBL0MsRUFBK0Q7QUFDN0QsUUFBTUMsZUFBZXpDLEtBQUswQyxRQUFMLENBQWNILFFBQWQsRUFBd0JDLE1BQXhCLENBQXJCOztBQUVBLE1BQUlDLGlCQUFpQixFQUFyQixFQUF5QjtBQUN2QixXQUFPLEdBQVA7QUFDRDs7QUFFRCxNQUFJQSxpQkFBaUIsSUFBckIsRUFBMkI7QUFDekIsV0FBTyxJQUFQO0FBQ0Q7O0FBRUQsU0FBUSxJQUFHekMsS0FBS1ksR0FBSSxHQUFFNkIsWUFBYSxFQUFuQztBQUNEIiwiZmlsZSI6ImluZGV4LmpzIiwic291cmNlc0NvbnRlbnQiOlsiLyogQGZsb3cgKi9cbmltcG9ydCAqIGFzIHBhdGggZnJvbSAncGF0aCdcbmltcG9ydCB7IGZpbmROZWFyZXN0UGFja2FnZUpzb25TeW5jIH0gZnJvbSAnZmluZC1uZWFyZXN0LXBhY2thZ2UtanNvbidcbmltcG9ydCAqIGFzIGZzIGZyb20gJ2ZzJ1xuXG50eXBlIEFzdFBhdGggPSB7XG4gIG5vZGU6IHtcbiAgICBzb3VyY2U6IHtcbiAgICAgIHZhbHVlOiBzdHJpbmdcbiAgICB9XG4gIH1cbn1cblxudHlwZSBBc3RTdGF0ZSA9IHtcbiAgZmlsZToge1xuICAgIG9wdHM6IHtcbiAgICAgIGZpbGVuYW1lOiBzdHJpbmdcbiAgICB9XG4gIH1cbn1cblxuY29uc3QgaW1wb3J0QW5kRXhwb3J0ID1cbiAgJ0ltcG9ydERlY2xhcmF0aW9ufEV4cG9ydEFsbERlY2xhcmF0aW9ufEV4cG9ydE5hbWVkRGVjbGFyYXRpb24nXG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uKCkge1xuICByZXR1cm4ge1xuICAgIHZpc2l0b3I6IHtcbiAgICAgIFtpbXBvcnRBbmRFeHBvcnRdKGFzdFBhdGg6IEFzdFBhdGgsIGFzdFN0YXRlOiBBc3RTdGF0ZSkge1xuICAgICAgICBpZiAoIWFzdFBhdGgubm9kZS5zb3VyY2UpIHtcbiAgICAgICAgICByZXR1cm5cbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGltcG9ydGVkUGF0aCA9IGFzdFBhdGgubm9kZS5zb3VyY2UudmFsdWVcbiAgICAgICAgY29uc3Qgc291cmNlRmlsZVBhdGggPSBhc3RTdGF0ZS5maWxlLm9wdHMuZmlsZW5hbWVcblxuICAgICAgICBsZXQgbXlMaW5rc0ZpbGVQYXRoID0gJydcbiAgICAgICAgbGV0IG15TGlua3MgPSB7fVxuXG4gICAgICAgIGlmIChpc0xvY2FsUGFja2FnZVBhdGgoaW1wb3J0ZWRQYXRoKSkge1xuICAgICAgICAgIHJldHVyblxuICAgICAgICB9XG5cbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICBjb25zdCB7XG4gICAgICAgICAgICBwYXRoOiBwYWNrYWdlSnNvblBhdGgsXG4gICAgICAgICAgICBkYXRhOiBwYWNrYWdlSnNvblxuICAgICAgICAgIH0gPSBmaW5kTmVhcmVzdFBhY2thZ2VKc29uU3luYyhzb3VyY2VGaWxlUGF0aClcblxuICAgICAgICAgIG15TGlua3NGaWxlUGF0aCA9IGZpbmROZWFyZXN0UGFja2FnZUpzb25TeW5jKFxuICAgICAgICAgICAgc291cmNlRmlsZVBhdGhcbiAgICAgICAgICApLnBhdGgucmVwbGFjZSgncGFja2FnZS5qc29uJywgJy5teUxpbmtzJylcblxuICAgICAgICAgIG15TGlua3MgPSByZWFkTXlMaW5rc0ZpbGUobXlMaW5rc0ZpbGVQYXRoKVxuXG4gICAgICAgICAgY29uc3QgbG9jYWxEZXBlbmRlbmNpZXMgPSByZWFkTG9jYWxEZXBlbmRlbmNpZXMocGFja2FnZUpzb24sIG15TGlua3MpXG4gICAgICAgICAgY29uc3QgcHJvamVjdFBhdGggPSBwYXRoLmRpcm5hbWUocGFja2FnZUpzb25QYXRoKVxuICAgICAgICAgIGNvbnN0IGltcG9ydGVkTW9kdWxlTmFtZSA9IGltcG9ydGVkUGF0aC5zcGxpdChwYXRoLnNlcClbMF1cblxuICAgICAgICAgIGlmICghKGltcG9ydGVkTW9kdWxlTmFtZSBpbiBsb2NhbERlcGVuZGVuY2llcykpIHtcbiAgICAgICAgICAgIHJldHVyblxuICAgICAgICAgIH1cblxuICAgICAgICAgIGNvbnN0IGltcG9ydGVkTW9kdWxlUm9vdFBhdGggPSBsb2NhbERlcGVuZGVuY2llc1tpbXBvcnRlZE1vZHVsZU5hbWVdXG4gICAgICAgICAgY29uc3QgaW1wb3J0ZWRQYXRoUmVsYXRpdmVUb1Byb2plY3RQYXRoID0gcGF0aC5qb2luKFxuICAgICAgICAgICAgaW1wb3J0ZWRNb2R1bGVSb290UGF0aCxcbiAgICAgICAgICAgIC4uLmltcG9ydGVkUGF0aC5zcGxpdChwYXRoLnNlcCkuc2xpY2UoMSlcbiAgICAgICAgICApXG5cbiAgICAgICAgICBhc3RQYXRoLm5vZGUuc291cmNlLnZhbHVlID0gcmVzb2x2ZVJlbGF0aXZlUGF0aChcbiAgICAgICAgICAgIHBhdGguZGlybmFtZShzb3VyY2VGaWxlUGF0aCksXG4gICAgICAgICAgICBwYXRoLmpvaW4ocHJvamVjdFBhdGgsIGltcG9ydGVkUGF0aFJlbGF0aXZlVG9Qcm9qZWN0UGF0aClcbiAgICAgICAgICApXG4gICAgICAgIH0gY2F0Y2ggKGVycm9yKSB7fVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5mdW5jdGlvbiBpc0xvY2FsUGFja2FnZVBhdGgodmVyc2lvbk9yVXJsT3JQYXRoOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgcmV0dXJuIFsnZmlsZTonLCAnbGluazonLCAnLi4vJywgJy4vJywgJ34vJywgJy8nXS5zb21lKHByZWZpeCA9PlxuICAgIHZlcnNpb25PclVybE9yUGF0aC5zdGFydHNXaXRoKHByZWZpeClcbiAgKVxufVxuXG5mdW5jdGlvbiByZWFkTXlMaW5rc0ZpbGUobXlMaW5rc0ZpbGVQYXRoKTogeyBbc3RyaW5nXTogc3RyaW5nIH0ge1xuICB0cnkge1xuICAgIHJldHVybiBKU09OLnBhcnNlKGZzLnJlYWRGaWxlU3luYyhteUxpbmtzRmlsZVBhdGgsIHsgZW5jb2Rpbmc6ICd1dGY4JyB9KSlcbiAgICAgIC5saW5rc1xuICB9IGNhdGNoIChlcnIpIHtcbiAgICByZXR1cm4ge31cbiAgfVxufVxuXG5mdW5jdGlvbiByZWFkTG9jYWxEZXBlbmRlbmNpZXMocGFja2FnZUpzb24sIG15TGlua3NGaWxlKTogeyBbc3RyaW5nXTogc3RyaW5nIH0ge1xuICBjb25zdCBkZXBlbmRlbmNpZXMgPSB7XG4gICAgLi4ucGFja2FnZUpzb24uZGVwZW5kZW5jaWVzLFxuICAgIC4uLnBhY2thZ2VKc29uLmRldkRlcGVuZGVuY2llc1xuICB9XG5cbiAgcmV0dXJuIE9iamVjdC5rZXlzKGRlcGVuZGVuY2llcykucmVkdWNlKChsb2NhbERlcGVuZGVuY2llcywgbmFtZSkgPT4ge1xuICAgIGlmIChteUxpbmtzRmlsZVtuYW1lXSAmJiBpc0xvY2FsUGFja2FnZVBhdGgobXlMaW5rc0ZpbGVbbmFtZV0pKSB7XG4gICAgICBkZXBlbmRlbmNpZXNbbmFtZV0gPSBteUxpbmtzRmlsZVtuYW1lXVxuICAgIH1cbiAgICByZXR1cm4gaXNMb2NhbFBhY2thZ2VQYXRoKGRlcGVuZGVuY2llc1tuYW1lXSlcbiAgICAgID8ge1xuICAgICAgICAgIC4uLmxvY2FsRGVwZW5kZW5jaWVzLFxuICAgICAgICAgIFtuYW1lXTogcGFyc2VMb2NhbFBhY2thZ2VQYXRoKGRlcGVuZGVuY2llc1tuYW1lXSlcbiAgICAgICAgfVxuICAgICAgOiBsb2NhbERlcGVuZGVuY2llc1xuICB9LCB7fSlcbn1cblxuZnVuY3Rpb24gcGFyc2VMb2NhbFBhY2thZ2VQYXRoKGxvY2FsUGFja2FnZVBhdGg6IHN0cmluZyk6IHN0cmluZyB7XG4gIHJldHVybiBsb2NhbFBhY2thZ2VQYXRoLnJlcGxhY2UoL14uKj86LywgJycpXG59XG5cbmZ1bmN0aW9uIHJlc29sdmVSZWxhdGl2ZVBhdGgoZnJvbVBhdGg6IHN0cmluZywgdG9QYXRoOiBzdHJpbmcpIHtcbiAgY29uc3QgcmVsYXRpdmVQYXRoID0gcGF0aC5yZWxhdGl2ZShmcm9tUGF0aCwgdG9QYXRoKVxuXG4gIGlmIChyZWxhdGl2ZVBhdGggPT09ICcnKSB7XG4gICAgcmV0dXJuICcuJ1xuICB9XG5cbiAgaWYgKHJlbGF0aXZlUGF0aCA9PT0gJy4uJykge1xuICAgIHJldHVybiAnLi4nXG4gIH1cblxuICByZXR1cm4gYC4ke3BhdGguc2VwfSR7cmVsYXRpdmVQYXRofWBcbn1cbiJdfQ==

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc