Compare commits
1 Commits
feat/ui-fi
...
feature/ch
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
a82de7087d |
@@ -34,9 +34,7 @@ const DeployEditor = () => {
|
|||||||
|
|
||||||
const [showContent, setShowContent] = useState(false);
|
const [showContent, setShowContent] = useState(false);
|
||||||
|
|
||||||
const activeFile = snap.files[snap.active]?.compiledContent
|
const activeFile = snap.files[snap.active];
|
||||||
? snap.files[snap.active]
|
|
||||||
: snap.files.filter((file) => file.compiledContent)[0];
|
|
||||||
const compiledSize = activeFile?.compiledContent?.byteLength || 0;
|
const compiledSize = activeFile?.compiledContent?.byteLength || 0;
|
||||||
const color =
|
const color =
|
||||||
compiledSize > FILESIZE_BREAKPOINTS[1]
|
compiledSize > FILESIZE_BREAKPOINTS[1]
|
||||||
@@ -62,21 +60,12 @@ const DeployEditor = () => {
|
|||||||
{activeFile?.lastCompiled && (
|
{activeFile?.lastCompiled && (
|
||||||
<ReactTimeAgo date={activeFile.lastCompiled} locale="en-US" />
|
<ReactTimeAgo date={activeFile.lastCompiled} locale="en-US" />
|
||||||
)}
|
)}
|
||||||
|
|
||||||
{activeFile.compiledContent?.byteLength && (
|
{activeFile.compiledContent?.byteLength && (
|
||||||
<Text css={{ ml: "$2", color }}>
|
<Text css={{ ml: "$2", color }}>
|
||||||
({filesize(activeFile.compiledContent.byteLength)})
|
({filesize(activeFile.compiledContent.byteLength)})
|
||||||
</Text>
|
</Text>
|
||||||
)}
|
)}
|
||||||
</Flex>
|
</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)}>
|
<Button variant="link" onClick={() => setShowContent(true)}>
|
||||||
View as WAT-file
|
View as WAT-file
|
||||||
</Button>
|
</Button>
|
||||||
@@ -130,8 +119,8 @@ const DeployEditor = () => {
|
|||||||
className="hooks-editor"
|
className="hooks-editor"
|
||||||
defaultLanguage={"wat"}
|
defaultLanguage={"wat"}
|
||||||
language={"wat"}
|
language={"wat"}
|
||||||
path={`file://tmp/c/${activeFile?.name}.wat`}
|
path={`file://tmp/c/${snap.files?.[snap.active]?.name}.wat`}
|
||||||
value={activeFile?.compiledWatContent || ""}
|
value={snap.files?.[snap.active]?.compiledWatContent || ""}
|
||||||
beforeMount={(monaco) => {
|
beforeMount={(monaco) => {
|
||||||
monaco.languages.register({ id: "wat" });
|
monaco.languages.register({ id: "wat" });
|
||||||
monaco.languages.setLanguageConfiguration("wat", wat.config);
|
monaco.languages.setLanguageConfiguration("wat", wat.config);
|
||||||
|
|||||||
@@ -140,16 +140,6 @@ export const SetHookDialog: React.FC<{ accountAddress: string }> = React.memo(
|
|||||||
return null;
|
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 onSubmit: SubmitHandler<SetHookData> = async (data) => {
|
||||||
const currAccount = state.accounts.find(
|
const currAccount = state.accounts.find(
|
||||||
(acc) => acc.address === account.address
|
(acc) => acc.address === account.address
|
||||||
@@ -174,8 +164,7 @@ export const SetHookDialog: React.FC<{ accountAddress: string }> = React.memo(
|
|||||||
variant={"secondary"}
|
variant={"secondary"}
|
||||||
disabled={
|
disabled={
|
||||||
account.isLoading ||
|
account.isLoading ||
|
||||||
!snap.files.filter((file) => file.compiledWatContent).length ||
|
!snap.files.filter((file) => file.compiledWatContent).length
|
||||||
tooLargeFile()
|
|
||||||
}
|
}
|
||||||
>
|
>
|
||||||
Set Hook
|
Set Hook
|
||||||
|
|||||||
@@ -54,15 +54,15 @@ export const prepareDeployHookTx = async (
|
|||||||
account: IAccount & { name?: string },
|
account: IAccount & { name?: string },
|
||||||
data: SetHookData
|
data: SetHookData
|
||||||
) => {
|
) => {
|
||||||
const activeFile = state.files[state.active]?.compiledContent
|
if (
|
||||||
? state.files[state.active]
|
!state.files ||
|
||||||
: state.files.filter((file) => file.compiledContent)[0];
|
state.files.length === 0 ||
|
||||||
|
!state.files?.[state.active]?.compiledContent
|
||||||
if (!state.files || state.files.length === 0) {
|
) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!activeFile?.compiledContent) {
|
if (!state.files?.[state.active]?.compiledContent) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (!state.client) {
|
if (!state.client) {
|
||||||
@@ -99,7 +99,7 @@ export const prepareDeployHookTx = async (
|
|||||||
{
|
{
|
||||||
Hook: {
|
Hook: {
|
||||||
CreateCode: arrayBufferToHex(
|
CreateCode: arrayBufferToHex(
|
||||||
activeFile?.compiledContent
|
state.files?.[state.active]?.compiledContent
|
||||||
).toUpperCase(),
|
).toUpperCase(),
|
||||||
HookOn: calculateHookOn(hookOnValues),
|
HookOn: calculateHookOn(hookOnValues),
|
||||||
HookNamespace,
|
HookNamespace,
|
||||||
|
|||||||
Reference in New Issue
Block a user