Browse Source

Merge pull request #2 from QuickMythril/id-fix

Filter reviews by matching case
main
Qortal Dev 5 months ago committed by GitHub
parent
commit
7e650c49d9
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
  1. 5
      src/pages/Store/Store/Store.tsx
  2. 7
      src/pages/Store/StoreReviews/StoreReviews.tsx

5
src/pages/Store/Store/Store.tsx

@ -505,9 +505,12 @@ export const Store = () => {
// Modify resource into data that is more easily used on the front end
const storeRatingsArray = responseData.map((review: any) => {
const splitIdentifier = review.identifier.split("-");
// Return null if idenfier is not an exact match, because search is not case sensitive
const prefixIdentifier = splitIdentifier.slice(0, splitIdentifier.length - 2).join("-");
if (query !== prefixIdentifier) return null;
const rating = Number(splitIdentifier[splitIdentifier.length - 1]) / 10;
return rating;
});
}).filter((rating: number | null) => rating !== null); // Filter out null entries
// Calculate average rating of the store
let averageRating =

7
src/pages/Store/StoreReviews/StoreReviews.tsx

@ -102,8 +102,11 @@ export const StoreReviews: FC<StoreReviewsProps> = ({
const responseData = await response.json();
// Modify resource into data that is more easily used on the front end
const structuredReviewData = responseData.map(
(review: any): StoreReview => {
(review: any): StoreReview | null => {
const splitIdentifier = review.identifier.split("-");
// Return null if idenfier is not an exact match, because search is not case sensitive
const prefixIdentifier = splitIdentifier.slice(0, splitIdentifier.length - 2).join("-");
if (query !== prefixIdentifier) return null;
return {
id: review?.identifier,
name: review?.name,
@ -114,7 +117,7 @@ export const StoreReviews: FC<StoreReviewsProps> = ({
rating: Number(splitIdentifier[splitIdentifier.length - 1]) / 10
};
}
);
).filter((review: StoreReview | null) => review !== null); // Filter out null entries
setHasFetched(true);
// Filter out duplicates by checking if the review id already exists in storeReviews in global redux store

Loading…
Cancel
Save