1var Drawer = { 2 open: function (key) { 3 document.querySelector('#drawer').dataset.type = key; 4 MovimTpl.pushAnchorState(key, function () { Drawer.clear(key) }); 5 }, 6 filled: function () { 7 return (document.querySelector('#drawer').innerHTML != ''); 8 }, 9 hasTabs: function () { 10 return Drawer.filled() 11 && document.querySelector('#drawer').contains(document.querySelector('#navtabs')); 12 }, 13 clear: function (key) { 14 if (key && document.querySelector('#drawer').dataset.type == key) { 15 Drawer_ajaxClear(); 16 return; 17 } 18 19 if (key == undefined) { 20 MovimTpl.clearAnchorState(); 21 Drawer_ajaxClear(); 22 } 23 } 24} 25 26if (typeof MovimWebsocket != 'undefined') { 27 MovimWebsocket.initiate(() => document.querySelector('#drawer').innerHTML = ''); 28} 29 30MovimEvents.registerBody('click', 'drawer', (e) => { 31 if (Drawer.filled() 32 && document.querySelector('body') == e.target) { 33 e.stopPropagation(); 34 history.back(); 35 } 36}); 37 38MovimEvents.registerBody('keydown', 'drawer', (e) => { 39 if (Drawer.filled() 40 && e.key == 'Escape') { 41 history.back(); 42 } 43});
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.