vendor: 4,281 bytes, lines 1-142
1/*! js-cookie v3.0.5 | MIT */ 2; 3(function (global, factory) { 4 typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() : 5 typeof define === 'function' && define.amd ? define(factory) : 6 (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (function () { 7 var current = global.Cookies; 8 var exports = global.Cookies = factory(); 9 exports.noConflict = function () { global.Cookies = current; return exports; }; 10 })()); 11})(this, (function () { 'use strict'; 12 13 /* eslint-disable no-var */ 14 function assign (target) { 15 for (var i = 1; i < arguments.length; i++) { 16 var source = arguments[i]; 17 for (var key in source) { 18 target[key] = source[key]; 19 } 20 } 21 return target 22 } 23 /* eslint-enable no-var */ 24 25 /* eslint-disable no-var */ 26 var defaultConverter = { 27 read: function (value) { 28 if (value[0] === '"') { 29 value = value.slice(1, -1); 30 } 31 return value.replace(/(%[\dA-F]{2})+/gi, decodeURIComponent) 32 }, 33 write: function (value) { 34 return encodeURIComponent(value).replace( 35 /%(2[346BF]|3[AC-F]|40|5[BDE]|60|7[BCD])/g, 36 decodeURIComponent 37 ) 38 } 39 }; 40 /* eslint-enable no-var */ 41 42 /* eslint-disable no-var */ 43 44 function init (converter, defaultAttributes) { 45 function set (name, value, attributes) { 46 if (typeof document === 'undefined') { 47 return 48 } 49 50 attributes = assign({}, defaultAttributes, attributes); 51 52 if (typeof attributes.expires === 'number') { 53 attributes.expires = new Date(Date.now() + attributes.expires * 864e5); 54 } 55 if (attributes.expires) { 56 attributes.expires = attributes.expires.toUTCString(); 57 } 58 59 name = encodeURIComponent(name) 60 .replace(/%(2[346B]|5E|60|7C)/g, decodeURIComponent) 61 .replace(/[()]/g, escape); 62 63 var stringifiedAttributes = ''; 64 for (var attributeName in attributes) { 65 if (!attributes[attributeName]) { 66 continue 67 } 68 69 stringifiedAttributes += '; ' + attributeName; 70 71 if (attributes[attributeName] === true) { 72 continue 73 } 74 75 // Considers RFC 6265 section 5.2: 76 // ... 77 // 3. If the remaining unparsed-attributes contains a %x3B (";") 78 // character: 79 // Consume the characters of the unparsed-attributes up to, 80 // not including, the first %x3B (";") character. 81 // ... 82 stringifiedAttributes += '=' + attributes[attributeName].split(';')[0]; 83 } 84 85 return (document.cookie = 86 name + '=' + converter.write(value, name) + stringifiedAttributes) 87 } 88 89 function get (name) { 90 if (typeof document === 'undefined' || (arguments.length && !name)) { 91 return 92 } 93 94 // To prevent the for loop in the first place assign an empty array 95 // in case there are no cookies at all. 96 var cookies = document.cookie ? document.cookie.split('; ') : []; 97 var jar = {}; 98 for (var i = 0; i < cookies.length; i++) { 99 var parts = cookies[i].split('='); 100 var value = parts.slice(1).join('='); 101 102 try { 103 var found = decodeURIComponent(parts[0]); 104 jar[found] = converter.read(value, found); 105 106 if (name === found) { 107 break 108 } 109 } catch (e) {} 110 } 111 112 return name ? jar[name] : jar 113 } 114 115 return Object.create( 116 { 117 set, 118 get, 119 remove: function (name, attributes) { 120 set( 121 name, 122 '', 123 assign({}, attributes, { 124 expires: -1 125 }) 126 ); 127 }, 128 withAttributes: function (attributes) { 129 return init(this.converter, assign({}, this.attributes, attributes)) 130 }, 131 withConverter: function (converter) { 132 return init(assign({}, this.converter, converter), this.attributes) 133 } 134 }, 135 { 136 attributes: { value: Object.freeze(defaultAttributes) }, 137 converter: { value: Object.freeze(converter) } 138 } 139 ) 140 } 141 142 var api = init(defaultConverter, { path: '/' });
143 /* eslint-enable no-var */ 144 145 return api; 146 147}));
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.