Readability on npm (#608)
* Initial work on preparing Readability for npm * Adjust some require()s * Point package.json to index.js * Add Node.js instructions to README * Use ES6 in eslintpull/618/head
parent
59570ba7fc
commit
1a61a23f68
@ -1,29 +1,7 @@
|
||||
var path = require("path");
|
||||
var fs = require("fs");
|
||||
var url = require("url");
|
||||
|
||||
// We want to load Readability and JSDOMParser, which aren't set up as commonjs libraries,
|
||||
// and so we need to do some hocus-pocus with 'vm' to import them on a separate scope
|
||||
// (identical) scope context.
|
||||
var vm = require("vm");
|
||||
var readabilityPath = path.join(__dirname, "Readability.js");
|
||||
var jsdomPath = path.join(__dirname, "JSDOMParser.js");
|
||||
|
||||
|
||||
var scopeContext = {};
|
||||
// We generally expect dump() and console.{whatever} to work, so make these available
|
||||
// in the scope we're using:
|
||||
scopeContext.dump = console.log;
|
||||
scopeContext.console = console;
|
||||
scopeContext.URL = url.URL;
|
||||
|
||||
// Actually load files. NB: if either of the files has parse errors,
|
||||
// node is dumb and shows you a syntax error *at this callsite* . Don't try to find
|
||||
// a syntax error on this line, there isn't one. Go look in the file it's loading instead.
|
||||
vm.runInNewContext(fs.readFileSync(jsdomPath), scopeContext, jsdomPath);
|
||||
vm.runInNewContext(fs.readFileSync(readabilityPath), scopeContext, readabilityPath);
|
||||
var Readability = require("./Readability");
|
||||
var isProbablyReaderable = require("./Readability-readerable");
|
||||
|
||||
module.exports = {
|
||||
Readability: scopeContext.Readability,
|
||||
JSDOMParser: scopeContext.JSDOMParser
|
||||
Readability: Readability,
|
||||
isProbablyReaderable: isProbablyReaderable
|
||||
};
|
||||
|
Loading…
Reference in New Issue