- Fix bulk delete and individual delete actions using before() hook with halt()
- Add daily/weekly billing cycle options to plan resource and Polar provider
- Enhance payment confirmation with dynamic polling and loading states
- Add graceful handling for deleted plans in subscription display
- Update Polar provider to support dynamic billing cycles
- Add Polar-specific date field mapping in PaymentOrchestrator (current_period_start, current_period_end, cancelled_at, trial_end)
- Handle both cancellation scenarios: cancel_at_period_end=true and existing cancelled_at timestamp
- Map customer_cancellation_reason and customer_cancellation_comment from Polar to database
- Update billing page to show correct renewal vs expiry dates based on cancellation status
- Restrict cancel button to activation_key provider only (Polar uses customer portal)
- Fix button spacing between "Manage in Polar" and "Sync" buttons
- Ensure both "Sync" and "Recheck Status" buttons use identical sync functionality
- Add comprehensive billing page with current subscription display and transaction history
- Integrate Polar.sh customer portal for subscription management
- Fix Polar API endpoint from /customer-portal to /customer-sessions
- Use Polar's direct customer_portal_url response for seamless redirect
- Add responsive button layout with cursor-pointer styling
- Implement human-readable timestamps using diffForHumans()
- Add subscription sync functionality with 30-minute recheck window
- Include subscription cancellation with modal confirmation
- Support activation key provider with pending activation display
- Add proper error handling and user feedback messages