feat: stabilize Xingtu market data sync
This commit is contained in:
@@ -25,15 +25,26 @@ export function createMarketResultStore() {
|
||||
existingRecord.status = "loading";
|
||||
delete existingRecord.failureReason;
|
||||
},
|
||||
setAuthorSuccess(authorId: string, rates: Required<AfterSearchRates>) {
|
||||
setAuthorSuccess(authorId: string, rates: AfterSearchRates) {
|
||||
const existingRecord = ensureRecord(authorId);
|
||||
existingRecord.status = "success";
|
||||
existingRecord.rates = rates;
|
||||
existingRecord.rates = {
|
||||
...existingRecord.rates,
|
||||
...rates
|
||||
};
|
||||
delete existingRecord.failureReason;
|
||||
},
|
||||
upsertMarketRow(row: MarketRowSnapshot) {
|
||||
const existingRecord = records.get(row.authorId);
|
||||
if (existingRecord) {
|
||||
existingRecord.hasDirectRatesSource =
|
||||
existingRecord.hasDirectRatesSource || row.hasDirectRatesSource;
|
||||
if (row.rates) {
|
||||
existingRecord.rates = {
|
||||
...existingRecord.rates,
|
||||
...row.rates
|
||||
};
|
||||
}
|
||||
return existingRecord;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user