react-lory
Version:
[Deprecated] Use react-slidy instead.
64 lines (45 loc) • 1.86 kB
JavaScript
exports.__esModule = true;
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
var _warning = require('warning');
var _warning2 = _interopRequireDefault(_warning);
var _deprecate = require('./deprecate');
var _deprecate2 = _interopRequireDefault(_deprecate);
var _Actions = require('./Actions');
function extractPath(string) {
var match = string.match(/https?:\/\/[^\/]*/);
if (match == null) return string;
_warning2['default'](false, 'Location path must be pathname + query string only, not a fully qualified URL like "%s"', string);
return string.substring(match[0].length);
}
function createLocation() {
var path = arguments.length <= 0 || arguments[0] === undefined ? '/' : arguments[0];
var state = arguments.length <= 1 || arguments[1] === undefined ? null : arguments[1];
var action = arguments.length <= 2 || arguments[2] === undefined ? _Actions.POP : arguments[2];
var key = arguments.length <= 3 || arguments[3] === undefined ? null : arguments[3];
path = extractPath(path);
var pathname = path;
var search = '';
var hash = '';
var hashIndex = pathname.indexOf('#');
if (hashIndex !== -1) {
hash = pathname.substring(hashIndex);
pathname = pathname.substring(0, hashIndex);
}
var searchIndex = pathname.indexOf('?');
if (searchIndex !== -1) {
search = pathname.substring(searchIndex);
pathname = pathname.substring(0, searchIndex);
}
if (pathname === '') pathname = '/';
return {
pathname: pathname,
search: search,
hash: hash,
state: state,
action: action,
key: key
};
}
exports['default'] = _deprecate2['default'](createLocation, 'Calling createLocation statically is deprecated; instead call the history.createLocation method - see docs/Location.md');
module.exports = exports['default'];
;