Skip to content

Commit 48cb253

Browse files
Merge pull request #3 from ft4bhi/main
Critical bug fixes
2 parents 54d2506 + 0ecc287 commit 48cb253

30 files changed

+1565
-1394
lines changed

public/img/defaultLogoDark.png

6.73 KB
Loading

public/img/defaultLogoLight.png

6.72 KB
Loading

public/js/3.js

+21-21
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

public/js/3.js.gz

2.85 KB
Binary file not shown.

public/js/4.js.gz

0 Bytes
Binary file not shown.

public/js/5.js

+188-188
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

public/js/5.js.gz

4.91 KB
Binary file not shown.

public/js/6.js.gz

0 Bytes
Binary file not shown.

public/js/truRequire.js

+23-23
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

public/js/truRequire.js.gz

3.91 KB
Binary file not shown.

public/js/trudesk.min.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
\******************************/
1616
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
1717

18-
eval("/*\n * . .o8 oooo\n * .o8 \"888 `888\n * .o888oo oooo d8b oooo oooo .oooo888 .ooooo. .oooo.o 888 oooo\n * 888 `888\"\"8P `888 `888 d88' `888 d88' `88b d88( \"8 888 .8P'\n * 888 888 888 888 888 888 888ooo888 `\"Y88b. 888888.\n * 888 . 888 888 888 888 888 888 .o o. )88b 888 `88b.\n * \"888\" d888b `V88V\"V8P' `Y8bod88P\" `Y8bod8P' 8\"\"888P' o888o o888o\n * ========================================================================\n * Author: Chris Brame\n * Updated: 1/20/19 4:46 PM\n * Copyright (c) 2014-2019. All rights reserved.\n */\n\n__webpack_require__.g.react = {} // Global react var for calling state outside react.\n\nPromise.all(/*! AMD require */[__webpack_require__.e(4), __webpack_require__.e(3)]).then(function() { var __WEBPACK_AMD_REQUIRE_ARRAY__ = [__webpack_require__(/*! jquery */ 0), __webpack_require__(/*! modules/helpers */ 10), __webpack_require__(/*! async */ 7), __webpack_require__(/*! singleton/sessionSingleton */ 32), __webpack_require__(/*! singleton/settingsSingleton */ 33)]; (function (\n $,\n helpers,\n async,\n SessionService,\n SettingsService\n) {\n $(document).ready(function () {\n // Call the Session service before bootstrapping.\n // Allowing the SessionUser to be populated before the controllers have access.\n async.parallel(\n [\n function (done) {\n SessionService.init(done)\n },\n function (done) {\n SettingsService.init(done)\n }\n ],\n function (err) {\n if (err) console.log(err)\n if (err) throw new Error(err)\n\n helpers.init()\n\n Promise.all(/*! AMD require */[__webpack_require__.e(6), __webpack_require__.e(5)]).then(function() { var __WEBPACK_AMD_REQUIRE_ARRAY__ = [__webpack_require__(/*! lodash */ 6), __webpack_require__(/*! uikit */ 4), __webpack_require__(/*! modules/ajaxify */ 35), __webpack_require__(/*! pace */ 34)]; (function (_, nav) {\n // React Bootstrap\n __webpack_require__(/*! ../../client/app.jsx */ 36)\n\n nav.init()\n\n const $event = _.debounce(() => {\n helpers.hideLoader(1000)\n\n $.event.trigger('trudesk:ready', window)\n }, 100)\n\n $event()\n }).apply(null, __WEBPACK_AMD_REQUIRE_ARRAY__);})['catch'](__webpack_require__.oe)\n }\n )\n })\n}).apply(null, __WEBPACK_AMD_REQUIRE_ARRAY__);})['catch'](__webpack_require__.oe)\n\n\n//# sourceURL=webpack://trudesk/./src/public/js/app.js?");
18+
eval("/*\r\n * . .o8 oooo\r\n * .o8 \"888 `888\r\n * .o888oo oooo d8b oooo oooo .oooo888 .ooooo. .oooo.o 888 oooo\r\n * 888 `888\"\"8P `888 `888 d88' `888 d88' `88b d88( \"8 888 .8P'\r\n * 888 888 888 888 888 888 888ooo888 `\"Y88b. 888888.\r\n * 888 . 888 888 888 888 888 888 .o o. )88b 888 `88b.\r\n * \"888\" d888b `V88V\"V8P' `Y8bod88P\" `Y8bod8P' 8\"\"888P' o888o o888o\r\n * ========================================================================\r\n * Author: Chris Brame\r\n * Updated: 1/20/19 4:46 PM\r\n * Copyright (c) 2014-2019. All rights reserved.\r\n */\r\n\r\n__webpack_require__.g.react = {} // Global react var for calling state outside react.\r\n\r\nPromise.all(/*! AMD require */[__webpack_require__.e(4), __webpack_require__.e(3)]).then(function() { var __WEBPACK_AMD_REQUIRE_ARRAY__ = [__webpack_require__(/*! jquery */ 0), __webpack_require__(/*! modules/helpers */ 10), __webpack_require__(/*! async */ 7), __webpack_require__(/*! singleton/sessionSingleton */ 32), __webpack_require__(/*! singleton/settingsSingleton */ 33)]; (function (\r\n $,\r\n helpers,\r\n async,\r\n SessionService,\r\n SettingsService\r\n) {\r\n $(document).ready(function () {\r\n // Call the Session service before bootstrapping.\r\n // Allowing the SessionUser to be populated before the controllers have access.\r\n async.parallel(\r\n [\r\n function (done) {\r\n SessionService.init(done)\r\n },\r\n function (done) {\r\n SettingsService.init(done)\r\n }\r\n ],\r\n function (err) {\r\n if (err) console.log(err)\r\n if (err) throw new Error(err)\r\n\r\n helpers.init()\r\n\r\n Promise.all(/*! AMD require */[__webpack_require__.e(6), __webpack_require__.e(5)]).then(function() { var __WEBPACK_AMD_REQUIRE_ARRAY__ = [__webpack_require__(/*! lodash */ 6), __webpack_require__(/*! uikit */ 4), __webpack_require__(/*! modules/ajaxify */ 35), __webpack_require__(/*! pace */ 34)]; (function (_, nav) {\r\n // React Bootstrap\r\n __webpack_require__(/*! ../../client/app.jsx */ 36)\r\n\r\n nav.init()\r\n\r\n const $event = _.debounce(() => {\r\n helpers.hideLoader(1000)\r\n\r\n $.event.trigger('trudesk:ready', window)\r\n }, 100)\r\n\r\n $event()\r\n }).apply(null, __WEBPACK_AMD_REQUIRE_ARRAY__);})['catch'](__webpack_require__.oe)\r\n }\r\n )\r\n })\r\n}).apply(null, __WEBPACK_AMD_REQUIRE_ARRAY__);})['catch'](__webpack_require__.oe)\r\n\n\n//# sourceURL=webpack://trudesk/./src/public/js/app.js?");
1919

