core/node_modules/c9/git_url_parse.js
Lennart Kats 3f2dd4cf25 Revert "Revert "Merge pull request +6023 from c9/profile-integration""
This reverts commit e6fc5d467dc6a4c8f8d962ff0c2930b805d4d2e2.
2015-03-05 09:54:49 +01:00

36 lines
972 B
JavaScript

define(function(require, exports, module) {
"use strict";
var Url = require("url");
module.exports = function(url) {
var m = url.match(/^(git)@([\w\.\d\-\_]+)(?:\/|:)([\w\.\d\-\_\/]+)/);
if (m) {
return {
protocol: "ssh:",
auth: m[1],
hostname: m[2],
pathname: m[3]
};
}
var parsed = Url.parse(url);
if (
parsed &&
parsed.protocol &&
parsed.protocol.match(/^(git|http|https):$/) &&
parsed.hostname &&
parsed.slashes &&
parsed.pathname
)
return {
protocol: parsed.protocol,
auth: parsed.auth || "",
hostname: parsed.hostname,
pathname: parsed.pathname.replace(/^\/+/, ""),
full: url
};
else
return null;
};
});