feat: full FrontOffice updates - discount store, blog, payment gateway, UI improvements
Build and Deploy to Kubernetes / build-and-deploy (push) Failing after 4m55s

- Discount store pages (products, cart, orders, order detail)
- Blog pages and services
- Payment gateway callback page
- AppImage component, EmptyState, LoadingState, PageHeader
- DiscountCartService, DiscountOrderService, DiscountProductService
- BlogCategoryService, BlogPostService, SitePageService, ImageCacheService
- PhoneVerifyForm component
- Profile Hub page
- UI/UX improvements across all pages
- landing.js for homepage
- Config and routing updates
This commit is contained in:
masoodafar-web
2026-02-16 00:51:39 +03:30
parent f0d1156457
commit 6db83ccd90
104 changed files with 7668 additions and 1370 deletions
@@ -0,0 +1,42 @@
using CMSMicroservice.Protobuf.Protos.User;
using Microsoft.AspNetCore.Components;
using MudBlazor;
using static FrontOffice.Main.Shared.AuthDialog;
namespace FrontOffice.Main.Shared;
public partial class PhoneVerifyForm
{
// ── Step state ──
[Parameter, EditorRequired] public AuthStep CurrentStep { get; set; }
// ── Phone step ──
[Parameter, EditorRequired] public CreateNewOtpTokenRequest PhoneRequest { get; set; } = default!;
// ── Verify step ──
[Parameter, EditorRequired] public VerifyOtpTokenRequest VerifyRequest { get; set; } = default!;
// ── Captcha ──
[Parameter] public string? CaptchaCode { get; set; }
[Parameter] public string? CaptchaInput { get; set; }
[Parameter] public EventCallback<string?> CaptchaInputChanged { get; set; }
[Parameter] public EventCallback OnRefreshCaptcha { get; set; }
// ── Shared state ──
[Parameter] public bool IsBusy { get; set; }
[Parameter] public string? ErrorMessage { get; set; }
[Parameter] public string? InfoMessage { get; set; }
[Parameter] public string? PhoneNumber { get; set; }
[Parameter] public int ResendRemaining { get; set; }
// ── Verify actions ──
[Parameter] public EventCallback OnChangePhone { get; set; }
[Parameter] public EventCallback OnResendOtp { get; set; }
// ── Internal form refs (exposed via public methods) ──
private MudForm? _phoneForm;
private MudForm? _verifyForm;
public MudForm? GetPhoneForm() => _phoneForm;
public MudForm? GetVerifyForm() => _verifyForm;
}