@codedoc/core
Version:
Create beautiful modern documentation websites.
35 lines • 1.61 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.tocHighlight$ = exports.tocHighlight = void 0;
var transport_1 = require("@connectv/sdh/transport");
var custom_event_1 = require("../../../transport/custom-event");
function tocHighlight() {
custom_event_1.polyfillCustomEvent();
var current$;
function highlightCurrentToCLink(url) {
var toc = document.getElementById('-codedoc-toc');
if (toc) {
var curr$_1;
toc.querySelectorAll('a').forEach(function (a$) {
if (a$.getAttribute('href') === url) {
if (!curr$_1)
curr$_1 = a$;
a$.classList.add('current');
}
else
a$.classList.remove('current');
});
if (curr$_1) {
if (curr$_1 !== current$)
current$ === null || current$ === void 0 ? void 0 : current$.dispatchEvent(new CustomEvent('collapse-close', { bubbles: true }));
curr$_1.dispatchEvent(new CustomEvent('collapse-open', { bubbles: true }));
current$ = curr$_1;
}
}
}
transport_1.onReady(function () { return setTimeout(function () { return highlightCurrentToCLink(location.pathname); }, 200); });
window.addEventListener('navigation-start', function (event) { return highlightCurrentToCLink(event.detail.url); });
}
exports.tocHighlight = tocHighlight;
exports.tocHighlight$ = transport_1.funcTransport(tocHighlight);
//# sourceMappingURL=toc-highlight.js.map