Thomas Tracy ffa0361c22 feat: [MICROBA-1506] bulkEmailTool data context (#39)
Currently, our bulk email tool in concept looks something like this:
- BulkEmailTool
	- BulkEmailForm
	- BulkEmailTaskManager

Right now, the two components under the parent BulkEmailTool dont really
need to communicate with each other. For scheduled email, these two
components are going to be relying on the same data, and there need to
be provided that data by the parent. In order to make things more
manageable, this PR sets up some boilerplate and patterning for this
data. What this PR will include:
- Documentation around the pattern
- Necessary boilerplate to leverage the context store for the
  BulkEmailTool
- Tests around said store

What this PR will not include:
- Changes to the UI or form functionality
2022-05-16 11:43:04 -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
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%