- Complete React app with 7 developer tools - JSON Tool with visual structured editor - Serialize Tool with visual structured editor - URL, Base64, CSV/JSON, Beautifier, Diff tools - Responsive navigation with dropdown menu - Dark/light mode toggle - Mobile-responsive design with sticky header - All tools working with copy/paste functionality
33 lines
524 B
JavaScript
33 lines
524 B
JavaScript
"use strict";
|
|
|
|
function parsePort(urlObj, options)
|
|
{
|
|
var defaultPort = -1;
|
|
|
|
for (var i in options.defaultPorts)
|
|
{
|
|
if ( i===urlObj.scheme && options.defaultPorts.hasOwnProperty(i) )
|
|
{
|
|
defaultPort = options.defaultPorts[i];
|
|
break;
|
|
}
|
|
}
|
|
|
|
if (defaultPort > -1)
|
|
{
|
|
// Force same type as urlObj.port
|
|
defaultPort = defaultPort.toString();
|
|
|
|
if (urlObj.port === null)
|
|
{
|
|
urlObj.port = defaultPort;
|
|
}
|
|
|
|
urlObj.extra.portIsDefault = (urlObj.port === defaultPort);
|
|
}
|
|
}
|
|
|
|
|
|
|
|
module.exports = parsePort;
|