Skip to content

Commit 3b76d74

Browse files
committed
Fix eslint warnings
1 parent 6eb3c30 commit 3b76d74

9 files changed

Lines changed: 83 additions & 114 deletions

File tree

services/app/apps/codebattle/assets/js/app.js

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ import 'core-js/stable';
1717
// eslint-disable-next-line import/no-extraneous-dependencies
1818
import 'regenerator-runtime/runtime';
1919
import 'phoenix_html';
20-
import '@fortawesome/fontawesome-free/js/all';
20+
import './fontawesome';
2121
// import '../css/style.scss';
2222
import 'bootstrap';
2323

@@ -54,9 +54,12 @@ import {
5454
} from './widgets';
5555

5656
if (process.env.NODE_ENV === 'development') {
57-
inspect({
58-
iframe: () => document.querySelector('.xstate'),
59-
});
57+
const xstateIframe = document.querySelector('.xstate');
58+
if (xstateIframe) {
59+
inspect({
60+
iframe: () => xstateIframe,
61+
});
62+
}
6063
}
6164

6265
const Hooks = {
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
// FontAwesome icon library setup
2+
import { library } from '@fortawesome/fontawesome-svg-core';
3+
import { fab } from '@fortawesome/free-brands-svg-icons';
4+
import { far } from '@fortawesome/free-regular-svg-icons';
5+
import { fas } from '@fortawesome/free-solid-svg-icons';
6+
7+
// Add all solid, regular, and brand icons to the library
8+
// This allows using icons by string name throughout the app
9+
library.add(fas, far, fab);

services/app/apps/codebattle/assets/js/widgets/components/Editor.jsx

Lines changed: 0 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,9 @@ import React, { memo, useRef, useEffect } from 'react';
22

33
import MonacoEditor from '@monaco-editor/react';
44
import { initVimMode } from 'monaco-vim';
5-
import PropTypes from 'prop-types';
65

76
import '../initEditor';
87
import languages from '../config/languages';
9-
import { actions } from '../slices';
108
import useEditor from '../utils/useEditor';
119

1210
import EditorLoading from './EditorLoading';
@@ -19,12 +17,6 @@ function Editor(props) {
1917
theme,
2018
loading = false,
2119
mode,
22-
wordWrap = 'off',
23-
lineNumbers = 'on',
24-
fontSize = 16,
25-
mute = true,
26-
editable = false,
27-
toggleMuteSound = actions.toggleMuteSound,
2820
} = props;
2921

3022
// Map your custom language key to an actual Monaco recognized language
@@ -104,23 +96,4 @@ function Editor(props) {
10496
);
10597
}
10698

107-
Editor.propTypes = {
108-
value: PropTypes.string.isRequired,
109-
syntax: PropTypes.string,
110-
onChange: PropTypes.func.isRequired,
111-
theme: PropTypes.string.isRequired,
112-
mode: PropTypes.string.isRequired,
113-
loading: PropTypes.bool,
114-
wordWrap: PropTypes.string,
115-
lineNumbers: PropTypes.string,
116-
fontSize: PropTypes.number,
117-
editable: PropTypes.bool,
118-
roomMode: PropTypes.string.isRequired,
119-
checkResult: PropTypes.func.isRequired,
120-
toggleMuteSound: PropTypes.func,
121-
mute: PropTypes.bool,
122-
userType: PropTypes.string.isRequired,
123-
userId: PropTypes.number.isRequired,
124-
};
125-
12699
export default memo(Editor);

services/app/apps/codebattle/assets/js/widgets/components/PopoverStickOnHover.jsx

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
// SEE: https://gist.github.com/lou/571b7c0e7797860d6c555a9fdc0496f9
22
import React, { useState, useEffect, useRef } from 'react';
33

4-
import PropTypes from 'prop-types';
54
import Overlay from 'react-bootstrap/Overlay';
65
import Popover from 'react-bootstrap/Popover';
76

@@ -72,13 +71,4 @@ function PopoverStickOnHover({
7271
);
7372
}
7473

75-
PopoverStickOnHover.propTypes = {
76-
id: PropTypes.string.isRequired,
77-
children: PropTypes.element.isRequired,
78-
delay: PropTypes.number,
79-
onMouseEnter: PropTypes.func,
80-
component: PropTypes.node.isRequired,
81-
placement: PropTypes.string.isRequired,
82-
};
83-
8474
export default PopoverStickOnHover;

