Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
57 changes: 11 additions & 46 deletions src/components/pages/pricing/pricing-table/data/pricing-plans.js
Original file line number Diff line number Diff line change
Expand Up @@ -14,24 +14,18 @@ const PLANS = {
environments: false,
channels: true,
subscribers: 'Unlimited',
guiWorkflow: true,
codeWorkflow: true,
subscriberManagement: true,
topicManagement: true,
workflows: '20',
providers: 'Unlimited',
feedRetention: '24 hours',
delay: '24 hours',
digest: '24 hours',
stepControl: true,
blockEmailEditor: true,
layouts: true,
branding: false,
translations: false,
},
apiRateLimits: {
triggerEvents: '60',
configuration: '20',
global: '30',
},
inbox: {
snoozeMaxDuration: 'Up to 24 hours',
inboxComponent: true,
Expand Down Expand Up @@ -70,24 +64,19 @@ const PLANS = {
environments: false,
channels: true,
subscribers: 'Unlimited',
guiWorkflow: true,
codeWorkflow: true,
subscriberManagement: true,
topicManagement: true,
workflows: '20',
providers: 'Unlimited',
feedRetention: '7 days',
delay: '7 days',
digest: '7 days',
stepControl: true,
blockEmailEditor: true,
layouts: true,
branding: true,
translations: false,
},
apiRateLimits: {
triggerEvents: '240',
configuration: '80',
global: '120',
},

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Verification agent

🧩 Analysis chain

Verify complete removal of apiRateLimits section.

This formatting change likely indicates where the apiRateLimits section was removed. Please verify that the apiRateLimits property has been completely removed from all plan tiers as intended.


🏁 Script executed:

#!/bin/bash
# Description: Verify apiRateLimits section has been completely removed
# Expected: Should return no results if properly removed

echo "Checking for any remaining apiRateLimits references:"
rg -i "apiRateLimit" src/components/pages/pricing/pricing-table/data/pricing-plans.js

Length of output: 200


🏁 Script executed:

#!/bin/bash
# Recursively search for any leftover apiRateLimit(s) references across the repo
echo "Verifying removal of 'apiRateLimit' and 'apiRateLimits' across the repository:"
rg -n -i "apiRateLimits?" .

Length of output: 442


Remove leftover apiRateLimits references in plan-card.jsx

The apiRateLimits property has been removed from the pricing plans data file, but there are still two references in the plan-card component. These will break at runtime and need to be cleaned up or replaced:

• src/components/pages/pricing/pricing-table/plan-card/plan-card.jsx:23
– Remove apiRateLimits from the destructured props.
• src/components/pages/pricing/pricing-table/plan-card/plan-card.jsx:59
– Replace or remove <FeatureList features={apiRateLimits} … />.

Please update the component to use the correct feature list (e.g. features or another prop) or remove these references entirely.

🤖 Prompt for AI Agents
In src/components/pages/pricing/pricing-table/plan-card/plan-card.jsx at lines
23 and 59, remove the references to the now non-existent apiRateLimits property.
Specifically, delete apiRateLimits from the destructured props at line 23 and
either remove or replace the <FeatureList features={apiRateLimits} /> usage at
line 59 with the appropriate existing prop such as features, ensuring no runtime
errors occur due to missing data.

inbox: {
snoozeMaxDuration: 'Up to 90 days',
inboxComponent: true,
Expand Down Expand Up @@ -126,24 +115,17 @@ const PLANS = {
environments: true,
channels: true,
subscribers: 'Unlimited',
guiWorkflow: true,
codeWorkflow: true,
subscriberManagement: true,
topicManagement: true,
workflows: 'Unlimited',
providers: 'Unlimited',
feedRetention: '90 days',
delay: '90 days',
digest: '90 days',
stepControl: true,
blockEmailEditor: true,
layouts: true,
branding: true,
translations: true,
},
apiRateLimits: {
triggerEvents: '600',
configuration: '200',
global: '300',
},
inbox: {
snoozeMaxDuration: 'Up to 90 days',
inboxComponent: true,
Expand Down Expand Up @@ -182,24 +164,17 @@ const PLANS = {
environments: true,
channels: true,
subscribers: 'Unlimited',
guiWorkflow: true,
codeWorkflow: true,
subscriberManagement: true,
topicManagement: true,
workflows: 'Unlimited',
providers: 'Unlimited',
feedRetention: 'Custom',
delay: 'Custom',
digest: 'Custom',
stepControl: true,
blockEmailEditor: true,
layouts: true,
branding: true,
translations: true,
},
apiRateLimits: {
triggerEvents: '6k',
configuration: '2k',
global: '3k',
},
inbox: {
snoozeMaxDuration: 'Custom',
inboxComponent: true,
Expand Down Expand Up @@ -240,28 +215,18 @@ const LABELS = [
environments: 'Custom Environments',
channels: 'Multiple delivery channels',
subscribers: 'Notification Subscribers',
guiWorkflow: 'GUI-based workflows',
codeWorkflow: 'Code-based workflows',
subscriberManagement: 'Subscriber management',
topicManagement: 'Topic management',
workflows: 'Maximum Workflows',
providers: 'Provider integrations',
feedRetention: 'Activity Feed retention',
delay: 'Maximum Delay Window',
digest: 'Maximum Digest Window',
stepControl: 'Workflow Step Controls',
blockEmailEditor: 'Block-based email editor',
layouts: 'Email layouts',
branding: 'Remove Novu branding',
translations: 'Translations',
},
},
{
title: 'API Rate Limits (RPS)',
items: {
triggerEvents: 'Trigger events',
configuration: 'Configuration',
global: 'Global',
},
},
{
title: 'Inbox',
items: {
Expand Down