@dashkite/oxygen
Version:
Browser-friendly URL-template-based routing
23 lines (22 loc) • 3.69 kB
JavaScript
var error, isCurrentLocation, isSameOrigin, relative;
error = function(message) {
return new Error(`oxgen: ${message}`);
};
relative = function(url) {
var pathname, search;
if (/^[^\/]/.test(url)) {
({ pathname, search } = new URL(url));
return pathname + search;
} else {
return url;
}
};
isSameOrigin = function(url) {
return window.location.origin === url.origin;
};
isCurrentLocation = function(url) {
return window.location.href === url.href;
};
export { error, relative, isSameOrigin, isCurrentLocation }; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiL0BkYXNoa2l0ZS9veHlnZW4vc3JjL2hlbHBlcnMuY29mZmVlIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLElBQUEsS0FBQSxFQUFBLGlCQUFBLEVBQUEsWUFBQSxFQUFBOztBQUFBLEtBQUEsR0FBUSxRQUFBLENBQUUsT0FBRixDQUFBO1NBQWUsSUFBSSxLQUFKLENBQVUsQ0FBQSxPQUFBLENBQUEsQ0FBVSxPQUFWLENBQUEsQ0FBVjtBQUFmOztBQUVSLFFBQUEsR0FBVyxRQUFBLENBQUUsR0FBRixDQUFBO0FBQ1gsTUFBQSxRQUFBLEVBQUE7RUFBRSxJQUFHLFFBQVEsQ0FBQyxJQUFULENBQWMsR0FBZCxDQUFIO0lBQ0UsQ0FBQSxDQUFDLFFBQUQsRUFBVyxNQUFYLENBQUEsR0FBcUIsSUFBSSxHQUFKLENBQVEsR0FBUixDQUFyQjtXQUNBLFFBQUEsR0FBVyxPQUZiO0dBQUEsTUFBQTtXQUlFLElBSkY7O0FBRFM7O0FBT1gsWUFBQSxHQUFlLFFBQUEsQ0FBRSxHQUFGLENBQUE7U0FDYixNQUFNLENBQUMsUUFBUSxDQUFDLE1BQWhCLEtBQTBCLEdBQUcsQ0FBQztBQURqQjs7QUFHZixpQkFBQSxHQUFvQixRQUFBLENBQUUsR0FBRixDQUFBO1NBQ2xCLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBaEIsS0FBd0IsR0FBRyxDQUFDO0FBRFY7O0FBR3BCLE9BQUE7RUFDRSxLQURGO0VBRUUsUUFGRjtFQUdFLFlBSEY7RUFJRSxpQkFKRiIsInNvdXJjZXNDb250ZW50IjpbImVycm9yID0gKCBtZXNzYWdlICkgLT4gbmV3IEVycm9yIFwib3hnZW46ICN7bWVzc2FnZX1cIlxuXG5yZWxhdGl2ZSA9ICggdXJsICkgLT5cbiAgaWYgL15bXlxcL10vLnRlc3QgdXJsXG4gICAge3BhdGhuYW1lLCBzZWFyY2h9ID0gbmV3IFVSTCB1cmxcbiAgICBwYXRobmFtZSArIHNlYXJjaFxuICBlbHNlXG4gICAgdXJsXG5cbmlzU2FtZU9yaWdpbiA9ICggdXJsICkgLT5cbiAgd2luZG93LmxvY2F0aW9uLm9yaWdpbiA9PSB1cmwub3JpZ2luXG5cbmlzQ3VycmVudExvY2F0aW9uID0gKCB1cmwgKSAtPlxuICB3aW5kb3cubG9jYXRpb24uaHJlZiA9PSB1cmwuaHJlZlxuXG5leHBvcnQgeyBcbiAgZXJyb3JcbiAgcmVsYXRpdmVcbiAgaXNTYW1lT3JpZ2luXG4gIGlzQ3VycmVudExvY2F0aW9uXG59XG4iXX0=
//# sourceURL=/@dashkite/oxygen/src/helpers.coffee
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiIiwic291cmNlcyI6WyIvQGRhc2hraXRlL294eWdlbi9zcmMvaGVscGVycy5jb2ZmZWUiXSwic291cmNlUm9vdCI6IiIsInNvdXJjZXNDb250ZW50IjpbImVycm9yID0gKCBtZXNzYWdlICkgLT4gbmV3IEVycm9yIFwib3hnZW46ICN7bWVzc2FnZX1cIlxuXG5yZWxhdGl2ZSA9ICggdXJsICkgLT5cbiAgaWYgL15bXlxcL10vLnRlc3QgdXJsXG4gICAge3BhdGhuYW1lLCBzZWFyY2h9ID0gbmV3IFVSTCB1cmxcbiAgICBwYXRobmFtZSArIHNlYXJjaFxuICBlbHNlXG4gICAgdXJsXG5cbmlzU2FtZU9yaWdpbiA9ICggdXJsICkgLT5cbiAgd2luZG93LmxvY2F0aW9uLm9yaWdpbiA9PSB1cmwub3JpZ2luXG5cbmlzQ3VycmVudExvY2F0aW9uID0gKCB1cmwgKSAtPlxuICB3aW5kb3cubG9jYXRpb24uaHJlZiA9PSB1cmwuaHJlZlxuXG5leHBvcnQgeyBcbiAgZXJyb3JcbiAgcmVsYXRpdmVcbiAgaXNTYW1lT3JpZ2luXG4gIGlzQ3VycmVudExvY2F0aW9uXG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsSUFBQSxLQUFBLEVBQUEsaUJBQUEsRUFBQSxZQUFBLEVBQUE7QUFBQSxLQUFBLEdBQVEsUUFBQSxDQUFFLE9BQUYsQ0FBQTtXQUFlLElBQUksS0FBSixDQUFVLENBQUEsT0FBQSxDQUFBLENBQVUsT0FBVixDQUFBLENBQVY7QUFBZjtBQUVSLFFBQUEsR0FBVyxRQUFBLENBQUUsR0FBRixDQUFBO0lBQ1gsSUFBQSxRQUFBLEVBQUE7SUFBRSxJQUFHLFFBQVEsQ0FBQyxJQUFULENBQWMsR0FBZCxDQUFILEVBQUE7U0FDRSxFQUFDLFFBQUQsRUFBVyxNQUFYLEVBQUEsR0FBcUIsSUFBSSxHQUFKLENBQVEsSUFBUixDQUFyQjtlQUNBLFFBQUEsR0FBVyxPQUZiO0tBQUEsTUFBQTtlQUlFLElBSkY7O0FBRFM7QUFPWCxZQUFBLEdBQWUsUUFBQSxDQUFFLEdBQUYsQ0FBQTtXQUNiLE1BQU0sQ0FBQyxRQUFRLENBQUMsTUFBaEIsS0FBMEIsR0FBRyxDQUFDLE1BQUE7QUFEakI7QUFHZixpQkFBQSxHQUFvQixRQUFBLENBQUUsR0FBRixDQUFBO1dBQ2xCLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBaEIsS0FBd0IsR0FBRyxDQUFDLElBQUE7QUFEVjtBQUdwQixPQUFBLEVBQ0UsS0FERixFQUVFLFFBRkYsRUFHRSxZQUhGLEVBSUUsaUJBSkYifQ==