Add Stripe notifications, messaging improvements, and code cleanup

Stripe Notifications:
- Add periodic task to check Stripe Connect accounts for requirements
- Create in-app notifications for business owners when action needed
- Add management command to setup Stripe periodic tasks
- Display Stripe notifications with credit card icon in notification bell
- Navigate to payments page when Stripe notification clicked

Messaging Improvements:
- Add "Everyone" option to broadcast message recipients
- Allow sending messages to yourself (remove self-exclusion)
- Fix broadcast message ID not returned after creation
- Add real-time websocket support for broadcast notifications
- Show toast when broadcast message received via websocket

UI Fixes:
- Remove "View all" button from notifications (no page exists)
- Add StripeNotificationBanner component for Connect alerts
- Connect useUserNotifications hook in TopBar for app-wide websocket

Code Cleanup:
- Remove legacy automations app and plugin system
- Remove safe_scripting module (moved to Activepieces)
- Add migration to remove plugin-related models
- Various test improvements and coverage additions

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
poduck
2025-12-22 15:35:53 -05:00
parent 28d6cee207
commit f1b1f18bc5
86 changed files with 21364 additions and 19708 deletions

View File

@@ -1851,6 +1851,71 @@
"cancel": "Cancel",
"validationFailed": "Validation failed",
"failedToSaveKeys": "Failed to save keys"
},
"stripeSettings": {
"title": "Stripe Account Settings",
"description": "Configure your Stripe Connect account settings including payout schedule, business profile, and branding.",
"loading": "Loading settings...",
"loadError": "Failed to load settings",
"unknownError": "An unknown error occurred",
"saveError": "Failed to save settings",
"savedSuccessfully": "Settings saved successfully",
"stripeDashboard": "Stripe Dashboard",
"payouts": "Payouts",
"businessProfile": "Business Profile",
"branding": "Branding",
"bankAccounts": "Bank Accounts",
"payoutsDescription": "Configure when and how your payouts are sent to your bank account. Changes take effect immediately.",
"payoutSchedule": "Payout Schedule",
"payoutInterval": "Payout Frequency",
"intervalDaily": "Daily",
"intervalWeekly": "Weekly",
"intervalMonthly": "Monthly",
"intervalManual": "Manual",
"intervalHint": "How often funds are transferred to your bank account",
"delayDays": "Payout Delay",
"days": "days",
"delayDaysHint": "Number of days to hold funds before payout (2-14 days)",
"weeklyAnchor": "Payout Day",
"monthlyAnchor": "Day of Month",
"dayOfMonth": "Day {{day}}",
"monday": "Monday",
"tuesday": "Tuesday",
"wednesday": "Wednesday",
"thursday": "Thursday",
"friday": "Friday",
"saturday": "Saturday",
"sunday": "Sunday",
"statementDescriptor": "Statement Descriptor",
"descriptorLabel": "Statement Descriptor",
"descriptorPlaceholder": "Your Business Name",
"descriptorHint": "This appears on customer bank statements",
"descriptorTooLong": "Statement descriptor must be 22 characters or less",
"descriptorInvalidChars": "Only letters, numbers, spaces, hyphens, and periods are allowed",
"businessProfileDescription": "Update your business contact information. This appears on receipts and is used by Stripe for customer support purposes.",
"businessName": "Business Name",
"supportEmail": "Support Email",
"supportEmailHint": "Email address customers can use for payment-related inquiries",
"supportPhone": "Support Phone",
"supportUrl": "Support URL",
"supportUrlHint": "URL to your customer support or help page",
"brandingDescription": "Customize how your brand appears on Stripe-hosted pages like receipts and checkout.",
"primaryColor": "Primary Color",
"secondaryColor": "Secondary Color",
"invalidColorFormat": "Invalid color format. Use #RGB or #RRGGBB format.",
"logoAndIcon": "Logo & Icon",
"logoAndIconDescription": "To upload or update your logo and icon, use the Stripe Dashboard.",
"uploadInStripeDashboard": "Upload in Stripe Dashboard",
"icon": "Icon",
"logo": "Logo",
"bankAccountsDescription": "View your connected bank accounts. To add or remove bank accounts, use the Stripe Dashboard for security reasons.",
"noBankAccounts": "No Bank Accounts",
"noBankAccountsDescription": "Add a bank account in the Stripe Dashboard to receive payouts.",
"addInStripeDashboard": "Add Bank Account",
"bankAccount": "Bank Account",
"default": "Default",
"manageInStripeDashboard": "Manage bank accounts in Stripe Dashboard",
"loginLinkError": "Unable to open Stripe Dashboard. Please try again."
}
},
"settings": {