UNPKG

@codedoc/core

Version:

Create beautiful modern documentation websites.

31 lines 1.36 kB
import { source } from '@connectv/core'; import { ref } from '@connectv/html'; import { ToCSearchBtnStyle } from './style'; import { ToCSearchOverlay } from '../overlay'; export function ToCSearchBtn(options, renderer) { const classes = this.theme.classes(ToCSearchBtnStyle); const results = this.expose.in('results'); const query = this.expose.out('query', source()); const holder = ref(); const keyhandler = (event) => { if (event.key === 'f' && (event.ctrlKey || event.metaKey)) { event.preventDefault(); holder.$.click(); } }; this.track({ bind() { document.addEventListener('keydown', keyhandler); }, clear() { document.removeEventListener('keydown', keyhandler); } }); return renderer.create("div", { _ref: holder, class: classes.holder, id: "-codedoc-search-btn", onclick: () => { renderer.render(renderer.create(ToCSearchOverlay, { placeholder: options.label || 'Search the docs...', query: (q) => query.send(q), results: results })).on(document.body); } }, renderer.create("span", { class: "label" }, options.label || 'Search the docs...'), renderer.create("span", { class: "icon-font" }, "search")); } export { ToCSearchBtnStyle } from './style'; //# sourceMappingURL=index.js.map