summaryrefslogtreecommitdiff
path: root/src/components/templates/Search.astro
blob: 524564321da3b5ac0a611fd5d906c2f924630cd3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
---
const { site } = Astro;
---

<search>
  <link rel="dns-prefetch" href="https://www.google.com/search">
  <form
    action="https://www.google.com/search"
    target="_blank"
    rel="external noreferrer search"
    role="search"
    autocomplete="on"
    name="search"
  >
    <details>
      <summary>Pesquisar no website</summary>
      <div class="details">
        <p>
          <label>Barra de pesquisa <input
              name="q"
              type="search"
              placeholder={`site:${site} consulta de pesquisa`}
              value={`site:${site} `}
              required
              title={`"site:${site} " é usado para que os resultados da pesquisa fiquem restritos a este website`}
              pattern={`site:${site} .+`}
              size={`site:${site} .+`.length}
            /></label>
        </p>
        <p class="mute">
          <small>Esta pesquisa é efectuada pelo Google e <strong>utiliza
              software proprietário.</strong></small>
        </p>
        <p><button type="submit">🔍 Pesquisar</button></p>
      </div>
    </details>
  </form>
</search>

<style>
  search {
    padding-block-end: calc(var(--size-4) * 1em);
  }

  summary {
    font-size: calc(var(--size-3) * 1rem);
    font-weight: bolder;
  }

  .details {
    border-radius: calc(var(--size-1) * 1em);
    border: 1px solid var(--color-light);
    margin-block-start: calc(var(--size-1) * 1em);
    font-size: calc(var(--size-3) * 1rem);
    padding-inline: calc(var(--size-4) * 1em);
    padding-block: calc(var(--size-2) * 1em);

    & > p {
      margin-block: calc(var(--size-2) * 1em);
      line-height: calc(var(--size-8) * 1rem);
    }

    & input[type="search"] {
      width: 100%;
    }
  }
</style>