Spaces:
Sleeping
Sleeping
/** | |
* DO NOT EDIT THIS FILE. | |
* See the following change record for more information, | |
* https://www.drupal.org/node/2815083 | |
* @preserve | |
**/ | |
window.Drupal = { | |
behaviors: {}, | |
locale: {} | |
}; | |
(function (Drupal, drupalSettings, drupalTranslations, console, Proxy, Reflect) { | |
Drupal.throwError = function (error) { | |
setTimeout(function () { | |
throw error; | |
}, 0); | |
}; | |
Drupal.attachBehaviors = function (context, settings) { | |
context = context || document; | |
settings = settings || drupalSettings; | |
var behaviors = Drupal.behaviors; | |
Object.keys(behaviors || {}).forEach(function (i) { | |
if (typeof behaviors[i].attach === 'function') { | |
try { | |
behaviors[i].attach(context, settings); | |
} catch (e) { | |
Drupal.throwError(e); | |
} | |
} | |
}); | |
}; | |
Drupal.detachBehaviors = function (context, settings, trigger) { | |
context = context || document; | |
settings = settings || drupalSettings; | |
trigger = trigger || 'unload'; | |
var behaviors = Drupal.behaviors; | |
Object.keys(behaviors || {}).forEach(function (i) { | |
if (typeof behaviors[i].detach === 'function') { | |
try { | |
behaviors[i].detach(context, settings, trigger); | |
} catch (e) { | |
Drupal.throwError(e); | |
} | |
} | |
}); | |
}; | |
Drupal.checkPlain = function (str) { | |
str = str.toString().replace(/&/g, '&').replace(/</g, '<').replace(/>/g, '>').replace(/"/g, '"').replace(/'/g, '''); | |
return str; | |
}; | |
Drupal.formatString = function (str, args) { | |
var processedArgs = {}; | |
Object.keys(args || {}).forEach(function (key) { | |
switch (key.charAt(0)) { | |
case '@': | |
processedArgs[key] = Drupal.checkPlain(args[key]); | |
break; | |
case '!': | |
processedArgs[key] = args[key]; | |
break; | |
default: | |
processedArgs[key] = Drupal.theme('placeholder', args[key]); | |
break; | |
} | |
}); | |
return Drupal.stringReplace(str, processedArgs, null); | |
}; | |
Drupal.stringReplace = function (str, args, keys) { | |
if (str.length === 0) { | |
return str; | |
} | |
if (!Array.isArray(keys)) { | |
keys = Object.keys(args || {}); | |
keys.sort(function (a, b) { | |
return a.length - b.length; | |
}); | |
} | |
if (keys.length === 0) { | |
return str; | |
} | |
var key = keys.pop(); | |
var fragments = str.split(key); | |
if (keys.length) { | |
for (var i = 0; i < fragments.length; i++) { | |
fragments[i] = Drupal.stringReplace(fragments[i], args, keys.slice(0)); | |
} | |
} | |
return fragments.join(args[key]); | |
}; | |
Drupal.t = function (str, args, options) { | |
options = options || {}; | |
options.context = options.context || ''; | |
if (typeof drupalTranslations !== 'undefined' && drupalTranslations.strings && drupalTranslations.strings[options.context] && drupalTranslations.strings[options.context][str]) { | |
str = drupalTranslations.strings[options.context][str]; | |
} | |
if (args) { | |
str = Drupal.formatString(str, args); | |
} | |
return str; | |
}; | |
Drupal.url = function (path) { | |
return drupalSettings.path.baseUrl + drupalSettings.path.pathPrefix + path; | |
}; | |
Drupal.url.toAbsolute = function (url) { | |
var urlParsingNode = document.createElement('a'); | |
try { | |
url = decodeURIComponent(url); | |
} catch (e) {} | |
urlParsingNode.setAttribute('href', url); | |
return urlParsingNode.cloneNode(false).href; | |
}; | |
Drupal.url.isLocal = function (url) { | |
var absoluteUrl = Drupal.url.toAbsolute(url); | |
var protocol = window.location.protocol; | |
if (protocol === 'http:' && absoluteUrl.indexOf('https:') === 0) { | |
protocol = 'https:'; | |
} | |
var baseUrl = "".concat(protocol, "//").concat(window.location.host).concat(drupalSettings.path.baseUrl.slice(0, -1)); | |
try { | |
absoluteUrl = decodeURIComponent(absoluteUrl); | |
} catch (e) {} | |
try { | |
baseUrl = decodeURIComponent(baseUrl); | |
} catch (e) {} | |
return absoluteUrl === baseUrl || absoluteUrl.indexOf("".concat(baseUrl, "/")) === 0; | |
}; | |
Drupal.formatPlural = function (count, singular, plural, args, options) { | |
args = args || {}; | |
args['@count'] = count; | |
var pluralDelimiter = drupalSettings.pluralDelimiter; | |
var translations = Drupal.t(singular + pluralDelimiter + plural, args, options).split(pluralDelimiter); | |
var index = 0; | |
if (typeof drupalTranslations !== 'undefined' && drupalTranslations.pluralFormula) { | |
index = count in drupalTranslations.pluralFormula ? drupalTranslations.pluralFormula[count] : drupalTranslations.pluralFormula.default; | |
} else if (args['@count'] !== 1) { | |
index = 1; | |
} | |
return translations[index]; | |
}; | |
Drupal.encodePath = function (item) { | |
return window.encodeURIComponent(item).replace(/%2F/g, '/'); | |
}; | |
Drupal.deprecationError = function (_ref) { | |
var message = _ref.message; | |
if (drupalSettings.suppressDeprecationErrors === false && typeof console !== 'undefined' && console.warn) { | |
console.warn("[Deprecation] ".concat(message)); | |
} | |
}; | |
Drupal.deprecatedProperty = function (_ref2) { | |
var target = _ref2.target, | |
deprecatedProperty = _ref2.deprecatedProperty, | |
message = _ref2.message; | |
if (!Proxy || !Reflect) { | |
return target; | |
} | |
return new Proxy(target, { | |
get: function get(target, key) { | |
if (key === deprecatedProperty) { | |
Drupal.deprecationError({ | |
message: message | |
}); | |
} | |
for (var _len = arguments.length, rest = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) { | |
rest[_key - 2] = arguments[_key]; | |
} | |
return Reflect.get.apply(Reflect, [target, key].concat(rest)); | |
} | |
}); | |
}; | |
Drupal.theme = function (func) { | |
if (func in Drupal.theme) { | |
var _Drupal$theme; | |
for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) { | |
args[_key2 - 1] = arguments[_key2]; | |
} | |
return (_Drupal$theme = Drupal.theme)[func].apply(_Drupal$theme, args); | |
} | |
}; | |
Drupal.theme.placeholder = function (str) { | |
return "<em class=\"placeholder\">".concat(Drupal.checkPlain(str), "</em>"); | |
}; | |
})(Drupal, window.drupalSettings, window.drupalTranslations, window.console, window.Proxy, window.Reflect); |