forked from github-starred/komodo
61 lines
1.8 KiB
TypeScript
61 lines
1.8 KiB
TypeScript
import { Component, Show } from "solid-js";
|
|
import ConfirmButton from "../../../shared/ConfirmButton";
|
|
import Icon from "../../../shared/Icon";
|
|
import Flex from "../../../shared/layout/Flex";
|
|
import Grid from "../../../shared/layout/Grid";
|
|
import CliBuild from "./CliBuild";
|
|
import Docker from "./Docker";
|
|
import { useConfig } from "../Provider";
|
|
import Loading from "../../../shared/loading/Loading";
|
|
import BuildArgs from "./BuildArgs";
|
|
import Version from "./Version";
|
|
import Repo from "./Repo";
|
|
import WebhookUrl from "./WebhookUrl";
|
|
import ExtraArgs from "./ExtraArgs";
|
|
import UseBuildx from "./UseBuildx";
|
|
|
|
const BuildConfig: Component<{}> = (p) => {
|
|
const { build, reset, save, userCanUpdate } = useConfig();
|
|
return (
|
|
<Show when={build.loaded}>
|
|
<Grid class="config">
|
|
<Grid class="config-items scroller">
|
|
<Version />
|
|
<Repo />
|
|
<Docker />
|
|
<CliBuild />
|
|
<BuildArgs />
|
|
<ExtraArgs />
|
|
<UseBuildx />
|
|
<Show when={userCanUpdate()}>
|
|
<WebhookUrl />
|
|
</Show>
|
|
</Grid>
|
|
<Show when={userCanUpdate() && build.updated}>
|
|
<Show
|
|
when={!build.saving}
|
|
fallback={
|
|
<button class="green">
|
|
updating <Loading type="spinner" />
|
|
</button>
|
|
}
|
|
>
|
|
<Flex style={{ "place-self": "center", padding: "1rem" }}>
|
|
<button onClick={reset}>
|
|
reset
|
|
<Icon type="reset" />
|
|
</button>
|
|
<ConfirmButton onConfirm={save} class="green">
|
|
save
|
|
<Icon type="floppy-disk" />
|
|
</ConfirmButton>
|
|
</Flex>
|
|
</Show>
|
|
</Show>
|
|
</Grid>
|
|
</Show>
|
|
);
|
|
};
|
|
|
|
export default BuildConfig;
|