@@ -47,13 +47,13 @@ export class MessageReconciliation {
4747 startTimestamp ?: number ,
4848 stopTimestamp ?: number ,
4949 ) {
50- // Don't reconcile storage lends
5150 for ( const type of [
5251 MessageType . CAST_ADD ,
5352 MessageType . REACTION_ADD ,
5453 MessageType . LINK_ADD ,
5554 MessageType . VERIFICATION_ADD_ETH_ADDRESS ,
5655 MessageType . USER_DATA_ADD ,
56+ MessageType . LEND_STORAGE ,
5757 ] ) {
5858 this . log . debug ( `Reconciling messages for FID ${ fid } of type ${ type } ` ) ;
5959 await this . reconcileMessagesOfTypeForFid ( fid , type , onHubMessage , onDbMessage , startTimestamp , stopTimestamp ) ;
@@ -149,6 +149,9 @@ export class MessageReconciliation {
149149 case MessageType . USER_DATA_ADD :
150150 fn = this . getAllUserDataMessagesByFidInBatchesOf ;
151151 break ;
152+ case MessageType . LEND_STORAGE :
153+ fn = this . getAllLendStorageMessagesByFidInBatchesOf ;
154+ break ;
152155 default :
153156 throw `Unknown message type ${ type } ` ;
154157 }
@@ -177,6 +180,10 @@ export class MessageReconciliation {
177180 return await this . client . getAllUserDataMessagesByFid ( request ) ;
178181 }
179182
183+ private async getAllLendStorageMessagesByFid ( request : FidTimestampRequest ) {
184+ return await this . client . getAllLendStorageMessagesByFid ( request ) ;
185+ }
186+
180187 private async * getAllCastMessagesByFidInBatchesOf (
181188 fid : number ,
182189 pageSize : number ,
@@ -314,6 +321,33 @@ export class MessageReconciliation {
314321 }
315322 }
316323
324+ private async * getAllLendStorageMessagesByFidInBatchesOf (
325+ fid : number ,
326+ pageSize : number ,
327+ startTimestamp ?: number ,
328+ stopTimestamp ?: number ,
329+ ) {
330+ let result = await this . getAllLendStorageMessagesByFid ( { pageSize, fid, startTimestamp, stopTimestamp } ) ;
331+ for ( ; ; ) {
332+ if ( result . isErr ( ) ) {
333+ throw new Error ( `Unable to get all lend storage messages for FID ${ fid } : ${ result . error ?. message } ` ) ;
334+ }
335+
336+ const { messages, nextPageToken : pageToken } = result . value ;
337+
338+ yield messages ;
339+
340+ if ( ! pageToken ?. length ) break ;
341+ result = await this . getAllLendStorageMessagesByFid ( {
342+ pageSize,
343+ pageToken,
344+ fid,
345+ startTimestamp,
346+ stopTimestamp,
347+ } ) ;
348+ }
349+ }
350+
317351 private async allActiveDbMessagesOfTypeForFid (
318352 fid : number ,
319353 type : MessageType ,
0 commit comments