mirror of
https://github.com/yu-i-i/overleaf-cep.git
synced 2026-05-29 12:01:32 +02:00
Merge pull request #21107 from overleaf/jdt-error-assistant-freemium
Convert Ai Error Assistant to a Freemium Model GitOrigin-RevId: 348c19262928d7dde8236baf37663c85d91f101a
This commit is contained in:
committed by
Copybot
parent
3b11f8d0b0
commit
4fc2e0a2e1
@@ -348,6 +348,9 @@ const _ProjectController = {
|
||||
'write-and-cite-ars',
|
||||
'default-visual-for-beginners',
|
||||
'hotjar',
|
||||
'spell-check-client',
|
||||
'spell-check-no-server',
|
||||
'ai-add-on',
|
||||
].filter(Boolean)
|
||||
|
||||
const getUserValues = async userId =>
|
||||
@@ -646,6 +649,21 @@ const _ProjectController = {
|
||||
aiFeaturesAllowed = false
|
||||
}
|
||||
}
|
||||
const canUseErrorAssistant =
|
||||
user.features?.aiErrorAssistant ||
|
||||
splitTestAssignments['ai-add-on']?.variant === 'enabled'
|
||||
|
||||
let featureUsage = {}
|
||||
|
||||
if (Features.hasFeature('saas')) {
|
||||
const usagesLeft = await Modules.promises.hooks.fire(
|
||||
'remainingFeatureAllocation',
|
||||
userId
|
||||
)
|
||||
usagesLeft?.forEach(usage => {
|
||||
featureUsage = { ...featureUsage, ...usage }
|
||||
})
|
||||
}
|
||||
|
||||
// check if a user has never tried writefull before (writefull.enabled will be null)
|
||||
// if they previously accepted writefull, or are have been already assigned to a trial, user.writefull will be true,
|
||||
@@ -713,6 +731,7 @@ const _ProjectController = {
|
||||
allowedFreeTrial,
|
||||
featureSwitches: user.featureSwitches,
|
||||
features: user.features,
|
||||
featureUsage,
|
||||
refProviders: _.mapValues(user.refProviders, Boolean),
|
||||
writefull: {
|
||||
enabled: Boolean(user.writefull?.enabled && aiFeaturesAllowed),
|
||||
@@ -766,8 +785,7 @@ const _ProjectController = {
|
||||
showSymbolPalette,
|
||||
symbolPaletteAvailable: Features.hasFeature('symbol-palette'),
|
||||
userRestrictions: Array.from(req.userRestrictions || []),
|
||||
showAiErrorAssistant:
|
||||
aiFeaturesAllowed && user.features?.aiErrorAssistant,
|
||||
showAiErrorAssistant: aiFeaturesAllowed && canUseErrorAssistant,
|
||||
detachRole,
|
||||
metadata: { viewport: false },
|
||||
showUpgradePrompt,
|
||||
|
||||
Reference in New Issue
Block a user