feat: add subscription reissue button with cooldown timer

- Add revokeSubscription API method
- Add reissue button in Additional Options with amber styling,
  destructive confirm dialog, 15-min cooldown with countdown timer,
  localStorage persistence across page reloads
- Add i18n keys in all 4 locales (en, ru, zh, fa)
This commit is contained in:
Fringg
2026-05-04 17:22:05 +03:00
parent 7d940091fa
commit f7cc445127
6 changed files with 138 additions and 0 deletions

View File

@@ -540,6 +540,17 @@ export const subscriptionApi = {
return response.data;
},
// ── Revoke (reissue) ────────────────────────────────────────────────
revokeSubscription: async (subscriptionId?: number) => {
const response = await apiClient.post(
'/cabinet/subscription/revoke',
undefined,
withSubId(subscriptionId),
);
return response.data;
},
// ── Daily subscription ──────────────────────────────────────────────
togglePause: async (