Skip to content

Commit b331ba6

Browse files
committed
url: move to module.exports = {} pattern
PR-URL: #12717 Reviewed-By: Daijiro Wachi <daijiro.wachi@gmail.com> Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com
1 parent 7c238be commit b331ba6

1 file changed

Lines changed: 26 additions & 11 deletions

File tree

‎lib/url.js‎

Lines changed: 26 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -23,19 +23,19 @@
2323

2424
const{ toASCII }=process.binding('config').hasIntl ?
2525
process.binding('icu') : require('punycode');
26+
2627
const{ hexTable }=require('internal/querystring');
27-
constinternalUrl=require('internal/url');
28-
exports.parse=urlParse;
29-
exports.resolve=urlResolve;
30-
exports.resolveObject=urlResolveObject;
31-
exports.format=urlFormat;
32-
exports.URL=internalUrl.URL;
33-
exports.URLSearchParams=internalUrl.URLSearchParams;
34-
exports.domainToASCII=internalUrl.domainToASCII;
35-
exports.domainToUnicode=internalUrl.domainToUnicode;
3628

29+
// WHATWG URL implementation provided by internal/url
30+
const{
31+
URL,
32+
URLSearchParams,
33+
domainToASCII,
34+
domainToUnicode,
35+
formatSymbol
36+
}=require('internal/url');
3737

38-
exports.Url=Url;
38+
// Original url.parse() API
3939

4040
functionUrl(){
4141
this.protocol=null;
@@ -559,7 +559,7 @@ function urlFormat(obj, options) {
559559
thrownewTypeError('Parameter "urlObj" must be an object, not '+
560560
(obj===null ? 'null' : typeofobj));
561561
}elseif(!(objinstanceofUrl)){
562-
varformat=obj[internalUrl.formatSymbol];
562+
varformat=obj[formatSymbol];
563563
returnformat ?
564564
format.call(obj,options) :
565565
Url.prototype.format.call(obj);
@@ -1030,3 +1030,18 @@ function encodeAuth(str) {
10301030
returnout+str.slice(lastPos);
10311031
returnout;
10321032
}
1033+
1034+
module.exports={
1035+
// Original API
1036+
Url,
1037+
parse: urlParse,
1038+
resolve: urlResolve,
1039+
resolveObject: urlResolveObject,
1040+
format: urlFormat,
1041+
1042+
// WHATWG API
1043+
URL,
1044+
URLSearchParams,
1045+
domainToASCII,
1046+
domainToUnicode
1047+
};

0 commit comments

Comments
 (0)