mirror of
https://github.com/yu-i-i/overleaf-cep.git
synced 2026-05-28 19:41:33 +02:00
Migrate purchaseAddon to zod
GitOrigin-RevId: 532b2f3b04dc9ef7b149a4caaa62fe8495d78622
This commit is contained in:
@@ -40,6 +40,7 @@ const PermissionsManager = require('../Authorization/PermissionsManager')
|
||||
const {
|
||||
sanitizeSessionUserForFrontEnd,
|
||||
} = require('../../infrastructure/FrontEndUser')
|
||||
const { z, validateReq } = require('../../infrastructure/Validation')
|
||||
const { IndeterminateInvoiceError } = require('../Errors/Errors')
|
||||
const SubscriptionLocator = require('./SubscriptionLocator')
|
||||
|
||||
@@ -564,9 +565,16 @@ async function previewAddonPurchase(req, res) {
|
||||
})
|
||||
}
|
||||
|
||||
const purchaseAddonSchema = z.object({
|
||||
params: z.object({
|
||||
addOnCode: z.string(),
|
||||
}),
|
||||
})
|
||||
|
||||
async function purchaseAddon(req, res, next) {
|
||||
const user = SessionManager.getSessionUser(req.session)
|
||||
const addOnCode = req.params.addOnCode
|
||||
const { params } = validateReq(req, purchaseAddonSchema)
|
||||
const addOnCode = params.addOnCode
|
||||
// currently we only support having a quantity of 1
|
||||
const quantity = 1
|
||||
// currently we only support one add-on, the Ai add-on
|
||||
|
||||
@@ -177,11 +177,6 @@ export default {
|
||||
webRouter.post(
|
||||
'/user/subscription/addon/:addOnCode/add',
|
||||
AuthenticationController.requireLogin(),
|
||||
validate({
|
||||
params: Joi.object({
|
||||
addOnCode: Joi.string(),
|
||||
}),
|
||||
}),
|
||||
RateLimiterMiddleware.rateLimit(subscriptionRateLimiter),
|
||||
SubscriptionController.purchaseAddon
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user