Feature #8392
openFeature #8327: Subscriptions Analytics & visualisation
Service Subscription Share Plans Fixes
100%
Subtasks
Related issues
Updated by Divya Inapakurthi 14 days ago
- Status changed from New to Resolved
1. Service plans loading in background during OTP verification When a user was verifying their OTP or creating a quotation, the service plan grid would flicker and show loading skeletons in the background. This was caused by a shared global loading state being reused for both the initial page load and the quotation creation flow. We introduced a separate isCreatingQuotation state to isolate these two operations so the plan grid stays stable.
2. Search input showing a loading spinner on page load The search bar's internal spinner was tied to the same loading state as the plan grid, so it would spin every time the page initially loaded — even when the user hadn't searched anything. We added a dedicated isSearching state that only activates during search queries and pagination changes.
3. OTP resend timer starting even when the send failed The 30-second countdown was starting immediately after clicking "Resend OTP" regardless of whether the server actually sent the email. We wrapped the timer logic in a try/catch so it only starts when the API responds with a success.
4. Address verification required a manual button click After selecting an address from the autocomplete dropdown, users still had to click "Check Service Availability" manually. We updated the
handleAddressSelect
callback to automatically call
handleVerifyAddress()
right after the address is populated, removing the extra step.
5. Billing authorization checkbox was positioned below address input The "I Authorize Recurring Billing" checkbox was below the address field, so users would select an address, get a notification to check the box, then scroll back up. We moved the checkbox above the address field so users authorize first, then selecting an address immediately triggers verification.
6. Checking the billing checkbox after typing an address didn't auto-verify Even after the checkbox was moved, if a user filled in an address first and then checked the authorization box, verification still didn't fire. We added logic in the checkbox onChange handler to call
handleVerifyAddress()
if a street address is already present in the form.
7. Subscription name displayed in lowercase on public invoices Plan and variant names on the public invoice page were rendering in whatever case they were stored in the database. We applied textTransform: 'capitalize' to those cells so names always appear properly formatted for customers.