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>