Implemented phase 6 for the POC prototype in the Website service.

This commit is contained in:
javier committed 2026-09-21 13:53:13 +02:00
1 parent 256d22df40
commit f2f445827b
40 files changed
+1906 -37

No files matched your search

@@ -137,16 +137,27 @@ extension SearchPage: Page {
if listings.isEmpty {
div(.class("empty")) {
h2(.class("type-panel")) {
"No listings match"
parameters.value(.query).map { "Nothing for “\($0)”" } ?? "No listings match"
}
p(.class("type-body-sm")) {
"Try fewer filters, or let listings ship from anywhere."
"Nothing listed meets that right now. Clear the filters — listings outside the EU are left out by default — or ask to be told when a copy appears."
}
a(
.class("button button--outline"),
.href(SearchParameters().setting(.shipsFrom, to: "anywhere").path(Self.path))
) {
"Clear all filters"
div(.class("empty__actions")) {
if let query = parameters.value(.query) {
a(
.class("button button--primary"),
.href(.Route.newWant(title: query))
) {
Icon(.bell, size: 16)
"Alert me"
}
}
a(
.class("button button--outline"),
.href(SearchParameters().setting(.shipsFrom, to: "anywhere").path(Self.path))
) {
"Clear all filters"
}
}
}
} else {
@@ -268,6 +279,7 @@ private extension SearchPage {
span(.class("type-small")) {
"Outside the EU, import VAT may apply."
}
checkbox(.pickup, value: parameters.value(.pickup) ?? SearchParameters.anyEvent, label: "Pickup at an event")
}
group("Key issues") {
checkbox(.keys, value: "1", label: "Key issues only")