summaryrefslogtreecommitdiffstats
path: root/webapp/root.jsx
diff options
context:
space:
mode:
Diffstat (limited to 'webapp/root.jsx')
-rw-r--r--webapp/root.jsx133
1 files changed, 0 insertions, 133 deletions
diff --git a/webapp/root.jsx b/webapp/root.jsx
deleted file mode 100644
index 65d4cb0e4..000000000
--- a/webapp/root.jsx
+++ /dev/null
@@ -1,133 +0,0 @@
-// Copyright (c) 2016-present Mattermost, Inc. All Rights Reserved.
-// See License.txt for license information.
-
-import $ from 'jquery';
-require('perfect-scrollbar/jquery')($);
-
-import React from 'react';
-import ReactDOM from 'react-dom';
-import {Provider} from 'react-redux';
-import {Router, browserHistory} from 'react-router/es6';
-import PDFJS from 'pdfjs-dist';
-
-import * as Websockets from 'actions/websocket_actions.jsx';
-import {loadMeAndConfig} from 'actions/user_actions.jsx';
-import ChannelStore from 'stores/channel_store.jsx';
-import * as I18n from 'i18n/i18n.jsx';
-import {initializePlugins} from 'plugins';
-
-// Import our styles
-import 'bootstrap-colorpicker/dist/css/bootstrap-colorpicker.css';
-import 'sass/styles.scss';
-import 'katex/dist/katex.min.css';
-
-// Redux actions
-import store from 'stores/redux_store.jsx';
-const dispatch = store.dispatch;
-const getState = store.getState;
-
-import {viewChannel} from 'mattermost-redux/actions/channels';
-import {getClientConfig, getLicenseConfig, setUrl} from 'mattermost-redux/actions/general';
-
-// Import the root of our routing tree
-import rRoot from 'routes/route_root.jsx';
-
-PDFJS.disableWorker = true;
-
-// This is for anything that needs to be done for ALL react components.
-// This runs before we start to render anything.
-function preRenderSetup(callwhendone) {
- window.onerror = (msg, url, line, column, stack) => {
- var l = {};
- l.level = 'ERROR';
- l.message = 'msg: ' + msg + ' row: ' + line + ' col: ' + column + ' stack: ' + stack + ' url: ' + url;
-
- $.ajax({
- url: '/api/v3/general/log_client',
- dataType: 'json',
- contentType: 'application/json',
- type: 'POST',
- data: JSON.stringify(l)
- });
-
- if (window.mm_config && window.mm_config.EnableDeveloper === 'true') {
- window.ErrorStore.storeLastError({type: 'developer', message: 'DEVELOPER MODE: A JavaScript error has occurred. Please use the JavaScript console to capture and report the error (row: ' + line + ' col: ' + column + ').'});
- window.ErrorStore.emitChange();
- }
- };
-
- var d1 = $.Deferred(); //eslint-disable-line new-cap
-
- setUrl(window.location.origin);
-
- if (document.cookie.indexOf('MMUSERID=') > -1) {
- loadMeAndConfig(() => d1.resolve());
- } else {
- getClientConfig()(store.dispatch, store.getState).then(
- (config) => {
- global.window.mm_config = config;
-
- getLicenseConfig()(store.dispatch, store.getState).then(
- (license) => {
- global.window.mm_license = license;
- d1.resolve();
- }
- );
- }
- );
- }
-
- // Make sure the websockets close and reset version
- $(window).on('beforeunload',
- () => {
- // Turn off to prevent getting stuck in a loop
- $(window).off('beforeunload');
- if (document.cookie.indexOf('MMUSERID=') > -1) {
- viewChannel('', ChannelStore.getCurrentId() || '')(dispatch, getState);
- }
- Websockets.close();
- }
- );
-
- function afterIntl() {
- $.when(d1).done(() => {
- initializePlugins();
- I18n.doAddLocaleData();
- callwhendone();
- });
- }
-
- if (global.Intl) {
- afterIntl();
- } else {
- I18n.safariFix(afterIntl);
- }
-
- // Prevent drag and drop files from navigating away from the app
- document.addEventListener('drop', (e) => {
- e.preventDefault();
- e.stopPropagation();
- });
-
- document.addEventListener('dragover', (e) => {
- e.preventDefault();
- e.stopPropagation();
- });
-}
-
-function renderRootComponent() {
- ReactDOM.render((
- <Provider store={store}>
- <Router
- history={browserHistory}
- routes={rRoot}
- />
- </Provider>
- ),
- document.getElementById('root'));
-}
-
-global.window.setup_root = () => {
- // Do the pre-render setup and call renderRootComponent when done
- preRenderSetup(renderRootComponent);
-};