schunder-madre/web/core/misc/jquery.cookie.shim.js

99 lines
4.1 KiB
JavaScript

/**
* DO NOT EDIT THIS FILE.
* See the following change record for more information,
* https://www.drupal.org/node/2815083
* @preserve
**/
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
(function ($, Drupal, cookies) {
var deprecatedMessageSuffix = "is deprecated in Drupal 9.0.0 and will be removed in Drupal 10.0.0. Use the core/js-cookie library instead. See https://www.drupal.org/node/3104677";
var isFunction = function isFunction(obj) {
return Object.prototype.toString.call(obj) === '[object Function]';
};
var parseCookieValue = function parseCookieValue(value, parseJson) {
if (value.indexOf('"') === 0) {
value = value.slice(1, -1).replace(/\\"/g, '"').replace(/\\\\/g, '\\');
}
try {
value = decodeURIComponent(value.replace(/\+/g, ' '));
return parseJson ? JSON.parse(value) : value;
} catch (e) {}
};
var reader = function reader(cookieValue, cookieName, converter, readUnsanitized, parseJson) {
var value = readUnsanitized ? cookieValue : parseCookieValue(cookieValue, parseJson);
if (converter !== undefined && isFunction(converter)) {
return converter(value, cookieName);
}
return value;
};
$.cookie = function (key) {
var value = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : undefined;
var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : undefined;
Drupal.deprecationError({
message: "jQuery.cookie() ".concat(deprecatedMessageSuffix)
});
key = key && !$.cookie.raw ? encodeURIComponent(key) : key;
if (value !== undefined && !isFunction(value)) {
var attributes = _objectSpread(_objectSpread({}, $.cookie.defaults), options);
if (typeof attributes.expires === 'string' && attributes.expires !== '') {
attributes.expires = new Date(attributes.expires);
}
var cookieSetter = cookies.withConverter({
write: function write(cookieValue) {
return encodeURIComponent(cookieValue);
}
});
value = $.cookie.json && !$.cookie.raw ? JSON.stringify(value) : String(value);
return cookieSetter.set(key, value, attributes);
}
var userProvidedConverter = value;
var cookiesShim = cookies.withConverter({
read: function read(cookieValue, cookieName) {
return reader(cookieValue, cookieName, userProvidedConverter, $.cookie.raw, $.cookie.json);
}
});
if (key !== undefined) {
return cookiesShim.get(key);
}
var results = cookiesShim.get();
Object.keys(results).forEach(function (resultKey) {
if (results[resultKey] === undefined) {
delete results[resultKey];
}
});
return results;
};
$.cookie.defaults = _objectSpread({
path: ''
}, cookies.defaults);
$.cookie.json = false;
$.cookie.raw = false;
$.removeCookie = function (key, options) {
Drupal.deprecationError({
message: "jQuery.removeCookie() ".concat(deprecatedMessageSuffix)
});
cookies.remove(key, _objectSpread(_objectSpread({}, $.cookie.defaults), options));
return !cookies.get(key);
};
})(jQuery, Drupal, window.Cookies);