master
1---
2import { searchConfig } from '@/config';
3import { t } from '@utils/i18n';
4import Pagefind from './search/Pagefind.tsx';
5---
6
7<dialog id="search_modal" class="modal">
8 <div class="modal-box">
9 <form method="dialog">
10 <button
11 class="btn btn-circle btn-ghost btn-sm absolute top-2 right-2"
12 title={t.common.close()}
13 aria-label={t.common.close()}>✕</button
14 >
15 </form>
16 <div class="w-full p-4">
17 {
18 (() => {
19 switch (searchConfig.provider) {
20 case 'pagefind':
21 return <Pagefind client:visible inputId="search-input" />;
22 }
23 })()
24 }
25 </div>
26 <div class="relative mt-auto w-full shrink-0 pt-4 text-center">
27 Powered by {
28 (() => {
29 switch (searchConfig.provider) {
30 case 'pagefind':
31 return (
32 <a href="https://pagefind.app" target="_blank" class="text-primary">
33 Pagefind
34 </a>
35 );
36 }
37 })()
38 }
39 </div>
40 </div>
41 <form method="dialog" class="modal-backdrop">
42 <button>{t.common.close()}</button>
43 </form>
44</dialog>