diff --git a/src/renderer/__mocks__/state-mocks.ts b/src/renderer/__mocks__/state-mocks.ts
index 4a879e857..a12d6ce96 100644
--- a/src/renderer/__mocks__/state-mocks.ts
+++ b/src/renderer/__mocks__/state-mocks.ts
@@ -109,6 +109,7 @@ const mockFilters: FilterSettingsState = {
filterUserTypes: [],
filterIncludeHandles: [],
filterExcludeHandles: [],
+ filterSubjectTypes: [],
filterStates: [],
filterReasons: [],
};
diff --git a/src/renderer/components/filters/StateFilter.tsx b/src/renderer/components/filters/StateFilter.tsx
index 5d6fce034..4a453035d 100644
--- a/src/renderer/components/filters/StateFilter.tsx
+++ b/src/renderer/components/filters/StateFilter.tsx
@@ -1,6 +1,6 @@
import { type FC, useContext } from 'react';
-import { BellIcon } from '@primer/octicons-react';
+import { IssueOpenedIcon } from '@primer/octicons-react';
import { Stack, Text } from '@primer/react';
import { AppContext } from '../../context/App';
@@ -21,7 +21,7 @@ export const StateFilter: FC = () => {
return (
+ );
+};
diff --git a/src/renderer/components/filters/__snapshots__/StateFilter.test.tsx.snap b/src/renderer/components/filters/__snapshots__/StateFilter.test.tsx.snap
index e0537e360..ea0c2df73 100644
--- a/src/renderer/components/filters/__snapshots__/StateFilter.test.tsx.snap
+++ b/src/renderer/components/filters/__snapshots__/StateFilter.test.tsx.snap
@@ -419,7 +419,7 @@ exports[`renderer/components/filters/StateFilter.tsx should render itself & its
>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+`;
+
+exports[`renderer/components/filters/SubjectTypeFilter.tsx should be able to toggle subject type - some filters already set 1`] = `
+
+`;
+
+exports[`renderer/components/filters/SubjectTypeFilter.tsx should render itself & its children 1`] = `
+{
+ "asFragment": [Function],
+ "baseElement":
+
+ ,
+ "container": ,
+ "debug": [Function],
+ "findAllByAltText": [Function],
+ "findAllByDisplayValue": [Function],
+ "findAllByLabelText": [Function],
+ "findAllByPlaceholderText": [Function],
+ "findAllByRole": [Function],
+ "findAllByTestId": [Function],
+ "findAllByText": [Function],
+ "findAllByTitle": [Function],
+ "findByAltText": [Function],
+ "findByDisplayValue": [Function],
+ "findByLabelText": [Function],
+ "findByPlaceholderText": [Function],
+ "findByRole": [Function],
+ "findByTestId": [Function],
+ "findByText": [Function],
+ "findByTitle": [Function],
+ "getAllByAltText": [Function],
+ "getAllByDisplayValue": [Function],
+ "getAllByLabelText": [Function],
+ "getAllByPlaceholderText": [Function],
+ "getAllByRole": [Function],
+ "getAllByTestId": [Function],
+ "getAllByText": [Function],
+ "getAllByTitle": [Function],
+ "getByAltText": [Function],
+ "getByDisplayValue": [Function],
+ "getByLabelText": [Function],
+ "getByPlaceholderText": [Function],
+ "getByRole": [Function],
+ "getByTestId": [Function],
+ "getByText": [Function],
+ "getByTitle": [Function],
+ "queryAllByAltText": [Function],
+ "queryAllByDisplayValue": [Function],
+ "queryAllByLabelText": [Function],
+ "queryAllByPlaceholderText": [Function],
+ "queryAllByRole": [Function],
+ "queryAllByTestId": [Function],
+ "queryAllByText": [Function],
+ "queryAllByTitle": [Function],
+ "queryByAltText": [Function],
+ "queryByDisplayValue": [Function],
+ "queryByLabelText": [Function],
+ "queryByPlaceholderText": [Function],
+ "queryByRole": [Function],
+ "queryByTestId": [Function],
+ "queryByText": [Function],
+ "queryByTitle": [Function],
+ "rerender": [Function],
+ "unmount": [Function],
+}
+`;
diff --git a/src/renderer/context/App.tsx b/src/renderer/context/App.tsx
index 8e0199276..d3421e6c2 100644
--- a/src/renderer/context/App.tsx
+++ b/src/renderer/context/App.tsx
@@ -101,6 +101,7 @@ export const defaultFilters: FilterSettingsState = {
filterUserTypes: [],
filterIncludeHandles: [],
filterExcludeHandles: [],
+ filterSubjectTypes: [],
filterStates: [],
filterReasons: [],
};
diff --git a/src/renderer/routes/Filters.tsx b/src/renderer/routes/Filters.tsx
index b6906c9aa..0b801c943 100644
--- a/src/renderer/routes/Filters.tsx
+++ b/src/renderer/routes/Filters.tsx
@@ -5,6 +5,7 @@ import { Button, Stack, Tooltip } from '@primer/react';
import { ReasonFilter } from '../components/filters/ReasonFilter';
import { StateFilter } from '../components/filters/StateFilter';
+import { SubjectTypeFilter } from '../components/filters/SubjectTypeFilter';
import { UserHandleFilter } from '../components/filters/UserHandleFilter';
import { UserTypeFilter } from '../components/filters/UserTypeFilter';
import { Contents } from '../components/layout/Contents';
@@ -26,6 +27,7 @@ export const FiltersRoute: FC = () => {
+
diff --git a/src/renderer/routes/__snapshots__/Filters.test.tsx.snap b/src/renderer/routes/__snapshots__/Filters.test.tsx.snap
index dd4639376..68dd6c092 100644
--- a/src/renderer/routes/__snapshots__/Filters.test.tsx.snap
+++ b/src/renderer/routes/__snapshots__/Filters.test.tsx.snap
@@ -500,7 +500,7 @@ exports[`renderer/routes/Filters.tsx General should render itself & its children
+
+ Type
+
+
+
+
+
+
+
+
+
+
+