prefer optional chain

This commit is contained in:
Labhansh Agrawal 2020-03-25 15:52:23 +05:30 committed by Benjamin Staneck
parent 8d4ed96d89
commit bad51f9c15
4 changed files with 30 additions and 29 deletions

View file

@ -94,7 +94,8 @@
"rules": { "rules": {
"@typescript-eslint/explicit-function-return-type": "off", "@typescript-eslint/explicit-function-return-type": "off",
"@typescript-eslint/no-explicit-any": "off", "@typescript-eslint/no-explicit-any": "off",
"@typescript-eslint/no-non-null-assertion": "off" "@typescript-eslint/no-non-null-assertion": "off",
"@typescript-eslint/prefer-optional-chain": "error"
} }
} }
] ]

View file

@ -16,31 +16,31 @@ const commands: Record<string, (focusedWindow?: BrowserWindow) => void> = {
} }
}, },
'pane:splitRight': (focusedWindow) => { 'pane:splitRight': (focusedWindow) => {
focusedWindow && focusedWindow.rpc.emit('split request vertical', {}); focusedWindow?.rpc.emit('split request vertical', {});
}, },
'pane:splitDown': (focusedWindow) => { 'pane:splitDown': (focusedWindow) => {
focusedWindow && focusedWindow.rpc.emit('split request horizontal', {}); focusedWindow?.rpc.emit('split request horizontal', {});
}, },
'pane:close': (focusedWindow) => { 'pane:close': (focusedWindow) => {
focusedWindow && focusedWindow.rpc.emit('termgroup close req'); focusedWindow?.rpc.emit('termgroup close req');
}, },
'window:preferences': () => { 'window:preferences': () => {
openConfig(); openConfig();
}, },
'editor:clearBuffer': (focusedWindow) => { 'editor:clearBuffer': (focusedWindow) => {
focusedWindow && focusedWindow.rpc.emit('session clear req'); focusedWindow?.rpc.emit('session clear req');
}, },
'editor:selectAll': (focusedWindow) => { 'editor:selectAll': (focusedWindow) => {
focusedWindow && focusedWindow.rpc.emit('term selectAll'); focusedWindow?.rpc.emit('term selectAll');
}, },
'plugins:update': () => { 'plugins:update': () => {
updatePlugins(); updatePlugins();
}, },
'window:reload': (focusedWindow) => { 'window:reload': (focusedWindow) => {
focusedWindow && focusedWindow.rpc.emit('reload'); focusedWindow?.rpc.emit('reload');
}, },
'window:reloadFull': (focusedWindow) => { 'window:reloadFull': (focusedWindow) => {
focusedWindow && focusedWindow.reload(); focusedWindow?.reload();
}, },
'window:devtools': (focusedWindow) => { 'window:devtools': (focusedWindow) => {
if (!focusedWindow) { if (!focusedWindow) {
@ -54,58 +54,58 @@ const commands: Record<string, (focusedWindow?: BrowserWindow) => void> = {
} }
}, },
'zoom:reset': (focusedWindow) => { 'zoom:reset': (focusedWindow) => {
focusedWindow && focusedWindow.rpc.emit('reset fontSize req'); focusedWindow?.rpc.emit('reset fontSize req');
}, },
'zoom:in': (focusedWindow) => { 'zoom:in': (focusedWindow) => {
focusedWindow && focusedWindow.rpc.emit('increase fontSize req'); focusedWindow?.rpc.emit('increase fontSize req');
}, },
'zoom:out': (focusedWindow) => { 'zoom:out': (focusedWindow) => {
focusedWindow && focusedWindow.rpc.emit('decrease fontSize req'); focusedWindow?.rpc.emit('decrease fontSize req');
}, },
'tab:prev': (focusedWindow) => { 'tab:prev': (focusedWindow) => {
focusedWindow && focusedWindow.rpc.emit('move left req'); focusedWindow?.rpc.emit('move left req');
}, },
'tab:next': (focusedWindow) => { 'tab:next': (focusedWindow) => {
focusedWindow && focusedWindow.rpc.emit('move right req'); focusedWindow?.rpc.emit('move right req');
}, },
'pane:prev': (focusedWindow) => { 'pane:prev': (focusedWindow) => {
focusedWindow && focusedWindow.rpc.emit('prev pane req'); focusedWindow?.rpc.emit('prev pane req');
}, },
'pane:next': (focusedWindow) => { 'pane:next': (focusedWindow) => {
focusedWindow && focusedWindow.rpc.emit('next pane req'); focusedWindow?.rpc.emit('next pane req');
}, },
'editor:movePreviousWord': (focusedWindow) => { 'editor:movePreviousWord': (focusedWindow) => {
focusedWindow && focusedWindow.rpc.emit('session move word left req'); focusedWindow?.rpc.emit('session move word left req');
}, },
'editor:moveNextWord': (focusedWindow) => { 'editor:moveNextWord': (focusedWindow) => {
focusedWindow && focusedWindow.rpc.emit('session move word right req'); focusedWindow?.rpc.emit('session move word right req');
}, },
'editor:moveBeginningLine': (focusedWindow) => { 'editor:moveBeginningLine': (focusedWindow) => {
focusedWindow && focusedWindow.rpc.emit('session move line beginning req'); focusedWindow?.rpc.emit('session move line beginning req');
}, },
'editor:moveEndLine': (focusedWindow) => { 'editor:moveEndLine': (focusedWindow) => {
focusedWindow && focusedWindow.rpc.emit('session move line end req'); focusedWindow?.rpc.emit('session move line end req');
}, },
'editor:deletePreviousWord': (focusedWindow) => { 'editor:deletePreviousWord': (focusedWindow) => {
focusedWindow && focusedWindow.rpc.emit('session del word left req'); focusedWindow?.rpc.emit('session del word left req');
}, },
'editor:deleteNextWord': (focusedWindow) => { 'editor:deleteNextWord': (focusedWindow) => {
focusedWindow && focusedWindow.rpc.emit('session del word right req'); focusedWindow?.rpc.emit('session del word right req');
}, },
'editor:deleteBeginningLine': (focusedWindow) => { 'editor:deleteBeginningLine': (focusedWindow) => {
focusedWindow && focusedWindow.rpc.emit('session del line beginning req'); focusedWindow?.rpc.emit('session del line beginning req');
}, },
'editor:deleteEndLine': (focusedWindow) => { 'editor:deleteEndLine': (focusedWindow) => {
focusedWindow && focusedWindow.rpc.emit('session del line end req'); focusedWindow?.rpc.emit('session del line end req');
}, },
'editor:break': (focusedWindow) => { 'editor:break': (focusedWindow) => {
focusedWindow && focusedWindow.rpc.emit('session break req'); focusedWindow?.rpc.emit('session break req');
}, },
'editor:search': (focusedWindow) => { 'editor:search': (focusedWindow) => {
focusedWindow && focusedWindow.rpc.emit('session search'); focusedWindow?.rpc.emit('session search');
}, },
'editor:search-close': (focusedWindow) => { 'editor:search-close': (focusedWindow) => {
focusedWindow && focusedWindow.rpc.emit('session search close'); focusedWindow?.rpc.emit('session search close');
}, },
'cli:install': () => { 'cli:install': () => {
installCLI(true); installCLI(true);
@ -121,7 +121,7 @@ const commands: Record<string, (focusedWindow?: BrowserWindow) => void> = {
([1, 2, 3, 4, 5, 6, 7, 8, 'last'] as const).forEach((cmdIndex) => { ([1, 2, 3, 4, 5, 6, 7, 8, 'last'] as const).forEach((cmdIndex) => {
const index = cmdIndex === 'last' ? cmdIndex : cmdIndex - 1; const index = cmdIndex === 'last' ? cmdIndex : cmdIndex - 1;
commands[`tab:jump:${cmdIndex}`] = (focusedWindow) => { commands[`tab:jump:${cmdIndex}`] = (focusedWindow) => {
focusedWindow && focusedWindow.rpc.emit('move jump req', index); focusedWindow?.rpc.emit('move jump req', index);
}; };
}); });

View file

@ -34,7 +34,7 @@ export const createMenu = (
let updateChannel = 'stable'; let updateChannel = 'stable';
if (config && config.updateChannel && config.updateChannel === 'canary') { if (config?.updateChannel && config.updateChannel === 'canary') {
updateChannel = 'canary'; updateChannel = 'canary';
} }

View file

@ -31,7 +31,7 @@ export default class SearchBox extends React.PureComponent<SearchBoxProps> {
render() { render() {
return ( return (
<div style={searchBoxStyling}> <div style={searchBoxStyling}>
<input type="text" className="search-box" onKeyUp={this.handleChange} ref={(input) => input && input.focus()} /> <input type="text" className="search-box" onKeyUp={this.handleChange} ref={(input) => input?.focus()} />
<span className="search-button" onClick={() => this.props.prev(this.searchTerm)}> <span className="search-button" onClick={() => this.props.prev(this.searchTerm)}>
{' '} {' '}
&#x2190;{' '} &#x2190;{' '}