mirror of
http://36.133.248.69:3088/admin/RentWeAppFront.git
synced 2026-06-07 22:42:34 +08:00
init
This commit is contained in:
97
node_modules/urijs/src/URI.fragmentURI.js
generated
vendored
Normal file
97
node_modules/urijs/src/URI.fragmentURI.js
generated
vendored
Normal file
@@ -0,0 +1,97 @@
|
||||
/*
|
||||
* Extending URI.js for fragment abuse
|
||||
*/
|
||||
|
||||
// --------------------------------------------------------------------------------
|
||||
// EXAMPLE: storing a relative URL in the fragment ("FragmentURI")
|
||||
// possibly helpful when working with backbone.js or sammy.js
|
||||
// inspired by https://github.com/medialize/URI.js/pull/2
|
||||
// --------------------------------------------------------------------------------
|
||||
|
||||
// Note: make sure this is the last file loaded!
|
||||
|
||||
// USAGE:
|
||||
// var uri = URI("http://example.org/#!/foo/bar/baz.html");
|
||||
// var furi = uri.fragment(true);
|
||||
// furi.pathname() === '/foo/bar/baz.html';
|
||||
// furi.pathname('/hello.html');
|
||||
// uri.toString() === "http://example.org/#!/hello.html"
|
||||
|
||||
(function (root, factory) {
|
||||
'use strict';
|
||||
// https://github.com/umdjs/umd/blob/master/returnExports.js
|
||||
if (typeof module === 'object' && module.exports) {
|
||||
// Node
|
||||
module.exports = factory(require('./URI'));
|
||||
} else if (typeof define === 'function' && define.amd) {
|
||||
// AMD. Register as an anonymous module.
|
||||
define(['./URI'], factory);
|
||||
} else {
|
||||
// Browser globals (root is window)
|
||||
factory(root.URI);
|
||||
}
|
||||
}(this, function (URI) {
|
||||
'use strict';
|
||||
|
||||
var p = URI.prototype;
|
||||
// old handlers we need to wrap
|
||||
var f = p.fragment;
|
||||
var b = p.build;
|
||||
|
||||
// make fragmentPrefix configurable
|
||||
URI.fragmentPrefix = '!';
|
||||
var _parts = URI._parts;
|
||||
URI._parts = function() {
|
||||
var parts = _parts();
|
||||
parts.fragmentPrefix = URI.fragmentPrefix;
|
||||
return parts;
|
||||
};
|
||||
p.fragmentPrefix = function(v) {
|
||||
this._parts.fragmentPrefix = v;
|
||||
return this;
|
||||
};
|
||||
|
||||
// add fragment(true) and fragment(URI) signatures
|
||||
p.fragment = function(v, build) {
|
||||
var prefix = this._parts.fragmentPrefix;
|
||||
var fragment = this._parts.fragment || '';
|
||||
var furi;
|
||||
|
||||
if (v === true) {
|
||||
if (fragment.substring(0, prefix.length) !== prefix) {
|
||||
furi = URI('');
|
||||
} else {
|
||||
furi = new URI(fragment.substring(prefix.length));
|
||||
}
|
||||
|
||||
this._fragmentURI = furi;
|
||||
furi._parentURI = this;
|
||||
return furi;
|
||||
} else if (v !== undefined && typeof v !== 'string') {
|
||||
this._fragmentURI = v;
|
||||
v._parentURI = v;
|
||||
this._parts.fragment = prefix + v.toString();
|
||||
this.build(!build);
|
||||
return this;
|
||||
} else if (typeof v === 'string') {
|
||||
this._fragmentURI = undefined;
|
||||
}
|
||||
|
||||
return f.call(this, v, build);
|
||||
};
|
||||
|
||||
// make .build() of the actual URI aware of the FragmentURI
|
||||
p.build = function(deferBuild) {
|
||||
var t = b.call(this, deferBuild);
|
||||
|
||||
if (deferBuild !== false && this._parentURI) {
|
||||
// update the parent
|
||||
this._parentURI.fragment(this);
|
||||
}
|
||||
|
||||
return t;
|
||||
};
|
||||
|
||||
// extending existing object rather than defining something new
|
||||
return URI;
|
||||
}));
|
||||
Reference in New Issue
Block a user