Compare commits
6 Commits
feat/tab-o
...
feat/preve
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
525338abf7 | ||
|
|
ea977816a4 | ||
|
|
92a167d47a | ||
|
|
d41e263942 | ||
|
|
80d6bb691d | ||
|
|
c7e4cd7c92 |
@@ -80,7 +80,7 @@ export const SetHookDialog: React.FC<{ accountAddress: string }> = React.memo(
|
||||
});
|
||||
const [formInitialized, setFormInitialized] = useState(false);
|
||||
const [estimateLoading, setEstimateLoading] = useState(false);
|
||||
|
||||
const watchedFee = watch("Fee");
|
||||
// Update value if activeWat changes
|
||||
useEffect(() => {
|
||||
setValue(
|
||||
@@ -89,6 +89,14 @@ export const SetHookDialog: React.FC<{ accountAddress: string }> = React.memo(
|
||||
);
|
||||
setFormInitialized(true);
|
||||
}, [snap.activeWat, snap.files, setValue]);
|
||||
useEffect(() => {
|
||||
if (
|
||||
watchedFee &&
|
||||
(watchedFee.includes(".") || watchedFee.includes(","))
|
||||
) {
|
||||
setValue("Fee", watchedFee.replaceAll(".", "").replaceAll(",", ""));
|
||||
}
|
||||
}, [watchedFee, setValue]);
|
||||
// const {
|
||||
// fields: grantFields,
|
||||
// append: grantAppend,
|
||||
@@ -121,7 +129,7 @@ export const SetHookDialog: React.FC<{ accountAddress: string }> = React.memo(
|
||||
}
|
||||
const res = await estimateFee(tx, account);
|
||||
if (res && res.base_fee) {
|
||||
setValue("Fee", res.base_fee);
|
||||
setValue("Fee", Math.round(Number(res.base_fee || "")).toString());
|
||||
}
|
||||
})();
|
||||
}
|
||||
@@ -256,6 +264,12 @@ export const SetHookDialog: React.FC<{ accountAddress: string }> = React.memo(
|
||||
type="number"
|
||||
{...register("Fee", { required: true })}
|
||||
autoComplete={"off"}
|
||||
onKeyPress={(e) => {
|
||||
if (e.key === "." || e.key === ",") {
|
||||
e.preventDefault();
|
||||
}
|
||||
}}
|
||||
step="1"
|
||||
defaultValue={10000}
|
||||
css={{
|
||||
"-moz-appearance": "textfield",
|
||||
@@ -295,7 +309,12 @@ export const SetHookDialog: React.FC<{ accountAddress: string }> = React.memo(
|
||||
const res = await estimateFee(tx, account);
|
||||
|
||||
if (res && res.base_fee) {
|
||||
setValue("Fee", res.base_fee);
|
||||
setValue(
|
||||
"Fee",
|
||||
Math.round(
|
||||
Number(res.base_fee || "")
|
||||
).toString()
|
||||
);
|
||||
}
|
||||
}
|
||||
} catch (err) {}
|
||||
|
||||
@@ -37,22 +37,22 @@ export const TxUI: FC<UIProps> = ({
|
||||
txFields,
|
||||
} = txState;
|
||||
|
||||
const transactionsOptions = transactionsData.map(tx => ({
|
||||
const transactionsOptions = transactionsData.map((tx) => ({
|
||||
value: tx.TransactionType,
|
||||
label: tx.TransactionType,
|
||||
}));
|
||||
|
||||
const accountOptions: SelectOption[] = accounts.map(acc => ({
|
||||
const accountOptions: SelectOption[] = accounts.map((acc) => ({
|
||||
label: acc.name,
|
||||
value: acc.address,
|
||||
}));
|
||||
|
||||
const destAccountOptions: SelectOption[] = accounts
|
||||
.map(acc => ({
|
||||
.map((acc) => ({
|
||||
label: acc.name,
|
||||
value: acc.address,
|
||||
}))
|
||||
.filter(acc => acc.value !== selectedAccount?.value);
|
||||
.filter((acc) => acc.value !== selectedAccount?.value);
|
||||
|
||||
const [feeLoading, setFeeLoading] = useState(false);
|
||||
|
||||
@@ -107,7 +107,7 @@ export const TxUI: FC<UIProps> = ({
|
||||
const specialFields = ["TransactionType", "Account", "Destination"];
|
||||
|
||||
const otherFields = Object.keys(txFields).filter(
|
||||
k => !specialFields.includes(k)
|
||||
(k) => !specialFields.includes(k)
|
||||
) as [keyof TxFields];
|
||||
|
||||
return (
|
||||
@@ -190,7 +190,7 @@ export const TxUI: FC<UIProps> = ({
|
||||
/>
|
||||
</Flex>
|
||||
)}
|
||||
{otherFields.map(field => {
|
||||
{otherFields.map((field) => {
|
||||
let _value = txFields[field];
|
||||
|
||||
let value: string | undefined;
|
||||
@@ -223,8 +223,13 @@ export const TxUI: FC<UIProps> = ({
|
||||
</Text>
|
||||
<Input
|
||||
value={value}
|
||||
onChange={e => {
|
||||
handleSetField(field, e.target.value);
|
||||
onChange={(e) => {
|
||||
let value = e.target.value;
|
||||
if (value && (value.includes(".") || value.includes(","))) {
|
||||
value = value.replaceAll(".", "").replaceAll(",", "");
|
||||
}
|
||||
|
||||
handleSetField(field, value);
|
||||
}}
|
||||
css={{ width: "70%", flex: "inherit" }}
|
||||
/>
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
import { Label } from "@radix-ui/react-label";
|
||||
import { Switch, SwitchThumb } from "../../components/Switch";
|
||||
import type { NextPage } from "next";
|
||||
import dynamic from "next/dynamic";
|
||||
import { Gear, Play } from "phosphor-react";
|
||||
@@ -141,59 +140,6 @@ const CompilerSettings = () => {
|
||||
</Button>
|
||||
</ButtonGroup>
|
||||
</Box>
|
||||
<Box css={{ flexDirection: "column" }}>
|
||||
<Label
|
||||
style={{
|
||||
flexDirection: "row",
|
||||
display: "flex",
|
||||
}}
|
||||
>
|
||||
Clean WASM (experimental){" "}
|
||||
<Popover
|
||||
css={{
|
||||
maxWidth: "240px",
|
||||
lineHeight: "1.3",
|
||||
a: {
|
||||
color: "$purple11",
|
||||
},
|
||||
".dark &": {
|
||||
backgroundColor: "$black !important",
|
||||
|
||||
".arrow": {
|
||||
fill: "$colors$black",
|
||||
},
|
||||
},
|
||||
}}
|
||||
content="Cleaner removes unwanted compiler-provided exports and functions from a wasm binary to make it (more) suitable for being used as a Hook"
|
||||
>
|
||||
<Flex
|
||||
css={{
|
||||
position: "relative",
|
||||
top: "-1px",
|
||||
mx: "$1",
|
||||
backgroundColor: "$mauve8",
|
||||
borderRadius: "$full",
|
||||
cursor: "pointer",
|
||||
width: "16px",
|
||||
height: "16px",
|
||||
alignItems: "center",
|
||||
justifyContent: "center",
|
||||
}}
|
||||
>
|
||||
?
|
||||
</Flex>
|
||||
</Popover>
|
||||
</Label>
|
||||
<Switch
|
||||
css={{ mt: "$2" }}
|
||||
checked={snap.compileOptions.strip}
|
||||
onCheckedChange={(checked) => {
|
||||
state.compileOptions.strip = checked;
|
||||
}}
|
||||
>
|
||||
<SwitchThumb />
|
||||
</Switch>
|
||||
</Box>
|
||||
</Flex>
|
||||
);
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user