您最多选择25个主题 主题必须以字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符

SettingsMenu.js 1.5KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. /* global $, APP, interfaceConfig */
  2. /* eslint-disable no-unused-vars */
  3. import React from 'react';
  4. import ReactDOM from 'react-dom';
  5. import { I18nextProvider } from 'react-i18next';
  6. import { Provider } from 'react-redux';
  7. import { i18next } from '../../../../react/features/base/i18n';
  8. import {
  9. SettingsMenu,
  10. isSettingEnabled
  11. } from '../../../../react/features/settings';
  12. import UIUtil from '../../util/UIUtil';
  13. /* eslint-enable no-unused-vars */
  14. export default {
  15. init() {
  16. const settingsMenuContainer = document.createElement('div');
  17. settingsMenuContainer.id = 'settings_container';
  18. settingsMenuContainer.className = 'sideToolbarContainer__inner';
  19. $('#sideToolbarContainer').append(settingsMenuContainer);
  20. const props = {
  21. showDeviceSettings: isSettingEnabled('devices'),
  22. showLanguageSettings: isSettingEnabled('language'),
  23. showModeratorSettings: isSettingEnabled('moderator'),
  24. showTitles: interfaceConfig.SETTINGS_SECTIONS.length > 1
  25. };
  26. ReactDOM.render(
  27. <Provider store = { APP.store }>
  28. <I18nextProvider i18n = { i18next }>
  29. <SettingsMenu { ...props } />
  30. </I18nextProvider>
  31. </Provider>,
  32. settingsMenuContainer
  33. );
  34. },
  35. /**
  36. * Check if settings menu is visible or not.
  37. * @returns {boolean}
  38. */
  39. isVisible() {
  40. return UIUtil.isVisible(document.getElementById('settings_container'));
  41. }
  42. };