import path from 'path'; import { getSVGNode } from '../utils/getSVGNode.mjs'; const ICONS_SEARCH_PATH = path.resolve(process.cwd(), 'scripts/assets/search.svg'); export function search({ homePath = '', isHome } = {}) { const relativePath = homePath.replace(/\/?index.html$/, isHome ? '' : '/'); const fuseJSUrl = relativePath + 'js/fuse.min.js'; const manJSUrl = relativePath + 'js/main.js'; const dataJSUrl = relativePath + 'data.js'; const svgSearchNode = getSVGNode(ICONS_SEARCH_PATH); return [ { type: 'element', tagName: 'script', properties: { src: dataJSUrl, defer: true, }, }, { type: 'element', tagName: 'script', properties: { src: fuseJSUrl, defer: true, }, }, { type: 'element', tagName: 'script', properties: { src: manJSUrl, defer: true, }, }, { type: 'element', tagName: 'div', properties: { id: 'mysearch', }, children: [ { type: 'element', tagName: 'div', properties: { class: ['mysearch-box'], }, children: [ { type: 'element', tagName: 'div', properties: { class: ['mysearch-input'] }, children: [ { type: 'element', tagName: 'div', properties: {}, children: [ ...svgSearchNode, { type: 'element', tagName: 'input', properties: { id: ['mysearch-input'], type: 'search', placeholder: '搜索备忘清单', autocomplete: 'off', }, children: [], }, { type: 'element', tagName: 'div', properties: { class: ['mysearch-clear'] }, }, ], }, { type: 'element', tagName: 'button', properties: { id: ['mysearch-close'], type: 'button' }, children: [{ type: 'text', value: '取消' }], }, ], }, { type: 'element', tagName: 'div', properties: { class: ['mysearch-result'] }, children: [ { type: 'element', tagName: 'div', properties: { id: 'mysearch-menu' }, children: [], }, { type: 'element', tagName: 'div', properties: { id: 'mysearch-content' }, children: [], }, ], }, ], }, ], }, ]; }