mirror of
https://github.com/liriliri/eruda.git
synced 2026-03-20 09:38:37 +08:00
Dev: Console url detect
This commit is contained in:
35
dist/eruda.js
vendored
35
dist/eruda.js
vendored
@@ -817,6 +817,22 @@ var eruda =
|
||||
return isRegExp;
|
||||
})();
|
||||
|
||||
/* ------------------------------ loadJs ------------------------------ */
|
||||
|
||||
var loadJs;
|
||||
|
||||
_.loadJs = (function ()
|
||||
{
|
||||
loadJs = function (url)
|
||||
{
|
||||
var script = document.createElement('script');
|
||||
script.src = url;
|
||||
document.body.appendChild(script);
|
||||
};
|
||||
|
||||
return loadJs;
|
||||
})();
|
||||
|
||||
/* ------------------------------ ltrim ------------------------------ */
|
||||
|
||||
var ltrim;
|
||||
@@ -5445,6 +5461,10 @@ var eruda =
|
||||
commands: cmdList
|
||||
});
|
||||
|
||||
var libraries = __webpack_require__(71);
|
||||
|
||||
var regJsUrl = /https?:\/\/([0-9.\-A-Za-z]+)(?::(\d+))?\/[A-Za-z0-9/]*\.js/g;
|
||||
|
||||
function evalJs(jsInput) {
|
||||
return eval(jsInput);
|
||||
}
|
||||
@@ -5455,6 +5475,10 @@ var eruda =
|
||||
if (_util2.default.isUndef(msg)) msg = lines[0] + '<br/>';
|
||||
var stack = '<div class="stack">' + lines.slice(1).join('<br/>') + '</div>';
|
||||
|
||||
stack = stack.replace(regJsUrl, function (match) {
|
||||
return '<a href="' + match + '" target="_blank">' + match + '</a>';
|
||||
});
|
||||
|
||||
return msg + stack;
|
||||
}
|
||||
|
||||
@@ -5637,6 +5661,8 @@ var eruda =
|
||||
return this.filter('log');
|
||||
case 'h':
|
||||
return this.help();
|
||||
case '$':
|
||||
return _util2.default.loadJs(libraries['jQuery']);
|
||||
default:
|
||||
this.warn('Unknown command').help();
|
||||
}
|
||||
@@ -5732,6 +5758,7 @@ var eruda =
|
||||
":w": "Show warn logs only",
|
||||
":l": "Show normal logs only",
|
||||
":h": "Show help",
|
||||
":$": "Load jQuery",
|
||||
"/regexp": "Show logs that match given regexp"
|
||||
};
|
||||
|
||||
@@ -9531,5 +9558,13 @@ var eruda =
|
||||
// exports
|
||||
|
||||
|
||||
/***/ },
|
||||
/* 71 */
|
||||
/***/ function(module, exports) {
|
||||
|
||||
module.exports = {
|
||||
"jQuery": "//code.jquery.com/jquery-1.12.0.min.js"
|
||||
};
|
||||
|
||||
/***/ }
|
||||
/******/ ]);
|
||||
6
eustia/loadJs.js
Normal file
6
eustia/loadJs.js
Normal file
@@ -0,0 +1,6 @@
|
||||
loadJs = function (url)
|
||||
{
|
||||
var script = document.createElement('script');
|
||||
script.src = url;
|
||||
document.body.appendChild(script);
|
||||
};
|
||||
@@ -36,7 +36,9 @@
|
||||
"node-sass": "^3.4.2",
|
||||
"postcss-loader": "^0.8.1",
|
||||
"precss": "^1.4.0",
|
||||
"sass-loader": "^3.1.2"
|
||||
"sass-loader": "^3.1.2",
|
||||
"style-loader": "^0.13.0",
|
||||
"webpack": "^1.12.14"
|
||||
},
|
||||
"dependencies": {
|
||||
"draggabilly": "^2.1.0"
|
||||
|
||||
@@ -7,6 +7,10 @@ var cmdList = require('./cmdList.json'),
|
||||
commands: cmdList
|
||||
});
|
||||
|
||||
var libraries = require('./libraries.json');
|
||||
|
||||
var regJsUrl = /https?:\/\/([0-9.\-A-Za-z]+)(?::(\d+))?\/[A-Za-z0-9/]*\.js/g;
|
||||
|
||||
function evalJs(jsInput)
|
||||
{
|
||||
return eval(jsInput);
|
||||
@@ -19,6 +23,11 @@ function errToStr(err, msg)
|
||||
if (util.isUndef(msg)) msg = lines[0] + '<br/>';
|
||||
var stack = '<div class="stack">' + lines.slice(1).join('<br/>') + '</div>';
|
||||
|
||||
stack = stack.replace(regJsUrl, function (match)
|
||||
{
|
||||
return '<a href="' + match + '" target="_blank">' + match + '</a>';
|
||||
});
|
||||
|
||||
return msg + stack;
|
||||
}
|
||||
|
||||
@@ -198,6 +207,7 @@ export default class Log
|
||||
case 'w': return this.filter('warn');
|
||||
case 'l': return this.filter('log');
|
||||
case 'h': return this.help();
|
||||
case '$': return util.loadJs(libraries['jQuery']);
|
||||
default:
|
||||
this.warn('Unknown command').help();
|
||||
}
|
||||
|
||||
@@ -5,5 +5,6 @@
|
||||
":w": "Show warn logs only",
|
||||
":l": "Show normal logs only",
|
||||
":h": "Show help",
|
||||
":$": "Load jQuery",
|
||||
"/regexp": "Show logs that match given regexp"
|
||||
}
|
||||
3
src/Console/libraries.json
Normal file
3
src/Console/libraries.json
Normal file
@@ -0,0 +1,3 @@
|
||||
{
|
||||
"jQuery": "//code.jquery.com/jquery-1.12.0.min.js"
|
||||
}
|
||||
16
src/util.js
16
src/util.js
@@ -593,6 +593,22 @@ module.exports = (function ()
|
||||
return isRegExp;
|
||||
})();
|
||||
|
||||
/* ------------------------------ loadJs ------------------------------ */
|
||||
|
||||
var loadJs;
|
||||
|
||||
_.loadJs = (function ()
|
||||
{
|
||||
loadJs = function (url)
|
||||
{
|
||||
var script = document.createElement('script');
|
||||
script.src = url;
|
||||
document.body.appendChild(script);
|
||||
};
|
||||
|
||||
return loadJs;
|
||||
})();
|
||||
|
||||
/* ------------------------------ ltrim ------------------------------ */
|
||||
|
||||
var ltrim;
|
||||
|
||||
Reference in New Issue
Block a user