diff --git a/src/eventViewer.js b/src/eventViewer.js
index fff248b..a9aa696 100644
--- a/src/eventViewer.js
+++ b/src/eventViewer.js
@@ -13,8 +13,8 @@ const claimColour = "rgba(77, 91, 42, 0.3)";
const unbondColour = "rgba(122, 23, 51, 0.3)";
const greyColour = "rgba(122, 128, 127, 0.3)";
-const defaultMaxShown = 200;
-const defaultIncrementMaxShown = 200;
+const defaultMaxShown = 100;
+const defaultIncrementMaxShown = 100;
const EventViewer = (obj) => {
const [searchTerm, setSearchTerm] = useState(obj.prefill || "");
@@ -68,7 +68,7 @@ const EventViewer = (obj) => {
Show {defaultMaxShown}
- }else{
+ } else {
showLessBlock =
}
@@ -83,8 +83,102 @@ const EventViewer = (obj) => {
searchTermText = Filter by Orchestrator address
}
+ let eventList = [];
+ for (const eventObj of obj.events) {
+ if (unfiltered > maxAmount) {
+ break;
+ }
+ // Filter by minimum value
+ if (amountFilter !== "") {
+ if (parseFloat(amountFilter) > eventObj.eventValue) {
+ return null;
+ }
+ }
+ // Filter name on from, to, caller
+ if (searchTerm !== "") {
+ let isFiltered = true;
+ if (eventObj.eventCaller.toLowerCase().includes(searchTerm.toLowerCase())) isFiltered = false;
+ if (eventObj.eventFrom.toLowerCase().includes(searchTerm.toLowerCase())) isFiltered = false;
+ if (eventObj.eventTo.toLowerCase().includes(searchTerm.toLowerCase())) isFiltered = false;
+ if (isFiltered) return null;
+ }
+ // Filter Events on filter buttons
+ let isFiltered = true;
+ // Check boolean filters on eventObj.eventType
+ let count = 0;
+ if (filterActivated) {
+ if (eventObj.eventType === "Activate") {
+ isFiltered = false;
+ }
+ count++;
+ }
+ if (rewardActivated) {
+ if (eventObj.eventType === "Reward") {
+ isFiltered = false;
+ }
+ count++;
+ }
+ if (updateActivated) {
+ if (eventObj.eventType === "Update") {
+ isFiltered = false;
+ }
+ count++;
+ }
+ if (withdrawActivated) {
+ if (eventObj.eventType === "Withdraw") {
+ isFiltered = false;
+ }
+ count++;
+ }
+ if (stakeActivated) {
+ if (eventObj.eventType === "Stake") {
+ isFiltered = false;
+ }
+ count++;
+ }
+ if (stakeActivated) {
+ if (eventObj.eventType === "Migrate") {
+ isFiltered = false;
+ }
+ count++;
+ }
+ if (unbondActivated) {
+ if (eventObj.eventType === "Unbond") {
+ isFiltered = false;
+ }
+ count++;
+ }
+ if (delegatorRewardActivated) {
+ if (eventObj.eventType === "Claim") {
+ isFiltered = false;
+ }
+ count++;
+ }
+ if (isFiltered && count) {
+ continue;
+ }
+
+ if (unfiltered < maxAmount) {
+ unfiltered++;
+ if (prevBlock === eventObj.transactionBlock) {
+ eventList.push();
+ } else {
+ prevBlock = eventObj.transactionBlock;
+ eventList.push();
+ }
+ }
+ }
+
return (
-
+
{showLessBlock}
@@ -173,95 +267,7 @@ const EventViewer = (obj) => {
- {obj.events.map((eventObj, idx) => {
- // Filter by minimum value
- if (amountFilter !== "") {
- if (parseFloat(amountFilter) > eventObj.eventValue) {
- return null;
- }
- }
- // Filter name on from, to, caller
- if (searchTerm !== "") {
- let isFiltered = true;
- if (eventObj.eventCaller.toLowerCase().includes(searchTerm.toLowerCase())) isFiltered = false;
- if (eventObj.eventFrom.toLowerCase().includes(searchTerm.toLowerCase())) isFiltered = false;
- if (eventObj.eventTo.toLowerCase().includes(searchTerm.toLowerCase())) isFiltered = false;
- if (isFiltered) return null;
- }
- // Filter Events on filter buttons
- let isFiltered = true;
- // Check boolean filters on eventObj.eventType
- let count = 0;
- if (filterActivated) {
- if (eventObj.eventType === "Activate") {
- isFiltered = false;
- }
- count++;
- }
- if (rewardActivated) {
- if (eventObj.eventType === "Reward") {
- isFiltered = false;
- }
- count++;
- }
- if (updateActivated) {
- if (eventObj.eventType === "Update") {
- isFiltered = false;
- }
- count++;
- }
- if (withdrawActivated) {
- if (eventObj.eventType === "Withdraw") {
- isFiltered = false;
- }
- count++;
- }
- if (stakeActivated) {
- if (eventObj.eventType === "Stake") {
- isFiltered = false;
- }
- count++;
- }
- if (stakeActivated) {
- if (eventObj.eventType === "Migrate") {
- isFiltered = false;
- }
- count++;
- }
- if (unbondActivated) {
- if (eventObj.eventType === "Unbond") {
- isFiltered = false;
- }
- count++;
- }
- if (delegatorRewardActivated) {
- if (eventObj.eventType === "Claim") {
- isFiltered = false;
- }
- count++;
- }
- if (isFiltered && count) {
- return null;
- }
-
- if (unfiltered < maxAmount) {
- unfiltered++;
- if (prevBlock === eventObj.transactionBlock) {
- return
- } else {
- prevBlock = eventObj.transactionBlock;
- return
- }
- }
- })}
+ {eventList}
diff --git a/src/livepeer.js b/src/livepeer.js
index ee23984..6cfef25 100644
--- a/src/livepeer.js
+++ b/src/livepeer.js
@@ -151,7 +151,9 @@ const Livepeer = (obj) => {
-
+
+
+
);
}