Skip to content

Commit c940ca4

Browse files
authored
Merge pull request #29 from UncoderIO/ui-fix-4
Add UI improvements
2 parents a3f1313 + 2a99a0e commit c940ca4

File tree

9 files changed

+35
-13
lines changed

9 files changed

+35
-13
lines changed

uncoder-os/.env.common

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
MODULE_VERSION=1.1.0
1+
MODULE_VERSION=1.2.0

uncoder-os/src/components/Dropdown/DropdownLayouts/DropdownIocSettingsMenu/DropdownIocSettingsMenu.tsx

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,12 +10,14 @@ export const DropdownIocSettingsMenu: FC = () => {
1010
const {
1111
iocTypesFields,
1212
exceptionsField,
13+
includeSourceIpField,
1314
iocsPerQueryField,
1415
hashTypesFields,
1516
onChangeIocTypes,
1617
onChangeExceptions,
1718
onChangeIocsPerQuery,
1819
onChangeHashTypes,
20+
onChangeIncludeSourceIp,
1921
iocTypeErrorMessage,
2022
} = useIocSettingsMenu();
2123

@@ -73,5 +75,13 @@ export const DropdownIocSettingsMenu: FC = () => {
7375
value={exceptionsField}
7476
/>
7577
</div>
78+
<div className="ioc-settings-menu-list__checkbox">
79+
<Checkbox
80+
label="Add Source IP to Query with “OR” operator"
81+
onChange={onChangeIncludeSourceIp}
82+
name="addSourceIp"
83+
checked={includeSourceIpField}
84+
/>
85+
</div>
7686
</div>;
7787
};

uncoder-os/src/components/TextEditor/TextEditor.sass

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,3 +48,6 @@
4848
&.ace_scrollbar-v,
4949
&.ace_scrollbar-h
5050
+scrollbars
51+
52+
.d-block
53+
display: block

uncoder-os/src/components/TextEditor/TextEditorSubheader/InputTextEditorSubheader/InputTextEditorMenu/DownloadInputTextButton/DownloadInputTextButton.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ export const DownloadInputTextButton: FC = () => {
1818
}
1919

2020
return (
21-
<Tooltip classes="m-r-6" content="Download">
21+
<Tooltip classes="d-block m-r-6" content="Download">
2222
<Button
2323
classes="button--icon button--xs button--default"
2424
children={<DownloadIcon />}

uncoder-os/src/components/TextEditor/TextEditorSubheader/InputTextEditorSubheader/InputTextEditorMenu/InputTextEditorMenu.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ export const InputTextEditorMenu: FC = () => {
1515

1616
return (
1717
<div className="text-editor-menu-input">
18-
<Tooltip classes="m-r-6" content="Copy">
18+
<Tooltip classes="d-block m-r-6" content="Copy">
1919
<Button
2020
classes="button--icon button--xs button--default"
2121
children={<CopyIcon />}
@@ -26,7 +26,7 @@ export const InputTextEditorMenu: FC = () => {
2626
</Tooltip>
2727
<DownloadInputTextButton />
2828
<ReplaceSettingsButton />
29-
<Tooltip content="Delete">
29+
<Tooltip classes="d-block" content="Delete">
3030
<Button
3131
classes="button--icon button--xs button--default"
3232
children={<DeleteIcon />}

uncoder-os/src/components/TextEditor/TextEditorSubheader/InputTextEditorSubheader/InputTextEditorMenu/ReplaseSettingsButton/ReplaceSettingsButton.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ export const ReplaceSettingsButton: FC = () => {
1818
return (
1919
<Dropdown
2020
button={
21-
<Tooltip classes="m-r-6" content="Filter">
21+
<Tooltip classes="d-block m-r-6" content="Filter">
2222
<Button
2323
classes="button--icon button--xs button--default"
2424
children={<FilterIcon />}

uncoder-os/src/components/TextEditor/TextEditorSubheader/OutputTextEditorSubheader/OutputTextEditorMenu/DownloadOutputTextButton/DownloadOutputTextButton.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ export const DownloadOutputTextButton: FC = () => {
1818
}
1919

2020
return (
21-
<Tooltip classes="m-r-6" content="Download">
21+
<Tooltip classes="d-block m-r-6" content="Download">
2222
<Button
2323
classes="button--icon button--xs button--default"
2424
children={<DownloadIcon />}

uncoder-os/src/components/TextEditor/TextEditorSubheader/OutputTextEditorSubheader/OutputTextEditorMenu/OutputTextEditorMenu.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ export const OutputTextEditorMenu: FC = () => {
1414

1515
return (
1616
<div className="text-editor-menu-output">
17-
<Tooltip classes="m-r-6" content="Copy">
17+
<Tooltip classes="d-block m-r-6" content="Copy">
1818
<Button
1919
classes="button--icon button--xs button--default"
2020
children={<CopyIcon />}
@@ -24,7 +24,7 @@ export const OutputTextEditorMenu: FC = () => {
2424
/>
2525
</Tooltip>
2626
<DownloadOutputTextButton />
27-
<Tooltip content="Delete">
27+
<Tooltip classes="d-block" content="Delete">
2828
<Button
2929
classes="button--icon button--xs button--default"
3030
children={<DeleteIcon />}

uncoder-os/src/hooks/useDetectParserByText/useDetectParserByText.ts

Lines changed: 14 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
1-
import { useDispatch } from 'react-redux';
1+
import { useDispatch, useSelector } from 'react-redux';
22
import { Dispatch } from '@reduxjs/toolkit';
33
import { setPlatformCode } from '../../reduxData/inputEditor';
4-
import { setPlatformCode as setRenderer } from '../../reduxData/outputEditor';
4+
import { outputEditorPlatformCodeSelector, setPlatformCode as setRenderer } from '../../reduxData/outputEditor';
55
import { EditorValueTypes } from '../../types/editorValueTypes';
6+
import { renderersSelector } from '../../reduxData/platforms';
67

78
const isSigma = (text: string): boolean => {
89
return text.includes('title:') && text.includes('logsource:') && text.includes('detection:');
@@ -13,26 +14,34 @@ const isRoota = (text: string): boolean => {
1314
};
1415
export const useDetectParserByText = () => {
1516
const dispatch = useDispatch<Dispatch<any>>();
17+
const renderers = useSelector(renderersSelector);
18+
const outputPlatform = useSelector(outputEditorPlatformCodeSelector);
19+
20+
const resolveRenderer = (): void => {
21+
if (!renderers.filter((renderer) => renderer.id === outputPlatform).length) {
22+
dispatch(setRenderer(EditorValueTypes.none));
23+
}
24+
};
1625

1726
const detectParser = (
1827
text: string,
1928
defaultPlatform: EditorValueTypes | undefined = undefined,
2029
) => {
2130
if (isRoota(text)) {
2231
dispatch(setPlatformCode(EditorValueTypes.roota));
23-
dispatch(setRenderer(EditorValueTypes.none));
32+
resolveRenderer();
2433
return;
2534
}
2635

2736
if (isSigma(text)) {
2837
dispatch(setPlatformCode(EditorValueTypes.sigma));
29-
dispatch(setRenderer(EditorValueTypes.none));
38+
resolveRenderer();
3039
return;
3140
}
3241

3342
if (defaultPlatform) {
3443
dispatch(setPlatformCode(defaultPlatform));
35-
dispatch(setRenderer(EditorValueTypes.none));
44+
resolveRenderer();
3645
}
3746
};
3847

0 commit comments

Comments
 (0)