2020
/***/ })
2121

public/js/trudesk.min.js.gz

6 Bytes
Binary file not shown.

public/js/vendor.js

+8-8
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

public/js/vendor.js.gz

2.1 KB
Binary file not shown.

src/client/app.jsx

+37-37
Original file line numberDiff line numberDiff line change
@@ -12,46 +12,46 @@
1212
* Copyright (c) 2014-2019. All rights reserved.
1313
*/
1414

15-
import React from 'react'
16-
import ReactDOM from 'react-dom'
17-
import { applyMiddleware, createStore, compose } from 'redux'
18-
import { Provider } from 'react-redux'
19-
import createSagaMiddleware from 'redux-saga'
20-
import { middleware as thunkMiddleware } from 'redux-saga-thunk'
21-
import IndexReducer from './reducers'
22-
import IndexSagas from './sagas'
23-
import { SingletonHooksContainer } from 'react-singleton-hook'
24-
import TopbarContainer from './containers/Topbar/TopbarContainer'
25-
import Sidebar from './components/Nav/Sidebar/index.jsx'
26-
import ModalRoot from './containers/Modals'
27-
import renderer from './renderer'
28-
29-
import SocketGlobal from 'containers/Global/SocketGlobal'
30-
import SessionLoader from 'lib2/sessionLoader'
31-
import HotKeysGlobal from 'containers/Global/HotKeysGlobal'
32-
import BackupRestoreOverlay from 'containers/Global/BackupRestoreOverlay'
33-
import ChatDock from 'containers/Global/ChatDock'
34-
35-
const sagaMiddleware = createSagaMiddleware()
15+
import React from 'react';
16+
import ReactDOM from 'react-dom';
17+
import { applyMiddleware, createStore, compose } from 'redux';
18+
import { Provider } from 'react-redux';
19+
import createSagaMiddleware from 'redux-saga';
20+
import { middleware as thunkMiddleware } from 'redux-saga-thunk';
21+
import IndexReducer from './reducers';
22+
import IndexSagas from './sagas';
23+
import { SingletonHooksContainer } from 'react-singleton-hook';
24+
import TopbarContainer from './containers/Topbar/TopbarContainer';
25+
import Sidebar from './components/Nav/Sidebar/index.jsx';
26+
import ModalRoot from './containers/Modals';
27+
import renderer from './renderer';
28+
29+
import SocketGlobal from 'containers/Global/SocketGlobal';
30+
import SessionLoader from 'lib2/sessionLoader';
31+
import HotKeysGlobal from 'containers/Global/HotKeysGlobal';
32+
import BackupRestoreOverlay from 'containers/Global/BackupRestoreOverlay';
33+
import ChatDock from 'containers/Global/ChatDock';
34+
35+
const sagaMiddleware = createSagaMiddleware();
3636

