@xyo-network/react-chain-blockchain 1.3.6 → 1.3.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/browser/index.mjs +272 -213
- package/dist/browser/index.mjs.map +1 -1
- package/dist/types/components/block/table/cell/BlockNumber.d.ts.map +1 -1
- package/dist/types/components/block/table/cell/BlockNumberChip.d.ts +7 -0
- package/dist/types/components/block/table/cell/BlockNumberChip.d.ts.map +1 -0
- package/dist/types/components/block/table/cell/PayloadCounts.d.ts.map +1 -1
- package/dist/types/components/block/table/cell/Producer.d.ts.map +1 -1
- package/dist/types/components/block/table/cell/TransactionCount.d.ts.map +1 -1
- package/dist/types/components/block/table/row/TableRow.d.ts.map +1 -1
- package/package.json +32 -30
- package/src/components/block/table/cell/BlockNumber.tsx +9 -7
- package/src/components/block/table/cell/BlockNumberChip.tsx +11 -0
- package/src/components/block/table/cell/PayloadCounts.tsx +27 -4
- package/src/components/block/table/cell/Producer.tsx +1 -4
- package/src/components/block/table/cell/TransactionCount.tsx +16 -2
- package/src/components/block/table/head/TableHead.tsx +4 -4
- package/src/components/block/table/row/TableRow.tsx +15 -7
- package/src/components/transactions/TransactionCountChip.tsx +3 -3
package/dist/browser/index.mjs
CHANGED
|
@@ -305,7 +305,7 @@ var SubmitChainTransaction = /* @__PURE__ */ __name(() => {
|
|
|
305
305
|
}, "SubmitChainTransaction");
|
|
306
306
|
|
|
307
307
|
// src/components/transactions/TransactionCountChip.tsx
|
|
308
|
-
import
|
|
308
|
+
import CompareArrowsIcon from "@mui/icons-material/CompareArrows";
|
|
309
309
|
import { Chip, Icon } from "@mui/material";
|
|
310
310
|
import React7, { useMemo as useMemo4 } from "react";
|
|
311
311
|
var TransactionCountChip = /* @__PURE__ */ __name(({ transactions, sx, ...props }) => {
|
|
@@ -316,8 +316,8 @@ var TransactionCountChip = /* @__PURE__ */ __name(({ transactions, sx, ...props
|
|
|
316
316
|
transactions
|
|
317
317
|
]);
|
|
318
318
|
return /* @__PURE__ */ React7.createElement(Chip, {
|
|
319
|
-
avatar: /* @__PURE__ */ React7.createElement(Icon, null, /* @__PURE__ */ React7.createElement(
|
|
320
|
-
label
|
|
319
|
+
avatar: /* @__PURE__ */ React7.createElement(Icon, null, /* @__PURE__ */ React7.createElement(CompareArrowsIcon, null)),
|
|
320
|
+
label,
|
|
321
321
|
title: transactions ? `Block contains ${transactions.length} transactions` : void 0,
|
|
322
322
|
sx: {
|
|
323
323
|
display: "inline-flex",
|
|
@@ -955,7 +955,18 @@ var BlockHeadingFlexbox = /* @__PURE__ */ __name(({ block, defaultExpanded, tran
|
|
|
955
955
|
|
|
956
956
|
// src/components/block/table/cell/BlockNumber.tsx
|
|
957
957
|
import { Link, TableCell, Tooltip } from "@mui/material";
|
|
958
|
+
import React15 from "react";
|
|
959
|
+
|
|
960
|
+
// src/components/block/table/cell/BlockNumberChip.tsx
|
|
961
|
+
import { Chip as Chip3 } from "@mui/material";
|
|
958
962
|
import React14 from "react";
|
|
963
|
+
var BlockNumberChip = /* @__PURE__ */ __name(({ blockNumber, ...props }) => {
|
|
964
|
+
return /* @__PURE__ */ React14.createElement(Chip3, {
|
|
965
|
+
avatar: /* @__PURE__ */ React14.createElement(React14.Fragment, null),
|
|
966
|
+
label: blockNumber,
|
|
967
|
+
...props
|
|
968
|
+
});
|
|
969
|
+
}, "BlockNumberChip");
|
|
959
970
|
|
|
960
971
|
// src/components/block/table/cell/hooks/useLinkedBlockItem.tsx
|
|
961
972
|
import { useEvent as useEvent2 } from "@xyo-network/react-event";
|
|
@@ -977,32 +988,38 @@ var useLinkedBlockItem = /* @__PURE__ */ __name((noun, data) => {
|
|
|
977
988
|
|
|
978
989
|
// src/components/block/table/cell/BlockNumber.tsx
|
|
979
990
|
var BlockNumberTableCell = /* @__PURE__ */ __name(({ block, linked, ...props }) => {
|
|
980
|
-
const
|
|
981
|
-
const
|
|
982
|
-
return /* @__PURE__ */
|
|
991
|
+
const blockNumber = block?.[0].block;
|
|
992
|
+
const [ref, handleClick] = useLinkedBlockItem("block-number", blockNumber?.toString());
|
|
993
|
+
return /* @__PURE__ */ React15.createElement(TableCell, {
|
|
983
994
|
ref,
|
|
984
995
|
...props
|
|
985
|
-
}, /* @__PURE__ */
|
|
986
|
-
title: `Block Number: ${
|
|
987
|
-
}, /* @__PURE__ */
|
|
988
|
-
title:
|
|
996
|
+
}, /* @__PURE__ */ React15.createElement(Tooltip, {
|
|
997
|
+
title: `Block Number: ${blockNumber}`
|
|
998
|
+
}, /* @__PURE__ */ React15.createElement("span", null, linked && blockNumber !== void 0 ? /* @__PURE__ */ React15.createElement(Link, {
|
|
999
|
+
title: blockNumber?.toString(),
|
|
989
1000
|
onClick: handleClick,
|
|
990
1001
|
sx: {
|
|
991
1002
|
cursor: "pointer"
|
|
992
1003
|
}
|
|
993
|
-
},
|
|
1004
|
+
}, /* @__PURE__ */ React15.createElement(BlockNumberChip, {
|
|
1005
|
+
blockNumber,
|
|
1006
|
+
size: "small"
|
|
1007
|
+
})) : null, !linked && /* @__PURE__ */ React15.createElement(BlockNumberChip, {
|
|
1008
|
+
blockNumber,
|
|
1009
|
+
size: "small"
|
|
1010
|
+
}))));
|
|
994
1011
|
}, "BlockNumberTableCell");
|
|
995
1012
|
|
|
996
1013
|
// src/components/block/table/cell/Hash.tsx
|
|
997
|
-
import { Avatar, Chip as
|
|
1014
|
+
import { Avatar, Chip as Chip4, TableCell as TableCell2, Tooltip as Tooltip2 } from "@mui/material";
|
|
998
1015
|
import { Identicon } from "@xylabs/react-identicon";
|
|
999
1016
|
import { usePayloadRootHash } from "@xyo-network/react-shared";
|
|
1000
|
-
import
|
|
1017
|
+
import React17 from "react";
|
|
1001
1018
|
|
|
1002
1019
|
// src/components/FeatureNotAvailable.tsx
|
|
1003
1020
|
import { Button as Button2, Dialog, DialogActions, DialogContent, DialogTitle } from "@mui/material";
|
|
1004
|
-
import
|
|
1005
|
-
var FeatureNotAvailable = /* @__PURE__ */ __name(({ featureName = "Feature", ...props }) => /* @__PURE__ */
|
|
1021
|
+
import React16 from "react";
|
|
1022
|
+
var FeatureNotAvailable = /* @__PURE__ */ __name(({ featureName = "Feature", ...props }) => /* @__PURE__ */ React16.createElement(Dialog, props, /* @__PURE__ */ React16.createElement(DialogTitle, null, `${featureName} Not Available`), /* @__PURE__ */ React16.createElement(DialogContent, null, "This feature is not currently available. Either you do not have access to it or it is currently undergoing maintenance."), /* @__PURE__ */ React16.createElement(DialogActions, null, /* @__PURE__ */ React16.createElement(Button2, {
|
|
1006
1023
|
onClick: /* @__PURE__ */ __name((e) => props.onClose?.(e, "backdropClick"), "onClick")
|
|
1007
1024
|
}, "Close"))), "FeatureNotAvailable");
|
|
1008
1025
|
|
|
@@ -1010,19 +1027,19 @@ var FeatureNotAvailable = /* @__PURE__ */ __name(({ featureName = "Feature", ...
|
|
|
1010
1027
|
var BlockHashTableCell = /* @__PURE__ */ __name(({ block, identiconProps, notAvailableDialog, linked, ...props }) => {
|
|
1011
1028
|
const hash = usePayloadRootHash(block?.[0]);
|
|
1012
1029
|
const [ref, handleClick] = useLinkedBlockItem("block-hash", hash);
|
|
1013
|
-
const [notAvailable, setNotAvailable] =
|
|
1030
|
+
const [notAvailable, setNotAvailable] = React17.useState(false);
|
|
1014
1031
|
const shortenedHash = hash ? `${hash.slice(0, 4)}...${hash.slice(-5, -1)}` : "";
|
|
1015
|
-
return /* @__PURE__ */
|
|
1032
|
+
return /* @__PURE__ */ React17.createElement(TableCell2, {
|
|
1016
1033
|
ref,
|
|
1017
1034
|
...props
|
|
1018
|
-
}, hash ? /* @__PURE__ */
|
|
1035
|
+
}, hash ? /* @__PURE__ */ React17.createElement(Tooltip2, {
|
|
1019
1036
|
title: `Block Hash: ${hash}`
|
|
1020
|
-
}, /* @__PURE__ */
|
|
1021
|
-
avatar: /* @__PURE__ */
|
|
1037
|
+
}, /* @__PURE__ */ React17.createElement(Chip4, {
|
|
1038
|
+
avatar: /* @__PURE__ */ React17.createElement(Avatar, {
|
|
1022
1039
|
sx: {
|
|
1023
1040
|
background: "white"
|
|
1024
1041
|
}
|
|
1025
|
-
}, /* @__PURE__ */
|
|
1042
|
+
}, /* @__PURE__ */ React17.createElement(Identicon, {
|
|
1026
1043
|
size: 16,
|
|
1027
1044
|
value: hash,
|
|
1028
1045
|
...identiconProps
|
|
@@ -1032,7 +1049,7 @@ var BlockHashTableCell = /* @__PURE__ */ __name(({ block, identiconProps, notAva
|
|
|
1032
1049
|
},
|
|
1033
1050
|
label: shortenedHash,
|
|
1034
1051
|
onClick: linked ? handleClick : () => setNotAvailable(true)
|
|
1035
|
-
})) : null, notAvailableDialog && notAvailable ? /* @__PURE__ */
|
|
1052
|
+
})) : null, notAvailableDialog && notAvailable ? /* @__PURE__ */ React17.createElement(FeatureNotAvailable, {
|
|
1036
1053
|
featureName: "Block Details",
|
|
1037
1054
|
open: notAvailable,
|
|
1038
1055
|
onClick: /* @__PURE__ */ __name(() => setNotAvailable(false), "onClick")
|
|
@@ -1046,39 +1063,40 @@ import { ellipsize } from "@xylabs/eth-address";
|
|
|
1046
1063
|
import { FlexRow as FlexRow3 } from "@xylabs/react-flexbox";
|
|
1047
1064
|
import { JsonViewerEx } from "@xyo-network/react-payload-raw-info";
|
|
1048
1065
|
import { usePayloadRootHash as usePayloadRootHash2 } from "@xyo-network/react-shared";
|
|
1049
|
-
import
|
|
1066
|
+
import React18, { useState as useState10 } from "react";
|
|
1050
1067
|
var BlockJsonViewTableCell = /* @__PURE__ */ __name(({ block, ...props }) => {
|
|
1051
1068
|
const [open, setOpen] = useState10(false);
|
|
1052
1069
|
const onClose = /* @__PURE__ */ __name(() => setOpen(false), "onClose");
|
|
1053
1070
|
const hash = usePayloadRootHash2(block?.[0]);
|
|
1054
1071
|
const title = hash ? `JSON for ${ellipsize(hash, 5)}` : "JSON";
|
|
1055
|
-
return /* @__PURE__ */
|
|
1072
|
+
return /* @__PURE__ */ React18.createElement(TableCell3, props, /* @__PURE__ */ React18.createElement(FlexRow3, {
|
|
1056
1073
|
sx: {
|
|
1057
1074
|
width: "100%"
|
|
1058
1075
|
}
|
|
1059
|
-
}, /* @__PURE__ */
|
|
1076
|
+
}, /* @__PURE__ */ React18.createElement(IconButton2, {
|
|
1060
1077
|
onClick: /* @__PURE__ */ __name(() => setOpen(true), "onClick")
|
|
1061
|
-
}, /* @__PURE__ */
|
|
1078
|
+
}, /* @__PURE__ */ React18.createElement(DataObject, null))), /* @__PURE__ */ React18.createElement(Dialog2, {
|
|
1062
1079
|
open,
|
|
1063
1080
|
onClose
|
|
1064
|
-
}, /* @__PURE__ */
|
|
1081
|
+
}, /* @__PURE__ */ React18.createElement(DialogTitle2, null, title), /* @__PURE__ */ React18.createElement(DialogContent2, null, /* @__PURE__ */ React18.createElement(JsonViewerEx, {
|
|
1065
1082
|
value: block
|
|
1066
|
-
})), /* @__PURE__ */
|
|
1083
|
+
})), /* @__PURE__ */ React18.createElement(DialogActions2, {
|
|
1067
1084
|
sx: {
|
|
1068
1085
|
display: "flex",
|
|
1069
1086
|
flexDirection: "row",
|
|
1070
1087
|
justifyContent: "end"
|
|
1071
1088
|
}
|
|
1072
|
-
}, /* @__PURE__ */
|
|
1089
|
+
}, /* @__PURE__ */ React18.createElement(Button3, {
|
|
1073
1090
|
variant: "contained",
|
|
1074
1091
|
onClick: onClose
|
|
1075
1092
|
}, "Close"))));
|
|
1076
1093
|
}, "BlockJsonViewTableCell");
|
|
1077
1094
|
|
|
1078
1095
|
// src/components/block/table/cell/PayloadCounts.tsx
|
|
1079
|
-
import { Error as Error2 } from "@mui/icons-material";
|
|
1080
|
-
import { Link as Link2, TableCell as TableCell4, Tooltip as Tooltip3 } from "@mui/material";
|
|
1081
|
-
import
|
|
1096
|
+
import { Error as Error2, Public, PublicOff } from "@mui/icons-material";
|
|
1097
|
+
import { Chip as Chip5, Link as Link2, TableCell as TableCell4, Tooltip as Tooltip3 } from "@mui/material";
|
|
1098
|
+
import { FlexRow as FlexRow4 } from "@xylabs/react-flexbox";
|
|
1099
|
+
import React19 from "react";
|
|
1082
1100
|
var BlockPayloadCountsTableCell = /* @__PURE__ */ __name(({ block, linked, ...props }) => {
|
|
1083
1101
|
const [publicPayloads, privatePayloads, error] = usePayloadCountsFromBlock(block);
|
|
1084
1102
|
const data = block && privatePayloads !== void 0 && publicPayloads !== void 0 ? {
|
|
@@ -1087,47 +1105,70 @@ var BlockPayloadCountsTableCell = /* @__PURE__ */ __name(({ block, linked, ...pr
|
|
|
1087
1105
|
block: block[0]._hash
|
|
1088
1106
|
} : void 0;
|
|
1089
1107
|
const [ref, handleClick] = useLinkedBlockItem("payload-counts", data);
|
|
1090
|
-
|
|
1091
|
-
return /* @__PURE__ */ React18.createElement(TableCell4, {
|
|
1108
|
+
return /* @__PURE__ */ React19.createElement(TableCell4, {
|
|
1092
1109
|
ref,
|
|
1093
1110
|
...props
|
|
1094
|
-
}, /* @__PURE__ */
|
|
1111
|
+
}, /* @__PURE__ */ React19.createElement("span", null, error ? /* @__PURE__ */ React19.createElement(Tooltip3, {
|
|
1095
1112
|
title: error.message
|
|
1096
|
-
}, /* @__PURE__ */
|
|
1113
|
+
}, /* @__PURE__ */ React19.createElement(Error2, {
|
|
1097
1114
|
color: "error"
|
|
1098
|
-
})) : null, linked ? /* @__PURE__ */
|
|
1115
|
+
})) : null, linked ? /* @__PURE__ */ React19.createElement(Tooltip3, {
|
|
1116
|
+
title: `Public Payloads: ${publicPayloads ?? "--"} Private Payloads: ${privatePayloads ?? "--"}`
|
|
1117
|
+
}, /* @__PURE__ */ React19.createElement(Link2, {
|
|
1099
1118
|
onClick: handleClick,
|
|
1100
1119
|
sx: {
|
|
1101
|
-
cursor: "pointer"
|
|
1120
|
+
cursor: "pointer",
|
|
1121
|
+
display: "inline-flex",
|
|
1122
|
+
gap: 0.5
|
|
1102
1123
|
}
|
|
1103
|
-
},
|
|
1124
|
+
}, /* @__PURE__ */ React19.createElement(Chip5, {
|
|
1125
|
+
avatar: /* @__PURE__ */ React19.createElement(Public, {
|
|
1126
|
+
fontSize: "small"
|
|
1127
|
+
}),
|
|
1128
|
+
label: publicPayloads ?? "--"
|
|
1129
|
+
}), /* @__PURE__ */ React19.createElement(Chip5, {
|
|
1130
|
+
avatar: /* @__PURE__ */ React19.createElement(PublicOff, {
|
|
1131
|
+
fontSize: "small"
|
|
1132
|
+
}),
|
|
1133
|
+
label: privatePayloads ?? "--"
|
|
1134
|
+
}))) : /* @__PURE__ */ React19.createElement(Tooltip3, {
|
|
1135
|
+
title: `Public Payloads: ${publicPayloads ?? "--"} Private Payloads: ${privatePayloads ?? "--"}`
|
|
1136
|
+
}, /* @__PURE__ */ React19.createElement(FlexRow4, {
|
|
1137
|
+
gap: 0.5,
|
|
1138
|
+
justifyContent: "left"
|
|
1139
|
+
}, /* @__PURE__ */ React19.createElement(Chip5, {
|
|
1140
|
+
avatar: /* @__PURE__ */ React19.createElement(Public, {
|
|
1141
|
+
fontSize: "small"
|
|
1142
|
+
}),
|
|
1143
|
+
label: publicPayloads ?? "--"
|
|
1144
|
+
}), /* @__PURE__ */ React19.createElement(Chip5, {
|
|
1145
|
+
avatar: /* @__PURE__ */ React19.createElement(PublicOff, {
|
|
1146
|
+
fontSize: "small"
|
|
1147
|
+
}),
|
|
1148
|
+
label: privatePayloads ?? "--"
|
|
1149
|
+
})))));
|
|
1104
1150
|
}, "BlockPayloadCountsTableCell");
|
|
1105
1151
|
|
|
1106
1152
|
// src/components/block/table/cell/Producer.tsx
|
|
1107
1153
|
import { TableCell as TableCell5, Tooltip as Tooltip4 } from "@mui/material";
|
|
1108
|
-
import
|
|
1109
|
-
import React19 from "react";
|
|
1154
|
+
import React20 from "react";
|
|
1110
1155
|
var BlockProducerTableCell = /* @__PURE__ */ __name(({ block, linked, notAvailableDialog, producerChipProps, ...props }) => {
|
|
1111
1156
|
const [ref, handleClick] = useLinkedBlockItem("block-producer", JSON.stringify(block));
|
|
1112
1157
|
const producer = useBlockProducer(block);
|
|
1113
|
-
const [notAvailable, setNotAvailable] =
|
|
1114
|
-
return /* @__PURE__ */
|
|
1158
|
+
const [notAvailable, setNotAvailable] = React20.useState(false);
|
|
1159
|
+
return /* @__PURE__ */ React20.createElement(TableCell5, {
|
|
1115
1160
|
ref,
|
|
1116
1161
|
...props
|
|
1117
|
-
}, /* @__PURE__ */
|
|
1162
|
+
}, /* @__PURE__ */ React20.createElement(Tooltip4, {
|
|
1118
1163
|
title: `Block Producer: ${producer}`
|
|
1119
|
-
}, /* @__PURE__ */
|
|
1120
|
-
sx: {
|
|
1121
|
-
width: "100%"
|
|
1122
|
-
}
|
|
1123
|
-
}, /* @__PURE__ */ React19.createElement(BlockProducerChip, {
|
|
1164
|
+
}, /* @__PURE__ */ React20.createElement(BlockProducerChip, {
|
|
1124
1165
|
sx: {
|
|
1125
1166
|
cursor: "pointer"
|
|
1126
1167
|
},
|
|
1127
1168
|
onClick: linked ? handleClick : () => setNotAvailable(true),
|
|
1128
1169
|
block,
|
|
1129
1170
|
...producerChipProps
|
|
1130
|
-
}))
|
|
1171
|
+
})), notAvailableDialog && notAvailable ? /* @__PURE__ */ React20.createElement(FeatureNotAvailable, {
|
|
1131
1172
|
featureName: "Producer Details",
|
|
1132
1173
|
open: notAvailable,
|
|
1133
1174
|
onClick: /* @__PURE__ */ __name(() => setNotAvailable(false), "onClick")
|
|
@@ -1137,44 +1178,51 @@ var BlockProducerTableCell = /* @__PURE__ */ __name(({ block, linked, notAvailab
|
|
|
1137
1178
|
// src/components/block/table/cell/TransactionCount.tsx
|
|
1138
1179
|
import { Error as Error3 } from "@mui/icons-material";
|
|
1139
1180
|
import { Link as Link3, TableCell as TableCell6, Tooltip as Tooltip5 } from "@mui/material";
|
|
1140
|
-
import
|
|
1181
|
+
import React21, { useMemo as useMemo10 } from "react";
|
|
1141
1182
|
var BlockTransactionCountTableCell = /* @__PURE__ */ __name(({ block, linked, ...props }) => {
|
|
1142
1183
|
const [transactions, error] = useTxsFromBlock(block);
|
|
1184
|
+
const txHashes = useMemo10(() => transactions?.map(([, hash]) => hash), [
|
|
1185
|
+
transactions
|
|
1186
|
+
]);
|
|
1143
1187
|
const data = block && transactions !== void 0 ? {
|
|
1144
1188
|
transactions: transactions.length,
|
|
1145
1189
|
block: block[0]._hash
|
|
1146
1190
|
} : void 0;
|
|
1147
1191
|
const [ref, handleClick] = useLinkedBlockItem("transaction-count", data);
|
|
1148
|
-
return /* @__PURE__ */
|
|
1192
|
+
return /* @__PURE__ */ React21.createElement(TableCell6, {
|
|
1149
1193
|
ref,
|
|
1150
1194
|
...props
|
|
1151
|
-
}, /* @__PURE__ */
|
|
1195
|
+
}, /* @__PURE__ */ React21.createElement("span", null, error ? /* @__PURE__ */ React21.createElement(Tooltip5, {
|
|
1152
1196
|
title: error.message
|
|
1153
|
-
}, /* @__PURE__ */
|
|
1197
|
+
}, /* @__PURE__ */ React21.createElement(Error3, {
|
|
1154
1198
|
color: "error"
|
|
1155
|
-
})) : null, linked ? /* @__PURE__ */
|
|
1199
|
+
})) : null, linked ? /* @__PURE__ */ React21.createElement(Link3, {
|
|
1156
1200
|
onClick: handleClick,
|
|
1157
1201
|
sx: {
|
|
1158
1202
|
cursor: "pointer"
|
|
1159
1203
|
}
|
|
1160
|
-
},
|
|
1204
|
+
}, /* @__PURE__ */ React21.createElement(TransactionCountChip, {
|
|
1205
|
+
transactions: txHashes
|
|
1206
|
+
})) : /* @__PURE__ */ React21.createElement(TransactionCountChip, {
|
|
1207
|
+
transactions: txHashes
|
|
1208
|
+
})));
|
|
1161
1209
|
}, "BlockTransactionCountTableCell");
|
|
1162
1210
|
|
|
1163
1211
|
// src/components/block/table/cell/Verification.tsx
|
|
1164
1212
|
import { TableCell as TableCell7 } from "@mui/material";
|
|
1165
1213
|
import { FlexRow as FlexRow5 } from "@xylabs/react-flexbox";
|
|
1166
1214
|
import { BWVerification as BWVerification2 } from "@xyo-network/react-boundwitness-plugin";
|
|
1167
|
-
import
|
|
1215
|
+
import React22 from "react";
|
|
1168
1216
|
var BlockVerificationTableCell = /* @__PURE__ */ __name(({ block, linked, ...props }) => {
|
|
1169
1217
|
const [ref, handleClick] = useLinkedBlockItem("block-verification", block?.[0].block.toString());
|
|
1170
|
-
return /* @__PURE__ */
|
|
1218
|
+
return /* @__PURE__ */ React22.createElement(TableCell7, {
|
|
1171
1219
|
ref,
|
|
1172
1220
|
...props
|
|
1173
|
-
}, /* @__PURE__ */
|
|
1221
|
+
}, /* @__PURE__ */ React22.createElement(FlexRow5, {
|
|
1174
1222
|
sx: {
|
|
1175
1223
|
width: "100%"
|
|
1176
1224
|
}
|
|
1177
|
-
}, /* @__PURE__ */
|
|
1225
|
+
}, /* @__PURE__ */ React22.createElement(BWVerification2, {
|
|
1178
1226
|
onClick: linked ? handleClick : void 0,
|
|
1179
1227
|
iconColors: true,
|
|
1180
1228
|
boundwitness: block?.[0]
|
|
@@ -1184,46 +1232,46 @@ var BlockVerificationTableCell = /* @__PURE__ */ __name(({ block, linked, ...pro
|
|
|
1184
1232
|
// src/components/block/table/Ex.tsx
|
|
1185
1233
|
import { TableBody } from "@mui/material";
|
|
1186
1234
|
import { TableEx } from "@xyo-network/react-table";
|
|
1187
|
-
import
|
|
1235
|
+
import React24 from "react";
|
|
1188
1236
|
|
|
1189
1237
|
// src/components/block/table/head/TableHead.tsx
|
|
1190
1238
|
import { InfoOutline } from "@mui/icons-material";
|
|
1191
1239
|
import { TableCell as TableCell8, TableHead, TableRow, Tooltip as Tooltip6, Typography as Typography3 } from "@mui/material";
|
|
1192
1240
|
import { FlexRow as FlexRow6 } from "@xylabs/react-flexbox";
|
|
1193
|
-
import
|
|
1241
|
+
import React23 from "react";
|
|
1194
1242
|
var ToolTipTableCell = /* @__PURE__ */ __name(({ children, align, title, ...props }) => {
|
|
1195
|
-
return /* @__PURE__ */
|
|
1243
|
+
return /* @__PURE__ */ React23.createElement(TableCell8, {
|
|
1196
1244
|
title,
|
|
1197
1245
|
...props
|
|
1198
|
-
}, /* @__PURE__ */
|
|
1246
|
+
}, /* @__PURE__ */ React23.createElement(Tooltip6, {
|
|
1199
1247
|
title
|
|
1200
|
-
}, /* @__PURE__ */
|
|
1248
|
+
}, /* @__PURE__ */ React23.createElement(FlexRow6, {
|
|
1201
1249
|
justifyContent: align
|
|
1202
|
-
}, /* @__PURE__ */
|
|
1250
|
+
}, /* @__PURE__ */ React23.createElement(Typography3, {
|
|
1203
1251
|
variant: "body2"
|
|
1204
|
-
}, children), "\xA0", /* @__PURE__ */
|
|
1252
|
+
}, children), "\xA0", /* @__PURE__ */ React23.createElement(InfoOutline, {
|
|
1205
1253
|
fontSize: "small"
|
|
1206
1254
|
}))));
|
|
1207
1255
|
}, "ToolTipTableCell");
|
|
1208
1256
|
var BlockchainTableHead = /* @__PURE__ */ __name(() => {
|
|
1209
|
-
return /* @__PURE__ */
|
|
1210
|
-
|
|
1211
|
-
}, "Block Hash"), /* @__PURE__ */ React22.createElement(ToolTipTableCell, {
|
|
1212
|
-
align: "center",
|
|
1257
|
+
return /* @__PURE__ */ React23.createElement(TableHead, null, /* @__PURE__ */ React23.createElement(TableRow, null, /* @__PURE__ */ React23.createElement(ToolTipTableCell, {
|
|
1258
|
+
align: "left",
|
|
1213
1259
|
title: "The block number that is included in the block"
|
|
1214
|
-
}, "Block
|
|
1215
|
-
|
|
1260
|
+
}, "Block"), /* @__PURE__ */ React23.createElement(ToolTipTableCell, {
|
|
1261
|
+
title: "The hash of the block"
|
|
1262
|
+
}, "Block Hash"), /* @__PURE__ */ React23.createElement(ToolTipTableCell, {
|
|
1263
|
+
align: "left",
|
|
1264
|
+
title: "The address of the block producer that produced the block"
|
|
1265
|
+
}, "Block Producer"), /* @__PURE__ */ React23.createElement(ToolTipTableCell, {
|
|
1266
|
+
align: "left",
|
|
1216
1267
|
title: "Count of transactions that are included in the block"
|
|
1217
|
-
}, "Transactions"), /* @__PURE__ */
|
|
1218
|
-
align: "
|
|
1268
|
+
}, "Transactions"), /* @__PURE__ */ React23.createElement(ToolTipTableCell, {
|
|
1269
|
+
align: "left",
|
|
1219
1270
|
title: "Count of public and private payload counts for the block"
|
|
1220
|
-
}, "Payloads"), /* @__PURE__ */
|
|
1221
|
-
align: "center",
|
|
1222
|
-
title: "The address of the block producer that produced the block"
|
|
1223
|
-
}, "Block Producer"), /* @__PURE__ */ React22.createElement(ToolTipTableCell, {
|
|
1271
|
+
}, "Payloads"), /* @__PURE__ */ React23.createElement(ToolTipTableCell, {
|
|
1224
1272
|
align: "center",
|
|
1225
1273
|
title: "The result of the local validation check for the block"
|
|
1226
|
-
}, "Valid"), /* @__PURE__ */
|
|
1274
|
+
}, "Valid"), /* @__PURE__ */ React23.createElement(ToolTipTableCell, {
|
|
1227
1275
|
align: "center",
|
|
1228
1276
|
title: "Link to display the raw JSON of the block"
|
|
1229
1277
|
}, "JSON")));
|
|
@@ -1231,74 +1279,85 @@ var BlockchainTableHead = /* @__PURE__ */ __name(() => {
|
|
|
1231
1279
|
|
|
1232
1280
|
// src/components/block/table/Ex.tsx
|
|
1233
1281
|
var BlockchainTableEx = /* @__PURE__ */ __name(({ ref, children, ...props }) => {
|
|
1234
|
-
return /* @__PURE__ */
|
|
1282
|
+
return /* @__PURE__ */ React24.createElement(TableEx, {
|
|
1235
1283
|
ref,
|
|
1236
1284
|
...props
|
|
1237
|
-
}, /* @__PURE__ */
|
|
1285
|
+
}, /* @__PURE__ */ React24.createElement(BlockchainTableHead, null), /* @__PURE__ */ React24.createElement(TableBody, null, children));
|
|
1238
1286
|
}, "BlockchainTableEx");
|
|
1239
1287
|
BlockchainTableEx.displayName = "BlockchainTableEx";
|
|
1240
1288
|
|
|
1241
1289
|
// src/components/block/table/row/TableRow.tsx
|
|
1242
|
-
import { TableRow as TableRow2 } from "@mui/material";
|
|
1243
|
-
import
|
|
1290
|
+
import { TableRow as TableRow2, useTheme } from "@mui/material";
|
|
1291
|
+
import { alphaCss } from "@xylabs/react-theme";
|
|
1292
|
+
import React25, { useMemo as useMemo11 } from "react";
|
|
1244
1293
|
var BlockChainTableRow = /* @__PURE__ */ __name(({ block, defaultExpanded, linked, sx, ...props }) => {
|
|
1245
|
-
const linkedTableCellProps =
|
|
1294
|
+
const linkedTableCellProps = useMemo11(() => ({
|
|
1246
1295
|
block,
|
|
1247
1296
|
linked
|
|
1248
1297
|
}), [
|
|
1249
1298
|
block,
|
|
1250
1299
|
linked
|
|
1251
1300
|
]);
|
|
1252
|
-
const defaultTableCellProps =
|
|
1301
|
+
const defaultTableCellProps = useMemo11(() => ({
|
|
1253
1302
|
block
|
|
1254
1303
|
}), [
|
|
1255
1304
|
block
|
|
1256
1305
|
]);
|
|
1257
|
-
|
|
1306
|
+
const theme = useTheme();
|
|
1307
|
+
return /* @__PURE__ */ React25.createElement(TableRow2, {
|
|
1258
1308
|
sx: {
|
|
1259
|
-
overflowY: "scroll",
|
|
1309
|
+
"overflowY": "scroll",
|
|
1310
|
+
"&:hover": {
|
|
1311
|
+
backgroundColor: alphaCss(theme.vars.palette.secondary.light, 0.85)
|
|
1312
|
+
},
|
|
1260
1313
|
...sx
|
|
1261
1314
|
},
|
|
1262
1315
|
...props
|
|
1263
|
-
}, /* @__PURE__ */
|
|
1264
|
-
align: "
|
|
1316
|
+
}, /* @__PURE__ */ React25.createElement(BlockNumberTableCell, {
|
|
1317
|
+
align: "left",
|
|
1265
1318
|
...linkedTableCellProps
|
|
1266
|
-
}), /* @__PURE__ */
|
|
1267
|
-
align: "
|
|
1319
|
+
}), /* @__PURE__ */ React25.createElement(BlockHashTableCell, {
|
|
1320
|
+
align: "left",
|
|
1268
1321
|
...linkedTableCellProps
|
|
1269
|
-
}), /* @__PURE__ */
|
|
1270
|
-
align: "
|
|
1322
|
+
}), /* @__PURE__ */ React25.createElement(BlockProducerTableCell, {
|
|
1323
|
+
align: "left",
|
|
1324
|
+
...linkedTableCellProps
|
|
1325
|
+
}), /* @__PURE__ */ React25.createElement(BlockTransactionCountTableCell, {
|
|
1326
|
+
align: "left",
|
|
1271
1327
|
...linkedTableCellProps
|
|
1272
|
-
}), /* @__PURE__ */
|
|
1328
|
+
}), /* @__PURE__ */ React25.createElement(BlockPayloadCountsTableCell, {
|
|
1329
|
+
align: "left",
|
|
1330
|
+
...linkedTableCellProps
|
|
1331
|
+
}), /* @__PURE__ */ React25.createElement(BlockVerificationTableCell, defaultTableCellProps), /* @__PURE__ */ React25.createElement(BlockJsonViewTableCell, defaultTableCellProps));
|
|
1273
1332
|
}, "BlockChainTableRow");
|
|
1274
1333
|
|
|
1275
1334
|
// src/components/chain/controls/PollingControlsFlexbox.tsx
|
|
1276
1335
|
import { Autorenew, Pause } from "@mui/icons-material";
|
|
1277
1336
|
import { Alert as Alert3, AlertTitle as AlertTitle2, Grow, Icon as Icon2, IconButton as IconButton4, Tooltip as Tooltip7 } from "@mui/material";
|
|
1278
1337
|
import { FlexRow as FlexRow7 } from "@xylabs/react-flexbox";
|
|
1279
|
-
import
|
|
1338
|
+
import React30, { memo } from "react";
|
|
1280
1339
|
|
|
1281
1340
|
// src/components/chain/stats/Dialog.tsx
|
|
1282
1341
|
import { QueryStats } from "@mui/icons-material";
|
|
1283
1342
|
import { Dialog as Dialog3, DialogContent as DialogContent3, DialogTitle as DialogTitle3, IconButton as IconButton3 } from "@mui/material";
|
|
1284
|
-
import
|
|
1343
|
+
import React28, { useState as useState11 } from "react";
|
|
1285
1344
|
|
|
1286
1345
|
// src/components/chain/stats/producer/ProducerFlexbox.tsx
|
|
1287
1346
|
import { ListItem, styled, Typography as Typography4 } from "@mui/material";
|
|
1288
1347
|
import { ErrorRender as ErrorRender3 } from "@xylabs/react-error";
|
|
1289
1348
|
import { FlexCol as FlexCol3 } from "@xylabs/react-flexbox";
|
|
1290
1349
|
import { isChainSummaryProducers } from "@xyo-network/chain-protocol";
|
|
1291
|
-
import
|
|
1350
|
+
import React27, { useMemo as useMemo12 } from "react";
|
|
1292
1351
|
|
|
1293
1352
|
// src/components/chain/stats/producer/Table.tsx
|
|
1294
|
-
import { Table, TableBody as TableBody2, TableCell as TableCell9, TableHead as TableHead2, TableRow as TableRow3, useTheme } from "@mui/material";
|
|
1353
|
+
import { Table, TableBody as TableBody2, TableCell as TableCell9, TableHead as TableHead2, TableRow as TableRow3, useTheme as useTheme2 } from "@mui/material";
|
|
1295
1354
|
import { BlockiesAvatar as BlockiesAvatar2 } from "@xyo-network/react-chain-blockies";
|
|
1296
|
-
import
|
|
1355
|
+
import React26 from "react";
|
|
1297
1356
|
var ChainProducerStatsTable = /* @__PURE__ */ __name(({ producers, ...props }) => {
|
|
1298
|
-
const theme =
|
|
1299
|
-
return /* @__PURE__ */
|
|
1357
|
+
const theme = useTheme2();
|
|
1358
|
+
return /* @__PURE__ */ React26.createElement(Table, props, /* @__PURE__ */ React26.createElement(TableHead2, null, /* @__PURE__ */ React26.createElement(TableRow3, null, /* @__PURE__ */ React26.createElement(TableCell9, null, "Address"), /* @__PURE__ */ React26.createElement(TableCell9, null, "Blocks Produced"), /* @__PURE__ */ React26.createElement(TableCell9, null, "Rewards Earned Produced"))), /* @__PURE__ */ React26.createElement(TableBody2, null, producers?.map((producer) => /* @__PURE__ */ React26.createElement(TableRow3, {
|
|
1300
1359
|
key: producer.address
|
|
1301
|
-
}, /* @__PURE__ */
|
|
1360
|
+
}, /* @__PURE__ */ React26.createElement(TableCell9, null, /* @__PURE__ */ React26.createElement(BlockiesAvatar2, {
|
|
1302
1361
|
blockiesOptions: {
|
|
1303
1362
|
seed: producer.address
|
|
1304
1363
|
},
|
|
@@ -1306,12 +1365,12 @@ var ChainProducerStatsTable = /* @__PURE__ */ __name(({ producers, ...props }) =
|
|
|
1306
1365
|
height: theme.spacing(2.75),
|
|
1307
1366
|
width: theme.spacing(2.75)
|
|
1308
1367
|
}
|
|
1309
|
-
})), /* @__PURE__ */
|
|
1368
|
+
})), /* @__PURE__ */ React26.createElement(TableCell9, null, producer.blocksProduced.toString()), /* @__PURE__ */ React26.createElement(TableCell9, null, producer.rewardsEarned.toString())))));
|
|
1310
1369
|
}, "ChainProducerStatsTable");
|
|
1311
1370
|
|
|
1312
1371
|
// src/components/chain/stats/producer/ProducerFlexbox.tsx
|
|
1313
1372
|
var BlockProducerStatsFlexbox = /* @__PURE__ */ __name(({ payload, ...props }) => {
|
|
1314
|
-
const [producer, producerError] =
|
|
1373
|
+
const [producer, producerError] = useMemo12(() => {
|
|
1315
1374
|
if (payload) {
|
|
1316
1375
|
return isChainSummaryProducers(payload) ? [
|
|
1317
1376
|
payload
|
|
@@ -1325,19 +1384,19 @@ var BlockProducerStatsFlexbox = /* @__PURE__ */ __name(({ payload, ...props }) =
|
|
|
1325
1384
|
}, [
|
|
1326
1385
|
payload
|
|
1327
1386
|
]);
|
|
1328
|
-
const producersArray =
|
|
1387
|
+
const producersArray = useMemo12(() => Object.values(producer?.producers ?? {}), [
|
|
1329
1388
|
producer
|
|
1330
1389
|
]);
|
|
1331
|
-
return /* @__PURE__ */
|
|
1390
|
+
return /* @__PURE__ */ React27.createElement(FlexCol3, {
|
|
1332
1391
|
alignItems: "start",
|
|
1333
1392
|
gap: 1,
|
|
1334
1393
|
...props
|
|
1335
|
-
}, /* @__PURE__ */
|
|
1394
|
+
}, /* @__PURE__ */ React27.createElement(ErrorRender3, {
|
|
1336
1395
|
error: producerError,
|
|
1337
1396
|
scope: "BlockProducerStatsFlexbox"
|
|
1338
|
-
}), /* @__PURE__ */
|
|
1397
|
+
}), /* @__PURE__ */ React27.createElement(Typography4, {
|
|
1339
1398
|
fontSize: "1rem"
|
|
1340
|
-
}, "Block Producers"), /* @__PURE__ */
|
|
1399
|
+
}, "Block Producers"), /* @__PURE__ */ React27.createElement(ChainProducerStatsTable, {
|
|
1341
1400
|
producers: producersArray
|
|
1342
1401
|
}));
|
|
1343
1402
|
}, "BlockProducerStatsFlexbox");
|
|
@@ -1349,18 +1408,18 @@ var StyledListItem = styled(ListItem)(() => ({
|
|
|
1349
1408
|
// src/components/chain/stats/Dialog.tsx
|
|
1350
1409
|
var ChainAnalyzerStatsDialog = /* @__PURE__ */ __name((props) => {
|
|
1351
1410
|
const { analyzers, statsUpdated } = useChainAnalyzersContext();
|
|
1352
|
-
return /* @__PURE__ */
|
|
1411
|
+
return /* @__PURE__ */ React28.createElement(Dialog3, props, /* @__PURE__ */ React28.createElement(DialogTitle3, null, "Chain Analysis"), /* @__PURE__ */ React28.createElement(DialogContent3, null, !!statsUpdated && Object.entries(analyzers).map(([id2, analyzer]) => /* @__PURE__ */ React28.createElement("div", {
|
|
1353
1412
|
key: id2
|
|
1354
|
-
}, id2 === "producers" && /* @__PURE__ */
|
|
1413
|
+
}, id2 === "producers" && /* @__PURE__ */ React28.createElement(BlockProducerStatsFlexbox, {
|
|
1355
1414
|
payload: analyzer.result()
|
|
1356
1415
|
})))));
|
|
1357
1416
|
}, "ChainAnalyzerStatsDialog");
|
|
1358
1417
|
var ChainAnalyzerStatsDialogFromContext = /* @__PURE__ */ __name((props) => {
|
|
1359
1418
|
const [open, setOpen] = useState11(false);
|
|
1360
1419
|
const handleClose = /* @__PURE__ */ __name(() => setOpen(false), "handleClose");
|
|
1361
|
-
return /* @__PURE__ */
|
|
1420
|
+
return /* @__PURE__ */ React28.createElement(React28.Fragment, null, /* @__PURE__ */ React28.createElement(IconButton3, {
|
|
1362
1421
|
onClick: /* @__PURE__ */ __name(() => setOpen(true), "onClick")
|
|
1363
|
-
}, /* @__PURE__ */
|
|
1422
|
+
}, /* @__PURE__ */ React28.createElement(QueryStats, null)), /* @__PURE__ */ React28.createElement(ChainAnalyzerStatsDialog, {
|
|
1364
1423
|
onClose: handleClose,
|
|
1365
1424
|
open,
|
|
1366
1425
|
...props
|
|
@@ -1369,19 +1428,19 @@ var ChainAnalyzerStatsDialogFromContext = /* @__PURE__ */ __name((props) => {
|
|
|
1369
1428
|
|
|
1370
1429
|
// src/components/chain/controls/PulseSvgIcon.tsx
|
|
1371
1430
|
import { createSvgIcon, keyframes, styled as styled2 } from "@mui/material";
|
|
1372
|
-
import
|
|
1373
|
-
var PulseSvgIcon = createSvgIcon(/* @__PURE__ */
|
|
1431
|
+
import React29 from "react";
|
|
1432
|
+
var PulseSvgIcon = createSvgIcon(/* @__PURE__ */ React29.createElement("svg", {
|
|
1374
1433
|
viewBox: "0 0 80 80",
|
|
1375
1434
|
version: "1.1",
|
|
1376
1435
|
xmlns: "http://www.w3.org/2000/svg"
|
|
1377
|
-
}, /* @__PURE__ */
|
|
1436
|
+
}, /* @__PURE__ */ React29.createElement("g", {
|
|
1378
1437
|
transform: "translate(34,34)"
|
|
1379
|
-
}, /* @__PURE__ */
|
|
1438
|
+
}, /* @__PURE__ */ React29.createElement("circle", {
|
|
1380
1439
|
className: "core",
|
|
1381
1440
|
cx: "0",
|
|
1382
1441
|
cy: "0",
|
|
1383
1442
|
r: "6"
|
|
1384
|
-
}), /* @__PURE__ */
|
|
1443
|
+
}), /* @__PURE__ */ React29.createElement("circle", {
|
|
1385
1444
|
className: "radar",
|
|
1386
1445
|
cx: "0",
|
|
1387
1446
|
cy: "0",
|
|
@@ -1445,24 +1504,24 @@ var StyledPulseSvgIcon = styled2(PulseSvgIcon)(({ theme }) => {
|
|
|
1445
1504
|
var PollingControlsFlexbox = /* @__PURE__ */ __name(({ blocksBehind, pollingState, setPollingState }) => {
|
|
1446
1505
|
const paused = pollingState === "paused";
|
|
1447
1506
|
const running = pollingState === "running";
|
|
1448
|
-
return /* @__PURE__ */
|
|
1507
|
+
return /* @__PURE__ */ React30.createElement(FlexRow7, {
|
|
1449
1508
|
justifyContent: "space-between",
|
|
1450
1509
|
width: "100%"
|
|
1451
|
-
}, /* @__PURE__ */
|
|
1510
|
+
}, /* @__PURE__ */ React30.createElement(FlexRow7, {
|
|
1452
1511
|
gap: 2
|
|
1453
|
-
}, running && /* @__PURE__ */
|
|
1512
|
+
}, running && /* @__PURE__ */ React30.createElement(IconButton4, {
|
|
1454
1513
|
onClick: /* @__PURE__ */ __name(() => setPollingState?.("paused"), "onClick"),
|
|
1455
1514
|
title: "Pause Block Stream"
|
|
1456
|
-
}, /* @__PURE__ */
|
|
1515
|
+
}, /* @__PURE__ */ React30.createElement(Pause, null)), paused && /* @__PURE__ */ React30.createElement(IconButton4, {
|
|
1457
1516
|
onClick: /* @__PURE__ */ __name(() => setPollingState?.("running"), "onClick"),
|
|
1458
1517
|
title: "Re-Sync Block Stream"
|
|
1459
|
-
}, /* @__PURE__ */
|
|
1518
|
+
}, /* @__PURE__ */ React30.createElement(Autorenew, null)), /* @__PURE__ */ React30.createElement(ChainAnalyzerStatsDialogFromContext, null)), /* @__PURE__ */ React30.createElement(FlexRow7, {
|
|
1460
1519
|
gap: 2
|
|
1461
|
-
}, /* @__PURE__ */
|
|
1520
|
+
}, /* @__PURE__ */ React30.createElement(Grow, {
|
|
1462
1521
|
in: (blocksBehind ?? 0) > 0
|
|
1463
|
-
}, /* @__PURE__ */
|
|
1522
|
+
}, /* @__PURE__ */ React30.createElement(Tooltip7, {
|
|
1464
1523
|
title: "Click to Re-Sync"
|
|
1465
|
-
}, /* @__PURE__ */
|
|
1524
|
+
}, /* @__PURE__ */ React30.createElement(Alert3, {
|
|
1466
1525
|
sx: {
|
|
1467
1526
|
py: 0,
|
|
1468
1527
|
px: 1,
|
|
@@ -1470,11 +1529,11 @@ var PollingControlsFlexbox = /* @__PURE__ */ __name(({ blocksBehind, pollingStat
|
|
|
1470
1529
|
},
|
|
1471
1530
|
severity: "warning",
|
|
1472
1531
|
onClick: /* @__PURE__ */ __name(() => setPollingState?.("running"), "onClick")
|
|
1473
|
-
}, /* @__PURE__ */
|
|
1532
|
+
}, /* @__PURE__ */ React30.createElement(AlertTitle2, {
|
|
1474
1533
|
sx: {
|
|
1475
1534
|
mb: 0
|
|
1476
1535
|
}
|
|
1477
|
-
}, "Behind:", " ", blocksBehind)))), /* @__PURE__ */
|
|
1536
|
+
}, "Behind:", " ", blocksBehind)))), /* @__PURE__ */ React30.createElement(Icon2, null, /* @__PURE__ */ React30.createElement(StyledPulseSvgIcon, {
|
|
1478
1537
|
className: running ? "" : "paused"
|
|
1479
1538
|
}))));
|
|
1480
1539
|
}, "PollingControlsFlexbox");
|
|
@@ -1482,9 +1541,9 @@ var MemoizedPollingControlsFlexbox = /* @__PURE__ */ memo(PollingControlsFlexbox
|
|
|
1482
1541
|
|
|
1483
1542
|
// src/components/chain/dialog/Dialog.tsx
|
|
1484
1543
|
import { Button as Button4, Dialog as Dialog4, DialogActions as DialogActions3, DialogContent as DialogContent4 } from "@mui/material";
|
|
1485
|
-
import
|
|
1544
|
+
import React31 from "react";
|
|
1486
1545
|
var TransactionsDialog = /* @__PURE__ */ __name((props) => {
|
|
1487
|
-
return /* @__PURE__ */
|
|
1546
|
+
return /* @__PURE__ */ React31.createElement(Dialog4, props, /* @__PURE__ */ React31.createElement(DialogContent4, null, "Transactions Dialog"), /* @__PURE__ */ React31.createElement(DialogActions3, null, /* @__PURE__ */ React31.createElement(Button4, {
|
|
1488
1547
|
variant: "outlined",
|
|
1489
1548
|
onClick: /* @__PURE__ */ __name((e) => props?.onClose?.(e, "escapeKeyDown"), "onClick")
|
|
1490
1549
|
}, "Close")));
|
|
@@ -1524,9 +1583,9 @@ var useOnBlock = /* @__PURE__ */ __name((initialHeadNumber, onAddBlock, liveHead
|
|
|
1524
1583
|
|
|
1525
1584
|
// src/components/chain/pagination/BlockChainPagination.tsx
|
|
1526
1585
|
import { TablePaginationActions } from "@xyo-network/react-payload-table";
|
|
1527
|
-
import
|
|
1586
|
+
import React32 from "react";
|
|
1528
1587
|
var BlockChainPagination = /* @__PURE__ */ __name(({ count = 0, onPageChange, page, rowsPerPage = 10 }) => {
|
|
1529
|
-
return /* @__PURE__ */
|
|
1588
|
+
return /* @__PURE__ */ React32.createElement(TablePaginationActions, {
|
|
1530
1589
|
count,
|
|
1531
1590
|
onPageChange,
|
|
1532
1591
|
page,
|
|
@@ -1535,10 +1594,10 @@ var BlockChainPagination = /* @__PURE__ */ __name(({ count = 0, onPageChange, pa
|
|
|
1535
1594
|
}, "BlockChainPagination");
|
|
1536
1595
|
|
|
1537
1596
|
// src/components/chain/pagination/hooks/usePagination.tsx
|
|
1538
|
-
import { useMemo as
|
|
1597
|
+
import { useMemo as useMemo13, useState as useState12 } from "react";
|
|
1539
1598
|
var useChainPagination = /* @__PURE__ */ __name((pageSize, blockComponents) => {
|
|
1540
1599
|
const [page, setPage] = useState12(0);
|
|
1541
|
-
const paginatedBlockComponents =
|
|
1600
|
+
const paginatedBlockComponents = useMemo13(() => {
|
|
1542
1601
|
const startIndex = page * pageSize;
|
|
1543
1602
|
const endIndex = startIndex + pageSize;
|
|
1544
1603
|
return blockComponents?.slice(startIndex, endIndex);
|
|
@@ -1560,11 +1619,11 @@ var useChainPagination = /* @__PURE__ */ __name((pageSize, blockComponents) => {
|
|
|
1560
1619
|
// src/components/chain/render/dynamic/flexbox/variants/Base.tsx
|
|
1561
1620
|
import { ErrorRender as ErrorRender4 } from "@xylabs/react-error";
|
|
1562
1621
|
import { FlexCol as FlexCol5 } from "@xylabs/react-flexbox";
|
|
1563
|
-
import
|
|
1622
|
+
import React34 from "react";
|
|
1564
1623
|
|
|
1565
1624
|
// src/components/chain/list/Animated.tsx
|
|
1566
1625
|
import { AnimatedList } from "@xylabs/react-animation";
|
|
1567
|
-
import
|
|
1626
|
+
import React33 from "react";
|
|
1568
1627
|
|
|
1569
1628
|
// src/components/chain/styled/BlockListWrapperFlexbox.tsx
|
|
1570
1629
|
import { styled as styled3 } from "@mui/material";
|
|
@@ -1585,20 +1644,20 @@ var BlockListWrapperFlexBox = styled3(FlexCol4, {
|
|
|
1585
1644
|
|
|
1586
1645
|
// src/components/chain/list/Animated.tsx
|
|
1587
1646
|
var BlockListAnimated = /* @__PURE__ */ __name(({ blockChainRenderComponents }) => {
|
|
1588
|
-
return /* @__PURE__ */
|
|
1647
|
+
return /* @__PURE__ */ React33.createElement(BlockListWrapperFlexBox, {
|
|
1589
1648
|
alignItems: "stretch",
|
|
1590
1649
|
width: "100%"
|
|
1591
|
-
}, /* @__PURE__ */
|
|
1650
|
+
}, /* @__PURE__ */ React33.createElement(AnimatedList, {
|
|
1592
1651
|
fullWidth: true,
|
|
1593
1652
|
items: blockChainRenderComponents
|
|
1594
1653
|
}));
|
|
1595
1654
|
}, "BlockListAnimated");
|
|
1596
1655
|
|
|
1597
1656
|
// src/components/chain/render/dynamic/hooks/useDynamicBlockRenderComponents.ts
|
|
1598
|
-
import { useMemo as
|
|
1657
|
+
import { useMemo as useMemo14 } from "react";
|
|
1599
1658
|
var useDynamicBlockRenderComponents = /* @__PURE__ */ __name((BlockComponent, blockChainRenderProps) => {
|
|
1600
1659
|
const { maxBlocks } = blockChainRenderProps ?? {};
|
|
1601
|
-
const chainIteratorParams =
|
|
1660
|
+
const chainIteratorParams = useMemo14(() => blockChainRenderProps ?? {}, [
|
|
1602
1661
|
blockChainRenderProps
|
|
1603
1662
|
]);
|
|
1604
1663
|
const [params, paramsError] = useChainIteratorParams(chainIteratorParams);
|
|
@@ -1619,7 +1678,7 @@ var useDynamicBlockRenderComponents = /* @__PURE__ */ __name((BlockComponent, bl
|
|
|
1619
1678
|
|
|
1620
1679
|
// src/components/chain/render/dynamic/hooks/useRemoteBlockChainRenderProps.ts
|
|
1621
1680
|
import { usePromise as usePromise6 } from "@xylabs/react-promise";
|
|
1622
|
-
import { useMemo as
|
|
1681
|
+
import { useMemo as useMemo15 } from "react";
|
|
1623
1682
|
|
|
1624
1683
|
// src/lib/getChainArchivist.ts
|
|
1625
1684
|
import { assertEx as assertEx4 } from "@xylabs/assert";
|
|
@@ -1663,7 +1722,7 @@ var useRemoteBlockChainRenderProps = /* @__PURE__ */ __name((chainArchivistModul
|
|
|
1663
1722
|
url,
|
|
1664
1723
|
chainArchivistModuleId
|
|
1665
1724
|
]);
|
|
1666
|
-
const blockChainRenderProps =
|
|
1725
|
+
const blockChainRenderProps = useMemo15(() => ({
|
|
1667
1726
|
...blockChainRenderPropsArg,
|
|
1668
1727
|
chainArchivist
|
|
1669
1728
|
}), [
|
|
@@ -1679,28 +1738,28 @@ var useRemoteBlockChainRenderProps = /* @__PURE__ */ __name((chainArchivistModul
|
|
|
1679
1738
|
// src/components/chain/render/dynamic/flexbox/variants/Base.tsx
|
|
1680
1739
|
var DynamicListBase = /* @__PURE__ */ __name(({ blockChainRenderProps, ...props }) => {
|
|
1681
1740
|
const { errors, blockChainRenderComponents, blocksWhilePaused, pollingState, updatePollingState } = useDynamicBlockRenderComponents(BlockHeadingFlexbox, blockChainRenderProps);
|
|
1682
|
-
return /* @__PURE__ */
|
|
1741
|
+
return /* @__PURE__ */ React34.createElement(FlexCol5, {
|
|
1683
1742
|
alignItems: "start",
|
|
1684
1743
|
...props
|
|
1685
|
-
}, errors?.map((error) => /* @__PURE__ */
|
|
1744
|
+
}, errors?.map((error) => /* @__PURE__ */ React34.createElement(ErrorRender4, {
|
|
1686
1745
|
error,
|
|
1687
1746
|
key: error?.name,
|
|
1688
1747
|
scope: "DynamicBlockchainRenderFlexboxInner"
|
|
1689
|
-
})), /* @__PURE__ */
|
|
1748
|
+
})), /* @__PURE__ */ React34.createElement(MemoizedPollingControlsFlexbox, {
|
|
1690
1749
|
blocksBehind: blocksWhilePaused?.length,
|
|
1691
1750
|
pollingState,
|
|
1692
1751
|
setPollingState: updatePollingState
|
|
1693
|
-
}), /* @__PURE__ */
|
|
1752
|
+
}), /* @__PURE__ */ React34.createElement(BlockListAnimated, {
|
|
1694
1753
|
blockChainRenderComponents
|
|
1695
1754
|
}));
|
|
1696
1755
|
}, "DynamicListBase");
|
|
1697
1756
|
|
|
1698
1757
|
// src/components/chain/render/dynamic/flexbox/variants/WithAnalysis.tsx
|
|
1699
1758
|
import { ChainProducersAnalyzer } from "@xyo-network/chain-protocol";
|
|
1700
|
-
import
|
|
1759
|
+
import React35, { useMemo as useMemo16 } from "react";
|
|
1701
1760
|
var WithAnalysis = /* @__PURE__ */ __name(({ blockChainRenderProps, ...props }) => {
|
|
1702
1761
|
const { chainInformation } = blockChainRenderProps ?? {};
|
|
1703
|
-
const analyzers =
|
|
1762
|
+
const analyzers = useMemo16(() => {
|
|
1704
1763
|
if (chainInformation) {
|
|
1705
1764
|
return {
|
|
1706
1765
|
producers: new ChainProducersAnalyzer()
|
|
@@ -1709,9 +1768,9 @@ var WithAnalysis = /* @__PURE__ */ __name(({ blockChainRenderProps, ...props })
|
|
|
1709
1768
|
}, [
|
|
1710
1769
|
chainInformation
|
|
1711
1770
|
]);
|
|
1712
|
-
return /* @__PURE__ */
|
|
1771
|
+
return /* @__PURE__ */ React35.createElement(ChainAnalyzersProvider, {
|
|
1713
1772
|
analyzers
|
|
1714
|
-
}, /* @__PURE__ */
|
|
1773
|
+
}, /* @__PURE__ */ React35.createElement(ChainPollingProvider, null, /* @__PURE__ */ React35.createElement(DynamicListBase, {
|
|
1715
1774
|
blockChainRenderProps,
|
|
1716
1775
|
...props
|
|
1717
1776
|
})));
|
|
@@ -1719,13 +1778,13 @@ var WithAnalysis = /* @__PURE__ */ __name(({ blockChainRenderProps, ...props })
|
|
|
1719
1778
|
|
|
1720
1779
|
// src/components/chain/render/dynamic/flexbox/variants/WithRemote.tsx
|
|
1721
1780
|
import { ErrorRender as ErrorRender5 } from "@xylabs/react-error";
|
|
1722
|
-
import
|
|
1781
|
+
import React36 from "react";
|
|
1723
1782
|
var WithRemote = /* @__PURE__ */ __name(({ url, chainArchivistModuleId, blockChainRenderProps: blockChainRenderPropsArg, ...props }) => {
|
|
1724
1783
|
const { error, blockChainRenderProps } = useRemoteBlockChainRenderProps(chainArchivistModuleId, url, blockChainRenderPropsArg);
|
|
1725
|
-
return /* @__PURE__ */
|
|
1784
|
+
return /* @__PURE__ */ React36.createElement(React36.Fragment, null, /* @__PURE__ */ React36.createElement(ErrorRender5, {
|
|
1726
1785
|
error,
|
|
1727
1786
|
scope: "RemoteChainProviderFlexbox"
|
|
1728
|
-
}), /* @__PURE__ */
|
|
1787
|
+
}), /* @__PURE__ */ React36.createElement(WithAnalysis, {
|
|
1729
1788
|
blockChainRenderProps,
|
|
1730
1789
|
...props
|
|
1731
1790
|
}));
|
|
@@ -1741,16 +1800,16 @@ var DynamicBlockchainRenderFlexbox = {
|
|
|
1741
1800
|
// src/components/chain/render/static/flexbox/variants/Base.tsx
|
|
1742
1801
|
import { ErrorRender as ErrorRender6 } from "@xylabs/react-error";
|
|
1743
1802
|
import { FlexCol as FlexCol6, FlexGrowRow as FlexGrowRow2 } from "@xylabs/react-flexbox";
|
|
1744
|
-
import
|
|
1803
|
+
import React37 from "react";
|
|
1745
1804
|
|
|
1746
1805
|
// src/components/chain/render/static/hooks/useStaticBlockRenderComponents.ts
|
|
1747
1806
|
import { exists } from "@xylabs/exists";
|
|
1748
|
-
import { useMemo as
|
|
1807
|
+
import { useMemo as useMemo17 } from "react";
|
|
1749
1808
|
var DEFAULT_PAGE_SIZE = 25;
|
|
1750
1809
|
var useStaticBlockRenderComponents = /* @__PURE__ */ __name((BlockComponent, blockChainRenderProps) => {
|
|
1751
1810
|
const { maxBlocks } = blockChainRenderProps ?? {};
|
|
1752
1811
|
const pageSize = blockChainRenderProps?.pageSize ?? DEFAULT_PAGE_SIZE;
|
|
1753
|
-
const chainIteratorParams =
|
|
1812
|
+
const chainIteratorParams = useMemo17(() => blockChainRenderProps ?? {}, [
|
|
1754
1813
|
blockChainRenderProps
|
|
1755
1814
|
]);
|
|
1756
1815
|
const [params, paramsError] = useChainIteratorParams(chainIteratorParams);
|
|
@@ -1774,34 +1833,34 @@ var useStaticBlockRenderComponents = /* @__PURE__ */ __name((BlockComponent, blo
|
|
|
1774
1833
|
// src/components/chain/render/static/flexbox/variants/Base.tsx
|
|
1775
1834
|
var StaticListBase = /* @__PURE__ */ __name(({ blockChainRenderProps, ...props }) => {
|
|
1776
1835
|
const { blockComponents, errors, paginatedBlockComponents, onPageChange, page, pageSize } = useStaticBlockRenderComponents(BlockHeadingFlexbox, blockChainRenderProps);
|
|
1777
|
-
return /* @__PURE__ */
|
|
1836
|
+
return /* @__PURE__ */ React37.createElement(FlexCol6, {
|
|
1778
1837
|
alignItems: "start",
|
|
1779
1838
|
gap: 2,
|
|
1780
1839
|
width: "100%",
|
|
1781
1840
|
...props
|
|
1782
|
-
}, errors?.map((error) => /* @__PURE__ */
|
|
1841
|
+
}, errors?.map((error) => /* @__PURE__ */ React37.createElement(ErrorRender6, {
|
|
1783
1842
|
error,
|
|
1784
1843
|
key: error.name,
|
|
1785
1844
|
scope: "StaticBlockchainFlexboxInner"
|
|
1786
|
-
})), paginatedBlockComponents?.length ? /* @__PURE__ */
|
|
1845
|
+
})), paginatedBlockComponents?.length ? /* @__PURE__ */ React37.createElement(FlexGrowRow2, {
|
|
1787
1846
|
justifyContent: "space-between",
|
|
1788
1847
|
width: "100%"
|
|
1789
|
-
}, /* @__PURE__ */
|
|
1848
|
+
}, /* @__PURE__ */ React37.createElement(ChainAnalyzerStatsDialogFromContext, null), /* @__PURE__ */ React37.createElement(BlockChainPagination, {
|
|
1790
1849
|
count: blockComponents?.length ?? 0,
|
|
1791
1850
|
onPageChange,
|
|
1792
1851
|
page,
|
|
1793
1852
|
rowsPerPage: pageSize
|
|
1794
|
-
})) : null, /* @__PURE__ */
|
|
1853
|
+
})) : null, /* @__PURE__ */ React37.createElement(BlockListAnimated, {
|
|
1795
1854
|
blockChainRenderComponents: paginatedBlockComponents
|
|
1796
1855
|
}));
|
|
1797
1856
|
}, "StaticListBase");
|
|
1798
1857
|
|
|
1799
1858
|
// src/components/chain/render/static/flexbox/variants/WithAnalysis.tsx
|
|
1800
1859
|
import { ChainProducersAnalyzer as ChainProducersAnalyzer2 } from "@xyo-network/chain-protocol";
|
|
1801
|
-
import
|
|
1860
|
+
import React38, { useMemo as useMemo18 } from "react";
|
|
1802
1861
|
var WithAnalysis2 = /* @__PURE__ */ __name(({ blockChainRenderProps, ...props }) => {
|
|
1803
1862
|
const { chainInformation } = blockChainRenderProps ?? {};
|
|
1804
|
-
const analyzers =
|
|
1863
|
+
const analyzers = useMemo18(() => {
|
|
1805
1864
|
if (chainInformation) {
|
|
1806
1865
|
return {
|
|
1807
1866
|
producers: new ChainProducersAnalyzer2()
|
|
@@ -1810,9 +1869,9 @@ var WithAnalysis2 = /* @__PURE__ */ __name(({ blockChainRenderProps, ...props })
|
|
|
1810
1869
|
}, [
|
|
1811
1870
|
chainInformation
|
|
1812
1871
|
]);
|
|
1813
|
-
return /* @__PURE__ */
|
|
1872
|
+
return /* @__PURE__ */ React38.createElement(ChainAnalyzersProvider, {
|
|
1814
1873
|
analyzers
|
|
1815
|
-
}, /* @__PURE__ */
|
|
1874
|
+
}, /* @__PURE__ */ React38.createElement(StaticListBase, {
|
|
1816
1875
|
blockChainRenderProps,
|
|
1817
1876
|
...props
|
|
1818
1877
|
}));
|
|
@@ -1827,19 +1886,19 @@ var StaticBlockchainRenderFlexBox = {
|
|
|
1827
1886
|
// src/components/payload/builder/Flexbox.tsx
|
|
1828
1887
|
import { FlexCol as FlexCol7 } from "@xylabs/react-flexbox";
|
|
1829
1888
|
import { JsonViewerEx as JsonViewerEx2 } from "@xyo-network/react-payload-raw-info";
|
|
1830
|
-
import
|
|
1889
|
+
import React39, { useState as useState13 } from "react";
|
|
1831
1890
|
var PayloadBuilderFlexbox = /* @__PURE__ */ __name(({ BuilderComponent, onBuild, ...props }) => {
|
|
1832
1891
|
const [payload, setPayload] = useState13();
|
|
1833
1892
|
const onBuildLocal = /* @__PURE__ */ __name((payload2) => {
|
|
1834
1893
|
onBuild?.(payload2);
|
|
1835
1894
|
setPayload(payload2);
|
|
1836
1895
|
}, "onBuildLocal");
|
|
1837
|
-
return /* @__PURE__ */
|
|
1896
|
+
return /* @__PURE__ */ React39.createElement(FlexCol7, {
|
|
1838
1897
|
gap: 2,
|
|
1839
1898
|
...props
|
|
1840
|
-
}, /* @__PURE__ */
|
|
1899
|
+
}, /* @__PURE__ */ React39.createElement(BuilderComponent, {
|
|
1841
1900
|
onBuild: onBuildLocal
|
|
1842
|
-
}), payload && /* @__PURE__ */
|
|
1901
|
+
}), payload && /* @__PURE__ */ React39.createElement(JsonViewerEx2, {
|
|
1843
1902
|
value: payload
|
|
1844
1903
|
}));
|
|
1845
1904
|
}, "PayloadBuilderFlexbox");
|
|
@@ -1847,11 +1906,11 @@ var PayloadBuilderFlexbox = /* @__PURE__ */ __name(({ BuilderComponent, onBuild,
|
|
|
1847
1906
|
// src/components/payload/builder/producer-intent/Form.tsx
|
|
1848
1907
|
import { Button as Button5, FormControl as FormControl5 } from "@mui/material";
|
|
1849
1908
|
import { createProducerChainStakeIntent } from "@xyo-network/chain-ethereum";
|
|
1850
|
-
import
|
|
1909
|
+
import React42, { useMemo as useMemo20, useState as useState16 } from "react";
|
|
1851
1910
|
|
|
1852
1911
|
// src/components/payload/fields/BlockNumberTextField.tsx
|
|
1853
1912
|
import { FormControl as FormControl3, FormHelperText as FormHelperText2, TextField as TextField3 } from "@mui/material";
|
|
1854
|
-
import
|
|
1913
|
+
import React40, { useState as useState14 } from "react";
|
|
1855
1914
|
var BlockNumberTextField = /* @__PURE__ */ __name(({ errorMessage, onBlockNumberChanged, onChange, ...props }) => {
|
|
1856
1915
|
const [blockNumber, setBlockNumber] = useState14();
|
|
1857
1916
|
const handleChange = /* @__PURE__ */ __name((e) => {
|
|
@@ -1860,15 +1919,15 @@ var BlockNumberTextField = /* @__PURE__ */ __name(({ errorMessage, onBlockNumber
|
|
|
1860
1919
|
onBlockNumberChanged?.(Number.parseInt(value));
|
|
1861
1920
|
onChange?.(e);
|
|
1862
1921
|
}, "handleChange");
|
|
1863
|
-
return /* @__PURE__ */
|
|
1922
|
+
return /* @__PURE__ */ React40.createElement(FormControl3, {
|
|
1864
1923
|
fullWidth: true
|
|
1865
|
-
}, /* @__PURE__ */
|
|
1924
|
+
}, /* @__PURE__ */ React40.createElement(TextField3, {
|
|
1866
1925
|
error: !!errorMessage,
|
|
1867
1926
|
onChange: handleChange,
|
|
1868
1927
|
type: "number",
|
|
1869
1928
|
value: blockNumber ?? "",
|
|
1870
1929
|
...props
|
|
1871
|
-
}), errorMessage && /* @__PURE__ */
|
|
1930
|
+
}), errorMessage && /* @__PURE__ */ React40.createElement(FormHelperText2, {
|
|
1872
1931
|
sx: {
|
|
1873
1932
|
color: "error.main"
|
|
1874
1933
|
}
|
|
@@ -1878,11 +1937,11 @@ var BlockNumberTextField = /* @__PURE__ */ __name(({ errorMessage, onBlockNumber
|
|
|
1878
1937
|
// src/components/payload/fields/XyoAddressTextField.tsx
|
|
1879
1938
|
import { FormControl as FormControl4, FormHelperText as FormHelperText3, TextField as TextField4 } from "@mui/material";
|
|
1880
1939
|
import { asAddress } from "@xylabs/hex";
|
|
1881
|
-
import
|
|
1940
|
+
import React41, { useMemo as useMemo19, useState as useState15 } from "react";
|
|
1882
1941
|
var XyoAddressTextField = /* @__PURE__ */ __name(({ onAddressChanged, onChange, resetValue, ...props }) => {
|
|
1883
1942
|
const [address, setAddress] = useState15("");
|
|
1884
1943
|
const [addressError, setAddressError] = useState15();
|
|
1885
|
-
|
|
1944
|
+
useMemo19(() => setAddress(""), [
|
|
1886
1945
|
resetValue
|
|
1887
1946
|
]);
|
|
1888
1947
|
const handleChange = /* @__PURE__ */ __name((event) => {
|
|
@@ -1902,15 +1961,15 @@ var XyoAddressTextField = /* @__PURE__ */ __name(({ onAddressChanged, onChange,
|
|
|
1902
1961
|
onAddressChanged?.();
|
|
1903
1962
|
}
|
|
1904
1963
|
}, "handleBlur");
|
|
1905
|
-
return /* @__PURE__ */
|
|
1964
|
+
return /* @__PURE__ */ React41.createElement(FormControl4, {
|
|
1906
1965
|
fullWidth: true
|
|
1907
|
-
}, /* @__PURE__ */
|
|
1966
|
+
}, /* @__PURE__ */ React41.createElement(TextField4, {
|
|
1908
1967
|
error: !!addressError,
|
|
1909
1968
|
onBlur: handleBlur,
|
|
1910
1969
|
onChange: handleChange,
|
|
1911
1970
|
value: address,
|
|
1912
1971
|
...props
|
|
1913
|
-
}), addressError && /* @__PURE__ */
|
|
1972
|
+
}), addressError && /* @__PURE__ */ React41.createElement(FormHelperText3, {
|
|
1914
1973
|
sx: {
|
|
1915
1974
|
color: "error.main"
|
|
1916
1975
|
}
|
|
@@ -1923,7 +1982,7 @@ var ProducerIntentBuilderForm = /* @__PURE__ */ __name(({ onBuild }) => {
|
|
|
1923
1982
|
const [exp, setExp] = useState16();
|
|
1924
1983
|
const [nbf, setNbf] = useState16();
|
|
1925
1984
|
const [blockRangeError, setBlockRangeError] = useState16();
|
|
1926
|
-
const intentPayload =
|
|
1985
|
+
const intentPayload = useMemo20(() => {
|
|
1927
1986
|
if (exp !== void 0 && nbf !== void 0) {
|
|
1928
1987
|
if (exp <= nbf) {
|
|
1929
1988
|
setBlockRangeError(new Error("Expires must be greater than Not Before"));
|
|
@@ -1943,33 +2002,33 @@ var ProducerIntentBuilderForm = /* @__PURE__ */ __name(({ onBuild }) => {
|
|
|
1943
2002
|
const onBuildLocal = /* @__PURE__ */ __name(() => {
|
|
1944
2003
|
if (onBuild && intentPayload) onBuild?.(intentPayload);
|
|
1945
2004
|
}, "onBuildLocal");
|
|
1946
|
-
return /* @__PURE__ */
|
|
2005
|
+
return /* @__PURE__ */ React42.createElement(React42.Fragment, null, /* @__PURE__ */ React42.createElement(FormControl5, {
|
|
1947
2006
|
fullWidth: true
|
|
1948
|
-
}, /* @__PURE__ */
|
|
2007
|
+
}, /* @__PURE__ */ React42.createElement(XyoAddressTextField, {
|
|
1949
2008
|
label: "Delegate",
|
|
1950
2009
|
name: "delegate",
|
|
1951
2010
|
onAddressChanged: setDelegate,
|
|
1952
2011
|
required: true,
|
|
1953
2012
|
size: "small"
|
|
1954
|
-
})), /* @__PURE__ */
|
|
2013
|
+
})), /* @__PURE__ */ React42.createElement(FormControl5, {
|
|
1955
2014
|
fullWidth: true
|
|
1956
|
-
}, /* @__PURE__ */
|
|
2015
|
+
}, /* @__PURE__ */ React42.createElement(BlockNumberTextField, {
|
|
1957
2016
|
errorMessage: blockRangeError?.message,
|
|
1958
2017
|
label: "Expires",
|
|
1959
2018
|
name: "exp",
|
|
1960
2019
|
onBlockNumberChanged: setExp,
|
|
1961
2020
|
required: true,
|
|
1962
2021
|
size: "small"
|
|
1963
|
-
})), /* @__PURE__ */
|
|
2022
|
+
})), /* @__PURE__ */ React42.createElement(FormControl5, {
|
|
1964
2023
|
fullWidth: true
|
|
1965
|
-
}, /* @__PURE__ */
|
|
2024
|
+
}, /* @__PURE__ */ React42.createElement(BlockNumberTextField, {
|
|
1966
2025
|
errorMessage: blockRangeError?.message,
|
|
1967
2026
|
label: "Not Before",
|
|
1968
2027
|
name: "nbf",
|
|
1969
2028
|
onBlockNumberChanged: setNbf,
|
|
1970
2029
|
required: true,
|
|
1971
2030
|
size: "small"
|
|
1972
|
-
})), /* @__PURE__ */
|
|
2031
|
+
})), /* @__PURE__ */ React42.createElement(Button5, {
|
|
1973
2032
|
disabled: !intentPayload,
|
|
1974
2033
|
variant: "contained",
|
|
1975
2034
|
onClick: onBuildLocal
|
|
@@ -1977,12 +2036,12 @@ var ProducerIntentBuilderForm = /* @__PURE__ */ __name(({ onBuild }) => {
|
|
|
1977
2036
|
}, "ProducerIntentBuilderForm");
|
|
1978
2037
|
|
|
1979
2038
|
// src/components/payload/builder/transfer/Flexbox.tsx
|
|
1980
|
-
import
|
|
2039
|
+
import React45 from "react";
|
|
1981
2040
|
|
|
1982
2041
|
// src/components/payload/builder/transfer/Form.tsx
|
|
1983
2042
|
import { Button as Button6, FormControl as FormControl7 } from "@mui/material";
|
|
1984
2043
|
import { TransferSchema } from "@xyo-network/xl1-model";
|
|
1985
|
-
import
|
|
2044
|
+
import React44, { useMemo as useMemo22, useState as useState18 } from "react";
|
|
1986
2045
|
|
|
1987
2046
|
// src/components/payload/builder/transfer/builder/SingleFlexbox.tsx
|
|
1988
2047
|
import { RemoveCircle } from "@mui/icons-material";
|
|
@@ -1990,11 +2049,11 @@ import { FormControl as FormControl6, Icon as Icon3, IconButton as IconButton5 }
|
|
|
1990
2049
|
import { toHex as toHex3 } from "@xylabs/hex";
|
|
1991
2050
|
import { FlexRow as FlexRow8 } from "@xylabs/react-flexbox";
|
|
1992
2051
|
import { BigIntInput } from "@xyo-network/react-shared";
|
|
1993
|
-
import
|
|
2052
|
+
import React43, { useEffect as useEffect4, useMemo as useMemo21, useState as useState17 } from "react";
|
|
1994
2053
|
var SingleTransferBuilderFlexbox = /* @__PURE__ */ __name(({ onTransferUpdated, onRemoveTransfer, singleTransfer, ...props }) => {
|
|
1995
2054
|
const [toAddress, setToAddress] = useState17();
|
|
1996
2055
|
const [amount, setAmount] = useState17();
|
|
1997
|
-
const transferAmount =
|
|
2056
|
+
const transferAmount = useMemo21(() => {
|
|
1998
2057
|
if (toAddress && amount) {
|
|
1999
2058
|
return {
|
|
2000
2059
|
...singleTransfer,
|
|
@@ -2011,36 +2070,36 @@ var SingleTransferBuilderFlexbox = /* @__PURE__ */ __name(({ onTransferUpdated,
|
|
|
2011
2070
|
}, [
|
|
2012
2071
|
transferAmount
|
|
2013
2072
|
]);
|
|
2014
|
-
return /* @__PURE__ */
|
|
2073
|
+
return /* @__PURE__ */ React43.createElement(FlexRow8, {
|
|
2015
2074
|
alignItems: "start",
|
|
2016
2075
|
gap: 1,
|
|
2017
2076
|
...props
|
|
2018
|
-
}, /* @__PURE__ */
|
|
2077
|
+
}, /* @__PURE__ */ React43.createElement(FormControl6, {
|
|
2019
2078
|
fullWidth: true
|
|
2020
|
-
}, /* @__PURE__ */
|
|
2079
|
+
}, /* @__PURE__ */ React43.createElement(XyoAddressTextField, {
|
|
2021
2080
|
label: "To",
|
|
2022
2081
|
name: "to",
|
|
2023
2082
|
onAddressChanged: setToAddress,
|
|
2024
2083
|
required: true,
|
|
2025
2084
|
size: "small"
|
|
2026
|
-
})), /* @__PURE__ */
|
|
2085
|
+
})), /* @__PURE__ */ React43.createElement(FormControl6, {
|
|
2027
2086
|
fullWidth: true
|
|
2028
|
-
}, /* @__PURE__ */
|
|
2087
|
+
}, /* @__PURE__ */ React43.createElement(BigIntInput.TextField, {
|
|
2029
2088
|
label: "Amount",
|
|
2030
2089
|
name: "amount",
|
|
2031
2090
|
onChangeFixedPoint: setAmount,
|
|
2032
2091
|
required: true,
|
|
2033
2092
|
size: "small"
|
|
2034
|
-
})), /* @__PURE__ */
|
|
2093
|
+
})), /* @__PURE__ */ React43.createElement(IconButton5, {
|
|
2035
2094
|
onClick: /* @__PURE__ */ __name(() => onRemoveTransfer?.(singleTransfer.transferId), "onClick")
|
|
2036
|
-
}, /* @__PURE__ */
|
|
2095
|
+
}, /* @__PURE__ */ React43.createElement(Icon3, null, /* @__PURE__ */ React43.createElement(RemoveCircle, null))));
|
|
2037
2096
|
}, "SingleTransferBuilderFlexbox");
|
|
2038
2097
|
|
|
2039
2098
|
// src/components/payload/builder/transfer/Form.tsx
|
|
2040
2099
|
var TransferBuilderForm = /* @__PURE__ */ __name(({ onBuild }) => {
|
|
2041
2100
|
const [fromAddress, setFromAddress] = useState18();
|
|
2042
2101
|
const [transfers, setTransfers] = useState18([]);
|
|
2043
|
-
const transferPayload =
|
|
2102
|
+
const transferPayload = useMemo22(() => {
|
|
2044
2103
|
if (fromAddress && transfers.length > 0) {
|
|
2045
2104
|
const transfersRecord = {};
|
|
2046
2105
|
for (const transfer of transfers) {
|
|
@@ -2082,19 +2141,19 @@ var TransferBuilderForm = /* @__PURE__ */ __name(({ onBuild }) => {
|
|
|
2082
2141
|
return transfer;
|
|
2083
2142
|
}));
|
|
2084
2143
|
}, "onTransferUpdated");
|
|
2085
|
-
return /* @__PURE__ */
|
|
2144
|
+
return /* @__PURE__ */ React44.createElement(React44.Fragment, null, /* @__PURE__ */ React44.createElement(FormControl7, {
|
|
2086
2145
|
fullWidth: true
|
|
2087
|
-
}, /* @__PURE__ */
|
|
2146
|
+
}, /* @__PURE__ */ React44.createElement(XyoAddressTextField, {
|
|
2088
2147
|
label: "From",
|
|
2089
2148
|
name: "from",
|
|
2090
2149
|
onAddressChanged: setFromAddress,
|
|
2091
2150
|
required: true,
|
|
2092
2151
|
size: "small"
|
|
2093
|
-
})), /* @__PURE__ */
|
|
2152
|
+
})), /* @__PURE__ */ React44.createElement(Button6, {
|
|
2094
2153
|
onClick: onTransferAdded,
|
|
2095
2154
|
size: "small",
|
|
2096
2155
|
variant: "contained"
|
|
2097
|
-
}, "Add Transfer"), transfers.map((transfer) => /* @__PURE__ */
|
|
2156
|
+
}, "Add Transfer"), transfers.map((transfer) => /* @__PURE__ */ React44.createElement(SingleTransferBuilderFlexbox, {
|
|
2098
2157
|
key: transfer.transferId,
|
|
2099
2158
|
onTransferUpdated,
|
|
2100
2159
|
onRemoveTransfer: onTransferRemoved,
|
|
@@ -2102,7 +2161,7 @@ var TransferBuilderForm = /* @__PURE__ */ __name(({ onBuild }) => {
|
|
|
2102
2161
|
sx: {
|
|
2103
2162
|
width: "100%"
|
|
2104
2163
|
}
|
|
2105
|
-
})), /* @__PURE__ */
|
|
2164
|
+
})), /* @__PURE__ */ React44.createElement(Button6, {
|
|
2106
2165
|
disabled: !transferPayload,
|
|
2107
2166
|
variant: "contained",
|
|
2108
2167
|
onClick: onBuildLocal
|
|
@@ -2110,7 +2169,7 @@ var TransferBuilderForm = /* @__PURE__ */ __name(({ onBuild }) => {
|
|
|
2110
2169
|
}, "TransferBuilderForm");
|
|
2111
2170
|
|
|
2112
2171
|
// src/components/payload/builder/transfer/Flexbox.tsx
|
|
2113
|
-
var TransferBuilderFlexbox = /* @__PURE__ */ __name(({ onBuild, ...props }) => /* @__PURE__ */
|
|
2172
|
+
var TransferBuilderFlexbox = /* @__PURE__ */ __name(({ onBuild, ...props }) => /* @__PURE__ */ React45.createElement(PayloadBuilderFlexbox, {
|
|
2114
2173
|
gap: 4,
|
|
2115
2174
|
alignItems: "start",
|
|
2116
2175
|
BuilderComponent: TransferBuilderForm,
|
|
@@ -2137,7 +2196,7 @@ import { usePromise as usePromise7 } from "@xylabs/react-promise";
|
|
|
2137
2196
|
import { MemoryArchivist } from "@xyo-network/archivist-memory";
|
|
2138
2197
|
import { ArchivistConfigSchema } from "@xyo-network/archivist-model";
|
|
2139
2198
|
import { flattenHydratedBlocks } from "@xyo-network/chain-protocol";
|
|
2140
|
-
import
|
|
2199
|
+
import React46, { useEffect as useEffect5 } from "react";
|
|
2141
2200
|
var ChainArchivistDecorator = /* @__PURE__ */ __name((Story, context) => {
|
|
2142
2201
|
const [randomBlockChain] = usePromise7(async () => await buildRandomBlockChain(), []);
|
|
2143
2202
|
const [blockChainRenderProps, blockChainRenderPropsError] = usePromise7(async () => {
|
|
@@ -2177,7 +2236,7 @@ var ChainArchivistDecorator = /* @__PURE__ */ __name((Story, context) => {
|
|
|
2177
2236
|
}
|
|
2178
2237
|
}
|
|
2179
2238
|
};
|
|
2180
|
-
return blockChainRenderProps?.chainArchivist ? /* @__PURE__ */
|
|
2239
|
+
return blockChainRenderProps?.chainArchivist ? /* @__PURE__ */ React46.createElement(Story, props) : /* @__PURE__ */ React46.createElement(CircularProgress, null);
|
|
2181
2240
|
}, "ChainArchivistDecorator");
|
|
2182
2241
|
|
|
2183
2242
|
// src/stories/ChainArchivistDelayedInsertDecorator.tsx
|
|
@@ -2187,7 +2246,7 @@ import { usePromise as usePromise8 } from "@xylabs/react-promise";
|
|
|
2187
2246
|
import { MemoryArchivist as MemoryArchivist2 } from "@xyo-network/archivist-memory";
|
|
2188
2247
|
import { ArchivistConfigSchema as ArchivistConfigSchema2 } from "@xyo-network/archivist-model";
|
|
2189
2248
|
import { flattenHydratedBlock } from "@xyo-network/chain-protocol";
|
|
2190
|
-
import
|
|
2249
|
+
import React47, { useEffect as useEffect6, useState as useState19 } from "react";
|
|
2191
2250
|
var chainArchivistRef;
|
|
2192
2251
|
var ChainArchivistDelayedInsertDecorator = /* @__PURE__ */ __name((Story, context) => {
|
|
2193
2252
|
const [firstBlock, setFirstBlock] = useState19();
|
|
@@ -2245,7 +2304,7 @@ var ChainArchivistDelayedInsertDecorator = /* @__PURE__ */ __name((Story, contex
|
|
|
2245
2304
|
}
|
|
2246
2305
|
}
|
|
2247
2306
|
};
|
|
2248
|
-
return firstBlock ? /* @__PURE__ */
|
|
2307
|
+
return firstBlock ? /* @__PURE__ */ React47.createElement(Story, props) : /* @__PURE__ */ React47.createElement(CircularProgress2, null);
|
|
2249
2308
|
}, "ChainArchivistDelayedInsertDecorator");
|
|
2250
2309
|
|
|
2251
2310
|
// src/stories/ChainInfoContextDecorator.tsx
|
|
@@ -2254,7 +2313,7 @@ import { usePromise as usePromise9 } from "@xylabs/react-promise";
|
|
|
2254
2313
|
import { XyoChainBlockNumberIterator as XyoChainBlockNumberIterator3 } from "@xyo-network/chain-services";
|
|
2255
2314
|
import { findFirstMatching } from "@xyo-network/chain-utils";
|
|
2256
2315
|
import { isBlockBoundWitness as isBlockBoundWitness3 } from "@xyo-network/xl1-model";
|
|
2257
|
-
import
|
|
2316
|
+
import React48 from "react";
|
|
2258
2317
|
var archivistConfig = {
|
|
2259
2318
|
url: "http://localhost:8080",
|
|
2260
2319
|
chainArchivistModuleId: "XYOPublic:XYOChain:Chain"
|
|
@@ -2280,11 +2339,11 @@ var ChainInfoContextDecorator = /* @__PURE__ */ __name((Story, context) => {
|
|
|
2280
2339
|
chainArchivist,
|
|
2281
2340
|
chainInformation
|
|
2282
2341
|
]);
|
|
2283
|
-
return /* @__PURE__ */
|
|
2342
|
+
return /* @__PURE__ */ React48.createElement(ChainInfoProvider, {
|
|
2284
2343
|
chainArchivist,
|
|
2285
2344
|
chainInformation,
|
|
2286
2345
|
chainIterator
|
|
2287
|
-
}, /* @__PURE__ */
|
|
2346
|
+
}, /* @__PURE__ */ React48.createElement(Story, context));
|
|
2288
2347
|
}, "ChainInfoContextDecorator");
|
|
2289
2348
|
export {
|
|
2290
2349
|
BlockChainPagination,
|