feat: add showPublicScores and showPublicOpinions flags to services with plan-based access control
This commit is contained in:
@@ -32,6 +32,16 @@ const renderStars = (score: number): string => {
|
||||
|
||||
const formatScore = (score: number): string => score.toFixed(1);
|
||||
|
||||
const sortReviewsByScore = (reviews: RatingTargetReviewItem[]): RatingTargetReviewItem[] => {
|
||||
return [...reviews].sort((firstReview, secondReview) => {
|
||||
if (secondReview.score !== firstReview.score) {
|
||||
return secondReview.score - firstReview.score;
|
||||
}
|
||||
|
||||
return new Date(secondReview.createdAt).getTime() - new Date(firstReview.createdAt).getTime();
|
||||
});
|
||||
};
|
||||
|
||||
export default function ReviewsCarousel({
|
||||
targetType,
|
||||
targetId,
|
||||
@@ -50,7 +60,7 @@ export default function ReviewsCarousel({
|
||||
ratingTargetReviews({ targetType, targetId, limit })
|
||||
.then((targetReviews) => {
|
||||
if (active) {
|
||||
setReviews(targetReviews.filter((review) => review.comment.trim().length > 0));
|
||||
setReviews(sortReviewsByScore(targetReviews.filter((review) => review.comment.trim().length > 0)));
|
||||
}
|
||||
})
|
||||
.catch(() => {
|
||||
|
||||
Reference in New Issue
Block a user