[FEAT] folding results for repo search (#4134)

closes #3855

unlike #3854, this implementation uses a generic details html tag and a bit of tailwind magic...

---
## Maintainers Note
- previously tailwind classes of the form `[-a-zA-Z:0-9_.]` was disabled, however they were enabled since they were required for the `group-open:` classes

---

## Manual Testing
1. Visit the code search results after submitting a valid query for repo (if indexer disabled) or repo, user, explore (if indexer enabled)
2. Verify thst
    1. the results are unfloded/open by default
    2. the chevron points down when open and right when closed

<video src="/attachments/5a55c56f-6159-4422-ab80-962e0121e7d2" title="fold2.mp4" controls></video>

Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/4134
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org>
Reviewed-by: Beowulf <beowulf@noreply.codeberg.org>
Co-authored-by: Shiny Nematoda <snematoda.751k2@aleeas.com>
Co-committed-by: Shiny Nematoda <snematoda.751k2@aleeas.com>
This commit is contained in:
Shiny Nematoda 2024-06-15 20:16:18 +00:00 committed by Earl Warren
parent 291e145ac5
commit 53d4e90411
4 changed files with 38 additions and 18 deletions

View file

@ -44,8 +44,6 @@ export default {
'backdrop-filter',
// we use double-class tw-hidden defined in web_src/css/helpers.css for increased specificity
'hidden',
// unneeded classes
'[-a-zA-Z:0-9_.]',
],
theme: {
colors: {
@ -100,6 +98,22 @@ export default {
},
},
plugins: [
plugin(({addUtilities}) => {
// base veriables required for tranform utilities
// added as utilities since base is not imported
// note: required when using tailwind's transform classes
addUtilities({
'.transform-reset': {
'--tw-translate-x': 0,
'--tw-translate-y': 0,
'--tw-rotate': 0,
'--tw-skew-x': 0,
'--tw-skew-y': 0,
'--tw-scale-x': '1',
'--tw-scale-y': '1',
},
});
}),
plugin(({addUtilities}) => {
addUtilities({
// tw-hidden must win all other "display: xxx !important" classes to get the chance to "hide" an element.