typhoon-common-store
Contains the Redux store related functions for the Typhoon system.
Actions
Account Actions
Handles the logging in, registration, logging off, and updating of the user account information.
Data Binding Buffer Actions
Handles the buffering of data bindings, in order to send over multiple data bindings at once.
Data Result Actions
Handles the fetching and updating of data from the backend using data bindings. A data binding can be a database query to run, an API to call, or another form of data retrieval and update.
Input Actions
Handles the storage of user input for the screen currently in use.
Local Storage Actions
Handles the storage of information to be used across multiple user sessions.
Handles the retrieval of the menu information for the user from the backend.
Message Actions
Handles the sending of messages from the system to the user.
Parameter Actions
Handles the setting of parameters for use between data bindings. This allows one data binding's results to trigger the running of another.
Resize Actions
Handles the resizing of the browser window.
Screen Actions
Handles the retrieving of screen layout information from the backend, along with archiving and retrieval of screens.
Status Actions
Saves status information about the screen currently being displayed.
Styling Actions
Handles the retrieving and storing of styling information from the backend.
Timer Actions
Handles the setting and running of timers on the system. When a timer elapses, an alarm sound is played.
Reducers
Account Reducer
Holds the login and profile information on the user currently logged into the system. This includes the user's access token, which is used for all interactions with the backend.
Data Binding Buffer Reducer
Buffers up data bindings so they can be run in batches. This is separate from the data result reducer in order to avoid components updating every time something is pushed to the buffer.
Data Result Reducer
Holds the results of queries against the backend. This can be the results of a database query, or information requested from other systems through the backend.
Input Reducer
Holds the information the user inputs into the current screen, for example the text they type in an input box.
Local Storage Reducer
Holds information across sessions, when necessary. For example, a user might be working on a project long term and not want to open it again each time they open the system.
Holds the menu for the user, displayed on the left of the screen.
Message Reducer
Holds messages sent from components to be displayed to the user.
Parameter Reducer
Holds parameter information used in data bindings against the backend. By updating this reducer, dependent data bindings can be triggered automatically.
Resize Reducer
Logs the current user off the system, deleting all of their account information and ending their session.
Screen Reducer
Holds the screen layout information. Once a screen's layout has been retrieved from the backend, it's stored in an archive, so it can be closed and reopened without querying the backend.
Quick Links
Some screens available for viewing anonymously. To do this, a quick link gives a direct URL that users can access to view the screen.
Status Reducer
Holds screen status information not input by the user. For example, whether a modal is visible or not.",
Selection
The selection is a specialised part of the status reducer that holds the currently selected object. For example, if the screen loads an array of objects and the user selects one for editing, that selected object would be held in the selection part of the reducer.
Styling Reducer
Holds the styling information for the system. For example, font colours, border widths, etc.
Timer Reducer
Holds timers and rings an alarm when a timer elapses.