3737
/*eslint-disable */
3838
const composeSetup =
3939
process.env.NODE_ENV !== 'production' && typeof window === 'object' && window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__
4040
? window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__
41-
: compose
41+
: compose;
4242
/*eslint-enable */
4343

4444
// if (process.env.NODE_ENV !== 'production') {
45-
localStorage.setItem('debug', 'trudesk:*') // Enable logger
45+
localStorage.setItem('debug', 'trudesk:*'); // Enable logger
4646
// }
4747

48-
const store = createStore(IndexReducer, composeSetup(applyMiddleware(thunkMiddleware, sagaMiddleware)))
48+
const store = createStore(IndexReducer, composeSetup(applyMiddleware(thunkMiddleware, sagaMiddleware)));
4949

5050
// This is need to call an action from angular
5151
// Goal: remove this once angular is fully removed
52-
window.react.redux = { store }
52+
window.react.redux = { store };
5353

54-
sagaMiddleware.run(IndexSagas)
54+
sagaMiddleware.run(IndexSagas);
5555

5656
// Mount Globals
5757
if (document.getElementById('globals')) {
@@ -67,39 +67,39 @@ if (document.getElementById('globals')) {
6767
<BackupRestoreOverlay />
6868
</>
6969
</Provider>
70-
)
70+
);
7171

72-
ReactDOM.render(GlobalsRoot, document.getElementById('globals'))
72+
ReactDOM.render(GlobalsRoot, document.getElementById('globals'));
7373
}
7474

7575
const sidebarWithProvider = (
7676
<Provider store={store}>
7777
<Sidebar />
7878
</Provider>
79-
)
79+
);
8080

81-
ReactDOM.render(sidebarWithProvider, document.getElementById('sidebar'))
81+
ReactDOM.render(sidebarWithProvider, document.getElementById('sidebar'));
8282

8383
if (document.getElementById('modal-wrapper')) {
8484
const RootModal = (
8585
<Provider store={store}>
8686
<ModalRoot />
8787
</Provider>
88-
)
89-
ReactDOM.render(RootModal, document.getElementById('modal-wrapper'))
88+
);
89+
ReactDOM.render(RootModal, document.getElementById('modal-wrapper'));
9090
}
9191

9292
if (document.getElementById('topbar')) {
9393
const TopbarRoot = (
9494
<Provider store={store}>
9595
<TopbarContainer />
9696
</Provider>
97-
)
97+
);
9898

99-
ReactDOM.render(TopbarRoot, document.getElementById('topbar'))
99+
ReactDOM.render(TopbarRoot, document.getElementById('topbar'));
100100
}
101101

102-
window.react.renderer = renderer
103-
window.react.dom = ReactDOM
102+
window.react.renderer = renderer;
103+
window.react.dom = ReactDOM;
104104

105-
renderer(store)
105+
renderer(store);

src/client/components/TruCard/index.jsx

+17-17
Original file line numberDiff line numberDiff line change
@@ -12,15 +12,15 @@
1212
* Copyright (c) 2014-2019. All rights reserved.
1313
*/
1414

15-
import React from 'react'
16-
import PropTypes from 'prop-types'
17-
import DropdownTrigger from 'components/Dropdown/DropdownTrigger'
18-
import Dropdown from 'components/Dropdown'
19-
import SpinLoader from 'components/SpinLoader'
20-
import clsx from 'clsx'
15+
import React from 'react';
16+
import PropTypes from 'prop-types';
17+
import DropdownTrigger from 'components/Dropdown/DropdownTrigger';
18+
import Dropdown from 'components/Dropdown';
19+
import SpinLoader from 'components/SpinLoader';
20+
import clsx from 'clsx';
2121

