diff options
author | Alan Pearce | 2024-05-07 17:33:06 +0200 |
---|---|---|
committer | Alan Pearce | 2024-05-07 17:36:06 +0200 |
commit | c15b142b18dcdc7f5ab6d5f1afca8ae1696692cc (patch) | |
tree | 6bda157426a7eb79e3299839eeb43230db99f206 /frontend | |
parent | 6c8c36b2c34bc375859230ddc13c5071274f60b4 (diff) | |
download | searchix-c15b142b18dcdc7f5ab6d5f1afca8ae1696692cc.tar.lz searchix-c15b142b18dcdc7f5ab6d5f1afca8ae1696692cc.tar.zst searchix-c15b142b18dcdc7f5ab6d5f1afca8ae1696692cc.zip |
feat: search one set of options
Diffstat (limited to 'frontend')
-rw-r--r-- | frontend/static/search.js | 7 | ||||
-rw-r--r-- | frontend/static/style.css | 4 | ||||
-rw-r--r-- | frontend/templates/blocks/options.gotmpl | 98 |
3 files changed, 60 insertions, 49 deletions
diff --git a/frontend/static/search.js b/frontend/static/search.js index 0388942..f034fe1 100644 --- a/frontend/static/search.js +++ b/frontend/static/search.js @@ -38,14 +38,14 @@ search.addEventListener("submit", function (ev) { fetch: "true", }, }) - .then(function (res) { + .then(async function (res) { state.url = url.toJSON(); state.opened = []; - history.pushState(state, null, url); if (res.ok) { + history.pushState(state, null, url); return res.text(); } else { - throw new Error(res.statusText); + throw new Error(`${res.status} ${res.statusText}: ${await res.text()}`); } }) .then(function (html) { @@ -54,6 +54,7 @@ search.addEventListener("submit", function (ev) { addToggleEventListeners(); }) .catch(function (error) { + results.innerText = error.message; console.error("fetch failed", error); }); ev.preventDefault(); diff --git a/frontend/static/style.css b/frontend/static/style.css index 45cff6a..fd096b0 100644 --- a/frontend/static/style.css +++ b/frontend/static/style.css @@ -21,6 +21,10 @@ dd { margin-inline-start: 1rem; } +dd > p { + margin: unset; +} + dl { display: grid; align-items: baseline; diff --git a/frontend/templates/blocks/options.gotmpl b/frontend/templates/blocks/options.gotmpl index f89a83d..2f9d88a 100644 --- a/frontend/templates/blocks/options.gotmpl +++ b/frontend/templates/blocks/options.gotmpl @@ -1,53 +1,59 @@ {{ template "results" . }} {{ define "results" }} - {{- range .Results }} - <details id="{{ .Option }}"> - <summary> - {{ .Option }} - </summary> - <p> - {{ markdown .Description }} - </p> - <dl> - {{- with .Type }} - <dt>Type</dt> - <dd><code>{{ . }}</code></dd> - {{- end }} - {{- with .Default }} - <dt>Default</dt> - <dd> - {{- if .Markdown }} - {{ .Markdown }} - {{- else }} - <pre><code>{{ .Text }}</code></pre> + {{- with .Results }} + {{- range .Results }} + <details id="{{ .Option }}"> + <summary> + {{ .Option }} + </summary> + <p> + {{ markdown .Description }} + </p> + <dl> + {{- with .Type }} + <dt>Type</dt> + <dd><code>{{ . }}</code></dd> + {{- end }} + {{- with .Default }} + {{- if or .Text .Markdown }} + <dt>Default</dt> + <dd> + {{- if .Markdown }} + {{ markdown .Markdown }} + {{- else }} + <pre><code>{{ .Text }}</code></pre> + {{- end }} + </dd> + {{- end }} + {{- end }} + {{- with .Example }} + {{- if or .Text .Markdown }} + <dt>Example</dt> + <dd> + {{- if .Markdown }} + {{ markdown .Markdown }} + {{- else }} + <pre><code>{{ .Text }}</code></pre> + {{- end }} + </dd> {{- end }} - </dd> - {{- end }} - {{- with .Example }} - {{- if or .Text .Markdown }} - <dt>Example</dt> - <dd> - {{- if .Markdown }} - {{ .Markdown }} - {{- else }} - <pre><code>{{ .Text }}</code></pre> - {{- end }} - </dd> {{- end }} - {{- end }} - {{- with .RelatedPackages }} - <dt>Related Packages</dt> - <dd>{{ . }}</dd> - {{- end }} - {{- with .Declarations }} - <dt>Declared</dt> - {{- range . }} - <dd> - <a href="{{ .URL }}">{{ .Name }}</a> - </dd> + {{- with .RelatedPackages }} + <dt>Related Packages</dt> + <dd>{{ . }}</dd> + {{- end }} + {{- with .Declarations }} + <dt>Declared</dt> + {{- range . }} + <dd> + <a href="{{ .URL }}">{{ .Name }}</a> + </dd> + {{- end }} {{- end }} - {{- end }} - </dl> - </details> + </dl> + </details> + {{- else }} + Nothing found + {{- end }} {{- end }} {{ end }} |