Thomas Tracy aec97816fb fix: [MICROBA-1877] fix cancel button (#56)
The various form states were getting mixed up during error handling,
which lead to some strange situations where the cancel button was
appearing when it shouldnt have been. This PR centralizes all of the
form state changes into a useEffect hook to handle any and all state
changes throughout the form. This approach not only centralizes the
fragmented code, but prevents the state mixups that were happening
previously.

It also has the added benefit if down the line more state changes need
to be added, the changes are all happening in one place.
2022-07-25 15:02:02 -04:00
2021-12-03 11:33:31 -05:00
2021-12-03 11:33:31 -05:00
2021-12-03 11:33:31 -05:00
2021-12-03 11:33:31 -05:00
2021-12-03 11:33:31 -05:00
2021-12-03 11:33:31 -05:00
2021-12-03 11:33:31 -05:00
2021-12-03 11:33:31 -05:00
2021-12-03 11:33:31 -05:00
2021-12-03 11:33:31 -05:00
2021-12-03 11:33:31 -05:00
2022-02-24 14:30:16 -05:00
2021-12-03 11:33:31 -05:00

|Codecov| |license|

.. |codecov| image:: https://codecov.io/gh/edx/frontend-app-learning/branch/master/graph/badge.svg?token=3z7XvuzTq3
   :target: https://codecov.io/gh/edx/frontend-app-communications
.. |license| image:: https://img.shields.io/badge/license-AGPL-informational
   :target: https://github.com/edx/frontend-app-account/blob/master/LICENSE

frontend-app-communications
==============================

Please tag **edx-aperture** on any PRs or issues.  Thanks!

Introduction
------------

A tool used by course teams to communicate with thier learners. The interface for anything related to instructor to learner communications. Instructor bulk email, for example.


Getting started
------------

For now, this repo is not intergrated with devstack. You'll be running the app locally and not through docker. This does make setup a little easier.

1. Clone the repo into your usual workspace

   .. code-block::

      mkdir -p ~/workspace/
      cd ~/workspace/
      git clone https://github.com/edx/frontend-app-communications.git

2. Install frontend dependencies

   .. code-block::

      npm i

3. Start the devserver. The app will be running at ``localhost:1984``, or whatever port you change it too.

   .. code-block::

      npm start

Environment Variables/Setup Notes
---------------------------------

If you wish to add new environment varibles for local testing, they should be listed in 2 places:

1. In ``.env.development``
2. Added to the ``mergeConfig`` found in ``src/index.jsx``

.. code-block::

   initialize({
      config: () => {
       mergeConfig({
       EXAMPLE_VALUE: true,
       }, 'CommuncationsAppConfig');

Running Tests
---------------------------

Tests use `jest` and `react-test-library`. To run all the tests for this repo:

   .. code-block::

      npm test
Description
No description provided
Readme AGPL-3.0 6.4 MiB
Languages
JavaScript 98.1%
Makefile 1.1%
SCSS 0.5%
HTML 0.3%