summaryrefslogtreecommitdiff
path: root/lib/url.js
diff options
context:
space:
mode:
authorJames M Snell <jasnell@gmail.com>2017-04-27 17:35:01 -0700
committerJames M Snell <jasnell@gmail.com>2017-04-29 10:24:18 -0700
commitb331ba6ca9acaa9ae3525d75280e0d47463fab4b (patch)
tree39deaf94095f55440ff27d8ad152fc379ef72759 /lib/url.js
parent7c238be1e1fd2233e06e79b0bf37414978a197c2 (diff)
downloadandroid-node-v8-b331ba6ca9acaa9ae3525d75280e0d47463fab4b.tar.gz
android-node-v8-b331ba6ca9acaa9ae3525d75280e0d47463fab4b.tar.bz2
android-node-v8-b331ba6ca9acaa9ae3525d75280e0d47463fab4b.zip
url: move to module.exports = {} pattern
PR-URL: https://github.com/nodejs/node/pull/12717 Reviewed-By: Daijiro Wachi <daijiro.wachi@gmail.com> Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com
Diffstat (limited to 'lib/url.js')
-rw-r--r--lib/url.js37
1 files changed, 26 insertions, 11 deletions
diff --git a/lib/url.js b/lib/url.js
index 530632a50b..6227c8a057 100644
--- a/lib/url.js
+++ b/lib/url.js
@@ -23,19 +23,19 @@
const { toASCII } = process.binding('config').hasIntl ?
process.binding('icu') : require('punycode');
+
const { hexTable } = require('internal/querystring');
-const internalUrl = require('internal/url');
-exports.parse = urlParse;
-exports.resolve = urlResolve;
-exports.resolveObject = urlResolveObject;
-exports.format = urlFormat;
-exports.URL = internalUrl.URL;
-exports.URLSearchParams = internalUrl.URLSearchParams;
-exports.domainToASCII = internalUrl.domainToASCII;
-exports.domainToUnicode = internalUrl.domainToUnicode;
+// WHATWG URL implementation provided by internal/url
+const {
+ URL,
+ URLSearchParams,
+ domainToASCII,
+ domainToUnicode,
+ formatSymbol
+} = require('internal/url');
-exports.Url = Url;
+// Original url.parse() API
function Url() {
this.protocol = null;
@@ -559,7 +559,7 @@ function urlFormat(obj, options) {
throw new TypeError('Parameter "urlObj" must be an object, not ' +
(obj === null ? 'null' : typeof obj));
} else if (!(obj instanceof Url)) {
- var format = obj[internalUrl.formatSymbol];
+ var format = obj[formatSymbol];
return format ?
format.call(obj, options) :
Url.prototype.format.call(obj);
@@ -1030,3 +1030,18 @@ function encodeAuth(str) {
return out + str.slice(lastPos);
return out;
}
+
+module.exports = {
+ // Original API
+ Url,
+ parse: urlParse,
+ resolve: urlResolve,
+ resolveObject: urlResolveObject,
+ format: urlFormat,
+
+ // WHATWG API
+ URL,
+ URLSearchParams,
+ domainToASCII,
+ domainToUnicode
+};