services/app/apps/codebattle/assets/js/widgets/pages/game/GameActionButtons.jsx

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -89,7 +89,6 @@ const CustomToggle = React.forwardRef(({ onClick, className, disabled }, ref) =>
8989

9090
function GiveUpButtonDropdownItem({ onSelect, status }) {
9191
const commonProps = {
92-
key: 'giveUp',
9392
href: '#',
9493
title: i18next.t('Give Up'),
9594
onSelect,
@@ -98,7 +97,7 @@ function GiveUpButtonDropdownItem({ onSelect, status }) {
9897
};
9998

10099
return (
101-
<Dropdown.Item {...commonProps}>
100+
<Dropdown.Item key="giveUp" {...commonProps}>
102101
<span className={status === 'disabled' ? 'text-muted' : 'text-danger'}>
103102
<FontAwesomeIcon icon={['far', 'flag']} className="mr-1" />
104103
{i18next.t('Give up')}
@@ -109,7 +108,6 @@ function GiveUpButtonDropdownItem({ onSelect, status }) {
109108

110109
function ResetButtonDropDownItem({ onSelect, status }) {
111110
const commonProps = {
112-
key: 'reset',
113111
href: '#',
114112
title: i18next.t('Reset solution'),
115113
onSelect,
@@ -118,7 +116,7 @@ function ResetButtonDropDownItem({ onSelect, status }) {
118116
};
119117

120118
return (
121-
<Dropdown.Item {...commonProps}>
119+
<Dropdown.Item key="reset" {...commonProps}>
122120
<span className="text-white">
123121
<FontAwesomeIcon icon={['fas', 'sync']} className="mr-1" />
124122
{i18next.t('Reset solution')}

services/app/apps/codebattle/assets/js/widgets/pages/game/GameWidget.jsx

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
1-
import React, { useState, useContext, memo, useMemo } from 'react';
1+
import React, {
2+
useState, useContext, memo, useMemo,
3+
} from 'react';
24

35
import cn from 'classnames';
46
import i18next from 'i18next';

services/app/apps/codebattle/assets/js/widgets/slices/event.js

Lines changed: 19 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -89,25 +89,25 @@ const eventSlice = createSlice({
8989
...payload,
9090
}),
9191
},
92-
extraReducers: builder => {
93-
// builder
94-
// .addCase(fetchCommonLeaderboard.pending, state => {
95-
// state.loading = loadingStatuses.LOADING;
96-
// })
97-
// .addCase(fetchCommonLeaderboard.fulfilled, (state, action) => {
98-
// state.loading = loadingStatuses.PENDING;
99-
// state.commonLeaderboard = {
100-
// items: action.payload.items,
101-
// pageNumber: action.payload.pageInfo.pageNumber,
102-
// pageSize: action.payload.pageInfo.pageSize,
103-
// totalEntries: action.payload.pageInfo.totalEntries,
104-
// };
105-
// })
106-
// .addCase(fetchCommonLeaderboard.rejected, state => {
107-
// state.loading = loadingStatuses.PENDING;
108-
// state.commonLeaderboard = {};
109-
// });
110-
},
92+
// extraReducers: builder => {
93+
// builder
94+
// .addCase(fetchCommonLeaderboard.pending, state => {
95+
// state.loading = loadingStatuses.LOADING;
96+
// })
97+
// .addCase(fetchCommonLeaderboard.fulfilled, (state, action) => {
98+
// state.loading = loadingStatuses.PENDING;
99+
// state.commonLeaderboard = {
100+
// items: action.payload.items,
101+
// pageNumber: action.payload.pageInfo.pageNumber,
102+
// pageSize: action.payload.pageInfo.pageSize,
103+
// totalEntries: action.payload.pageInfo.totalEntries,
104+
// };
105+
// })
106+
// .addCase(fetchCommonLeaderboard.rejected, state => {
107+
// state.loading = loadingStatuses.PENDING;
108+
// state.commonLeaderboard = {};
109+
// });
110+
// },
111111
});
112112

113113
const { actions, reducer } = eventSlice;

services/app/apps/codebattle/package.json

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -48,11 +48,11 @@
4848
"@ebay/nice-modal-react": "^1.2.13",
4949
"@emoji-mart/data": "^1.1.2",
5050
"@emoji-mart/react": "^1.1.1",
51-
"@fortawesome/fontawesome-free": "^5.15.1",
52-
"@fortawesome/fontawesome-svg-core": "^1.2.32",
53-
"@fortawesome/free-regular-svg-icons": "^6.5.1",
54-
"@fortawesome/free-solid-svg-icons": "^6.2.0",
55-
"@fortawesome/react-fontawesome": "^0.1.13",
51+
"@fortawesome/fontawesome-svg-core": "^7.1.0",
52+
"@fortawesome/free-brands-svg-icons": "^7.1.0",
53+
"@fortawesome/free-regular-svg-icons": "^7.1.0",
54+
"@fortawesome/free-solid-svg-icons": "^7.1.0",
55+
"@fortawesome/react-fontawesome": "^3.1.1",
5656
"@inline-svg-unique-id/react": "^1.2.3",
5757
"@monaco-editor/react": "^4.7.0",
5858
"@reduxjs/toolkit": "^1.6.2",

services/app/apps/codebattle/pnpm-lock.yaml

Lines changed: 38 additions & 44 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)