This commit is contained in:
IDONTSUDO 2024-07-13 18:18:14 +03:00
parent 50822a031d
commit d8b5018cb2
69 changed files with 3302 additions and 3652 deletions

View file

@ -10,6 +10,7 @@ import { CoreInput } from "../../../core/ui/input/input";
import { DrawersDataset } from "../../dataset/dataset_store";
import { Icon } from "../../../core/ui/icons/icons";
import { sceneManagerForms } from "./forms/scene_manager_forms";
import { SceneMode } from "../model/scene_view";
export const SceneManagerPath = "/scene/manager/";
@ -33,7 +34,12 @@ export const SceneManger = observer(() => {
return (
<MainPage
page={"Сцена"}
panelStyle={{ display: store.storeMode.isEqual(StoreMode.sceneInstance) ? "" : "none" }}
panelStyle={{
display: store.storeMode.isEqualR(StoreMode.sceneInstance).fold(
() => "",
() => "none"
),
}}
panelChildren={
<div style={{ width: "100%", height: "100%" }}>
<div style={{ height: 260, width: "100%", padding: 10 }}>
@ -75,6 +81,23 @@ export const SceneManger = observer(() => {
<Icon type={el.icon} />
</div>
))}
{store.isVisibleSaveButton ? (
<>
<div
onClick={() => store.sceneSave()}
style={{
marginTop: 4,
width: 50,
height: 50,
backgroundColor: "rgba(99, 81, 159, 1)",
border: "1px solid",
borderRadius: 5,
}}
>
<Icon type={SceneMode.Save} />
</div>
</>
) : null}
</div>
</div>
</div>
@ -104,7 +127,7 @@ export const SceneManger = observer(() => {
justifyContent: "space-between",
width: "100%",
}}
onClick={() => store.selectSceneItems(el.name, index, !el.isSelected)}
onClick={() => store.selectSceneItems(el.name, index, !el.isSelected, el.icon)}
>
<Icon width={13} height={13} type={el.icon} style={{ marginLeft: 10 }} />
<div style={{ width: 10 }} />
@ -112,6 +135,7 @@ export const SceneManger = observer(() => {
<Icon
type="DeleteCircle"
width={13}
isNeedStopPropagation={true}
height={13}
onClick={() => store.deleteSceneItem(el)}
style={{ marginRight: 10 }}
@ -124,19 +148,18 @@ export const SceneManger = observer(() => {
<div
style={{
width: "-webkit-fill-available",
height: "100%",
height: "60%",
borderRadius: 7,
backgroundColor: "white",
margin: 10,
overflow: "auto",
}}
>
{sceneManagerForms(store.activeFormDependency ?? {}, store).map((el, i) => {
if (el.name.isEqual(store.activeFormType ?? "")) {
return <span key={i}>{el.component}</span>;
}
return <></>;
})}
{sceneManagerForms(store.activeFormDependency ?? {}, store).map((el, i) =>
el.name.isEqualR(store.activeFormType ?? "").fold(
() => <span key={i}>{el.component}</span>,
() => <span key={i}></span>
)
)}
</div>
</div>
}