From 310a3f0335e47cb6e679c4529ad5df5dcdf63e66 Mon Sep 17 00:00:00 2001 From: WC Leung Date: Fri, 22 Jul 2016 15:01:53 +0800 Subject: [PATCH] Make sunlight runnable in node.js --- src/sunlight.js | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/sunlight.js b/src/sunlight.js index 2165a1a..e76208f 100644 --- a/src/sunlight.js +++ b/src/sunlight.js @@ -7,6 +7,14 @@ * by Tommy Montgomery * Licensed under WTFPL */ + +if (!document) { + // In node.js we do not have document and window. + var jsdom = require("jsdom").jsdom; + var document = jsdom("", {}); + var window = document.defaultView; +} + (function(window, document, undefined){ var @@ -1099,7 +1107,7 @@ languageData.operators = createHashMap(languageData.operators || [], "", languageData.caseInsensitive); for (tokenName in languageData.customTokens) { languageData.customTokens[tokenName] = createHashMap( - languageData.customTokens[tokenName].values, + languageData.customTokens[tokenName].values ? languageData.customTokens[tokenName].values : [], languageData.customTokens[tokenName].boundary, languageData.caseInsensitive );