in src/amo/api/reviews.js [63:105]
export function submitReview({
addonId,
score,
apiState,
versionId,
body,
reviewId,
...apiCallParams
}: SubmitReviewParams): Promise<SubmitReviewResponse> {
return new Promise((resolve) => {
const review = {
addon: undefined,
score,
version: versionId,
body,
};
let method = 'POST';
let endpoint = 'ratings/rating';
if (reviewId) {
endpoint = `${endpoint}/${reviewId}`;
method = 'PATCH';
// You cannot update the version of an existing review.
review.version = undefined;
} else {
if (!addonId) {
throw new Error('addonId is required when posting a new review');
}
review.addon = addonId;
}
resolve(
callApi({
endpoint,
body: review,
method,
auth: true,
apiState,
...apiCallParams,
}),
);
});
}