🔧 kafka-powered search + download
This commit is contained in:
@@ -125,26 +125,26 @@ export const AcquisitionPanel = (
|
|||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|
||||||
socketIOInstance.on("searchResultAdded", (data: SearchResult) => {
|
socketIOInstance.on("searchResultAdded", ({ groupedResult }: any) => {
|
||||||
setAirDCPPSearchResults((previousState) => {
|
setAirDCPPSearchResults((previousState) => {
|
||||||
const exists = previousState.some(
|
const exists = previousState.some(
|
||||||
(item) => data.result.id === item.result.id,
|
(item) => groupedResult.result.id === item.result.id,
|
||||||
);
|
);
|
||||||
if (!exists) {
|
if (!exists) {
|
||||||
return [...previousState, data];
|
return [...previousState, groupedResult];
|
||||||
}
|
}
|
||||||
return previousState;
|
return previousState;
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
socketIOInstance.on("searchResultUpdated", (groupedResult: SearchResult) => {
|
socketIOInstance.on("searchResultUpdated", ({ updatedResult }: any) => {
|
||||||
// ...update properties of the existing result in the UI
|
// ...update properties of the existing result in the UI
|
||||||
const bundleToUpdateIndex = airDCPPSearchResults?.findIndex(
|
const bundleToUpdateIndex = airDCPPSearchResults?.findIndex(
|
||||||
(bundle) => bundle.result.id === groupedResult.result.id,
|
(bundle) => bundle.result.id === updatedResult.result.id,
|
||||||
);
|
);
|
||||||
const updatedState = [...airDCPPSearchResults];
|
const updatedState = [...airDCPPSearchResults];
|
||||||
if (!isNil(difference(updatedState[bundleToUpdateIndex], groupedResult))) {
|
if (!isNil(difference(updatedState[bundleToUpdateIndex], updatedResult))) {
|
||||||
updatedState[bundleToUpdateIndex] = groupedResult;
|
updatedState[bundleToUpdateIndex] = updatedResult;
|
||||||
}
|
}
|
||||||
setAirDCPPSearchResults((state) => [...state, ...updatedState]);
|
setAirDCPPSearchResults((state) => [...state, ...updatedState]);
|
||||||
});
|
});
|
||||||
@@ -255,8 +255,8 @@ export const AcquisitionPanel = (
|
|||||||
<div className="">
|
<div className="">
|
||||||
<article className="">
|
<article className="">
|
||||||
<div className="">
|
<div className="">
|
||||||
AirDC++ is not configured. Please configure it in{" "}
|
No AirDC++ hub configured. Please configure it in{" "}
|
||||||
<code>Settings > AirDC++ > Connection</code>.
|
<code>Settings > AirDC++ > Hubs</code>.
|
||||||
</div>
|
</div>
|
||||||
</article>
|
</article>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -63,7 +63,6 @@ export const Search = ({}: ISearchProps): ReactElement => {
|
|||||||
markEntireVolumeWanted,
|
markEntireVolumeWanted,
|
||||||
resourceType,
|
resourceType,
|
||||||
}) => {
|
}) => {
|
||||||
console.log("jigni", comicObject);
|
|
||||||
let volumeInformation = {};
|
let volumeInformation = {};
|
||||||
let issues = [];
|
let issues = [];
|
||||||
switch (resourceType) {
|
switch (resourceType) {
|
||||||
@@ -73,11 +72,12 @@ export const Search = ({}: ISearchProps): ReactElement => {
|
|||||||
// Add issue metadata
|
// Add issue metadata
|
||||||
issues.push({
|
issues.push({
|
||||||
id,
|
id,
|
||||||
api_detail_url,
|
url: api_detail_url,
|
||||||
image,
|
image,
|
||||||
coverDate: cover_date,
|
coverDate: cover_date,
|
||||||
issueNumber: issue_number,
|
issueNumber: issue_number,
|
||||||
});
|
});
|
||||||
|
console.log(issues);
|
||||||
// Get volume metadata from CV
|
// Get volume metadata from CV
|
||||||
const response = await axios({
|
const response = await axios({
|
||||||
url: `${COMICVINE_SERVICE_URI}/getVolumes`,
|
url: `${COMICVINE_SERVICE_URI}/getVolumes`,
|
||||||
|
|||||||
Reference in New Issue
Block a user