UNPKG

@dashkite/monterey

Version:

Browser-friendly URL-template-based routing

56 lines (55 loc) 5.09 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); function _export(target, all) { for(var name in all)Object.defineProperty(target, name, { enumerable: true, get: all[name] }); } _export(exports, { XRL: function() { return XRL; }, compact: function() { return compact; }, error: function() { return error; } }); var XRL, compact, error; compact = function(parameters) { var key, result, value; if (parameters != null) { result = {}; for(key in parameters){ value = parameters[key]; if (parameters[key] != null && parameters[key] !== "") { result[key] = parameters[key]; } } return result; } else { return {}; } }; error = function(message) { return new Error(`monterey: ${message}`); }; XRL = { // hoists if url is a string // otherwise returns the URL object make: function(value) { return new URL(value, window.location); }, target: function(value) { var url; url = XRL.make(value); return url.pathname + url.search; } }; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiL0BkYXNoa2l0ZS9tb250ZXJleS9zcmMvaGVscGVycy5jb2ZmZWUiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsSUFBQSxHQUFBLEVBQUEsT0FBQSxFQUFBOztBQUFBLE9BQUEsR0FBVSxRQUFBLENBQUUsVUFBRixDQUFBO0FBQ1YsTUFBQSxHQUFBLEVBQUEsTUFBQSxFQUFBO0VBQUUsSUFBRyxrQkFBSDtJQUNFLE1BQUEsR0FBUyxDQUFBO0lBQ1QsS0FBQSxpQkFBQTs7TUFDRSxJQUFLLHlCQUFBLElBQXNCLFVBQVUsQ0FBRSxHQUFGLENBQVYsS0FBcUIsRUFBaEQ7UUFDRSxNQUFNLENBQUUsR0FBRixDQUFOLEdBQWdCLFVBQVUsQ0FBRSxHQUFGLEVBRDVCOztJQURGO1dBR0EsT0FMRjtHQUFBLE1BQUE7V0FNSyxDQUFBLEVBTkw7O0FBRFE7O0FBU1YsS0FBQSxHQUFRLFFBQUEsQ0FBRSxPQUFGLENBQUE7U0FBZSxJQUFJLEtBQUosQ0FBVSxDQUFBLFVBQUEsQ0FBQSxDQUFhLE9BQWIsQ0FBQSxDQUFWO0FBQWY7O0FBRVIsR0FBQSxHQUlFLENBQUE7OztFQUFBLElBQUEsRUFBTSxRQUFBLENBQUUsS0FBRixDQUFBO1dBQ0osSUFBSSxHQUFKLENBQVEsS0FBUixFQUFlLE1BQU0sQ0FBQyxRQUF0QjtFQURJLENBQU47RUFHQSxNQUFBLEVBQVEsUUFBQSxDQUFFLEtBQUYsQ0FBQTtBQUNWLFFBQUE7SUFBSSxHQUFBLEdBQU0sR0FBRyxDQUFDLElBQUosQ0FBUyxLQUFUO1dBQ04sR0FBRyxDQUFDLFFBQUosR0FBZSxHQUFHLENBQUM7RUFGYjtBQUhSOztBQU9GLE9BQUE7RUFDRSxPQURGO0VBRUUsS0FGRjtFQUdFLEdBSEYiLCJzb3VyY2VzQ29udGVudCI6WyJjb21wYWN0ID0gKCBwYXJhbWV0ZXJzICkgLT5cbiAgaWYgcGFyYW1ldGVycz9cbiAgICByZXN1bHQgPSB7fVxuICAgIGZvciBrZXksIHZhbHVlIG9mIHBhcmFtZXRlcnNcbiAgICAgIGlmICggcGFyYW1ldGVyc1sga2V5IF0/ICYmIHBhcmFtZXRlcnNbIGtleSBdICE9IFwiXCIgKVxuICAgICAgICByZXN1bHRbIGtleSBdID0gcGFyYW1ldGVyc1sga2V5IF1cbiAgICByZXN1bHRcbiAgZWxzZSB7fVxuXG5lcnJvciA9ICggbWVzc2FnZSApIC0+IG5ldyBFcnJvciBcIm1vbnRlcmV5OiAje21lc3NhZ2V9XCJcblxuWFJMID1cblxuICAjIGhvaXN0cyBpZiB1cmwgaXMgYSBzdHJpbmdcbiAgIyBvdGhlcndpc2UgcmV0dXJucyB0aGUgVVJMIG9iamVjdFxuICBtYWtlOiAoIHZhbHVlICkgLT4gXG4gICAgbmV3IFVSTCB2YWx1ZSwgd2luZG93LmxvY2F0aW9uXG5cbiAgdGFyZ2V0OiAoIHZhbHVlICkgLT5cbiAgICB1cmwgPSBYUkwubWFrZSB2YWx1ZVxuICAgIHVybC5wYXRobmFtZSArIHVybC5zZWFyY2hcblxuZXhwb3J0IHsgXG4gIGNvbXBhY3RcbiAgZXJyb3JcbiAgWFJMXG59XG4iXX0= //# sourceURL=/@dashkite/monterey/src/helpers.coffee //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiIiwic291cmNlcyI6WyIvQGRhc2hraXRlL21vbnRlcmV5L3NyYy9oZWxwZXJzLmNvZmZlZSJdLCJzb3VyY2VSb290IjoiIiwic291cmNlc0NvbnRlbnQiOlsiY29tcGFjdCA9ICggcGFyYW1ldGVycyApIC0+XG4gIGlmIHBhcmFtZXRlcnM/XG4gICAgcmVzdWx0ID0ge31cbiAgICBmb3Iga2V5LCB2YWx1ZSBvZiBwYXJhbWV0ZXJzXG4gICAgICBpZiAoIHBhcmFtZXRlcnNbIGtleSBdPyAmJiBwYXJhbWV0ZXJzWyBrZXkgXSAhPSBcIlwiIClcbiAgICAgICAgcmVzdWx0WyBrZXkgXSA9IHBhcmFtZXRlcnNbIGtleSBdXG4gICAgcmVzdWx0XG4gIGVsc2Uge31cblxuZXJyb3IgPSAoIG1lc3NhZ2UgKSAtPiBuZXcgRXJyb3IgXCJtb250ZXJleTogI3ttZXNzYWdlfVwiXG5cblhSTCA9XG5cbiAgIyBob2lzdHMgaWYgdXJsIGlzIGEgc3RyaW5nXG4gICMgb3RoZXJ3aXNlIHJldHVybnMgdGhlIFVSTCBvYmplY3RcbiAgbWFrZTogKCB2YWx1ZSApIC0+IFxuICAgIG5ldyBVUkwgdmFsdWUsIHdpbmRvdy5sb2NhdGlvblxuXG4gIHRhcmdldDogKCB2YWx1ZSApIC0+XG4gICAgdXJsID0gWFJMLm1ha2UgdmFsdWVcbiAgICB1cmwucGF0aG5hbWUgKyB1cmwuc2VhcmNoXG5cbmV4cG9ydCB7IFxuICBjb21wYWN0XG4gIGVycm9yXG4gIFhSTFxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0lBeUJFLEdBSEY7OztJQUNFLE9BREY7OztTQUFBO2VBRUU7OztBQXhCRixJQUFBLEdBQUEsRUFBQSxPQUFBLEVBQUE7QUFBQSxPQUFBLEdBQVUsUUFBQSxDQUFFLFVBQUYsQ0FBQTtJQUNWLElBQUEsR0FBQSxFQUFBLE1BQUEsRUFBQTtJQUFFLElBQUcsY0FBQSxJQUFILEVBQUE7UUFDRSxNQUFBLEdBQVMsQ0FBQTtRQUNULElBQUEsT0FBQSxVQUFBLENBQUE7O1lBQ0UsSUFBSyxVQUFBLENBQUEsSUFBQSxJQUFBLEtBQUEsR0FBc0IsVUFBVSxDQUFFLEdBQUYsQ0FBVixLQUFxQixFQUFoRCxFQUFBO2dCQUNFLE1BQU0sQ0FBRSxHQUFGLENBQU4sR0FBZ0IsVUFBVSxDQUFFLEdBQUYsQ0FBQSxDQUQ1Qjs7UUFERjtlQUdBLE9BTEY7S0FBQSxNQUFBO2VBTUssQ0FBQSxFQU5MOztBQURRO0FBU1YsS0FBQSxHQUFRLFFBQUEsQ0FBRSxPQUFGLENBQUE7V0FBZSxJQUFJLEtBQUosQ0FBVSxDQUFBLFVBQUEsQ0FBQSxDQUFhLE9BQWIsQ0FBQSxDQUFWO0FBQWY7QUFFUixHQUFBLEdBSUUsQ0FBQTs7O0lBQUEsSUFBQSxFQUFNLFFBQUEsQ0FBRSxLQUFGLENBQUE7ZUFDSixJQUFJLEdBQUosQ0FBUSxLQUFSLEVBQWUsTUFBTSxDQUFDLFFBQXRCO0lBREksQ0FBTjtJQUdBLE1BQUEsRUFBUSxRQUFBLENBQUUsS0FBRixDQUFBO1FBQ1YsSUFBQTtRQUFJLEdBQUEsR0FBTSxHQUFHLENBQUMsSUFBSixDQUFTLEtBQVQ7ZUFDTixHQUFHLENBQUMsUUFBSixHQUFlLEdBQUcsQ0FBQyxNQUFBO0lBRmI7QUFIUiJ9