72 lines
2.8 KiB
JavaScript
72 lines
2.8 KiB
JavaScript
/*!
|
|
* JavaScript Cookie v2.0.4
|
|
* https://github.com/js-cookie/js-cookie
|
|
*
|
|
* Copyright 2006, 2015 Klaus Hartl & Fagner Brack
|
|
* Released under the MIT license
|
|
*/
|
|
! function(e) {
|
|
if ("function" == typeof define && define.amd) define(e);
|
|
else if ("object" == typeof exports) module.exports = e();
|
|
else {
|
|
var n = window.Cookies,
|
|
t = window.Cookies = e();
|
|
t.noConflict = function() {
|
|
return window.Cookies = n, t
|
|
}
|
|
}
|
|
}(function() {
|
|
function e() {
|
|
for (var e = 0, n = {}; e < arguments.length; e++) {
|
|
var t = arguments[e];
|
|
for (var o in t) n[o] = t[o]
|
|
}
|
|
return n
|
|
}
|
|
|
|
function n(t) {
|
|
function o(n, r, i) {
|
|
var c;
|
|
if (arguments.length > 1) {
|
|
if (i = e({
|
|
path: "/"
|
|
}, o.defaults, i), "number" == typeof i.expires) {
|
|
var s = new Date;
|
|
s.setMilliseconds(s.getMilliseconds() + 864e5 * i.expires), i.expires = s
|
|
}
|
|
try {
|
|
c = JSON.stringify(r), /^[\{\[]/.test(c) && (r = c)
|
|
} catch (a) {}
|
|
return r = encodeURIComponent(String(r)), r = r.replace(/%(23|24|26|2B|3A|3C|3E|3D|2F|3F|40|5B|5D|5E|60|7B|7D|7C)/g, decodeURIComponent), n = encodeURIComponent(String(n)), n = n.replace(/%(23|24|26|2B|5E|60|7C)/g, decodeURIComponent), n = n.replace(/[\(\)]/g, escape), document.cookie = [n, "=", r, i.expires && "; expires=" + i.expires.toUTCString(), i.path && "; path=" + i.path, i.domain && "; domain=" + i.domain, i.secure ? "; secure" : ""].join("")
|
|
}
|
|
n || (c = {});
|
|
for (var p = document.cookie ? document.cookie.split("; ") : [], u = /(%[0-9A-Z]{2})+/g, d = 0; d < p.length; d++) {
|
|
var f = p[d].split("="),
|
|
l = f[0].replace(u, decodeURIComponent),
|
|
m = f.slice(1).join("=");
|
|
'"' === m.charAt(0) && (m = m.slice(1, -1));
|
|
try {
|
|
if (m = t && t(m, l) || m.replace(u, decodeURIComponent), this.json) try {
|
|
m = JSON.parse(m)
|
|
} catch (a) {}
|
|
if (n === l) {
|
|
c = m;
|
|
break
|
|
}
|
|
n || (c[l] = m)
|
|
} catch (a) {}
|
|
}
|
|
return c
|
|
}
|
|
return o.get = o.set = o, o.getJSON = function() {
|
|
return o.apply({
|
|
json: !0
|
|
}, [].slice.call(arguments))
|
|
}, o.defaults = {}, o.remove = function(n, t) {
|
|
o(n, "", e(t, {
|
|
expires: -1
|
|
}))
|
|
}, o.withConverter = n, o
|
|
}
|
|
return n()
|
|
}); |