2222
class TruCard extends React.Component {
23-
render () {
23+
render() {
2424
return (
2525
<div
2626
className={clsx(
@@ -44,18 +44,18 @@ class TruCard extends React.Component {
4444
>
4545
{this.props.showMoveHandle && (
4646
<div style={{ cursor: 'move', position: 'absolute', top: 2, right: 8 }}>
47-
<i className='material-icons'>drag_handle</i>
47+
<i className="material-icons">drag_handle</i>
4848
</div>
4949
)}
5050
{this.props.header && (
5151
<div className={'tru-card-head ' + (this.props.extraHeadClass || '')}>
5252
{this.props.menu && (
5353
<div className={'tru-card-head-menu'}>
5454
<DropdownTrigger pos={'bottom-right'} mode={'click'}>
55-
<i className='material-icons tru-icon'>more_vert</i>
55+
<i className="material-icons tru-icon">more_vert</i>
5656
<Dropdown small={true}>
57-
{this.props.menu.map(child => {
58-
return child
57+
{this.props.menu.map((child) => {
58+
return child;
5959
})}
6060
</Dropdown>
6161
</DropdownTrigger>
@@ -71,7 +71,7 @@ class TruCard extends React.Component {
7171
</div>
7272
</div>
7373
</div>
74-
)
74+
);
7575
}
7676
}
7777

@@ -87,16 +87,16 @@ TruCard.propTypes = {
8787
showMoveHandle: PropTypes.bool,
8888
style: PropTypes.object,
8989
animateLoader: PropTypes.bool,
90-
animateDelay: PropTypes.number
91-
}
90+
animateDelay: PropTypes.number,
91+
};
9292

9393
TruCard.defaultProps = {
9494
loaderActive: false,
9595
hover: true,
9696
fullSize: true,
9797
showMoveHandle: false,
9898
animateLoader: false,
99-
animateDelay: 600
100-
}
99+
animateDelay: 600,
100+
};
101101

102-
export default TruCard
102+
export default TruCard;

src/client/components/TruTabs/TruTabSection.jsx

+11-11
Original file line numberDiff line numberDiff line change
@@ -11,13 +11,13 @@
1111
* Copyright (c) 2014-2019 Trudesk, Inc. All rights reserved.
1212
*/
1313

14-
import React from 'react'
15-
import PropTypes from 'prop-types'
16-
import clsx from 'clsx'
14+
import React from 'react';
15+
import PropTypes from 'prop-types';
16+
import clsx from 'clsx';
1717

1818
class TruTabSection extends React.Component {
19-
render () {
20-
const { sectionId, active } = this.props
19+
render() {
20+
const { sectionId, active } = this.props;
2121
return (
2222
<div
2323
className={clsx('tru-tab-section', !active && 'hidden')}
@@ -26,18 +26,18 @@ class TruTabSection extends React.Component {
2626
>
2727
{this.props.children}
2828
</div>
29-
)
29+
);
3030
}
3131
}
3232

3333
TruTabSection.propTypes = {
3434
sectionId: PropTypes.oneOfType([PropTypes.string, PropTypes.number]).isRequired,
3535
active: PropTypes.bool.isRequired,
36-
style: PropTypes.object
37-
}
36+
style: PropTypes.object,
37+
};
3838

3939
TruTabSection.defaultProps = {
40-
active: false
41-
}
40+
active: false,
41+
};
4242

43-
export default TruTabSection
43+
export default TruTabSection;

src/client/components/TruTabs/TruTabSelector.jsx

+14-14
Original file line numberDiff line numberDiff line change
@@ -11,28 +11,28 @@
1111
* Copyright (c) 2014-2019 Trudesk, Inc. All rights reserved.
1212
*/
1313

14-
import React, { Fragment } from 'react'
15-
import PropTypes from 'prop-types'
16-
import clsx from 'clsx'
14+
import React, { Fragment } from 'react';
15+
import PropTypes from 'prop-types';
16+
import clsx from 'clsx';
1717

1818
class TruTabSelector extends React.Component {
19-
render () {
20-
const { label, active, selectorId, showBadge, badgeText } = this.props
19+
render() {
20+
const { label, active, selectorId, showBadge, badgeText } = this.props;
2121
return (
2222
<Fragment>
2323
<a
2424
role={'button'}
2525
className={clsx('tru-tab-selector no-ajaxy', active && 'active')}
2626
data-tabid={selectorId}
27-
onClick={e => e.preventDefault()}
28-
href='#'
27+
onClick={(e) => e.preventDefault()}
28+
href="#"
2929
tabIndex={0}
3030
>
3131
{label}
32-
{showBadge && <span className='uk-badge uk-badge-grey uk-badge-small'>{badgeText}</span>}
32+
{showBadge && <span className="uk-badge uk-badge-grey uk-badge-small">{badgeText}</span>}
3333
</a>
3434
</Fragment>
35-
)
35+
);
3636
}
3737
}
3838

@@ -41,12 +41,12 @@ TruTabSelector.propTypes = {
4141
active: PropTypes.bool,
4242
selectorId: PropTypes.oneOfType([PropTypes.string, PropTypes.number]).isRequired,
4343
showBadge: PropTypes.bool,
44-
badgeText: PropTypes.oneOfType([PropTypes.string, PropTypes.number])
45-
}
44+
badgeText: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),
45+
};
4646

4747
TruTabSelector.defaultProps = {
4848
active: false,
49-
showBadge: false
50-
}
49+
showBadge: false,
50+
};
5151

52-
export default TruTabSelector
52+
export default TruTabSelector;

src/client/components/TruTabs/TruTabSelectors.jsx

+16-16
Original file line numberDiff line numberDiff line change
@@ -11,35 +11,35 @@
1111
* Copyright (c) 2014-2019 Trudesk, Inc. All rights reserved.
1212
*/
1313

14-
import React from 'react'
15-
import PropTypes from 'prop-types'
16-
import helpers from 'lib/helpers'
14+
import React from 'react';
15+
import PropTypes from 'prop-types';
16+
import helpers from 'lib/helpers';
1717

1818
class TruTabSelectors extends React.Component {
19-
componentDidMount () {
20-
helpers.setupTruTabs(document.querySelectorAll('.tru-tab-selectors > .tru-tab-selector'))
19+
componentDidMount() {
20+
helpers.setupTruTabs(document.querySelectorAll('.tru-tab-selectors > .tru-tab-selector'));
2121
}
2222

23-
render () {
24-
const { children, showTrack } = this.props
23+
render() {
24+
const { children, showTrack } = this.props;
2525
return (
26-
<div className='tru-tab-selectors' style={this.props.style} ref={r => (this.selectors = r)}>
26+
<div className="tru-tab-selectors" style={this.props.style} ref={(r) => (this.selectors = r)}>
2727
{children}
2828

29-
<span className='tru-tab-highlighter' />
30-
{showTrack && <span className='tru-tab-hr tru-tab-hr-lighten' />}
29+
<span className="tru-tab-highlighter" />
30+
{showTrack && <span className="tru-tab-hr tru-tab-hr-lighten" />}
3131
</div>
32-
)
32+
);
3333
}
3434
}
3535

3636
TruTabSelectors.propTypes = {
3737
showTrack: PropTypes.bool,
38-
style: PropTypes.object
39-
}
38+
style: PropTypes.object,
39+
};
4040

4141
TruTabSelectors.defaultProps = {
42-
showTrack: true
43-
}
42+
showTrack: true,
43+
};
4444

45-
export default TruTabSelectors
45+
export default TruTabSelectors;

src/client/components/TruTabs/TruTabWrapper.jsx

+8-8
Original file line numberDiff line numberDiff line change
@@ -11,22 +11,22 @@
1111
* Copyright (c) 2014-2019 Trudesk, Inc. All rights reserved.
1212
*/
1313

14-
import React from 'react'
15-
import PropTypes from 'prop-types'
14+
import React from 'react';
15+
import PropTypes from 'prop-types';
1616

1717
class TruTabWrapper extends React.Component {
18-
render () {
18+
render() {
1919
return (
20-
<div className='tru-tabs uk-clearfix' style={this.props.style || { padding: '20px 0' }}>
20+
<div className="tru-tabs uk-clearfix" style={this.props.style || { padding: '20px 0' }}>
2121
{this.props.children}
2222
</div>
23-
)
23+
);
2424
}
2525
}
2626

2727
TruTabWrapper.propTypes = {
2828
style: PropTypes.object,
29-
children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node])
30-
}
29+
children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),
30+
};
3131

32-
export default TruTabWrapper
32+
export default TruTabWrapper;

0 commit comments

Comments
 (0)