forked from js-cookie/js-cookie
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathcookies.min.js
1 lines (1 loc) · 3.7 KB
/
cookies.min.js
1
var Cookies=function(){"use strict";var toString=function(obj){return Object.prototype.toString.call(obj)};var isNumber;var isNumber$1=isNumber=function(value){return toString(value)==="[object Number]"};var getOwnSymbols;var objectAssign;var shouldUseNative;var toObject;var slice=[].slice;getOwnSymbols=Object.getOwnPropertySymbols;toObject=function(val){if(val===null||val===void 0){throw new TypeError("Object.assign cannot be called with null or undefined")}return Object(val)};shouldUseNative=function(){var err,i,j,k,len,letter,order2,ref,test1,test2,test3;try{if(!Object.assign){return false}test1=new String("abc");test1[5]="de";if(Object.getOwnPropertyNames(test1)[0]==="5"){return false}test2={};for(i=j=0;j<=9;i=++j){test2["_"+String.fromCharCode(i)]=i}order2=Object.getOwnPropertyNames(test2).map(function(n){return test2[n]});if(order2.join("")!=="0123456789"){return false}test3={};ref="abcdefghijklmnopqrst".split("");for(k=0,len=ref.length;k<len;k++){letter=ref[k];test3[letter]=letter}if(Object.keys(Object.assign({},test3)).join("")!=="abcdefghijklmnopqrst"){return false}return true}catch(error){err=error;return false}};var index$1=objectAssign=function(){if(shouldUseNative()){return Object.assign}return function(){var from,j,k,key,len,len1,ref,source,sources,symbol,target,to;target=arguments[0],sources=2<=arguments.length?slice.call(arguments,1):[];to=toObject(target);for(j=0,len=sources.length;j<len;j++){source=sources[j];from=Object(source);for(key in from){if(Object.prototype.hasOwnProperty.call(from,key)){to[key]=from[key]}}if(getOwnSymbols){ref=getOwnSymbols(from);for(k=0,len1=ref.length;k<len1;k++){symbol=ref[k];if(Object.prototype.propIsEnumerable.call(from,symbol)){to[symbol]=from[symbol]}}}}return to}}();var Cookies;Cookies=function(){function Cookies(defaults){this.defaults=defaults!=null?defaults:{};this.get=function(_this){return function(key){return _this.read(key)}}(this);this.getJSON=function(_this){return function(key){var err;try{return JSON.parse(_this.read(key))}catch(error){err=error;return{}}}}(this);this.remove=function(_this){return function(key,attrs){return _this.write(key,"",index$1({expires:-1},attrs))}}(this);this.set=function(_this){return function(key,value,attrs){return _this.write(key,value,attrs)}}(this)}Cookies.prototype.read=function(key){var cookie,cookies,err,i,kv,len,name,parts,rdecode,result;if(!key){result={}}cookies=document.cookie?document.cookie.split("; "):[];rdecode=/(%[0-9A-Z]{2})+/g;for(i=0,len=cookies.length;i<len;i++){kv=cookies[i];parts=kv.split("=");cookie=parts.slice(1).join("=");if(cookie.charAt(0)==='"'){cookie=cookie.slice(1,-1)}try{name=parts[0].replace(rdecode,decodeURIComponent);cookie=cookie.replace(rdecode,decodeURIComponent);if(key===name){return cookie}if(!key){result[name]=cookie}}catch(error){err=error}}return result};Cookies.prototype.write=function(key,value,attrs){var attr,err,expires,name,result,strAttrs;attrs=index$1({path:"/"},this.defaults,attrs);if(isNumber$1(attrs.expires)){expires=new Date;expires.setMilliseconds(expires.getMilliseconds()+attrs.expires*864e5);attrs.expires=expires}attrs.expires=attrs.expires?attrs.expires.toUTCString():"";try{result=JSON.stringify(value);if(/^[\{\[]/.test(result)){value=result}}catch(error){err=error}value=encodeURIComponent(String(value)).replace(/%(23|24|26|2B|3A|3C|3E|3D|2F|3F|40|5B|5D|5E|60|7B|7D|7C)/g,decodeURIComponent);key=encodeURIComponent(String(key));key=key.replace(/%(23|24|26|2B|5E|60|7C)/g,decodeURIComponent);key=key.replace(/[\(\)]/g,escape);strAttrs="";for(name in attrs){attr=attrs[name];if(!attr){continue}strAttrs+="; "+name;if(attr===true){continue}strAttrs+="="+attr}return document.cookie=key+"="+value+strAttrs};return Cookies}();var Cookies$1=Cookies;var index=new Cookies$1;return index}();