@codedoc/core
Version:
Create beautiful modern documentation websites.
53 lines • 2.4 kB
JavaScript
;
var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
return cooked;
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.ToCToggle$ = exports.ToCToggle = void 0;
var core_1 = require("@connectv/core");
var html_1 = require("@connectv/html");
var transport_1 = require("@connectv/sdh/transport");
var style_1 = require("./style");
function ToCToggle(_, renderer) {
var classes = this.theme.classes(style_1.ToCToggleStyle);
var holder = html_1.ref();
var active = core_1.state(false);
this.track({
bind: function () {
var el = document.getElementById('-codedoc-toc');
if (el) {
holder.resolve(el);
if (localStorage.getItem('-codedoc-toc-active') === 'true') {
active.value = true;
}
setTimeout(function () { return el.classList.add('animated'); }, 1);
}
window.codedocToggleToC = function (v) {
if (v !== undefined)
active.value = v;
else
active.value = !active.value;
};
}
});
this.track(active.to(core_1.sink(function (active) {
if (holder.resolved) {
if (active)
holder.$.classList.add('active');
else
holder.$.classList.remove('active');
}
localStorage.setItem('-codedoc-toc-active', active === true ? 'true' : 'false');
})));
return renderer.create("div", { class: html_1.rl(templateObject_1 || (templateObject_1 = __makeTemplateObject(["", " ", ""], ["", " ", ""])), classes.tocToggle, html_1.toggleList({ active: active })), onclick: function () { return active.value = !active.value; } },
renderer.create("div", { class: classes.bar }),
renderer.create("div", { class: classes.bar }),
renderer.create("div", { class: classes.bar }));
}
exports.ToCToggle = ToCToggle;
exports.ToCToggle$ = transport_1.transport(ToCToggle);
var style_2 = require("./style");
Object.defineProperty(exports, "ToCToggleStyle", { enumerable: true, get: function () { return style_2.ToCToggleStyle; } });
var templateObject_1;
//# sourceMappingURL=index.js.map