🪢 Unwrangling state vars for global search vs local
This commit is contained in:
@@ -31,6 +31,7 @@ import {
|
|||||||
LS_TOGGLE_IMPORT_QUEUE,
|
LS_TOGGLE_IMPORT_QUEUE,
|
||||||
SS_SEARCH_FAILED,
|
SS_SEARCH_FAILED,
|
||||||
SS_SEARCH_RESULTS_FETCHED_SPECIAL,
|
SS_SEARCH_RESULTS_FETCHED_SPECIAL,
|
||||||
|
WANTED_COMICS_FETCHED,
|
||||||
} from "../constants/action-types";
|
} from "../constants/action-types";
|
||||||
import { success } from "react-notification-system-redux";
|
import { success } from "react-notification-system-redux";
|
||||||
import { removeLeadingPeriod } from "../shared/utils/formatting.utils";
|
import { removeLeadingPeriod } from "../shared/utils/formatting.utils";
|
||||||
@@ -288,21 +289,40 @@ export const searchIssue = (query, options) => async (dispatch) => {
|
|||||||
method: "POST",
|
method: "POST",
|
||||||
data: { ...query, ...options },
|
data: { ...query, ...options },
|
||||||
});
|
});
|
||||||
console.log("options", options);
|
|
||||||
if (response.data.code === 404) {
|
if (response.data.code === 404) {
|
||||||
dispatch({
|
dispatch({
|
||||||
type: SS_SEARCH_FAILED,
|
type: SS_SEARCH_FAILED,
|
||||||
data: response.data,
|
data: response.data,
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
dispatch({
|
|
||||||
type: SS_SEARCH_RESULTS_FETCHED,
|
switch (options.trigger) {
|
||||||
data: response.data.body,
|
case "wantedComicsPage":
|
||||||
});
|
dispatch({
|
||||||
dispatch({
|
type: WANTED_COMICS_FETCHED,
|
||||||
type: SS_SEARCH_RESULTS_FETCHED_SPECIAL,
|
data: response.data.body,
|
||||||
data: response.data.body,
|
});
|
||||||
});
|
break;
|
||||||
|
case "globalSearchBar":
|
||||||
|
dispatch({
|
||||||
|
type: SS_SEARCH_RESULTS_FETCHED_SPECIAL,
|
||||||
|
data: response.data.body,
|
||||||
|
});
|
||||||
|
break;
|
||||||
|
|
||||||
|
case "libraryPage":
|
||||||
|
dispatch({
|
||||||
|
type: SS_SEARCH_RESULTS_FETCHED,
|
||||||
|
data: response.data.body,
|
||||||
|
});
|
||||||
|
break;
|
||||||
|
|
||||||
|
default:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
};
|
};
|
||||||
export const analyzeImage =
|
export const analyzeImage =
|
||||||
(imageFilePath: string | Buffer) => async (dispatch) => {
|
(imageFilePath: string | Buffer) => async (dispatch) => {
|
||||||
|
|||||||
@@ -31,6 +31,7 @@ export const SearchBar = (data: ISearchBarProps): ReactElement => {
|
|||||||
from: 0,
|
from: 0,
|
||||||
},
|
},
|
||||||
type: "volumeName",
|
type: "volumeName",
|
||||||
|
trigger: "globalSearchBar"
|
||||||
},
|
},
|
||||||
),
|
),
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -18,13 +18,14 @@ const LibraryContainer = (): ReactElement => {
|
|||||||
from: 0,
|
from: 0,
|
||||||
},
|
},
|
||||||
type: "all",
|
type: "all",
|
||||||
|
trigger: "libraryPage"
|
||||||
},
|
},
|
||||||
),
|
),
|
||||||
);
|
);
|
||||||
}, []);
|
}, []);
|
||||||
|
|
||||||
const searchResults = useSelector(
|
const searchResults = useSelector(
|
||||||
(state: RootState) => state.fileOps.librarySearchResults,
|
(state: RootState) => state.fileOps.libraryComics,
|
||||||
);
|
);
|
||||||
const searchError = useSelector(
|
const searchError = useSelector(
|
||||||
(state: RootState) => state.fileOps.librarySearchError,
|
(state: RootState) => state.fileOps.librarySearchError,
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ import MetadataPanel from "../shared/MetadataPanel";
|
|||||||
|
|
||||||
export const WantedComics = (props): ReactElement => {
|
export const WantedComics = (props): ReactElement => {
|
||||||
const wantedComics = useSelector(
|
const wantedComics = useSelector(
|
||||||
(state: RootState) => state.fileOps.librarySearchResultsFormatted,
|
(state: RootState) => state.fileOps.wantedComics,
|
||||||
);
|
);
|
||||||
const dispatch = useDispatch();
|
const dispatch = useDispatch();
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
@@ -23,6 +23,7 @@ export const WantedComics = (props): ReactElement => {
|
|||||||
from: 0,
|
from: 0,
|
||||||
},
|
},
|
||||||
type: "wanted",
|
type: "wanted",
|
||||||
|
trigger: "wantedComicsPage"
|
||||||
},
|
},
|
||||||
),
|
),
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -44,7 +44,7 @@ const initialState = {
|
|||||||
extractedComicBookArchive: [],
|
extractedComicBookArchive: [],
|
||||||
recentComics: [],
|
recentComics: [],
|
||||||
wantedComics: [],
|
wantedComics: [],
|
||||||
librarySearchResults: [],
|
libraryComics: [],
|
||||||
librarySearchResultsFormatted: [],
|
librarySearchResultsFormatted: [],
|
||||||
librarySearchResultCount: 0,
|
librarySearchResultCount: 0,
|
||||||
libraryQueueResults: [],
|
libraryQueueResults: [],
|
||||||
@@ -190,12 +190,13 @@ function fileOpsReducer(state = initialState, action) {
|
|||||||
case SS_SEARCH_RESULTS_FETCHED: {
|
case SS_SEARCH_RESULTS_FETCHED: {
|
||||||
return {
|
return {
|
||||||
...state,
|
...state,
|
||||||
librarySearchResults: action.data,
|
libraryComics: action.data,
|
||||||
SSCallInProgress: false,
|
SSCallInProgress: false,
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
case SS_SEARCH_RESULTS_FETCHED_SPECIAL: {
|
case SS_SEARCH_RESULTS_FETCHED_SPECIAL: {
|
||||||
const foo = [];
|
const foo = [];
|
||||||
|
console.log(action.data.hits)
|
||||||
if (!isUndefined(action.data.hits)) {
|
if (!isUndefined(action.data.hits)) {
|
||||||
map(action.data.hits.hits, ({ _source }) => {
|
map(action.data.hits.hits, ({ _source }) => {
|
||||||
foo.push(_source);
|
foo.push(_source);
|
||||||
@@ -207,6 +208,19 @@ function fileOpsReducer(state = initialState, action) {
|
|||||||
SSCallInProgress: false,
|
SSCallInProgress: false,
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
case WANTED_COMICS_FETCHED: {
|
||||||
|
const foo = [];
|
||||||
|
if (!isUndefined(action.data.hits)) {
|
||||||
|
map(action.data.hits.hits, ({ _source }) => {
|
||||||
|
foo.push(_source);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
return {
|
||||||
|
...state,
|
||||||
|
wantedComics: foo,
|
||||||
|
SSCallInProgress: false,
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
case SS_SEARCH_FAILED: {
|
case SS_SEARCH_FAILED: {
|
||||||
return {
|
return {
|
||||||
|
|||||||
@@ -2,7 +2,6 @@ import { Socket } from "airdcpp-apisocket";
|
|||||||
|
|
||||||
class AirDCPPSocket {
|
class AirDCPPSocket {
|
||||||
constructor(configuration) {
|
constructor(configuration) {
|
||||||
console.log(configuration);
|
|
||||||
let socketProtocol = "";
|
let socketProtocol = "";
|
||||||
if (configuration.protocol === "https") {
|
if (configuration.protocol === "https") {
|
||||||
socketProtocol = "wss";
|
socketProtocol = "wss";
|
||||||
|
|||||||
Reference in New Issue
Block a user