1(function () { 2 var storageKey = 'trueform-text-size'; 3 var sizes = ['default', 'large', 'xlarge']; 4 5 function setSize(size) { 6 var root = document.documentElement; 7 8 root.classList.remove('tf-text-large', 'tf-text-xlarge'); 9 10 if (size === 'large') { 11 root.classList.add('tf-text-large'); 12 } 13 14 if (size === 'xlarge') { 15 root.classList.add('tf-text-xlarge'); 16 } 17 18 localStorage.setItem(storageKey, size); 19 20 var buttons = document.querySelectorAll('[data-text-size]'); 21 for (var i = 0; i < buttons.length; i++) { 22 var button = buttons[i]; 23 button.setAttribute( 24 'aria-pressed', 25 (size === 'default' && button.getAttribute('data-text-size') === 'reset') || 26 (size === 'large' && button.getAttribute('data-text-size') === 'increase') || 27 (size === 'xlarge' && button.getAttribute('data-text-size') === 'increase') 28 ? 'true' 29 : 'false' 30 ); 31 } 32 } 33 34 var savedSize = localStorage.getItem(storageKey); 35 if (sizes.indexOf(savedSize) !== -1) { 36 setSize(savedSize); 37 } 38 39 document.addEventListener('DOMContentLoaded', function () { 40 var buttons = document.querySelectorAll('[data-text-size]'); 41 42var toggle = document.querySelector('.text-size-switcher__toggle'); 43var options = document.querySelector('.text-size-switcher__options'); 44 45toggle.addEventListener('click', function () { 46 var isOpen = toggle.getAttribute('aria-expanded') === 'true'; 47 48 toggle.setAttribute('aria-expanded', String(!isOpen)); 49 options.hidden = isOpen; 50}); 51 52 53 54 for (var i = 0; i < buttons.length; i++) { 55 buttons[i].addEventListener('click', function () { 56 var action = this.getAttribute('data-text-size'); 57 var currentSize = localStorage.getItem(storageKey) || 'default'; 58 var currentIndex = sizes.indexOf(currentSize); 59 60 if (action === 'increase') { 61 setSize(sizes[Math.min(currentIndex + 1, sizes.length - 1)]); 62 } 63 64 if (action === 'decrease') { 65 setSize(sizes[Math.max(currentIndex - 1, 0)]); 66 } 67 68 if (action === 'reset') { 69 setSize('default'); 70 } 71 }); 72 } 73 }); 74}());
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.