UNPKG

@codedoc/core

Version:

Create beautiful modern documentation websites.

53 lines 2.4 kB
"use strict"; 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