This repository has been archived by the owner on Dec 20, 2024. It is now read-only.
Pierre Havelaar: Frontend & Backend Technical Assesment #92
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Overview
Hi Everyone 👋
I know I was free to choose either the Frontend or Backend assessment, however I really wanted to do both!
Here is my Loom video with an introduction of myself, a FE demo and a FE code walkthrough. Since I added a FE demo the Loom ended up just over 5 mins.
https://www.loom.com/share/0ebbd1f242524e6c8889186cf55bc473
Frontend
Basic functionality
This PR contains the following components:
The modal will render a modal dialog inside a React portal outside the DOM for the page content. To display the modal the
show
property needs to be set totrue
. It is possible to disable the portal by setting thenoPortal
property.By default the Modal dialog will be animated when shown, you can disable this by setting
animation
tofalse
.Modals can be nested without issues and can be navigated with the keyboard. The Escape key will close the dialog, as well as clicking outside the Modal.
How to use
To use the modal component you will need to add the component where it is needed and you manage it's visibility state through a React state variable:
Quickstart
Frontend
Backend
Dependencies
Frontend
The frontend relies on
focus-trap-react
andtailwind-css
.Backend
On the backend I added
graphql-scalars
in order to handleDateTime
GraphQL schema