chore: skipping recase errors in express middleware
This commit is contained in:
3
server/src/external/redis/redisUtils.ts
vendored
3
server/src/external/redis/redisUtils.ts
vendored
@@ -1,5 +1,4 @@
|
||||
import { ErrCode } from "@autumn/shared";
|
||||
import RecaseError from "@/utils/errorUtils.js";
|
||||
import { ErrCode, RecaseError } from "@autumn/shared";
|
||||
import { redis } from "./initRedis.js";
|
||||
|
||||
export const handleAttachRaceCondition = async ({
|
||||
|
||||
@@ -1,11 +1,14 @@
|
||||
import { type AttachConfig, ProrationBehavior } from "@autumn/shared";
|
||||
import {
|
||||
type AttachConfig,
|
||||
ProrationBehavior,
|
||||
RecaseError,
|
||||
} from "@autumn/shared";
|
||||
import type Stripe from "stripe";
|
||||
import { sanitizeSubItems } from "@/external/stripe/stripeSubUtils/getStripeSubItems.js";
|
||||
import { createProrationInvoice } from "@/external/stripe/stripeSubUtils/updateStripeSub/createProrationinvoice.js";
|
||||
import type { AttachParams } from "@/internal/customers/cusProducts/AttachParams.js";
|
||||
import { freeTrialToStripeTimestamp } from "@/internal/products/free-trials/freeTrialUtils.js";
|
||||
import { SubService } from "@/internal/subscriptions/SubService.js";
|
||||
import RecaseError from "@/utils/errorUtils.js";
|
||||
import { nullish } from "@/utils/genUtils.js";
|
||||
import type { ItemSet } from "@/utils/models/ItemSet.js";
|
||||
import type { ExtendedRequest } from "@/utils/models/Request.js";
|
||||
@@ -102,7 +105,7 @@ export const updateStripeSub2 = async ({
|
||||
const { curMainProduct } = attachParamToCusProducts({ attachParams });
|
||||
|
||||
// 2. Create prorations for single use items
|
||||
const { invoiceItems, cusEntIds } = await createUsageInvoiceItems({
|
||||
const { cusEntIds } = await createUsageInvoiceItems({
|
||||
db,
|
||||
attachParams,
|
||||
cusProduct: curMainProduct!,
|
||||
|
||||
@@ -1,4 +1,8 @@
|
||||
import { ErrCode, ProductNotFoundError } from "@autumn/shared";
|
||||
import {
|
||||
ErrCode,
|
||||
ProductNotFoundError,
|
||||
RecaseError as SharedRecaseError,
|
||||
} from "@autumn/shared";
|
||||
import Stripe from "stripe";
|
||||
import RecaseError from "../errorUtils.js";
|
||||
|
||||
@@ -35,6 +39,14 @@ export const handleExpressErrorSkip = ({
|
||||
}) => {
|
||||
const originalUrl = req.originalUrl;
|
||||
|
||||
if (error instanceof SharedRecaseError) {
|
||||
req.logger.warn(`${error.message}, path: ${originalUrl}`);
|
||||
return res.status(error.statusCode).json({
|
||||
message: error.message,
|
||||
code: error.code,
|
||||
});
|
||||
}
|
||||
|
||||
// Handle RecaseError with EntityNotFound code
|
||||
if (error instanceof RecaseError) {
|
||||
if (error.code === ErrCode.EntityNotFound) {
|
||||
|
||||
Reference in New Issue
Block a user