Before attempting this issue, review the code, try the feature, and understand the requirements. Attemptemt requires a detailed design proposal for the refactoring work. There’s no first come, first serve for this bounty; the maintenance team will select the best design proposal.
ATM, the login flow and select environment in Permit is written in a long spaghetti component that needs to be broken into the following pure components:
- Login flow (open browser or validate API key)
- Environment selection
- Select workspace
- Select project
- Select environment
- Store the key to the relevant environment in the keychain
The login flow should be kept as it is today. Start with the login flow and end with storing the API key from the selected environment.
Acceptance criteria:
- Login flow works the same way as it now, but with refactored, clean code
- Possible errors are handled with proper description
- Add e2e test for the flow (use mock for the API calls)
ATM, the login flow and select environment in Permit is written in a long spaghetti component that needs to be broken into the following pure components:
The login flow should be kept as it is today. Start with the login flow and end with storing the API key from the selected environment.
Acceptance criteria: