package dto // UpdateLocationRequest به‌روزرسانی موقعیت مکانی کاربر (برای محاسبه‌ی فاصله‌ی تقریبی) type UpdateLocationRequest struct { Latitude float64 `json:"latitude" binding:"required"` Longitude float64 `json:"longitude" binding:"required"` } // UpdateBioRequest ویرایش بیوگرافی کوتاه پروفایل type UpdateBioRequest struct { Bio string `json:"bio" binding:"max=300"` } // CheckInResult نتیجه‌ی ثبت ورود روزانه (برای استریک گیمیفیکیشن) type CheckInResult struct { StreakCount int `json:"streak_count"` IsNewToday bool `json:"is_new_today"` } // UpdateNotificationSettingsRequest ترجیحات اعلان کاربر type UpdateNotificationSettingsRequest struct { NotifyMatches bool `json:"notify_matches"` NotifyMessages bool `json:"notify_messages"` NotifyLikes bool `json:"notify_likes"` } // UpdatePublicKeyRequest ثبت/به‌روزرسانی کلید عمومی X25519 کاربر برای // رمزنگاری سرتاسری پیام‌ها. کلید باید دقیقاً ۳۲ بایت خام باشه که به‌صورت // base64 استاندارد (۴۴ کاراکتر، شامل padding) کدگذاری شده. type UpdatePublicKeyRequest struct { PublicKey string `json:"public_key" binding:"required,len=44"` }