A publishing tool that dynamically creates IDs based on the value of that heading, id="exports"
A browser takes this heading and creates a global variable, window.exports returns the HTML element
The line typeof exports !== 'undefined' ? exports : Hogan now returns an HTML element and Hogan doesn't start properly
var Hogan = {};
(function(Hogan) {
// The value of Hogan at this point is the HTML element
// <h2 id="exports">Exports</h2>
})(typeof exports !== 'undefined' ? exports : Hogan);
Consider the following:
id="exports"
window.exports
returns the HTML elementtypeof exports !== 'undefined' ? exports : Hogan
now returns an HTML element and Hogan doesn't start properlyThis is what happened on GOV.UK on articles with content that refers to "Exports". This was one of the affected pages: https://www.gov.uk/government/publications/notice-143-a-guide-for-international-post-users/notice-143-a-guide-for-international-post-users#exports
Here's the hot fix that was applied: https://github.com/alphagov/shared_mustache/pull/8