mirror of
				https://github.com/Qortal/qortal-ui.git
				synced 2025-10-27 19:03:20 +00:00 
			
		
		
		
	New autobuy fix failed trades
This commit is contained in:
		| @@ -73,6 +73,7 @@ class AppView extends connect(store)(LitElement) { | |||||||
|             dgbWalletBalance: { type: Number }, |             dgbWalletBalance: { type: Number }, | ||||||
|             rvnWalletBalance: { type: Number }, |             rvnWalletBalance: { type: Number }, | ||||||
|             arrrWalletBalance: { type: Number }, |             arrrWalletBalance: { type: Number }, | ||||||
|  |             failedTradesList: { type: Array }, | ||||||
|             tradesOpenBtcQortal: { type: Array }, |             tradesOpenBtcQortal: { type: Array }, | ||||||
|             tradesFailedBtcQortal: { type: Array }, |             tradesFailedBtcQortal: { type: Array }, | ||||||
|             tradesOpenBtcQortalCleaned: { type: Array }, |             tradesOpenBtcQortalCleaned: { type: Array }, | ||||||
| @@ -462,6 +463,7 @@ class AppView extends connect(store)(LitElement) { | |||||||
|         this.dgbWalletBalance = 0 |         this.dgbWalletBalance = 0 | ||||||
|         this.rvnWalletBalance = 0 |         this.rvnWalletBalance = 0 | ||||||
|         this.arrrWalletBalance = 0 |         this.arrrWalletBalance = 0 | ||||||
|  |         this.failedTradesList = [] | ||||||
|         this.tradesOpenBtcQortal = [] |         this.tradesOpenBtcQortal = [] | ||||||
|         this.tradesFailedBtcQortal = [] |         this.tradesFailedBtcQortal = [] | ||||||
|         this.tradesOpenBtcQortalCleaned = [] |         this.tradesOpenBtcQortalCleaned = [] | ||||||
| @@ -747,6 +749,62 @@ class AppView extends connect(store)(LitElement) { | |||||||
|             this.tradeBotArrrBook = JSON.parse(localStorage.getItem(this.botArrrWallet) || "[]") |             this.tradeBotArrrBook = JSON.parse(localStorage.getItem(this.botArrrWallet) || "[]") | ||||||
|         }) |         }) | ||||||
|  |  | ||||||
|  |         if (localStorage.getItem("failedTrades") === null) { | ||||||
|  |             localStorage.setItem("failedTrades", "") | ||||||
|  |  | ||||||
|  |             var oldFailedTrades = JSON.parse(localStorage.getItem("failedTrades") || "[]") | ||||||
|  |  | ||||||
|  |             const addFixedFail = { | ||||||
|  |                 timestamp: 1699792400000, | ||||||
|  |                 recipient: 'QSMfgUCXahYHg38RidZ4FuWbVV8KGngDjP' | ||||||
|  |             } | ||||||
|  |  | ||||||
|  |             oldFailedTrades.push(addFixedFail) | ||||||
|  |  | ||||||
|  |             localStorage.setItem("failedTrades", JSON.stringify(oldFailedTrades)) | ||||||
|  |  | ||||||
|  |             this.failedTradesList = JSON.parse(localStorage.getItem("failedTrades") || "[]") | ||||||
|  |         } else { | ||||||
|  |             this.failedTradesList = JSON.parse(localStorage.getItem("failedTrades") || "[]") | ||||||
|  |         } | ||||||
|  |  | ||||||
|  |         const unconfirmedTransactions = async () => { | ||||||
|  |             const unconfirmedTransactionslUrl = `${nodeAppUrl}/transactions/unconfirmed?txType=MESSAGE&limit=0&reverse=true` | ||||||
|  |             var addFailedTrades = JSON.parse(localStorage.getItem("failedTrades") || "[]") | ||||||
|  |             await fetch(unconfirmedTransactionslUrl).then(response => { | ||||||
|  |                 return response.json() | ||||||
|  |             }).then(data => { | ||||||
|  |                 data.map(item => { | ||||||
|  |                     const unconfirmedNessageTimeDiff = Date.now() - item.timestamp | ||||||
|  |                     const timeOneHour = 60 * 60 * 1000 | ||||||
|  |                     if (Number(unconfirmedNessageTimeDiff) > Number(timeOneHour)) { | ||||||
|  |                         const addIt = { | ||||||
|  |                             timestamp: item.timestamp, | ||||||
|  |                             recipient: item.recipient | ||||||
|  |                         } | ||||||
|  |                         addFailedTrades.push(addIt) | ||||||
|  |                     } | ||||||
|  |                 }) | ||||||
|  |                 localStorage.setItem("failedTrades", JSON.stringify(addFailedTrades)) | ||||||
|  |                 this.failedTradesList = JSON.parse(localStorage.getItem("failedTrades") || "[]") | ||||||
|  |             }) | ||||||
|  |         } | ||||||
|  |  | ||||||
|  |         await unconfirmedTransactions() | ||||||
|  |  | ||||||
|  |         const filterUnconfirmedTransactions = async () => { | ||||||
|  |             let cleanFailedTrades = this.failedTradesList.reduce((newArray, cut) => { | ||||||
|  |                 if(!newArray.some(obj => obj.recipient === cut.recipient)) { | ||||||
|  |                     newArray.push(cut) | ||||||
|  |                 } | ||||||
|  |                 return newArray | ||||||
|  |             },[]) | ||||||
|  |             localStorage.setItem("failedTrades", JSON.stringify(cleanFailedTrades)) | ||||||
|  |             this.failedTradesList = JSON.parse(localStorage.getItem("failedTrades") || "[]") | ||||||
|  |         } | ||||||
|  |  | ||||||
|  |         await filterUnconfirmedTransactions() | ||||||
|  |  | ||||||
|         const getOpenTradesBTC = async () => { |         const getOpenTradesBTC = async () => { | ||||||
|             let timerBTC |             let timerBTC | ||||||
|  |  | ||||||
| @@ -777,24 +835,44 @@ class AppView extends connect(store)(LitElement) { | |||||||
|                     } |                     } | ||||||
|                 }).filter(item => !!item) |                 }).filter(item => !!item) | ||||||
|  |  | ||||||
|                 const tradesFailedBtcQortalUrl = `${nodeAppUrl}/transactions/unconfirmed?txType=MESSAGE&limit=0&reverse=true` |                 const unconfirmedTransactionsBTC = async () => { | ||||||
|  |                     const unconfirmedTransactionsUrlBTC = `${nodeAppUrl}/transactions/unconfirmed?txType=MESSAGE&limit=0&reverse=true` | ||||||
|                 const tradesFailedBtcQortal = await fetch(tradesFailedBtcQortalUrl).then(response => { |                     var addFailedTradesBTC = JSON.parse(localStorage.getItem("failedTrades") || "[]") | ||||||
|  |                     await fetch(unconfirmedTransactionsUrlBTC).then(response => { | ||||||
|                         return response.json() |                         return response.json() | ||||||
|                 }) |                     }).then(data => { | ||||||
|  |                         data.map(item => { | ||||||
|                 this.tradesFailedBtcQortal = tradesFailedBtcQortal.map(item => { |                             const unconfirmedNessageTimeDiffBTC = Date.now() - item.timestamp | ||||||
|                     const messageTimeDiff = Date.now() - item.timestamp |                             const timeOneHourBTC = 60 * 60 * 1000 | ||||||
|                     const oneHour = 60 * 60 * 1000 |                             if (Number(unconfirmedNessageTimeDiffBTC) > Number(timeOneHourBTC)) { | ||||||
|                     if (Number(messageTimeDiff) > Number(oneHour)) { |                                 const addItBTC = { | ||||||
|                         return { |  | ||||||
|                                     timestamp: item.timestamp, |                                     timestamp: item.timestamp, | ||||||
|                                     recipient: item.recipient |                                     recipient: item.recipient | ||||||
|                                 } |                                 } | ||||||
|  |                                 addFailedTradesBTC.push(addItBTC) | ||||||
|  |                            } | ||||||
|  |                         }) | ||||||
|  |                         localStorage.setItem("failedTrades", JSON.stringify(addFailedTradesBTC)) | ||||||
|  |                         this.failedTradesList = JSON.parse(localStorage.getItem("failedTrades") || "[]") | ||||||
|  |                     }) | ||||||
|                 } |                 } | ||||||
|                 }).filter(item => !!item) |  | ||||||
|  |  | ||||||
|                 this.tradesFailedBtcQortal.map(item => { |                 await unconfirmedTransactionsBTC() | ||||||
|  |  | ||||||
|  |                 const filterUnconfirmedTransactionsBTC = async () => { | ||||||
|  |                     let cleanFailedTradesBTC = this.failedTradesList.reduce((newArray, cut) => { | ||||||
|  |                         if(!newArray.some(obj => obj.recipient === cut.recipient)) { | ||||||
|  |                              newArray.push(cut) | ||||||
|  |                         } | ||||||
|  |                         return newArray | ||||||
|  |                     },[]) | ||||||
|  |                     localStorage.setItem("failedTrades", JSON.stringify(cleanFailedTradesBTC)) | ||||||
|  |                     this.failedTradesList = JSON.parse(localStorage.getItem("failedTrades") || "[]") | ||||||
|  |                 } | ||||||
|  |  | ||||||
|  |                 await filterUnconfirmedTransactionsBTC() | ||||||
|  |  | ||||||
|  |                 this.failedTradesList.map(item => { | ||||||
|                     const recipientToRemove = item.recipient |                     const recipientToRemove = item.recipient | ||||||
|                     this.tradesOpenBtcQortalCleaned = this.tradesOpenBtcQortal.filter(obj => { |                     this.tradesOpenBtcQortalCleaned = this.tradesOpenBtcQortal.filter(obj => { | ||||||
|                         return obj.qortalCreatorTradeAddress !== recipientToRemove |                         return obj.qortalCreatorTradeAddress !== recipientToRemove | ||||||
| @@ -944,24 +1022,44 @@ class AppView extends connect(store)(LitElement) { | |||||||
|                     } |                     } | ||||||
|                 }).filter(item => !!item) |                 }).filter(item => !!item) | ||||||
|  |  | ||||||
|                 const tradesFailedLtcQortalUrl = `${nodeAppUrl}/transactions/unconfirmed?txType=MESSAGE&limit=0&reverse=true` |                 const unconfirmedTransactionsLTC = async () => { | ||||||
|  |                     const unconfirmedTransactionsUrlLTC = `${nodeAppUrl}/transactions/unconfirmed?txType=MESSAGE&limit=0&reverse=true` | ||||||
|                 const tradesFailedLtcQortal = await fetch(tradesFailedLtcQortalUrl).then(response => { |                     var addFailedTradesLTC = JSON.parse(localStorage.getItem("failedTrades") || "[]") | ||||||
|  |                     await fetch(unconfirmedTransactionsUrlLTC).then(response => { | ||||||
|                         return response.json() |                         return response.json() | ||||||
|                 }) |                     }).then(data => { | ||||||
|  |                         data.map(item => { | ||||||
|                 this.tradesFailedLtcQortal = tradesFailedLtcQortal.map(item => { |                             const unconfirmedNessageTimeDiffLTC = Date.now() - item.timestamp | ||||||
|                     const messageTimeDiff = Date.now() - item.timestamp |                             const timeOneHourLTC = 60 * 60 * 1000 | ||||||
|                     const oneHour = 60 * 60 * 1000 |                             if (Number(unconfirmedNessageTimeDiffLTC) > Number(timeOneHourLTC)) { | ||||||
|                     if (Number(messageTimeDiff) > Number(oneHour)) { |                                 const addItLTC = { | ||||||
|                         return { |  | ||||||
|                                     timestamp: item.timestamp, |                                     timestamp: item.timestamp, | ||||||
|                                     recipient: item.recipient |                                     recipient: item.recipient | ||||||
|                                 } |                                 } | ||||||
|  |                                 addFailedTradesLTC.push(addItLTC) | ||||||
|  |                            } | ||||||
|  |                         }) | ||||||
|  |                         localStorage.setItem("failedTrades", JSON.stringify(addFailedTradesLTC)) | ||||||
|  |                         this.failedTradesList = JSON.parse(localStorage.getItem("failedTrades") || "[]") | ||||||
|  |                     }) | ||||||
|                 } |                 } | ||||||
|                 }).filter(item => !!item) |  | ||||||
|  |  | ||||||
|                 this.tradesFailedLtcQortal.map(item => { |                 await unconfirmedTransactionsLTC() | ||||||
|  |  | ||||||
|  |                 const filterUnconfirmedTransactionsLTC = async () => { | ||||||
|  |                     let cleanFailedTradesLTC = this.failedTradesList.reduce((newArray, cut) => { | ||||||
|  |                         if(!newArray.some(obj => obj.recipient === cut.recipient)) { | ||||||
|  |                              newArray.push(cut) | ||||||
|  |                         } | ||||||
|  |                         return newArray | ||||||
|  |                     },[]) | ||||||
|  |                     localStorage.setItem("failedTrades", JSON.stringify(cleanFailedTradesLTC)) | ||||||
|  |                     this.failedTradesList = JSON.parse(localStorage.getItem("failedTrades") || "[]") | ||||||
|  |                 } | ||||||
|  |  | ||||||
|  |                 await filterUnconfirmedTransactionsLTC() | ||||||
|  |  | ||||||
|  |                 this.failedTradesList.map(item => { | ||||||
|                     const recipientToRemove = item.recipient |                     const recipientToRemove = item.recipient | ||||||
|                     this.tradesOpenLtcQortalCleaned = this.tradesOpenLtcQortal.filter(obj => { |                     this.tradesOpenLtcQortalCleaned = this.tradesOpenLtcQortal.filter(obj => { | ||||||
|                         return obj.qortalCreatorTradeAddress !== recipientToRemove |                         return obj.qortalCreatorTradeAddress !== recipientToRemove | ||||||
| @@ -1111,24 +1209,44 @@ class AppView extends connect(store)(LitElement) { | |||||||
|                     } |                     } | ||||||
|                 }).filter(item => !!item) |                 }).filter(item => !!item) | ||||||
|  |  | ||||||
|                 const tradesFailedDogeQortalUrl = `${nodeAppUrl}/transactions/unconfirmed?txType=MESSAGE&limit=0&reverse=true` |                 const unconfirmedTransactionsDOGE = async () => { | ||||||
|  |                     const unconfirmedTransactionsUrlDOGE = `${nodeAppUrl}/transactions/unconfirmed?txType=MESSAGE&limit=0&reverse=true` | ||||||
|                 const tradesFailedDogeQortal = await fetch(tradesFailedDogeQortalUrl).then(response => { |                     var addFailedTradesDOGE = JSON.parse(localStorage.getItem("failedTrades") || "[]") | ||||||
|  |                     await fetch(unconfirmedTransactionsUrlDOGE).then(response => { | ||||||
|                         return response.json() |                         return response.json() | ||||||
|                 }) |                     }).then(data => { | ||||||
|  |                         data.map(item => { | ||||||
|                 this.tradesFailedDogeQortal = tradesFailedDogeQortal.map(item => { |                             const unconfirmedNessageTimeDiffDOGE = Date.now() - item.timestamp | ||||||
|                     const messageTimeDiff = Date.now() - item.timestamp |                             const timeOneHourDOGE = 60 * 60 * 1000 | ||||||
|                     const oneHour = 60 * 60 * 1000 |                             if (Number(unconfirmedNessageTimeDiffDOGE) > Number(timeOneHourDOGE)) { | ||||||
|                     if (Number(messageTimeDiff) > Number(oneHour)) { |                                 const addItDOGE = { | ||||||
|                         return { |  | ||||||
|                                     timestamp: item.timestamp, |                                     timestamp: item.timestamp, | ||||||
|                                     recipient: item.recipient |                                     recipient: item.recipient | ||||||
|                                 } |                                 } | ||||||
|  |                                 addFailedTradesDOGE.push(addItDOGE) | ||||||
|  |                            } | ||||||
|  |                         }) | ||||||
|  |                         localStorage.setItem("failedTrades", JSON.stringify(addFailedTradesDOGE)) | ||||||
|  |                         this.failedTradesList = JSON.parse(localStorage.getItem("failedTrades") || "[]") | ||||||
|  |                     }) | ||||||
|                 } |                 } | ||||||
|                 }).filter(item => !!item) |  | ||||||
|  |  | ||||||
|                 this.tradesFailedDogeQortal.map(item => { |                 await unconfirmedTransactionsDOGE() | ||||||
|  |  | ||||||
|  |                 const filterUnconfirmedTransactionsDOGE = async () => { | ||||||
|  |                     let cleanFailedTradesDOGE = this.failedTradesList.reduce((newArray, cut) => { | ||||||
|  |                         if(!newArray.some(obj => obj.recipient === cut.recipient)) { | ||||||
|  |                              newArray.push(cut) | ||||||
|  |                         } | ||||||
|  |                         return newArray | ||||||
|  |                     },[]) | ||||||
|  |                     localStorage.setItem("failedTrades", JSON.stringify(cleanFailedTradesDOGE)) | ||||||
|  |                     this.failedTradesList = JSON.parse(localStorage.getItem("failedTrades") || "[]") | ||||||
|  |                 } | ||||||
|  |  | ||||||
|  |                 await filterUnconfirmedTransactionsDOGE() | ||||||
|  |  | ||||||
|  |                 this.failedTradesList.map(item => { | ||||||
|                     const recipientToRemove = item.recipient |                     const recipientToRemove = item.recipient | ||||||
|                     this.tradesOpenDogeQortalCleaned = this.tradesOpenDogeQortal.filter(obj => { |                     this.tradesOpenDogeQortalCleaned = this.tradesOpenDogeQortal.filter(obj => { | ||||||
|                         return obj.qortalCreatorTradeAddress !== recipientToRemove |                         return obj.qortalCreatorTradeAddress !== recipientToRemove | ||||||
| @@ -1278,24 +1396,44 @@ class AppView extends connect(store)(LitElement) { | |||||||
|                     } |                     } | ||||||
|                 }).filter(item => !!item) |                 }).filter(item => !!item) | ||||||
|  |  | ||||||
|                 const tradesFailedDgbQortalUrl = `${nodeAppUrl}/transactions/unconfirmed?txType=MESSAGE&limit=0&reverse=true` |                 const unconfirmedTransactionsDGB = async () => { | ||||||
|  |                     const unconfirmedTransactionsUrlDGB = `${nodeAppUrl}/transactions/unconfirmed?txType=MESSAGE&limit=0&reverse=true` | ||||||
|                 const tradesFailedDgbQortal = await fetch(tradesFailedDgbQortalUrl).then(response => { |                     var addFailedTradesDGB = JSON.parse(localStorage.getItem("failedTrades") || "[]") | ||||||
|  |                     await fetch(unconfirmedTransactionsUrlDGB).then(response => { | ||||||
|                         return response.json() |                         return response.json() | ||||||
|                 }) |                     }).then(data => { | ||||||
|  |                         data.map(item => { | ||||||
|                 this.tradesFailedDgbQortal = tradesFailedDgbQortal.map(item => { |                             const unconfirmedNessageTimeDiffDGB = Date.now() - item.timestamp | ||||||
|                     const messageTimeDiff = Date.now() - item.timestamp |                             const timeOneHourDGB = 60 * 60 * 1000 | ||||||
|                     const oneHour = 60 * 60 * 1000 |                             if (Number(unconfirmedNessageTimeDiffDGB) > Number(timeOneHourDGB)) { | ||||||
|                     if (Number(messageTimeDiff) > Number(oneHour)) { |                                 const addItDGB = { | ||||||
|                         return { |  | ||||||
|                                     timestamp: item.timestamp, |                                     timestamp: item.timestamp, | ||||||
|                                     recipient: item.recipient |                                     recipient: item.recipient | ||||||
|                                 } |                                 } | ||||||
|  |                                 addFailedTradesDGB.push(addItDGB) | ||||||
|  |                            } | ||||||
|  |                         }) | ||||||
|  |                         localStorage.setItem("failedTrades", JSON.stringify(addFailedTradesDGB)) | ||||||
|  |                         this.failedTradesList = JSON.parse(localStorage.getItem("failedTrades") || "[]") | ||||||
|  |                     }) | ||||||
|                 } |                 } | ||||||
|                 }).filter(item => !!item) |  | ||||||
|  |  | ||||||
|                 this.tradesFailedDgbQortal.map(item => { |                 await unconfirmedTransactionsDGB() | ||||||
|  |  | ||||||
|  |                 const filterUnconfirmedTransactionsDGB = async () => { | ||||||
|  |                     let cleanFailedTradesDGB = this.failedTradesList.reduce((newArray, cut) => { | ||||||
|  |                         if(!newArray.some(obj => obj.recipient === cut.recipient)) { | ||||||
|  |                              newArray.push(cut) | ||||||
|  |                         } | ||||||
|  |                         return newArray | ||||||
|  |                     },[]) | ||||||
|  |                     localStorage.setItem("failedTrades", JSON.stringify(cleanFailedTradesDGB)) | ||||||
|  |                     this.failedTradesList = JSON.parse(localStorage.getItem("failedTrades") || "[]") | ||||||
|  |                 } | ||||||
|  |  | ||||||
|  |                 await filterUnconfirmedTransactionsDGB() | ||||||
|  |  | ||||||
|  |                 this.failedTradesList.map(item => { | ||||||
|                     const recipientToRemove = item.recipient |                     const recipientToRemove = item.recipient | ||||||
|                     this.tradesOpenDgbQortalCleaned = this.tradesOpenDgbQortal.filter(obj => { |                     this.tradesOpenDgbQortalCleaned = this.tradesOpenDgbQortal.filter(obj => { | ||||||
|                         return obj.qortalCreatorTradeAddress !== recipientToRemove |                         return obj.qortalCreatorTradeAddress !== recipientToRemove | ||||||
| @@ -1445,24 +1583,44 @@ class AppView extends connect(store)(LitElement) { | |||||||
|                     } |                     } | ||||||
|                 }).filter(item => !!item) |                 }).filter(item => !!item) | ||||||
|  |  | ||||||
|                 const tradesFailedRvnQortalUrl = `${nodeAppUrl}/transactions/unconfirmed?txType=MESSAGE&limit=0&reverse=true` |                 const unconfirmedTransactionsRVN = async () => { | ||||||
|  |                     const unconfirmedTransactionsUrlRVN = `${nodeAppUrl}/transactions/unconfirmed?txType=MESSAGE&limit=0&reverse=true` | ||||||
|                 const tradesFailedRvnQortal = await fetch(tradesFailedRvnQortalUrl).then(response => { |                     var addFailedTradesRVN = JSON.parse(localStorage.getItem("failedTrades") || "[]") | ||||||
|  |                     await fetch(unconfirmedTransactionsUrlRVN).then(response => { | ||||||
|                         return response.json() |                         return response.json() | ||||||
|                 }) |                     }).then(data => { | ||||||
|  |                         data.map(item => { | ||||||
|                 this.tradesFailedRvnQortal = tradesFailedRvnQortal.map(item => { |                             const unconfirmedNessageTimeDiffRVN = Date.now() - item.timestamp | ||||||
|                     const messageTimeDiff = Date.now() - item.timestamp |                             const timeOneHourRVN = 60 * 60 * 1000 | ||||||
|                     const oneHour = 60 * 60 * 1000 |                             if (Number(unconfirmedNessageTimeDiffRVN) > Number(timeOneHourRVN)) { | ||||||
|                     if (Number(messageTimeDiff) > Number(oneHour)) { |                                 const addItRVN = { | ||||||
|                         return { |  | ||||||
|                                     timestamp: item.timestamp, |                                     timestamp: item.timestamp, | ||||||
|                                     recipient: item.recipient |                                     recipient: item.recipient | ||||||
|                                 } |                                 } | ||||||
|  |                                 addFailedTradesRVN.push(addItRVN) | ||||||
|  |                            } | ||||||
|  |                         }) | ||||||
|  |                         localStorage.setItem("failedTrades", JSON.stringify(addFailedTradesRVN)) | ||||||
|  |                         this.failedTradesList = JSON.parse(localStorage.getItem("failedTrades") || "[]") | ||||||
|  |                     }) | ||||||
|                 } |                 } | ||||||
|                 }).filter(item => !!item) |  | ||||||
|  |  | ||||||
|                 this.tradesFailedRvnQortal.map(item => { |                 await unconfirmedTransactionsRVN() | ||||||
|  |  | ||||||
|  |                 const filterUnconfirmedTransactionsRVN = async () => { | ||||||
|  |                     let cleanFailedTradesRVN = this.failedTradesList.reduce((newArray, cut) => { | ||||||
|  |                         if(!newArray.some(obj => obj.recipient === cut.recipient)) { | ||||||
|  |                              newArray.push(cut) | ||||||
|  |                         } | ||||||
|  |                         return newArray | ||||||
|  |                     },[]) | ||||||
|  |                     localStorage.setItem("failedTrades", JSON.stringify(cleanFailedTradesRVN)) | ||||||
|  |                     this.failedTradesList = JSON.parse(localStorage.getItem("failedTrades") || "[]") | ||||||
|  |                 } | ||||||
|  |  | ||||||
|  |                 await filterUnconfirmedTransactionsRVN() | ||||||
|  |  | ||||||
|  |                 this.failedTradesList.map(item => { | ||||||
|                     const recipientToRemove = item.recipient |                     const recipientToRemove = item.recipient | ||||||
|                     this.tradesOpenRvnQortalCleaned = this.tradesOpenRvnQortal.filter(obj => { |                     this.tradesOpenRvnQortalCleaned = this.tradesOpenRvnQortal.filter(obj => { | ||||||
|                         return obj.qortalCreatorTradeAddress !== recipientToRemove |                         return obj.qortalCreatorTradeAddress !== recipientToRemove | ||||||
| @@ -1612,24 +1770,44 @@ class AppView extends connect(store)(LitElement) { | |||||||
|                     } |                     } | ||||||
|                 }).filter(item => !!item) |                 }).filter(item => !!item) | ||||||
|  |  | ||||||
|                 const tradesFailedArrrQortalUrl = `${nodeAppUrl}/transactions/unconfirmed?txType=MESSAGE&limit=0&reverse=true` |                 const unconfirmedTransactionsARRR = async () => { | ||||||
|  |                     const unconfirmedTransactionsUrlARRR = `${nodeAppUrl}/transactions/unconfirmed?txType=MESSAGE&limit=0&reverse=true` | ||||||
|                 const tradesFailedArrrQortal = await fetch(tradesFailedArrrQortalUrl).then(response => { |                     var addFailedTradesARRR = JSON.parse(localStorage.getItem("failedTrades") || "[]") | ||||||
|  |                     await fetch(unconfirmedTransactionsUrlARRR).then(response => { | ||||||
|                         return response.json() |                         return response.json() | ||||||
|                 }) |                     }).then(data => { | ||||||
|  |                         data.map(item => { | ||||||
|                 this.tradesFailedArrrQortal = tradesFailedArrrQortal.map(item => { |                             const unconfirmedNessageTimeDiffARRR = Date.now() - item.timestamp | ||||||
|                     const messageTimeDiff = Date.now() - item.timestamp |                             const timeOneHourARRR = 60 * 60 * 1000 | ||||||
|                     const oneHour = 60 * 60 * 1000 |                             if (Number(unconfirmedNessageTimeDiffARRR) > Number(timeOneHourARRR)) { | ||||||
|                     if (Number(messageTimeDiff) > Number(oneHour)) { |                                 const addItARRR = { | ||||||
|                         return { |  | ||||||
|                                     timestamp: item.timestamp, |                                     timestamp: item.timestamp, | ||||||
|                                     recipient: item.recipient |                                     recipient: item.recipient | ||||||
|                                 } |                                 } | ||||||
|  |                                 addFailedTradesARRR.push(addItARRR) | ||||||
|  |                            } | ||||||
|  |                         }) | ||||||
|  |                         localStorage.setItem("failedTrades", JSON.stringify(addFailedTradesARRR)) | ||||||
|  |                         this.failedTradesList = JSON.parse(localStorage.getItem("failedTrades") || "[]") | ||||||
|  |                     }) | ||||||
|                 } |                 } | ||||||
|                 }).filter(item => !!item) |  | ||||||
|  |  | ||||||
|                 this.tradesFailedArrrQortal.map(item => { |                 await unconfirmedTransactionsARRR() | ||||||
|  |  | ||||||
|  |                 const filterUnconfirmedTransactionsARRR = async () => { | ||||||
|  |                     let cleanFailedTradesARRR = this.failedTradesList.reduce((newArray, cut) => { | ||||||
|  |                         if(!newArray.some(obj => obj.recipient === cut.recipient)) { | ||||||
|  |                              newArray.push(cut) | ||||||
|  |                         } | ||||||
|  |                         return newArray | ||||||
|  |                     },[]) | ||||||
|  |                     localStorage.setItem("failedTrades", JSON.stringify(cleanFailedTradesARRR)) | ||||||
|  |                     this.failedTradesList = JSON.parse(localStorage.getItem("failedTrades") || "[]") | ||||||
|  |                 } | ||||||
|  |  | ||||||
|  |                 await filterUnconfirmedTransactionsARRR() | ||||||
|  |  | ||||||
|  |                 this.failedTradesList.map(item => { | ||||||
|                     const recipientToRemove = item.recipient |                     const recipientToRemove = item.recipient | ||||||
|                     this.tradesOpenArrrQortalCleaned = this.tradesOpenArrrQortal.filter(obj => { |                     this.tradesOpenArrrQortalCleaned = this.tradesOpenArrrQortal.filter(obj => { | ||||||
|                         return obj.qortalCreatorTradeAddress !== recipientToRemove |                         return obj.qortalCreatorTradeAddress !== recipientToRemove | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user