seach improvement

This commit is contained in:
Jan Prochazka
2020-05-10 21:17:15 +02:00
parent c82f332c42
commit 125ba3b0c8
6 changed files with 82 additions and 65 deletions

View File

@@ -17,13 +17,13 @@ import {
import {
SearchBoxWrapper,
WidgetsInnerContainer,
Input,
WidgetsMainContainer,
WidgetsOuterContainer,
WidgetTitle,
} from './WidgetStyles';
import axios from '../utility/axios';
import LoadingInfo from './LoadingInfo';
import SearchInput from './SearchInput';
function SubDatabaseList({ data }) {
const setDb = useSetCurrentDatabase();
@@ -64,7 +64,7 @@ function ConnectionList() {
<>
<WidgetTitle>Connections</WidgetTitle>
<SearchBoxWrapper>
<Input type="text" placeholder="Search connection" value={filter} onChange={(e) => setFilter(e.target.value)} />
<SearchInput placeholder="Search connection" filter={filter} setFilter={setFilter} />
<InlineButton onClick={handleRefreshConnections}>Refresh</InlineButton>
</SearchBoxWrapper>
@@ -98,12 +98,7 @@ function SqlObjectList({ conid, database }) {
<>
<WidgetTitle>Tables, views, functions</WidgetTitle>
<SearchBoxWrapper>
<Input
type="text"
placeholder="Search tables or objects"
value={filter}
onChange={(e) => setFilter(e.target.value)}
/>
<SearchInput placeholder="Search tables or objects" filter={filter} setFilter={setFilter} />
<InlineButton onClick={handleRefreshDatabase}>Refresh</InlineButton>
</SearchBoxWrapper>
<WidgetsInnerContainer>

View File

@@ -8,7 +8,6 @@ import openedTabAppObject from '../appobj/openedTabAppObject';
import {
SearchBoxWrapper,
WidgetsInnerContainer,
Input,
WidgetsMainContainer,
WidgetsOuterContainer,
WidgetTitle,

View File

@@ -0,0 +1,26 @@
import React from 'react';
import styled from 'styled-components';
import keycodes from '../utility/keycodes';
const StyledInput = styled.input`
flex: 1;
min-width: 90px;
`;
export default function SearchInput({ placeholder, filter, setFilter }) {
const handleKeyDown = (ev) => {
if (ev.keyCode == keycodes.escape) {
setFilter('');
}
};
return (
<StyledInput
type="text"
placeholder={placeholder}
value={filter}
onChange={(e) => setFilter(e.target.value)}
onFocus={(e) => e.target.select()}
onKeyDown={handleKeyDown}
/>
);
}

View File

@@ -43,10 +43,10 @@ export function WidgetsInnerContainer({ children }) {
return <StyledWidgetsInnerContainer leftPanelWidth={leftPanelWidth}>{children}</StyledWidgetsInnerContainer>;
}
export const Input = styled.input`
flex: 1;
min-width: 90px;
`;
// export const Input = styled.input`
// flex: 1;
// min-width: 90px;
// `;
export const WidgetTitle = styled.div`
padding: 5px;