Compare commits

..

1 Commits

Author SHA1 Message Date
Vaclav Barta
a82de7087d -O0 -> -O2 2022-06-22 08:47:00 +02:00
6 changed files with 26 additions and 83 deletions

View File

@@ -512,7 +512,6 @@ const ImportAccountDialog = () => {
<Input
name="secret"
type="password"
autoComplete="new-password"
value={value}
onChange={(e) => setValue(e.target.value)}
/>

View File

@@ -34,9 +34,7 @@ const DeployEditor = () => {
const [showContent, setShowContent] = useState(false);
const activeFile = snap.files[snap.active]?.compiledContent
? snap.files[snap.active]
: snap.files.filter((file) => file.compiledContent)[0];
const activeFile = snap.files[snap.active];
const compiledSize = activeFile?.compiledContent?.byteLength || 0;
const color =
compiledSize > FILESIZE_BREAKPOINTS[1]
@@ -62,21 +60,12 @@ const DeployEditor = () => {
{activeFile?.lastCompiled && (
<ReactTimeAgo date={activeFile.lastCompiled} locale="en-US" />
)}
{activeFile.compiledContent?.byteLength && (
<Text css={{ ml: "$2", color }}>
({filesize(activeFile.compiledContent.byteLength)})
</Text>
)}
</Flex>
{activeFile.compiledContent?.byteLength &&
activeFile.compiledContent?.byteLength >= 64000 && (
<Flex css={{ flexDirection: "column", py: "$3", pb: "$1" }}>
<Text css={{ ml: "$2", color: "$error" }}>
File size is larger than 64kB, cannot set hook!
</Text>
</Flex>
)}
<Button variant="link" onClick={() => setShowContent(true)}>
View as WAT-file
</Button>
@@ -130,8 +119,8 @@ const DeployEditor = () => {
className="hooks-editor"
defaultLanguage={"wat"}
language={"wat"}
path={`file://tmp/c/${activeFile?.name}.wat`}
value={activeFile?.compiledWatContent || ""}
path={`file://tmp/c/${snap.files?.[snap.active]?.name}.wat`}
value={snap.files?.[snap.active]?.compiledWatContent || ""}
beforeMount={(monaco) => {
monaco.languages.register({ id: "wat" });
monaco.languages.setLanguageConfiguration("wat", wat.config);

View File

@@ -140,16 +140,6 @@ export const SetHookDialog: React.FC<{ accountAddress: string }> = React.memo(
return null;
}
const tooLargeFile = () => {
const activeFile = snap.files[snap.active].compiledContent
? snap.files[snap.active]
: snap.files.filter((file) => file.compiledContent)[0];
return Boolean(
activeFile?.compiledContent?.byteLength &&
activeFile?.compiledContent?.byteLength >= 64000
);
};
const onSubmit: SubmitHandler<SetHookData> = async (data) => {
const currAccount = state.accounts.find(
(acc) => acc.address === account.address
@@ -174,8 +164,7 @@ export const SetHookDialog: React.FC<{ accountAddress: string }> = React.memo(
variant={"secondary"}
disabled={
account.isLoading ||
!snap.files.filter((file) => file.compiledWatContent).length ||
tooLargeFile()
!snap.files.filter((file) => file.compiledWatContent).length
}
>
Set Hook

View File

@@ -38,22 +38,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);
@@ -108,15 +108,15 @@ 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];
const switchToJson = () =>
setState({ editorSavedValue: null, viewType: "json" });
useEffect(() => {
const defaultOption = transactionsOptions.find(
(tt) => tt.value === "Payment"
tt => tt.value === "Payment"
);
if (defaultOption) {
handleChangeTxType(defaultOption);
@@ -204,7 +204,7 @@ export const TxUI: FC<UIProps> = ({
/>
</Flex>
)}
{otherFields.map((field) => {
{otherFields.map(field => {
let _value = txFields[field];
let value: string | undefined;
@@ -253,39 +253,13 @@ export const TxUI: FC<UIProps> = ({
/>
) : (
<Input
type={isFee ? "number" : "text"}
value={value}
onChange={(e) => {
if (isFee) {
const val = e.target.value
.replaceAll(".", "")
.replaceAll(",", "");
handleSetField(field, val);
} else {
handleSetField(field, e.target.value);
}
onChange={e => {
handleSetField(field, e.target.value);
}}
onKeyPress={
isFee
? (e) => {
if (e.key === "." || e.key === ",") {
e.preventDefault();
}
}
: undefined
}
css={{
width: "70%",
flex: "inherit",
"-moz-appearance": "textfield",
"&::-webkit-outer-spin-button": {
"-webkit-appearance": "none",
margin: 0,
},
"&::-webkit-inner-spin-button ": {
"-webkit-appearance": "none",
margin: 0,
},
}}
/>
)}
@@ -294,8 +268,6 @@ export const TxUI: FC<UIProps> = ({
size="xs"
variant="primary"
outline
disabled={txState.txIsDisabled}
isDisabled={txState.txIsDisabled}
isLoading={feeLoading}
css={{
position: "absolute",

View File

@@ -32,20 +32,14 @@ const Test = () => {
if (!showComponent) {
return null;
}
const hasScripts = Boolean(
snap.files.filter((f) => f.name.toLowerCase()?.endsWith(".js")).length
);
const hasScripts =
snap.files.filter((f) => f.name.endsWith(".js")).length > 0;
return (
<Container css={{ px: 0 }}>
<Split
direction="vertical"
sizes={
hasScripts && getSplit("testVertical")?.length === 2
? [50, 20, 30]
: hasScripts
? [50, 20, 50]
: [50, 50]
getSplit("testVertical") || (hasScripts ? [50, 20, 30] : [50, 50])
}
gutterSize={4}
gutterAlign="center"
@@ -101,7 +95,7 @@ const Test = () => {
</Box>
</Split>
</Flex>
{hasScripts ? (
{hasScripts && (
<Flex
as="div"
css={{
@@ -116,7 +110,7 @@ const Test = () => {
clearLog={() => (state.scriptLogs = [])}
/>
</Flex>
) : null}
)}
<Flex>
<Split
direction="horizontal"

View File

@@ -54,15 +54,15 @@ export const prepareDeployHookTx = async (
account: IAccount & { name?: string },
data: SetHookData
) => {
const activeFile = state.files[state.active]?.compiledContent
? state.files[state.active]
: state.files.filter((file) => file.compiledContent)[0];
if (!state.files || state.files.length === 0) {
if (
!state.files ||
state.files.length === 0 ||
!state.files?.[state.active]?.compiledContent
) {
return;
}
if (!activeFile?.compiledContent) {
if (!state.files?.[state.active]?.compiledContent) {
return;
}
if (!state.client) {
@@ -99,7 +99,7 @@ export const prepareDeployHookTx = async (
{
Hook: {
CreateCode: arrayBufferToHex(
activeFile?.compiledContent
state.files?.[state.active]?.compiledContent
).toUpperCase(),
HookOn: calculateHookOn(hookOnValues),
HookNamespace,