Skip to content

Allows you to import local variables, functions and classes from other modules

License

Notifications You must be signed in to change notification settings

AlexOwl/import-locals

Repository files navigation

import-locals

Build Status

💿 Installation

npm i import-locals

📖 Usage

import locals from "import-locals";
const locals = require("import-locals"); // ES5 usage

locals.export("request/lib/cookies", "RequestJar");
locals.export("request/lib/cookies", "CookieJar");
locals.export("request/lib/cookies", "CookieJar", "LocalJar");

import { RequestJar, CookieJar, LocalJar } from "request/lib/cookies"; // ES6 works
const { RequestJar, CookieJar, LocalJar } = require("request/lib/cookies");

🔨 Advanced usage

// you can access internal GlobalPatcher
global.locals.separator = "\n\n";

global.locals.unpatch();

global.locals.compile.call(module, content, filename);

🔬 LocalPatcher

Methods

export

export(request: String, variable: String, name: String = variable);
  • request - module name or path

  • variable - name of variable (or function, class, etc) to export

  • name - name to use for export, by default the same as variable

/* Usage example */
patcher.export("request/lib/cookies", "RequestJar");
patcher.export("request/lib/cookies", "CookieJar", "LocalJar");

import { RequestJar, LocalJar } from "request/lib/cookies";

unexport

unexport(request: String, variable: String = null, name: String = variable);
  • request - module name or path

  • variable - if null unexports all variables

  • name - name used for export, by default the same as variable

/* Usage example */
patcher.unexport("request/lib/cookies", "RequestJar");
patcher.unexport("request/lib/cookies", "CookieJar", "LocalJar");
patcher.unexport("request/lib/cookies");

❓ How does it work?

This module adds exports[name]=variable to requested source file, so you can require it

var foo = ["bar"];

// this module adds:
exports["foo"] = foo;

📝 License

Released under MIT license

About

Allows you to import local variables, functions and classes from other modules

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published