free-plan.tsx 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. import { useTranslation, Trans } from 'react-i18next'
  2. import WritefullManagedBundleAddOn from '@/features/subscription/components/dashboard/states/active/change-plan/modals/writefull-bundle-management-modal'
  3. import getMeta from '@/utils/meta'
  4. import { useFeatureFlag } from '@/shared/context/split-test-context'
  5. function FreePlan() {
  6. const { t } = useTranslation()
  7. const hasAiAssistViaWritefull = getMeta('ol-hasAiAssistViaWritefull')
  8. const plans2026 = useFeatureFlag('plans-2026-phase-1')
  9. return (
  10. <>
  11. {plans2026 ? (
  12. t('you_are_using_our_free_plan')
  13. ) : (
  14. <Trans
  15. i18nKey="on_free_plan_upgrade_to_access_features"
  16. components={[
  17. // eslint-disable-next-line react/jsx-key, jsx-a11y/anchor-has-content
  18. <a
  19. href="/learn/how-to/Overleaf_premium_features"
  20. target="_blank"
  21. />,
  22. ]}
  23. />
  24. )}
  25. :
  26. <ul>
  27. <li>{t('invite_more_collabs')}</li>
  28. {plans2026 && <li>{t('get_unlimited_ai')}</li>}
  29. {!plans2026 && <li>{t('realtime_track_changes')}</li>}
  30. <li>{t('full_doc_history')}</li>
  31. <li>{t('reference_search')}</li>
  32. <li>{t('reference_sync')}</li>
  33. <li>{t('dropbox_integration_lowercase')}</li>
  34. <li>{t('github_integration_lowercase')}</li>
  35. {!plans2026 && <li>{t('priority_support')}</li>}
  36. </ul>
  37. <a className="btn btn-primary me-1" href="/user/subscription/plans">
  38. {t('upgrade_now')}
  39. </a>
  40. {hasAiAssistViaWritefull && (
  41. <>
  42. <h2 className="h3 fw-bold">{t('add_ons')}</h2>
  43. <WritefullManagedBundleAddOn />
  44. </>
  45. )}
  46. </>
  47. )
  48. }
  49. export default FreePlan