Skip to content

Commit 7b91eda

Browse files
Merge pull request #401 from Rampop01/fix-#384
Fix rewards warnings
2 parents 08a28ad + 076ffe9 commit 7b91eda

File tree

2 files changed

+21
-7
lines changed

2 files changed

+21
-7
lines changed

src/endpoints/defi/rewards.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -102,7 +102,7 @@ async fn fetch_zklend_rewards(
102102
amount: reward.amount.value,
103103
displayed_amount: reward.amount.value,
104104
proof: reward.proof,
105-
reward_id: Some(reward.claim_id),
105+
reward_id: reward.claim_id,
106106
claim_contract: reward.claim_contract,
107107
token_symbol: reward.token.symbol,
108108
reward_source: RewardSource::ZkLend,
@@ -336,8 +336,8 @@ async fn fetch_ekubo_rewards(
336336
token_symbol: strk_token.symbol,
337337
reward_source: RewardSource::Ekubo,
338338
claimed: false,
339-
start_date: Some(reward.start_date),
340-
end_date: Some(reward.end_date),
339+
start_date: reward.start_date,
340+
end_date: reward.end_date,
341341
})
342342
} else {
343343
None

src/models.rs

Lines changed: 18 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -403,7 +403,8 @@ pub_struct!(Deserialize; CreateBoostQuery {
403403
pub struct ZkLendReward {
404404
pub amount: Amount,
405405
pub claim_contract: FieldElement,
406-
pub claim_id: u64,
406+
#[serde(default)]
407+
pub claim_id: Option<u64>,
407408
pub claimed: bool,
408409
pub proof: Vec<String>,
409410
pub recipient: String,
@@ -466,12 +467,24 @@ pub struct NimboraRewards {
466467
}
467468

468469
// Ekubo Reward Structs
470+
use serde::de::{self, Deserializer};
471+
472+
fn string_or_null<'de, D>(deserializer: D) -> Result<Option<String>, D::Error>
473+
where
474+
D: Deserializer<'de>,
475+
{
476+
Option::<String>::deserialize(deserializer)
477+
}
478+
469479
#[derive(Serialize, Deserialize, Debug)]
470480
pub struct EkuboRewards {
471481
pub contract_address: FieldElement,
472-
pub token: String,
473-
pub start_date: String,
474-
pub end_date: String,
482+
#[serde(default, deserialize_with = "string_or_null")]
483+
pub token: Option<String>,
484+
#[serde(default, deserialize_with = "string_or_null")]
485+
pub start_date: Option<String>,
486+
#[serde(default, deserialize_with = "string_or_null")]
487+
pub end_date: Option<String>,
475488
pub claim: Claim,
476489
pub proof: Vec<String>,
477490
}
@@ -495,6 +508,7 @@ pub struct VesuData {
495508
pub struct VesuDistributorData {
496509
pub distributed_amount: String,
497510
pub claimed_amount: String,
511+
#[serde(default)]
498512
pub call_data: Option<VesuCallData>,
499513
}
500514

0 commit comments

Comments
 (0)