This commit is contained in:
Jan Prochazka
2021-01-23 07:22:09 +01:00
parent 37cc86f8d2
commit 451af5d09f
141 changed files with 763 additions and 787 deletions

View File

@@ -10,11 +10,11 @@ import useTheme from '../theme/useTheme';
const AppObjectDiv = styled.div`
padding: 5px;
&:hover {
background-color: ${(props) => props.theme.left_background_blue[1]};
background-color: ${props => props.theme.left_background_blue[1]};
}
cursor: pointer;
white-space: nowrap;
font-weight: ${(props) => (props.isBold ? 'bold' : 'normal')};
font-weight: ${props => (props.isBold ? 'bold' : 'normal')};
`;
const IconWrap = styled.span`
@@ -28,7 +28,7 @@ const StatusIconWrap = styled.span`
const ExtInfoWrap = styled.span`
font-weight: normal;
margin-left: 5px;
color: ${(props) => props.theme.left_font3};
color: ${props => props.theme.left_font3};
`;
export function AppObjectCore({
@@ -50,7 +50,7 @@ export function AppObjectCore({
const theme = useTheme();
const showMenu = useShowMenu();
const handleContextMenu = (event) => {
const handleContextMenu = event => {
if (!Menu) return;
event.preventDefault();
@@ -68,7 +68,7 @@ export function AppObjectCore({
theme={theme}
isBold={isBold}
draggable
onDragStart={(e) => {
onDragStart={e => {
e.dataTransfer.setData('app_object_drag_data', JSON.stringify(data));
}}
{...other}

View File

@@ -22,7 +22,7 @@ const GroupDiv = styled.div`
user-select: none;
padding: 5px;
&:hover {
background-color: ${(props) => props.theme.left_background_blue[1]};
background-color: ${props => props.theme.left_background_blue[1]};
}
cursor: pointer;
white-space: nowrap;
@@ -57,7 +57,7 @@ function AppObjectListItem({
};
if (SubItems) {
commonProps.onClick2 = () => setIsExpanded((v) => !v);
commonProps.onClick2 = () => setIsExpanded(v => !v);
}
if (onObjectClick) {
commonProps.onClick3 = onObjectClick;
@@ -90,9 +90,9 @@ function AppObjectGroup({ group, items }) {
<ExpandIconHolder>
<ExpandIcon isExpanded={isExpanded} />
</ExpandIconHolder>
{group} {items && `(${items.filter((x) => x.component).length})`}
{group} {items && `(${items.filter(x => x.component).length})`}
</GroupDiv>
{isExpanded && items.map((x) => x.component)}
{isExpanded && items.map(x => x.component)}
</>
);
}
@@ -108,7 +108,7 @@ export function AppObjectList({
isExpandable = undefined,
getCommonProps = undefined,
}) {
const createComponent = (data) => (
const createComponent = data => (
<AppObjectListItem
key={AppObjectComponent.extractKey(data)}
AppObjectComponent={AppObjectComponent}
@@ -123,7 +123,7 @@ export function AppObjectList({
if (groupFunc) {
const listGrouped = _.compact(
(list || []).map((data) => {
(list || []).map(data => {
const matcher = AppObjectComponent.createMatcher && AppObjectComponent.createMatcher(data);
if (matcher && !matcher(filter)) return null;
const component = createComponent(data);
@@ -132,12 +132,12 @@ export function AppObjectList({
})
);
const groups = _.groupBy(listGrouped, 'group');
return (groupOrdered || _.keys(groups)).map((group) => (
return (groupOrdered || _.keys(groups)).map(group => (
<AppObjectGroup key={group} group={group} items={groups[group]} />
));
}
return (list || []).map((data) => {
return (list || []).map(data => {
const matcher = AppObjectComponent.createMatcher && AppObjectComponent.createMatcher(data);
if (matcher && !matcher(filter)) return null;
return createComponent(data);

View File

@@ -69,7 +69,7 @@ function ArchiveFileAppObject({ data, commonProps }) {
);
}
ArchiveFileAppObject.extractKey = (data) => data.fileName;
ArchiveFileAppObject.createMatcher = ({ fileName }) => (filter) => filterName(filter, fileName);
ArchiveFileAppObject.extractKey = data => data.fileName;
ArchiveFileAppObject.createMatcher = ({ fileName }) => filter => filterName(filter, fileName);
export default ArchiveFileAppObject;

View File

@@ -28,7 +28,7 @@ function ArchiveFolderAppObject({ data, commonProps }) {
);
}
ArchiveFolderAppObject.extractKey = (data) => data.name;
ArchiveFolderAppObject.createMatcher = (data) => (filter) => filterName(filter, data.name);
ArchiveFolderAppObject.extractKey = data => data.name;
ArchiveFolderAppObject.createMatcher = data => filter => filterName(filter, data.name);
export default ArchiveFolderAppObject;

View File

@@ -8,10 +8,10 @@ import { AppObjectCore } from './AppObjectCore';
function Menu({ data }) {
const setOpenedTabs = useSetOpenedTabs();
const handleDelete = () => {
setOpenedTabs((tabs) => tabs.filter((x) => x.tabid != data.tabid));
setOpenedTabs(tabs => tabs.filter(x => x.tabid != data.tabid));
};
const handleDeleteOlder = () => {
setOpenedTabs((tabs) => tabs.filter((x) => !x.closedTime || x.closedTime >= data.closedTime));
setOpenedTabs(tabs => tabs.filter(x => !x.closedTime || x.closedTime >= data.closedTime));
};
return (
<>
@@ -26,8 +26,8 @@ function ClosedTabAppObject({ data, commonProps }) {
const setOpenedTabs = useSetOpenedTabs();
const onClick = () => {
setOpenedTabs((files) =>
files.map((x) => ({
setOpenedTabs(files =>
files.map(x => ({
...x,
selected: x.tabid == tabid,
closedTime: x.tabid == tabid ? undefined : x.closedTime,
@@ -49,6 +49,6 @@ function ClosedTabAppObject({ data, commonProps }) {
);
}
ClosedTabAppObject.extractKey = (data) => data.tabid;
ClosedTabAppObject.extractKey = data => data.tabid;
export default ClosedTabAppObject;

View File

@@ -19,10 +19,10 @@ function Menu({ data }) {
const config = useConfig();
const handleEdit = () => {
showModal((modalState) => <ConnectionModal modalState={modalState} connection={data} />);
showModal(modalState => <ConnectionModal modalState={modalState} connection={data} />);
};
const handleDelete = () => {
showModal((modalState) => (
showModal(modalState => (
<ConfirmModal
modalState={modalState}
message={`Really delete connection ${data.displayName || data.server}?`}
@@ -31,16 +31,16 @@ function Menu({ data }) {
));
};
const handleCreateDatabase = () => {
showModal((modalState) => <CreateDatabaseModal modalState={modalState} conid={data._id} />);
showModal(modalState => <CreateDatabaseModal modalState={modalState} conid={data._id} />);
};
const handleRefresh = () => {
axios.post('server-connections/refresh', { conid: data._id });
};
const handleDisconnect = () => {
setOpenedConnections((list) => list.filter((x) => x != data._id));
setOpenedConnections(list => list.filter(x => x != data._id));
};
const handleConnect = () => {
setOpenedConnections((list) => [...list, data._id]);
setOpenedConnections(list => [...list, data._id]);
};
return (
<>
@@ -72,13 +72,13 @@ function ConnectionAppObject({ data, commonProps }) {
const extensions = useExtensions();
const isBold = _.get(currentDatabase, 'connection._id') == _id;
const onClick = () => setOpenedConnections((c) => [...c, _id]);
const onClick = () => setOpenedConnections(c => [...c, _id]);
let statusIcon = null;
let statusTitle = null;
let extInfo = null;
if (extensions.drivers.find((x) => x.engine == engine)) {
if (extensions.drivers.find(x => x.engine == engine)) {
const match = (engine || '').match(/^([^@]*)@/);
extInfo = match ? match[1] : engine;
} else {
@@ -113,7 +113,7 @@ function ConnectionAppObject({ data, commonProps }) {
);
}
ConnectionAppObject.extractKey = (data) => data._id;
ConnectionAppObject.createMatcher = ({ displayName, server }) => (filter) => filterName(filter, displayName, server);
ConnectionAppObject.extractKey = data => data._id;
ConnectionAppObject.createMatcher = ({ displayName, server }) => filter => filterName(filter, displayName, server);
export default ConnectionAppObject;

View File

@@ -32,7 +32,7 @@ function Menu({ data }) {
};
const handleImport = () => {
showModal((modalState) => (
showModal(modalState => (
<ImportExportModal
modalState={modalState}
initialValues={{
@@ -46,7 +46,7 @@ function Menu({ data }) {
};
const handleExport = () => {
showModal((modalState) => (
showModal(modalState => (
<ImportExportModal
modalState={modalState}
initialValues={{
@@ -85,6 +85,6 @@ function DatabaseAppObject({ data, commonProps }) {
);
}
DatabaseAppObject.extractKey = (props) => props.name;
DatabaseAppObject.extractKey = props => props.name;
export default DatabaseAppObject;

View File

@@ -168,12 +168,12 @@ function Menu({ data }) {
return (
<>
{menus[data.objectTypeField].map((menu) => (
{menus[data.objectTypeField].map(menu => (
<DropDownMenuItem
key={menu.label}
onClick={async () => {
if (menu.isExport) {
showModal((modalState) => (
showModal(modalState => (
<ImportExportModal
modalState={modalState}
initialValues={{
@@ -303,6 +303,6 @@ function DatabaseObjectAppObject({ data, commonProps }) {
DatabaseObjectAppObject.extractKey = ({ schemaName, pureName }) =>
schemaName ? `${schemaName}.${pureName}` : pureName;
DatabaseObjectAppObject.createMatcher = ({ pureName }) => (filter) => filterName(filter, pureName);
DatabaseObjectAppObject.createMatcher = ({ pureName }) => filter => filterName(filter, pureName);
export default DatabaseObjectAppObject;

View File

@@ -12,7 +12,7 @@ export function useOpenFavorite() {
const openNewTab = useOpenNewTab();
const openFavorite = React.useCallback(
async (favorite) => {
async favorite => {
const { icon, tabComponent, title, props, tabdata } = favorite;
let tabdataNew = tabdata;
if (props.savedFile) {
@@ -50,7 +50,7 @@ export function FavoriteFileAppObject({ data, commonProps }) {
const electron = getElectron();
const editFavorite = () => {
showModal((modalState) => <FavoriteModal modalState={modalState} editingData={data} />);
showModal(modalState => <FavoriteModal modalState={modalState} editingData={data} />);
};
const editFavoriteJson = async () => {
@@ -87,7 +87,7 @@ export function FavoriteFileAppObject({ data, commonProps }) {
icon={icon || 'img favorite'}
title={title}
disableRename
onLoad={async (data) => {
onLoad={async data => {
openFavorite(data);
}}
menuExt={
@@ -101,4 +101,4 @@ export function FavoriteFileAppObject({ data, commonProps }) {
);
}
FavoriteFileAppObject.extractKey = (data) => data.file;
FavoriteFileAppObject.extractKey = data => data.file;

View File

@@ -9,7 +9,7 @@ function MacroAppObject({ data, commonProps }) {
return <AppObjectCore {...commonProps} data={data} title={title} icon={'img macro'} />;
}
MacroAppObject.extractKey = (data) => data.name;
MacroAppObject.createMatcher = ({ name, title }) => (filter) => filterName(filter, name, title);
MacroAppObject.extractKey = data => data.name;
MacroAppObject.createMatcher = ({ name, title }) => filter => filterName(filter, name, title);
export default MacroAppObject;

View File

@@ -17,7 +17,7 @@ function Menu({ data, menuExt = null, title = undefined, disableRename = false }
const hasPermission = useHasPermission();
const showModal = useShowModal();
const handleDelete = () => {
showModal((modalState) => (
showModal(modalState => (
<ConfirmModal
modalState={modalState}
message={`Really delete file ${title || data.file}?`}
@@ -28,13 +28,13 @@ function Menu({ data, menuExt = null, title = undefined, disableRename = false }
));
};
const handleRename = () => {
showModal((modalState) => (
showModal(modalState => (
<InputTextModal
modalState={modalState}
value={data.file}
label="New file name"
header="Rename file"
onConfirm={(newFile) => {
onConfirm={newFile => {
axios.post('files/rename', { ...data, newFile });
}}
/>
@@ -77,7 +77,7 @@ export function SavedFileAppObjectBase({
title={title || file}
icon={icon}
onClick={onClick}
Menu={(props) => <Menu {...props} menuExt={menuExt} title={title} disableRename={disableRename} />}
Menu={props => <Menu {...props} menuExt={menuExt} title={title} disableRename={disableRename} />}
/>
);
}
@@ -123,7 +123,7 @@ export function SavedSqlFileAppObject({ data, commonProps }) {
<DropDownMenuItem onClick={handleGenerateExecute}>Generate shell execute</DropDownMenuItem>
) : null
}
onLoad={(data) => {
onLoad={data => {
newQuery({
title: file,
initialData: data,
@@ -147,7 +147,7 @@ export function SavedShellFileAppObject({ data, commonProps }) {
commonProps={commonProps}
format="text"
icon="img shell"
onLoad={(data) => {
onLoad={data => {
openNewTab(
{
title: file,
@@ -183,7 +183,7 @@ export function SavedChartFileAppObject({ data, commonProps }) {
commonProps={commonProps}
format="json"
icon="img chart"
onLoad={(data) => {
onLoad={data => {
openNewTab(
{
title: file,
@@ -222,7 +222,7 @@ export function SavedQueryFileAppObject({ data, commonProps }) {
commonProps={commonProps}
format="json"
icon="img query-design"
onLoad={(data) => {
onLoad={data => {
openNewTab(
{
title: file,
@@ -266,7 +266,7 @@ export function SavedMarkdownFileAppObject({ data, commonProps }) {
commonProps={commonProps}
format="text"
icon="img markdown"
onLoad={(data) => {
onLoad={data => {
openNewTab(
{
title: file,
@@ -308,7 +308,7 @@ export function SavedFileAppObject({ data, commonProps }) {
SavedChartFileAppObject,
SavedMarkdownFileAppObject,
SavedFileAppObject,
].forEach((fn) => {
].forEach(fn => {
// @ts-ignore
fn.extractKey = (data) => data.file;
fn.extractKey = data => data.file;
});