import * as Slider from "@radix-ui/react-slider";
import { theme } from "../../../tailwind.config";
import { Color } from "react-aria-components";
import { Input } from "components/Input";
import { Radio } from "components/Checkbox";
import { useEntity, useReplicache } from "src/replicache";
import { addImage } from "src/utils/addImage";
import { BlockImageSmall } from "components/Icons/BlockImageSmall";
import { CloseContrastSmall } from "components/Icons/CloseContrastSmall";
export const ImageSettings = (props: {
entityID: string;
card?: boolean;
setValue: (c: Color) => void;
}) => {
let image = useEntity(
props.entityID,
props.card ? "theme/card-background-image" : "theme/background-image",
);
let repeat = useEntity(
props.entityID,
props.card
? "theme/card-background-image-repeat"
: "theme/background-image-repeat",
);
let pageType = useEntity(props.entityID, "page/type")?.data.value;
let { rep } = useReplicache();
return (
<>
>
);
};
export const ImageInput = (props: {
entityID: string;
onChange?: () => void;
card?: boolean;
}) => {
let pageType = useEntity(props.entityID, "page/type")?.data.value;
let { rep } = useReplicache();
return (
{
let file = e.currentTarget.files?.[0];
if (!file || !rep) return;
await addImage(file, rep, {
entityID: props.entityID,
attribute: props.card
? "theme/card-background-image"
: "theme/background-image",
});
props.onChange?.();
if (pageType === "canvas") {
rep &&
rep.mutate.assertFact({
entity: props.entityID,
attribute: "canvas/background-pattern",
data: { type: "canvas-pattern-union", value: "plain" },
});
}
}}
/>
);
};