aboutsummaryrefslogtreecommitdiff
path: root/node_modules/relateurl/lib/parse
diff options
context:
space:
mode:
Diffstat (limited to 'node_modules/relateurl/lib/parse')
-rw-r--r--node_modules/relateurl/lib/parse/host.js26
-rw-r--r--node_modules/relateurl/lib/parse/hrefInfo.js20
-rw-r--r--node_modules/relateurl/lib/parse/index.js58
-rw-r--r--node_modules/relateurl/lib/parse/path.js100
-rw-r--r--node_modules/relateurl/lib/parse/port.js32
-rw-r--r--node_modules/relateurl/lib/parse/query.js53
-rw-r--r--node_modules/relateurl/lib/parse/urlstring.js146
7 files changed, 0 insertions, 435 deletions
diff --git a/node_modules/relateurl/lib/parse/host.js b/node_modules/relateurl/lib/parse/host.js
deleted file mode 100644
index 21f04ff98..000000000
--- a/node_modules/relateurl/lib/parse/host.js
+++ /dev/null
@@ -1,26 +0,0 @@
-"use strict";
-
-function parseHost(urlObj, options)
-{
- // TWEAK :: condition only for speed optimization
- if (options.ignore_www)
- {
- var host = urlObj.host.full;
-
- if (host)
- {
- var stripped = host;
-
- if (host.indexOf("www.") === 0)
- {
- stripped = host.substr(4);
- }
-
- urlObj.host.stripped = stripped;
- }
- }
-}
-
-
-
-module.exports = parseHost;
diff --git a/node_modules/relateurl/lib/parse/hrefInfo.js b/node_modules/relateurl/lib/parse/hrefInfo.js
deleted file mode 100644
index 8cac2bd82..000000000
--- a/node_modules/relateurl/lib/parse/hrefInfo.js
+++ /dev/null
@@ -1,20 +0,0 @@
-"use strict";
-
-function hrefInfo(urlObj)
-{
- var minimumPathOnly = (!urlObj.scheme && !urlObj.auth && !urlObj.host.full && !urlObj.port);
- var minimumResourceOnly = (minimumPathOnly && !urlObj.path.absolute.string);
- var minimumQueryOnly = (minimumResourceOnly && !urlObj.resource);
- var minimumHashOnly = (minimumQueryOnly && !urlObj.query.string.full.length);
- var empty = (minimumHashOnly && !urlObj.hash);
-
- urlObj.extra.hrefInfo.minimumPathOnly = minimumPathOnly;
- urlObj.extra.hrefInfo.minimumResourceOnly = minimumResourceOnly;
- urlObj.extra.hrefInfo.minimumQueryOnly = minimumQueryOnly;
- urlObj.extra.hrefInfo.minimumHashOnly = minimumHashOnly;
- urlObj.extra.hrefInfo.empty = empty;
-}
-
-
-
-module.exports = hrefInfo;
diff --git a/node_modules/relateurl/lib/parse/index.js b/node_modules/relateurl/lib/parse/index.js
deleted file mode 100644
index 9f3677818..000000000
--- a/node_modules/relateurl/lib/parse/index.js
+++ /dev/null
@@ -1,58 +0,0 @@
-"use strict";
-
-var hrefInfo = require("./hrefInfo");
-var parseHost = require("./host");
-var parsePath = require("./path");
-var parsePort = require("./port");
-var parseQuery = require("./query");
-var parseUrlString = require("./urlstring");
-var pathUtils = require("../util/path");
-
-
-
-function parseFromUrl(url, options, fallback)
-{
- if (url)
- {
- var urlObj = parseUrl(url, options);
-
- // Because the following occurs in the relate stage for "to" URLs,
- // such had to be mostly duplicated here
-
- var pathArray = pathUtils.resolveDotSegments(urlObj.path.absolute.array);
-
- urlObj.path.absolute.array = pathArray;
- urlObj.path.absolute.string = "/" + pathUtils.join(pathArray);
-
- return urlObj;
- }
- else
- {
- return fallback;
- }
-}
-
-
-
-function parseUrl(url, options)
-{
- var urlObj = parseUrlString(url, options);
-
- if (urlObj.valid===false) return urlObj;
-
- parseHost(urlObj, options);
- parsePort(urlObj, options);
- parsePath(urlObj, options);
- parseQuery(urlObj, options);
- hrefInfo(urlObj);
-
- return urlObj;
-}
-
-
-
-module.exports =
-{
- from: parseFromUrl,
- to: parseUrl
-};
diff --git a/node_modules/relateurl/lib/parse/path.js b/node_modules/relateurl/lib/parse/path.js
deleted file mode 100644
index 093c00c69..000000000
--- a/node_modules/relateurl/lib/parse/path.js
+++ /dev/null
@@ -1,100 +0,0 @@
-"use strict";
-
-function isDirectoryIndex(resource, options)
-{
- var verdict = false;
-
- options.directoryIndexes.every( function(index)
- {
- if (index === resource)
- {
- verdict = true;
- return false;
- }
-
- return true;
- });
-
- return verdict;
-}
-
-
-
-function parsePath(urlObj, options)
-{
- var path = urlObj.path.absolute.string;
-
- if (path)
- {
- var lastSlash = path.lastIndexOf("/");
-
- if (lastSlash > -1)
- {
- if (++lastSlash < path.length)
- {
- var resource = path.substr(lastSlash);
-
- if (resource!=="." && resource!=="..")
- {
- urlObj.resource = resource;
- path = path.substr(0, lastSlash);
- }
- else
- {
- path += "/";
- }
- }
-
- urlObj.path.absolute.string = path;
- urlObj.path.absolute.array = splitPath(path);
- }
- else if (path==="." || path==="..")
- {
- // "..?var", "..#anchor", etc ... not "..index.html"
- path += "/";
-
- urlObj.path.absolute.string = path;
- urlObj.path.absolute.array = splitPath(path);
- }
- else
- {
- // Resource-only
- urlObj.resource = path;
- urlObj.path.absolute.string = null;
- }
-
- urlObj.extra.resourceIsIndex = isDirectoryIndex(urlObj.resource, options);
- }
- // Else: query/hash-only or empty
-}
-
-
-
-function splitPath(path)
-{
- // TWEAK :: condition only for speed optimization
- if (path !== "/")
- {
- var cleaned = [];
-
- path.split("/").forEach( function(dir)
- {
- // Cleanup -- splitting "/dir/" becomes ["","dir",""]
- if (dir !== "")
- {
- cleaned.push(dir);
- }
- });
-
- return cleaned;
- }
- else
- {
- // Faster to skip the above block and just create an array
- return [];
- }
-}
-
-
-
-module.exports = parsePath;
diff --git a/node_modules/relateurl/lib/parse/port.js b/node_modules/relateurl/lib/parse/port.js
deleted file mode 100644
index 8c4ee2e84..000000000
--- a/node_modules/relateurl/lib/parse/port.js
+++ /dev/null
@@ -1,32 +0,0 @@
-"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;
diff --git a/node_modules/relateurl/lib/parse/query.js b/node_modules/relateurl/lib/parse/query.js
deleted file mode 100644
index dbb85045c..000000000
--- a/node_modules/relateurl/lib/parse/query.js
+++ /dev/null
@@ -1,53 +0,0 @@
-"use strict";
-var hasOwnProperty = Object.prototype.hasOwnProperty;
-
-
-
-function parseQuery(urlObj, options)
-{
- urlObj.query.string.full = stringify(urlObj.query.object, false);
-
- // TWEAK :: condition only for speed optimization
- if (options.removeEmptyQueries)
- {
- urlObj.query.string.stripped = stringify(urlObj.query.object, true);
- }
-}
-
-
-
-function stringify(queryObj, removeEmptyQueries)
-{
- var count = 0;
- var str = "";
-
- for (var i in queryObj)
- {
- if ( i!=="" && hasOwnProperty.call(queryObj, i)===true )
- {
- var value = queryObj[i];
-
- if (value !== "" || !removeEmptyQueries)
- {
- str += (++count===1) ? "?" : "&";
-
- i = encodeURIComponent(i);
-
- if (value !== "")
- {
- str += i +"="+ encodeURIComponent(value).replace(/%20/g,"+");
- }
- else
- {
- str += i;
- }
- }
- }
- }
-
- return str;
-}
-
-
-
-module.exports = parseQuery;
diff --git a/node_modules/relateurl/lib/parse/urlstring.js b/node_modules/relateurl/lib/parse/urlstring.js
deleted file mode 100644
index ca4d7d431..000000000
--- a/node_modules/relateurl/lib/parse/urlstring.js
+++ /dev/null
@@ -1,146 +0,0 @@
-"use strict";
-
-var _parseUrl = require("url").parse;
-
-
-
-/*
- Customize the URL object that Node generates
- because:
-
- * necessary data for later
- * urlObj.host is useless
- * urlObj.hostname is too long
- * urlObj.path is useless
- * urlObj.pathname is too long
- * urlObj.protocol is inaccurate; should be called "scheme"
- * urlObj.search is mostly useless
-*/
-function clean(urlObj)
-{
- var scheme = urlObj.protocol;
-
- if (scheme)
- {
- // Remove ":" suffix
- if (scheme.indexOf(":") === scheme.length-1)
- {
- scheme = scheme.substr(0, scheme.length-1);
- }
- }
-
- urlObj.host =
- {
- // TODO :: unescape(encodeURIComponent(s)) ? ... http://ecmanaut.blogspot.ca/2006/07/encoding-decoding-utf8-in-javascript.html
- full: urlObj.hostname,
- stripped: null
- };
-
- urlObj.path =
- {
- absolute:
- {
- array: null,
- string: urlObj.pathname
- },
- relative:
- {
- array: null,
- string: null
- }
- };
-
- urlObj.query =
- {
- object: urlObj.query,
- string:
- {
- full: null,
- stripped: null
- }
- };
-
- urlObj.extra =
- {
- hrefInfo:
- {
- minimumPathOnly: null,
- minimumResourceOnly: null,
- minimumQueryOnly: null,
- minimumHashOnly: null,
- empty: null,
-
- separatorOnlyQuery: urlObj.search==="?"
- },
- portIsDefault: null,
- relation:
- {
- maximumScheme: null,
- maximumAuth: null,
- maximumHost: null,
- maximumPort: null,
- maximumPath: null,
- maximumResource: null,
- maximumQuery: null,
- maximumHash: null,
-
- minimumScheme: null,
- minimumAuth: null,
- minimumHost: null,
- minimumPort: null,
- minimumPath: null,
- minimumResource: null,
- minimumQuery: null,
- minimumHash: null,
-
- overridesQuery: null
- },
- resourceIsIndex: null,
- slashes: urlObj.slashes
- };
-
- urlObj.resource = null;
- urlObj.scheme = scheme;
- delete urlObj.hostname;
- delete urlObj.pathname;
- delete urlObj.protocol;
- delete urlObj.search;
- delete urlObj.slashes;
-
- return urlObj;
-}
-
-
-
-function validScheme(url, options)
-{
- var valid = true;
-
- options.rejectedSchemes.every( function(rejectedScheme)
- {
- valid = !(url.indexOf(rejectedScheme+":") === 0);
-
- // Break loop
- return valid;
- });
-
- return valid;
-}
-
-
-
-function parseUrlString(url, options)
-{
- if ( validScheme(url,options) )
- {
- return clean( _parseUrl(url, true, options.slashesDenoteHost) );
- }
- else
- {
- return {href:url, valid:false};
- }
-}
-
-
-
-module.exports = parseUrlString;