From 37123cd2858b4e318ed8109af745312df4848577 Mon Sep 17 00:00:00 2001 From: Ken Sheedlo Date: Tue, 13 Aug 2013 15:30:52 -0700 Subject: feat(minerr): log minerr doc url in development Closes #3566 --- src/minErr.js | 22 ++++++++++++++++++++-- 1 file changed, 20 insertions(+), 2 deletions(-) (limited to 'src/minErr.js') diff --git a/src/minErr.js b/src/minErr.js index 89be9b1b..4ebcf722 100644 --- a/src/minErr.js +++ b/src/minErr.js @@ -30,10 +30,21 @@ function minErr(module) { return function () { - var prefix = '[' + (module ? module + ':' : '') + arguments[0] + '] ', + var code = arguments[0], + prefix = '[' + (module ? module + ':' : '') + code + '] ', template = arguments[1], templateArgs = arguments, - message; + stringify = function (obj) { + if (isFunction(obj)) { + return obj.toString().replace(/ \{[\s\S]*$/, ''); + } else if (isUndefined(obj)) { + return 'undefined'; + } else if (!isString(obj)) { + return JSON.stringify(obj); + } + return obj; + }, + message, i; message = prefix + template.replace(/\{\d+\}/g, function (match) { var index = +match.slice(1, -1), arg; @@ -52,6 +63,13 @@ function minErr(module) { return match; }); + message = message + '\nhttp://errors.angularjs.org/' + version.full + '/' + + (module ? module + '/' : '') + code; + for (i = 2; i < arguments.length; i++) { + message = message + (i == 2 ? '?' : '&') + 'p' + (i-2) + '=' + + encodeURIComponent(stringify(arguments[i])); + } + return new Error(message); }; } -- cgit v1.2.3