25 lines
691 B
JavaScript
25 lines
691 B
JavaScript
/**
|
|
* @file
|
|
* Parse inline JSON and initialize the drupalSettings global object.
|
|
*/
|
|
|
|
(function () {
|
|
// Use direct child elements to harden against XSS exploits when CSP is on.
|
|
const settingsElement = document.querySelector(
|
|
'head > script[type="application/json"][data-drupal-selector="drupal-settings-json"], body > script[type="application/json"][data-drupal-selector="drupal-settings-json"]',
|
|
);
|
|
|
|
/**
|
|
* Variable generated by Drupal with all the configuration created from PHP.
|
|
*
|
|
* @global
|
|
*
|
|
* @type {object}
|
|
*/
|
|
window.drupalSettings = {};
|
|
|
|
if (settingsElement !== null) {
|
|
window.drupalSettings = JSON.parse(settingsElement.textContent);
|
|
}
|
|
})();
|