NorwichHackSpace / pheasant

Pre Hospital Emergency App Site and Network
1 stars 0 forks source link

feature: Responsive gridView #2

Open tobycatlin opened 3 years ago

tobycatlin commented 3 years ago

Information display is a key feature of the app and so require a flexible display panel that can show an arrangement of tiles of different sizes. This is the common UI paradigm of a admin or info dashboard

After looking into a few components, React-Grid-Layout seems popular for building dashboard layouts. Example: https://strml.github.io/react-grid-layout/examples/6-dynamic-add-remove.html

percz commented 3 years ago

Commit a49cc3e brings in a few back-end improvements to the default dashboard. The UI still needs tidying up as part of general theme management.

Mostly some of the tiles/cards have optional drag and remove icons. The layout state also gets saved to local storage, and the user can click a 'reset' button to restore the layout state to a coded default.

components/ResponsiveGrid/ResponsiveGrid.js contains a commented out console.log(layouts); line that is useful for viewing the current layout object, which can then be hardcoded. It seems likely that having an admin-only 'save as default layout' type option will be handy once the app has a server database -

Serialise state to & from remote storage

There is also still a missing option, to either add non-default or restore removed cards.

percz commented 3 years ago

An with the [non] theming of the LocationCards has been resolved by 566b83f.

Related material: https://material-ui.com/styles/basics/#hookapi https://stackoverflow.com/questions/56554586/how-to-use-usestyle-to-style-class-component-in-material-ui

percz commented 3 years ago

Progress blocked by #5