feat(visitors): Transcriptions for visitors. (#15119)
* feat(visitors): Transcriptions for visitors.
* squash: Fixes filter iq.
* feat: Rewrites room name requests in rayo iq for visitors.
* squash: Handles visitors count that request transcriptions and the languages requested.
* fix(subtitles): Make sure we show captions button when no features but is transcribing.
getJwtDisabledButtons which is used as a selector will create a new array every time it is called. This will lead to unneccessary rerenders on every action where there is no difference in the result of getJwtDisabledButtons because the reference of the array will be different.
As part of the PR, it also fixes:
- Removes button aliases
- Unifies the keys in the object returned by getAllToolboxButtons and the button keys
- Makes sure that the number of buttons displayed are always the same as the number of buttons specified in the thresholds and removes the exception for not filling up the main toolbar with buttons from overflow menu when reactions button is disabled.
- Introduces a priority for buttons that will be used to fill empty spaces in the main toolbar.
fix(toolbarButtons): filter visitor buttons in redux.
Filters the toolbarButtons in redux depending on the visitor state instead of filtering them every time in mapStateToProps. This will prevent unnecessary rerenders of the toolbar.
Additionally:
- Moves visitor buttons const from features/config in features/toolbox.
- Removes dublicate functions isButtonEnabled and isToolbarButtonEnabled.
- Adds more buttons to the visitor allowed buttons which functionality has been any way accessible trough shortcuts or somewhere else.
- Enables customButtons to be visible for visitors.
The previous version of getToolbarButtons function was actually adding the custom buttons on every call to the config toolbarButtons array, effectively creating dublicates of every custom button. The PR fixes this issue.
Also now we will be running the getToolbarButtons calculation only when needed.
ref(toolbar) Move getButtons to functions (#13502)
Move visible logic inside each button
Move click functionality inside each button
Extract getButtons function from Toolbox components to functions file
ref(keyboard-shortcuts) refactor keyboard shortcuts to use redux (#13260)
* ref(keyboard-shortcuts) refactor keyboard shortcuts to use redux
fix unsynced default value between config flag and local storage
* code review
* fix build