gitea/modules/templates
silverwind 36887ed392
Fix and rewrite contrast color calculation, fix project-related bugs ()
1. The previous color contrast calculation function was incorrect at
least for the `#84b6eb` where it output low-contrast white instead of
black. I've rewritten these functions now to accept hex colors and to
match GitHub's calculation and to output pure white/black for maximum
contrast. Before and after:
<img width="94" alt="Screenshot 2024-04-02 at 01 53 46"
src="https://github.com/go-gitea/gitea/assets/115237/00b39e15-a377-4458-95cf-ceec74b78228"><img
width="90" alt="Screenshot 2024-04-02 at 01 51 30"
src="https://github.com/go-gitea/gitea/assets/115237/1677067a-8d8f-47eb-82c0-76330deeb775">

2. Fix project-related issues:

- Expose the new `ContrastColor` function as template helper and use it
for project cards, replacing the previous JS solution which eliminates a
flash of wrong color on page load.
- Fix a bug where if editing a project title, the counter would get
lost.
- Move `rgbToHex` function to color utils.

@HesterG fyi

---------

Co-authored-by: delvh <dev.lh@web.de>
Co-authored-by: Giteabot <teabot@gitea.io>
..
eval Use a general Eval function for expressions in templates. ()
scopedtmpl Replace `interface{}` with `any` ()
vars Implement FSFE REUSE for golang files ()
base.go Replace `util.SliceXxx` with `slices.Xxx` ()
dynamic.go Use a general approach to access custom/static/builtin assets ()
helper.go Fix and rewrite contrast color calculation, fix project-related bugs ()
helper_test.go Remove unnecessary SanitizeHTML from code ()
htmlrenderer.go Upgrade to golangci-lint@v1.55.0 ()
htmlrenderer_test.go Show friendly 500 error page to users and developers ()
mailer.go Breaking summary for template refactoring ()
static.go Use a general approach to access custom/static/builtin assets ()
templates_bindata.go Implement FSFE REUSE for golang files ()
util_avatar.go Fix default avatar image size in PR diff page ()
util_dict.go Use `Set[Type]` instead of `map[Type]bool/struct{}`. ()
util_json.go Improve template helper ()
util_misc.go Improve feed icons and feed merge text color ()
util_render.go Fix and rewrite contrast color calculation, fix project-related bugs ()
util_render_test.go Use relative links for commits, mentions, and issues in markdown ()
util_slice.go Improve template helper functions: string/slice ()
util_string.go Refactor some Str2html code ()
util_test.go Improve template helper functions: string/slice ()