CSCfi / CSCfi/rems

Refactor collapsible animation

Open
#2,961 0 comments 0 reactions 0 assignees View on GitHub
Investigate Technical Debt
Dominant language
Clojure
Stars
66
Forks
28
Avg merge
7d 4h
Merged PRs (30d)
2

Description

> This kind of duplicates what was previously handled by the classes/ids. Would be good to refactor this into the atom completely (with CSS animation for opening/closing). Doesn't have to happen now, but we can make sure we have an issue for it.

_Originally posted by @Macroz in https://github.com/CSCfi/rems/pull/2951#discussion_r891175261_

---

Currently `rems.collapsible/block` is using Bootstrap collapse via Javascript API (https://getbootstrap.com/docs/4.1/components/collapse/#via-javascript).

#2951 introduces atom-based state for tracking internal show/hide state that toggles between "hideable collapsed" and "hideable expanded" content. Bootstrap uses jQuery and Javascript to handle dynamic element animation, which maybe needs to be re-created if the functionality is refactored into the atom.

Contributor guide

Open the contributing guide

Research direction

Start by reading the rems.collapsible/block implementation and the atom-based state introduced in #2951, then review Bootstrap's collapse behavior. Done means the collapsible opening and closing animation is handled by the atom and CSS rather than Bootstrap's JavaScript API and jQuery, while retaining the hideable collapsed and expanded states.

Written by the indexing model from the issue text.

Assessment

Tech stack
bootstrap, clojure, javascript, jquery
Domain
frontend
Issue type
Refactor
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.