Files
searxng/client/simple/src/less/index.less
Ivan Gabaldon fb089ae297 [mod] client/simple: client plugins (#5406)
* [mod] client/simple: client plugins

Defines a new interface for client side *"plugins"* that coexist with server
side plugin system. Each plugin (e.g., `InfiniteScroll`) extends the base
`ts Plugin`. Client side plugins are independent and lazy‑loaded via `router.ts`
when their `load()` conditions are met. On each navigation request, all
applicable plugins are instanced.

Since these are client side plugins, we can only invoke them once DOM is fully
loaded. E.g. `Calculator` will not render a new `answer` block until fully
loaded and executed.

For some plugins, we might want to handle its availability in `settings.yml`
and toggle in UI, like we do for server side plugins. In that case, we extend
`py Plugin` instancing only the information and then checking client side if
[`settings.plugins`](1ad832b1dc/client/simple/src/js/toolkit.ts (L134))
array has the plugin id.

* [mod] client/simple: rebuild static
2025-12-02 10:18:00 +00:00

54 lines
778 B
Plaintext

// SPDX-License-Identifier: AGPL-3.0-or-later
#main_index {
margin-top: 26vh;
}
.index {
text-align: center;
.title {
background: url("./img/searxng.png") no-repeat;
min-height: 4rem;
margin: 4rem auto;
background-position: center;
background-size: contain;
}
h1 {
font-size: 4em;
visibility: hidden;
}
#search,
#search_header {
margin: 0 auto;
background: inherit;
border: inherit;
padding: 0;
display: block;
}
.search_filters {
display: block;
margin: 1em 0;
}
.category label {
padding: 6px 10px;
border-bottom: initial !important;
}
}
@media screen and (max-width: @tablet) {
div.title {
h1 {
font-size: 1em;
}
}
#main_index {
margin-top: 6em;
}
}