dragonfly_chrome_headless 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/.gitignore +10 -0
- data/.travis.yml +12 -0
- data/Gemfile +4 -0
- data/README.md +53 -0
- data/Rakefile +10 -0
- data/bin/console +14 -0
- data/bin/setup +8 -0
- data/dragonfly_chrome_headless.gemspec +27 -0
- data/lib/dragonfly_chrome_headless.rb +9 -0
- data/lib/dragonfly_chrome_headless/plugin.rb +17 -0
- data/lib/dragonfly_chrome_headless/processors/rasterize.rb +33 -0
- data/lib/dragonfly_chrome_headless/version.rb +3 -0
- data/node_modules/.bin/chrome-remote-interface +1 -0
- data/node_modules/.bin/mkdirp +1 -0
- data/node_modules/.bin/rimraf +1 -0
- data/node_modules/@types/core-js/LICENSE +21 -0
- data/node_modules/@types/core-js/README.md +16 -0
- data/node_modules/@types/core-js/index.d.ts +2452 -0
- data/node_modules/@types/core-js/package.json +85 -0
- data/node_modules/@types/mkdirp/README.md +18 -0
- data/node_modules/@types/mkdirp/index.d.ts +14 -0
- data/node_modules/@types/mkdirp/package.json +77 -0
- data/node_modules/@types/mkdirp/types-metadata.json +25 -0
- data/node_modules/@types/node/README.md +16 -0
- data/node_modules/@types/node/index.d.ts +4132 -0
- data/node_modules/@types/node/package.json +84 -0
- data/node_modules/balanced-match/.npmignore +5 -0
- data/node_modules/balanced-match/LICENSE.md +21 -0
- data/node_modules/balanced-match/README.md +91 -0
- data/node_modules/balanced-match/index.js +59 -0
- data/node_modules/balanced-match/package.json +112 -0
- data/node_modules/brace-expansion/README.md +123 -0
- data/node_modules/brace-expansion/index.js +201 -0
- data/node_modules/brace-expansion/package.json +114 -0
- data/node_modules/chrome-launcher/.clang-format +6 -0
- data/node_modules/chrome-launcher/.npmignore +11 -0
- data/node_modules/chrome-launcher/README.md +123 -0
- data/node_modules/chrome-launcher/ask.js +32 -0
- data/node_modules/chrome-launcher/ask.ts +35 -0
- data/node_modules/chrome-launcher/chrome-finder.js +157 -0
- data/node_modules/chrome-launcher/chrome-finder.ts +186 -0
- data/node_modules/chrome-launcher/chrome-launcher.js +245 -0
- data/node_modules/chrome-launcher/chrome-launcher.ts +312 -0
- data/node_modules/chrome-launcher/compiled-check.js +14 -0
- data/node_modules/chrome-launcher/flags.js +27 -0
- data/node_modules/chrome-launcher/flags.ts +26 -0
- data/node_modules/chrome-launcher/index.js +7 -0
- data/node_modules/chrome-launcher/index.ts +1 -0
- data/node_modules/chrome-launcher/manual-chrome-launcher.js +30 -0
- data/node_modules/chrome-launcher/package.json +116 -0
- data/node_modules/chrome-launcher/random-port.js +24 -0
- data/node_modules/chrome-launcher/random-port.ts +23 -0
- data/node_modules/chrome-launcher/tsconfig.json +19 -0
- data/node_modules/chrome-launcher/utils.js +52 -0
- data/node_modules/chrome-launcher/utils.ts +44 -0
- data/node_modules/chrome-launcher/yarn.lock +1486 -0
- data/node_modules/chrome-remote-interface/LICENSE +18 -0
- data/node_modules/chrome-remote-interface/README.md +849 -0
- data/node_modules/chrome-remote-interface/bin/client.js +337 -0
- data/node_modules/chrome-remote-interface/chrome-remote-interface.js +11 -0
- data/node_modules/chrome-remote-interface/index.js +39 -0
- data/node_modules/chrome-remote-interface/lib/api.js +84 -0
- data/node_modules/chrome-remote-interface/lib/chrome.js +307 -0
- data/node_modules/chrome-remote-interface/lib/defaults.js +4 -0
- data/node_modules/chrome-remote-interface/lib/devtools.js +245 -0
- data/node_modules/chrome-remote-interface/lib/external-request.js +28 -0
- data/node_modules/chrome-remote-interface/lib/protocol.json +13780 -0
- data/node_modules/chrome-remote-interface/lib/websocket-wrapper.js +32 -0
- data/node_modules/chrome-remote-interface/package.json +128 -0
- data/node_modules/chrome-remote-interface/webpack.config.js +55 -0
- data/node_modules/commander/Readme.md +195 -0
- data/node_modules/commander/index.js +851 -0
- data/node_modules/commander/package.json +92 -0
- data/node_modules/concat-map/.travis.yml +4 -0
- data/node_modules/concat-map/LICENSE +18 -0
- data/node_modules/concat-map/README.markdown +62 -0
- data/node_modules/concat-map/example/map.js +6 -0
- data/node_modules/concat-map/index.js +13 -0
- data/node_modules/concat-map/package.json +117 -0
- data/node_modules/concat-map/test/map.js +39 -0
- data/node_modules/debug/.coveralls.yml +1 -0
- data/node_modules/debug/.eslintrc +11 -0
- data/node_modules/debug/.npmignore +9 -0
- data/node_modules/debug/.travis.yml +14 -0
- data/node_modules/debug/CHANGELOG.md +357 -0
- data/node_modules/debug/LICENSE +19 -0
- data/node_modules/debug/Makefile +50 -0
- data/node_modules/debug/Readme.md +312 -0
- data/node_modules/debug/component.json +19 -0
- data/node_modules/debug/karma.conf.js +70 -0
- data/node_modules/debug/node.js +1 -0
- data/node_modules/debug/package.json +124 -0
- data/node_modules/debug/src/browser.js +185 -0
- data/node_modules/debug/src/debug.js +202 -0
- data/node_modules/debug/src/index.js +10 -0
- data/node_modules/debug/src/node.js +246 -0
- data/node_modules/fs.realpath/LICENSE +43 -0
- data/node_modules/fs.realpath/README.md +33 -0
- data/node_modules/fs.realpath/index.js +66 -0
- data/node_modules/fs.realpath/old.js +303 -0
- data/node_modules/fs.realpath/package.json +94 -0
- data/node_modules/glob/LICENSE +15 -0
- data/node_modules/glob/README.md +368 -0
- data/node_modules/glob/changelog.md +67 -0
- data/node_modules/glob/common.js +240 -0
- data/node_modules/glob/glob.js +790 -0
- data/node_modules/glob/package.json +112 -0
- data/node_modules/glob/sync.js +486 -0
- data/node_modules/html-pdf-chrome/.npmignore +9 -0
- data/node_modules/html-pdf-chrome/LICENSE +21 -0
- data/node_modules/html-pdf-chrome/README.md +165 -0
- data/node_modules/html-pdf-chrome/lib/src/ChromePrintOptions.d.ts +87 -0
- data/node_modules/html-pdf-chrome/lib/src/ChromePrintOptions.js +4 -0
- data/node_modules/html-pdf-chrome/lib/src/ChromePrintOptions.js.map +1 -0
- data/node_modules/html-pdf-chrome/lib/src/CompletionTrigger.d.ts +120 -0
- data/node_modules/html-pdf-chrome/lib/src/CompletionTrigger.js +206 -0
- data/node_modules/html-pdf-chrome/lib/src/CompletionTrigger.js.map +1 -0
- data/node_modules/html-pdf-chrome/lib/src/CreateResult.d.ts +70 -0
- data/node_modules/html-pdf-chrome/lib/src/CreateResult.js +98 -0
- data/node_modules/html-pdf-chrome/lib/src/CreateResult.js.map +1 -0
- data/node_modules/html-pdf-chrome/lib/src/index.d.ts +72 -0
- data/node_modules/html-pdf-chrome/lib/src/index.js +123 -0
- data/node_modules/html-pdf-chrome/lib/src/index.js.map +1 -0
- data/node_modules/html-pdf-chrome/package.json +133 -0
- data/node_modules/html-pdf-chrome/src/ChromePrintOptions.ts +99 -0
- data/node_modules/html-pdf-chrome/src/CompletionTrigger.ts +201 -0
- data/node_modules/html-pdf-chrome/src/CreateResult.ts +100 -0
- data/node_modules/html-pdf-chrome/src/index.ts +179 -0
- data/node_modules/inflight/LICENSE +15 -0
- data/node_modules/inflight/README.md +37 -0
- data/node_modules/inflight/inflight.js +54 -0
- data/node_modules/inflight/package.json +105 -0
- data/node_modules/inherits/LICENSE +16 -0
- data/node_modules/inherits/README.md +42 -0
- data/node_modules/inherits/inherits.js +7 -0
- data/node_modules/inherits/inherits_browser.js +23 -0
- data/node_modules/inherits/package.json +97 -0
- data/node_modules/lighthouse-logger/README.md +4 -0
- data/node_modules/lighthouse-logger/index.js +212 -0
- data/node_modules/lighthouse-logger/package.json +69 -0
- data/node_modules/lighthouse-logger/yarn.lock +13 -0
- data/node_modules/minimatch/LICENSE +15 -0
- data/node_modules/minimatch/README.md +209 -0
- data/node_modules/minimatch/minimatch.js +923 -0
- data/node_modules/minimatch/package.json +99 -0
- data/node_modules/minimist/.travis.yml +4 -0
- data/node_modules/minimist/LICENSE +18 -0
- data/node_modules/minimist/example/parse.js +2 -0
- data/node_modules/minimist/index.js +187 -0
- data/node_modules/minimist/package.json +101 -0
- data/node_modules/minimist/readme.markdown +73 -0
- data/node_modules/minimist/test/dash.js +24 -0
- data/node_modules/minimist/test/default_bool.js +20 -0
- data/node_modules/minimist/test/dotted.js +16 -0
- data/node_modules/minimist/test/long.js +31 -0
- data/node_modules/minimist/test/parse.js +318 -0
- data/node_modules/minimist/test/parse_modified.js +9 -0
- data/node_modules/minimist/test/short.js +67 -0
- data/node_modules/minimist/test/whitespace.js +8 -0
- data/node_modules/mkdirp/.travis.yml +8 -0
- data/node_modules/mkdirp/LICENSE +21 -0
- data/node_modules/mkdirp/bin/cmd.js +33 -0
- data/node_modules/mkdirp/bin/usage.txt +12 -0
- data/node_modules/mkdirp/examples/pow.js +6 -0
- data/node_modules/mkdirp/index.js +98 -0
- data/node_modules/mkdirp/package.json +93 -0
- data/node_modules/mkdirp/readme.markdown +100 -0
- data/node_modules/mkdirp/test/chmod.js +41 -0
- data/node_modules/mkdirp/test/clobber.js +38 -0
- data/node_modules/mkdirp/test/mkdirp.js +28 -0
- data/node_modules/mkdirp/test/opts_fs.js +29 -0
- data/node_modules/mkdirp/test/opts_fs_sync.js +27 -0
- data/node_modules/mkdirp/test/perm.js +32 -0
- data/node_modules/mkdirp/test/perm_sync.js +36 -0
- data/node_modules/mkdirp/test/race.js +37 -0
- data/node_modules/mkdirp/test/rel.js +32 -0
- data/node_modules/mkdirp/test/return.js +25 -0
- data/node_modules/mkdirp/test/return_sync.js +24 -0
- data/node_modules/mkdirp/test/root.js +19 -0
- data/node_modules/mkdirp/test/sync.js +32 -0
- data/node_modules/mkdirp/test/umask.js +28 -0
- data/node_modules/mkdirp/test/umask_sync.js +32 -0
- data/node_modules/ms/README.md +51 -0
- data/node_modules/ms/index.js +152 -0
- data/node_modules/ms/license.md +21 -0
- data/node_modules/ms/package.json +109 -0
- data/node_modules/once/LICENSE +15 -0
- data/node_modules/once/README.md +79 -0
- data/node_modules/once/once.js +42 -0
- data/node_modules/once/package.json +101 -0
- data/node_modules/path-is-absolute/index.js +20 -0
- data/node_modules/path-is-absolute/license +21 -0
- data/node_modules/path-is-absolute/package.json +111 -0
- data/node_modules/path-is-absolute/readme.md +59 -0
- data/node_modules/rimraf/LICENSE +15 -0
- data/node_modules/rimraf/README.md +101 -0
- data/node_modules/rimraf/bin.js +50 -0
- data/node_modules/rimraf/package.json +99 -0
- data/node_modules/rimraf/rimraf.js +363 -0
- data/node_modules/ultron/LICENSE +22 -0
- data/node_modules/ultron/index.js +138 -0
- data/node_modules/ultron/package.json +112 -0
- data/node_modules/wrappy/LICENSE +15 -0
- data/node_modules/wrappy/README.md +36 -0
- data/node_modules/wrappy/package.json +97 -0
- data/node_modules/wrappy/wrappy.js +33 -0
- data/node_modules/ws/LICENSE +21 -0
- data/node_modules/ws/README.md +259 -0
- data/node_modules/ws/SECURITY.md +33 -0
- data/node_modules/ws/index.js +15 -0
- data/node_modules/ws/lib/BufferUtil.fallback.js +56 -0
- data/node_modules/ws/lib/BufferUtil.js +15 -0
- data/node_modules/ws/lib/ErrorCodes.js +28 -0
- data/node_modules/ws/lib/EventTarget.js +158 -0
- data/node_modules/ws/lib/Extensions.js +69 -0
- data/node_modules/ws/lib/PerMessageDeflate.js +339 -0
- data/node_modules/ws/lib/Receiver.js +520 -0
- data/node_modules/ws/lib/Sender.js +438 -0
- data/node_modules/ws/lib/Validation.fallback.js +9 -0
- data/node_modules/ws/lib/Validation.js +17 -0
- data/node_modules/ws/lib/WebSocket.js +705 -0
- data/node_modules/ws/lib/WebSocketServer.js +336 -0
- data/node_modules/ws/package.json +122 -0
- data/package.json +26 -0
- data/samples/sample.html +13 -0
- data/script/rasterize.js +18 -0
- metadata +325 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
module.exports = require('./src/node');
|
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
{
|
|
2
|
+
"_args": [
|
|
3
|
+
[
|
|
4
|
+
{
|
|
5
|
+
"raw": "debug@^2.6.8",
|
|
6
|
+
"scope": null,
|
|
7
|
+
"escapedName": "debug",
|
|
8
|
+
"name": "debug",
|
|
9
|
+
"rawSpec": "^2.6.8",
|
|
10
|
+
"spec": ">=2.6.8 <3.0.0",
|
|
11
|
+
"type": "range"
|
|
12
|
+
},
|
|
13
|
+
"/Users/tomascelizna/Devel/dragonfly_chrome_headless/node_modules/lighthouse-logger"
|
|
14
|
+
]
|
|
15
|
+
],
|
|
16
|
+
"_from": "debug@>=2.6.8 <3.0.0",
|
|
17
|
+
"_id": "debug@2.6.8",
|
|
18
|
+
"_inCache": true,
|
|
19
|
+
"_location": "/debug",
|
|
20
|
+
"_nodeVersion": "7.10.0",
|
|
21
|
+
"_npmOperationalInternal": {
|
|
22
|
+
"host": "packages-12-west.internal.npmjs.com",
|
|
23
|
+
"tmp": "tmp/debug-2.6.8.tgz_1495138020906_0.5965513256378472"
|
|
24
|
+
},
|
|
25
|
+
"_npmUser": {
|
|
26
|
+
"name": "tootallnate",
|
|
27
|
+
"email": "nathan@tootallnate.net"
|
|
28
|
+
},
|
|
29
|
+
"_npmVersion": "4.2.0",
|
|
30
|
+
"_phantomChildren": {},
|
|
31
|
+
"_requested": {
|
|
32
|
+
"raw": "debug@^2.6.8",
|
|
33
|
+
"scope": null,
|
|
34
|
+
"escapedName": "debug",
|
|
35
|
+
"name": "debug",
|
|
36
|
+
"rawSpec": "^2.6.8",
|
|
37
|
+
"spec": ">=2.6.8 <3.0.0",
|
|
38
|
+
"type": "range"
|
|
39
|
+
},
|
|
40
|
+
"_requiredBy": [
|
|
41
|
+
"/lighthouse-logger"
|
|
42
|
+
],
|
|
43
|
+
"_resolved": "https://registry.npmjs.org/debug/-/debug-2.6.8.tgz",
|
|
44
|
+
"_shasum": "e731531ca2ede27d188222427da17821d68ff4fc",
|
|
45
|
+
"_shrinkwrap": null,
|
|
46
|
+
"_spec": "debug@^2.6.8",
|
|
47
|
+
"_where": "/Users/tomascelizna/Devel/dragonfly_chrome_headless/node_modules/lighthouse-logger",
|
|
48
|
+
"author": {
|
|
49
|
+
"name": "TJ Holowaychuk",
|
|
50
|
+
"email": "tj@vision-media.ca"
|
|
51
|
+
},
|
|
52
|
+
"browser": "./src/browser.js",
|
|
53
|
+
"bugs": {
|
|
54
|
+
"url": "https://github.com/visionmedia/debug/issues"
|
|
55
|
+
},
|
|
56
|
+
"component": {
|
|
57
|
+
"scripts": {
|
|
58
|
+
"debug/index.js": "browser.js",
|
|
59
|
+
"debug/debug.js": "debug.js"
|
|
60
|
+
}
|
|
61
|
+
},
|
|
62
|
+
"contributors": [
|
|
63
|
+
{
|
|
64
|
+
"name": "Nathan Rajlich",
|
|
65
|
+
"email": "nathan@tootallnate.net",
|
|
66
|
+
"url": "http://n8.io"
|
|
67
|
+
},
|
|
68
|
+
{
|
|
69
|
+
"name": "Andrew Rhyne",
|
|
70
|
+
"email": "rhyneandrew@gmail.com"
|
|
71
|
+
}
|
|
72
|
+
],
|
|
73
|
+
"dependencies": {
|
|
74
|
+
"ms": "2.0.0"
|
|
75
|
+
},
|
|
76
|
+
"description": "small debugging utility",
|
|
77
|
+
"devDependencies": {
|
|
78
|
+
"browserify": "9.0.3",
|
|
79
|
+
"chai": "^3.5.0",
|
|
80
|
+
"concurrently": "^3.1.0",
|
|
81
|
+
"coveralls": "^2.11.15",
|
|
82
|
+
"eslint": "^3.12.1",
|
|
83
|
+
"istanbul": "^0.4.5",
|
|
84
|
+
"karma": "^1.3.0",
|
|
85
|
+
"karma-chai": "^0.1.0",
|
|
86
|
+
"karma-mocha": "^1.3.0",
|
|
87
|
+
"karma-phantomjs-launcher": "^1.0.2",
|
|
88
|
+
"karma-sinon": "^1.0.5",
|
|
89
|
+
"mocha": "^3.2.0",
|
|
90
|
+
"mocha-lcov-reporter": "^1.2.0",
|
|
91
|
+
"rimraf": "^2.5.4",
|
|
92
|
+
"sinon": "^1.17.6",
|
|
93
|
+
"sinon-chai": "^2.8.0"
|
|
94
|
+
},
|
|
95
|
+
"directories": {},
|
|
96
|
+
"dist": {
|
|
97
|
+
"shasum": "e731531ca2ede27d188222427da17821d68ff4fc",
|
|
98
|
+
"tarball": "https://registry.npmjs.org/debug/-/debug-2.6.8.tgz"
|
|
99
|
+
},
|
|
100
|
+
"gitHead": "52e1f21284322f167839e5d3a60f635c8b2dc842",
|
|
101
|
+
"homepage": "https://github.com/visionmedia/debug#readme",
|
|
102
|
+
"keywords": [
|
|
103
|
+
"debug",
|
|
104
|
+
"log",
|
|
105
|
+
"debugger"
|
|
106
|
+
],
|
|
107
|
+
"license": "MIT",
|
|
108
|
+
"main": "./src/index.js",
|
|
109
|
+
"maintainers": [
|
|
110
|
+
{
|
|
111
|
+
"name": "thebigredgeek",
|
|
112
|
+
"email": "rhyneandrew@gmail.com"
|
|
113
|
+
}
|
|
114
|
+
],
|
|
115
|
+
"name": "debug",
|
|
116
|
+
"optionalDependencies": {},
|
|
117
|
+
"readme": "ERROR: No README data found!",
|
|
118
|
+
"repository": {
|
|
119
|
+
"type": "git",
|
|
120
|
+
"url": "git://github.com/visionmedia/debug.git"
|
|
121
|
+
},
|
|
122
|
+
"scripts": {},
|
|
123
|
+
"version": "2.6.8"
|
|
124
|
+
}
|
|
@@ -0,0 +1,185 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This is the web browser implementation of `debug()`.
|
|
3
|
+
*
|
|
4
|
+
* Expose `debug()` as the module.
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
exports = module.exports = require('./debug');
|
|
8
|
+
exports.log = log;
|
|
9
|
+
exports.formatArgs = formatArgs;
|
|
10
|
+
exports.save = save;
|
|
11
|
+
exports.load = load;
|
|
12
|
+
exports.useColors = useColors;
|
|
13
|
+
exports.storage = 'undefined' != typeof chrome
|
|
14
|
+
&& 'undefined' != typeof chrome.storage
|
|
15
|
+
? chrome.storage.local
|
|
16
|
+
: localstorage();
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* Colors.
|
|
20
|
+
*/
|
|
21
|
+
|
|
22
|
+
exports.colors = [
|
|
23
|
+
'lightseagreen',
|
|
24
|
+
'forestgreen',
|
|
25
|
+
'goldenrod',
|
|
26
|
+
'dodgerblue',
|
|
27
|
+
'darkorchid',
|
|
28
|
+
'crimson'
|
|
29
|
+
];
|
|
30
|
+
|
|
31
|
+
/**
|
|
32
|
+
* Currently only WebKit-based Web Inspectors, Firefox >= v31,
|
|
33
|
+
* and the Firebug extension (any Firefox version) are known
|
|
34
|
+
* to support "%c" CSS customizations.
|
|
35
|
+
*
|
|
36
|
+
* TODO: add a `localStorage` variable to explicitly enable/disable colors
|
|
37
|
+
*/
|
|
38
|
+
|
|
39
|
+
function useColors() {
|
|
40
|
+
// NB: In an Electron preload script, document will be defined but not fully
|
|
41
|
+
// initialized. Since we know we're in Chrome, we'll just detect this case
|
|
42
|
+
// explicitly
|
|
43
|
+
if (typeof window !== 'undefined' && window.process && window.process.type === 'renderer') {
|
|
44
|
+
return true;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
// is webkit? http://stackoverflow.com/a/16459606/376773
|
|
48
|
+
// document is undefined in react-native: https://github.com/facebook/react-native/pull/1632
|
|
49
|
+
return (typeof document !== 'undefined' && document.documentElement && document.documentElement.style && document.documentElement.style.WebkitAppearance) ||
|
|
50
|
+
// is firebug? http://stackoverflow.com/a/398120/376773
|
|
51
|
+
(typeof window !== 'undefined' && window.console && (window.console.firebug || (window.console.exception && window.console.table))) ||
|
|
52
|
+
// is firefox >= v31?
|
|
53
|
+
// https://developer.mozilla.org/en-US/docs/Tools/Web_Console#Styling_messages
|
|
54
|
+
(typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/) && parseInt(RegExp.$1, 10) >= 31) ||
|
|
55
|
+
// double check webkit in userAgent just in case we are in a worker
|
|
56
|
+
(typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/));
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
/**
|
|
60
|
+
* Map %j to `JSON.stringify()`, since no Web Inspectors do that by default.
|
|
61
|
+
*/
|
|
62
|
+
|
|
63
|
+
exports.formatters.j = function(v) {
|
|
64
|
+
try {
|
|
65
|
+
return JSON.stringify(v);
|
|
66
|
+
} catch (err) {
|
|
67
|
+
return '[UnexpectedJSONParseError]: ' + err.message;
|
|
68
|
+
}
|
|
69
|
+
};
|
|
70
|
+
|
|
71
|
+
|
|
72
|
+
/**
|
|
73
|
+
* Colorize log arguments if enabled.
|
|
74
|
+
*
|
|
75
|
+
* @api public
|
|
76
|
+
*/
|
|
77
|
+
|
|
78
|
+
function formatArgs(args) {
|
|
79
|
+
var useColors = this.useColors;
|
|
80
|
+
|
|
81
|
+
args[0] = (useColors ? '%c' : '')
|
|
82
|
+
+ this.namespace
|
|
83
|
+
+ (useColors ? ' %c' : ' ')
|
|
84
|
+
+ args[0]
|
|
85
|
+
+ (useColors ? '%c ' : ' ')
|
|
86
|
+
+ '+' + exports.humanize(this.diff);
|
|
87
|
+
|
|
88
|
+
if (!useColors) return;
|
|
89
|
+
|
|
90
|
+
var c = 'color: ' + this.color;
|
|
91
|
+
args.splice(1, 0, c, 'color: inherit')
|
|
92
|
+
|
|
93
|
+
// the final "%c" is somewhat tricky, because there could be other
|
|
94
|
+
// arguments passed either before or after the %c, so we need to
|
|
95
|
+
// figure out the correct index to insert the CSS into
|
|
96
|
+
var index = 0;
|
|
97
|
+
var lastC = 0;
|
|
98
|
+
args[0].replace(/%[a-zA-Z%]/g, function(match) {
|
|
99
|
+
if ('%%' === match) return;
|
|
100
|
+
index++;
|
|
101
|
+
if ('%c' === match) {
|
|
102
|
+
// we only are interested in the *last* %c
|
|
103
|
+
// (the user may have provided their own)
|
|
104
|
+
lastC = index;
|
|
105
|
+
}
|
|
106
|
+
});
|
|
107
|
+
|
|
108
|
+
args.splice(lastC, 0, c);
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
/**
|
|
112
|
+
* Invokes `console.log()` when available.
|
|
113
|
+
* No-op when `console.log` is not a "function".
|
|
114
|
+
*
|
|
115
|
+
* @api public
|
|
116
|
+
*/
|
|
117
|
+
|
|
118
|
+
function log() {
|
|
119
|
+
// this hackery is required for IE8/9, where
|
|
120
|
+
// the `console.log` function doesn't have 'apply'
|
|
121
|
+
return 'object' === typeof console
|
|
122
|
+
&& console.log
|
|
123
|
+
&& Function.prototype.apply.call(console.log, console, arguments);
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
/**
|
|
127
|
+
* Save `namespaces`.
|
|
128
|
+
*
|
|
129
|
+
* @param {String} namespaces
|
|
130
|
+
* @api private
|
|
131
|
+
*/
|
|
132
|
+
|
|
133
|
+
function save(namespaces) {
|
|
134
|
+
try {
|
|
135
|
+
if (null == namespaces) {
|
|
136
|
+
exports.storage.removeItem('debug');
|
|
137
|
+
} else {
|
|
138
|
+
exports.storage.debug = namespaces;
|
|
139
|
+
}
|
|
140
|
+
} catch(e) {}
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
/**
|
|
144
|
+
* Load `namespaces`.
|
|
145
|
+
*
|
|
146
|
+
* @return {String} returns the previously persisted debug modes
|
|
147
|
+
* @api private
|
|
148
|
+
*/
|
|
149
|
+
|
|
150
|
+
function load() {
|
|
151
|
+
var r;
|
|
152
|
+
try {
|
|
153
|
+
r = exports.storage.debug;
|
|
154
|
+
} catch(e) {}
|
|
155
|
+
|
|
156
|
+
// If debug isn't set in LS, and we're in Electron, try to load $DEBUG
|
|
157
|
+
if (!r && typeof process !== 'undefined' && 'env' in process) {
|
|
158
|
+
r = process.env.DEBUG;
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
return r;
|
|
162
|
+
}
|
|
163
|
+
|
|
164
|
+
/**
|
|
165
|
+
* Enable namespaces listed in `localStorage.debug` initially.
|
|
166
|
+
*/
|
|
167
|
+
|
|
168
|
+
exports.enable(load());
|
|
169
|
+
|
|
170
|
+
/**
|
|
171
|
+
* Localstorage attempts to return the localstorage.
|
|
172
|
+
*
|
|
173
|
+
* This is necessary because safari throws
|
|
174
|
+
* when a user disables cookies/localstorage
|
|
175
|
+
* and you attempt to access it.
|
|
176
|
+
*
|
|
177
|
+
* @return {LocalStorage}
|
|
178
|
+
* @api private
|
|
179
|
+
*/
|
|
180
|
+
|
|
181
|
+
function localstorage() {
|
|
182
|
+
try {
|
|
183
|
+
return window.localStorage;
|
|
184
|
+
} catch (e) {}
|
|
185
|
+
}
|
|
@@ -0,0 +1,202 @@
|
|
|
1
|
+
|
|
2
|
+
/**
|
|
3
|
+
* This is the common logic for both the Node.js and web browser
|
|
4
|
+
* implementations of `debug()`.
|
|
5
|
+
*
|
|
6
|
+
* Expose `debug()` as the module.
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
exports = module.exports = createDebug.debug = createDebug['default'] = createDebug;
|
|
10
|
+
exports.coerce = coerce;
|
|
11
|
+
exports.disable = disable;
|
|
12
|
+
exports.enable = enable;
|
|
13
|
+
exports.enabled = enabled;
|
|
14
|
+
exports.humanize = require('ms');
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* The currently active debug mode names, and names to skip.
|
|
18
|
+
*/
|
|
19
|
+
|
|
20
|
+
exports.names = [];
|
|
21
|
+
exports.skips = [];
|
|
22
|
+
|
|
23
|
+
/**
|
|
24
|
+
* Map of special "%n" handling functions, for the debug "format" argument.
|
|
25
|
+
*
|
|
26
|
+
* Valid key names are a single, lower or upper-case letter, i.e. "n" and "N".
|
|
27
|
+
*/
|
|
28
|
+
|
|
29
|
+
exports.formatters = {};
|
|
30
|
+
|
|
31
|
+
/**
|
|
32
|
+
* Previous log timestamp.
|
|
33
|
+
*/
|
|
34
|
+
|
|
35
|
+
var prevTime;
|
|
36
|
+
|
|
37
|
+
/**
|
|
38
|
+
* Select a color.
|
|
39
|
+
* @param {String} namespace
|
|
40
|
+
* @return {Number}
|
|
41
|
+
* @api private
|
|
42
|
+
*/
|
|
43
|
+
|
|
44
|
+
function selectColor(namespace) {
|
|
45
|
+
var hash = 0, i;
|
|
46
|
+
|
|
47
|
+
for (i in namespace) {
|
|
48
|
+
hash = ((hash << 5) - hash) + namespace.charCodeAt(i);
|
|
49
|
+
hash |= 0; // Convert to 32bit integer
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
return exports.colors[Math.abs(hash) % exports.colors.length];
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
/**
|
|
56
|
+
* Create a debugger with the given `namespace`.
|
|
57
|
+
*
|
|
58
|
+
* @param {String} namespace
|
|
59
|
+
* @return {Function}
|
|
60
|
+
* @api public
|
|
61
|
+
*/
|
|
62
|
+
|
|
63
|
+
function createDebug(namespace) {
|
|
64
|
+
|
|
65
|
+
function debug() {
|
|
66
|
+
// disabled?
|
|
67
|
+
if (!debug.enabled) return;
|
|
68
|
+
|
|
69
|
+
var self = debug;
|
|
70
|
+
|
|
71
|
+
// set `diff` timestamp
|
|
72
|
+
var curr = +new Date();
|
|
73
|
+
var ms = curr - (prevTime || curr);
|
|
74
|
+
self.diff = ms;
|
|
75
|
+
self.prev = prevTime;
|
|
76
|
+
self.curr = curr;
|
|
77
|
+
prevTime = curr;
|
|
78
|
+
|
|
79
|
+
// turn the `arguments` into a proper Array
|
|
80
|
+
var args = new Array(arguments.length);
|
|
81
|
+
for (var i = 0; i < args.length; i++) {
|
|
82
|
+
args[i] = arguments[i];
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
args[0] = exports.coerce(args[0]);
|
|
86
|
+
|
|
87
|
+
if ('string' !== typeof args[0]) {
|
|
88
|
+
// anything else let's inspect with %O
|
|
89
|
+
args.unshift('%O');
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
// apply any `formatters` transformations
|
|
93
|
+
var index = 0;
|
|
94
|
+
args[0] = args[0].replace(/%([a-zA-Z%])/g, function(match, format) {
|
|
95
|
+
// if we encounter an escaped % then don't increase the array index
|
|
96
|
+
if (match === '%%') return match;
|
|
97
|
+
index++;
|
|
98
|
+
var formatter = exports.formatters[format];
|
|
99
|
+
if ('function' === typeof formatter) {
|
|
100
|
+
var val = args[index];
|
|
101
|
+
match = formatter.call(self, val);
|
|
102
|
+
|
|
103
|
+
// now we need to remove `args[index]` since it's inlined in the `format`
|
|
104
|
+
args.splice(index, 1);
|
|
105
|
+
index--;
|
|
106
|
+
}
|
|
107
|
+
return match;
|
|
108
|
+
});
|
|
109
|
+
|
|
110
|
+
// apply env-specific formatting (colors, etc.)
|
|
111
|
+
exports.formatArgs.call(self, args);
|
|
112
|
+
|
|
113
|
+
var logFn = debug.log || exports.log || console.log.bind(console);
|
|
114
|
+
logFn.apply(self, args);
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
debug.namespace = namespace;
|
|
118
|
+
debug.enabled = exports.enabled(namespace);
|
|
119
|
+
debug.useColors = exports.useColors();
|
|
120
|
+
debug.color = selectColor(namespace);
|
|
121
|
+
|
|
122
|
+
// env-specific initialization logic for debug instances
|
|
123
|
+
if ('function' === typeof exports.init) {
|
|
124
|
+
exports.init(debug);
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
return debug;
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
/**
|
|
131
|
+
* Enables a debug mode by namespaces. This can include modes
|
|
132
|
+
* separated by a colon and wildcards.
|
|
133
|
+
*
|
|
134
|
+
* @param {String} namespaces
|
|
135
|
+
* @api public
|
|
136
|
+
*/
|
|
137
|
+
|
|
138
|
+
function enable(namespaces) {
|
|
139
|
+
exports.save(namespaces);
|
|
140
|
+
|
|
141
|
+
exports.names = [];
|
|
142
|
+
exports.skips = [];
|
|
143
|
+
|
|
144
|
+
var split = (typeof namespaces === 'string' ? namespaces : '').split(/[\s,]+/);
|
|
145
|
+
var len = split.length;
|
|
146
|
+
|
|
147
|
+
for (var i = 0; i < len; i++) {
|
|
148
|
+
if (!split[i]) continue; // ignore empty strings
|
|
149
|
+
namespaces = split[i].replace(/\*/g, '.*?');
|
|
150
|
+
if (namespaces[0] === '-') {
|
|
151
|
+
exports.skips.push(new RegExp('^' + namespaces.substr(1) + '$'));
|
|
152
|
+
} else {
|
|
153
|
+
exports.names.push(new RegExp('^' + namespaces + '$'));
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
/**
|
|
159
|
+
* Disable debug output.
|
|
160
|
+
*
|
|
161
|
+
* @api public
|
|
162
|
+
*/
|
|
163
|
+
|
|
164
|
+
function disable() {
|
|
165
|
+
exports.enable('');
|
|
166
|
+
}
|
|
167
|
+
|
|
168
|
+
/**
|
|
169
|
+
* Returns true if the given mode name is enabled, false otherwise.
|
|
170
|
+
*
|
|
171
|
+
* @param {String} name
|
|
172
|
+
* @return {Boolean}
|
|
173
|
+
* @api public
|
|
174
|
+
*/
|
|
175
|
+
|
|
176
|
+
function enabled(name) {
|
|
177
|
+
var i, len;
|
|
178
|
+
for (i = 0, len = exports.skips.length; i < len; i++) {
|
|
179
|
+
if (exports.skips[i].test(name)) {
|
|
180
|
+
return false;
|
|
181
|
+
}
|
|
182
|
+
}
|
|
183
|
+
for (i = 0, len = exports.names.length; i < len; i++) {
|
|
184
|
+
if (exports.names[i].test(name)) {
|
|
185
|
+
return true;
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
return false;
|
|
189
|
+
}
|
|
190
|
+
|
|
191
|
+
/**
|
|
192
|
+
* Coerce `val`.
|
|
193
|
+
*
|
|
194
|
+
* @param {Mixed} val
|
|
195
|
+
* @return {Mixed}
|
|
196
|
+
* @api private
|
|
197
|
+
*/
|
|
198
|
+
|
|
199
|
+
function coerce(val) {
|
|
200
|
+
if (val instanceof Error) return val.stack || val.message;
|
|
201
|
+
return val;
|
|
202
|
+
}
|