forked from extern/easydiffusion
creation ui is better
This commit is contained in:
parent
737ed7ba5d
commit
0591487cfd
@ -9,6 +9,7 @@ module.exports = {
|
|||||||
parserOptions: {
|
parserOptions: {
|
||||||
ecmaVersion: "latest",
|
ecmaVersion: "latest",
|
||||||
sourceType: "module",
|
sourceType: "module",
|
||||||
|
tsconfigRootDir: __dirname,
|
||||||
},
|
},
|
||||||
plugins: ["react"],
|
plugins: ["react"],
|
||||||
extends: [
|
extends: [
|
||||||
@ -21,6 +22,7 @@ module.exports = {
|
|||||||
// general things turned off for now
|
// general things turned off for now
|
||||||
"prefer-const": "off",
|
"prefer-const": "off",
|
||||||
"no-debugger": "warn",
|
"no-debugger": "warn",
|
||||||
|
"eol-last": "off",
|
||||||
|
|
||||||
"comma-dangle": ["off", "always-multiline"],
|
"comma-dangle": ["off", "always-multiline"],
|
||||||
"no-void": ["off"],
|
"no-void": ["off"],
|
||||||
|
@ -13,7 +13,6 @@ export const AdvancedSettingsList = style({
|
|||||||
|
|
||||||
export const AdvancedSettingGrouping = style({
|
export const AdvancedSettingGrouping = style({
|
||||||
marginTop: vars.spacing.medium,
|
marginTop: vars.spacing.medium,
|
||||||
marginBottom: vars.spacing.medium,
|
|
||||||
});
|
});
|
||||||
|
|
||||||
export const MenuButton = style({
|
export const MenuButton = style({
|
||||||
|
@ -0,0 +1,48 @@
|
|||||||
|
import { style, globalStyle } from "@vanilla-extract/css";
|
||||||
|
// @ts-ignore
|
||||||
|
import { vars } from "../../../../styles/theme/index.css.ts";
|
||||||
|
|
||||||
|
export const ImagerModifierGroups = style({
|
||||||
|
// marginBottom: vars.spacing.small,
|
||||||
|
paddingLeft: 0,
|
||||||
|
listStyleType: "none",
|
||||||
|
});
|
||||||
|
|
||||||
|
globalStyle(`${ImagerModifierGroups} li`, {
|
||||||
|
marginTop: vars.spacing.medium,
|
||||||
|
});
|
||||||
|
|
||||||
|
export const ImageModifierGrouping = style({
|
||||||
|
marginTop: vars.spacing.medium,
|
||||||
|
});
|
||||||
|
|
||||||
|
export const MenuButton = style({
|
||||||
|
display: "block",
|
||||||
|
width: "100%",
|
||||||
|
textAlign: "left",
|
||||||
|
backgroundColor: "transparent",
|
||||||
|
color: vars.colors.text.normal,
|
||||||
|
border: "0 none",
|
||||||
|
cursor: "pointer",
|
||||||
|
padding: "0",
|
||||||
|
marginBottom: vars.spacing.medium,
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
|
globalStyle(`${MenuButton}> h4`, {
|
||||||
|
color: "#e7ba71",
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
|
export const ModifierListStyle = style({
|
||||||
|
// marginBottom: vars.spacing.small,
|
||||||
|
paddingLeft: 0,
|
||||||
|
listStyleType: "none",
|
||||||
|
display: "flex",
|
||||||
|
flexWrap: "wrap",
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
|
globalStyle(`${ModifierListStyle} li`, {
|
||||||
|
margin: 0,
|
||||||
|
});
|
@ -6,6 +6,15 @@ import { loadModifications } from "../../../../api";
|
|||||||
// @ts-expect-error
|
// @ts-expect-error
|
||||||
import { PanelBox } from "../../../../styles/shared.css.ts";
|
import { PanelBox } from "../../../../styles/shared.css.ts";
|
||||||
|
|
||||||
|
import {
|
||||||
|
ImagerModifierGroups,
|
||||||
|
ImageModifierGrouping,
|
||||||
|
MenuButton,
|
||||||
|
ModifierListStyle
|
||||||
|
} from //@ts-expect-error
|
||||||
|
"./imageModifiers.css.ts";
|
||||||
|
|
||||||
|
|
||||||
import { useImageCreate } from "../../../../stores/imageCreateStore";
|
import { useImageCreate } from "../../../../stores/imageCreateStore";
|
||||||
import { useCreateUI } from "../creationPanelUIStore";
|
import { useCreateUI } from "../creationPanelUIStore";
|
||||||
|
|
||||||
@ -17,7 +26,7 @@ interface ModifierListProps {
|
|||||||
|
|
||||||
function ModifierList({ tags }: ModifierListProps) {
|
function ModifierList({ tags }: ModifierListProps) {
|
||||||
return (
|
return (
|
||||||
<ul className="modifier-list">
|
<ul className={ModifierListStyle}>
|
||||||
{tags.map((tag) => (
|
{tags.map((tag) => (
|
||||||
<li key={tag}>
|
<li key={tag}>
|
||||||
<ModifierTag name={tag} />
|
<ModifierTag name={tag} />
|
||||||
@ -42,29 +51,18 @@ function ModifierGrouping({ title, tags }: ModifierGroupingProps) {
|
|||||||
};
|
};
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<div className="modifier-grouping">
|
<div className={ImageModifierGrouping}>
|
||||||
<div className="modifier-grouping-header" onClick={_toggleExpand}>
|
<button type="button" className={MenuButton} onClick={_toggleExpand}>
|
||||||
<h5>{title}</h5>
|
<h4>{title}</h4>
|
||||||
</div>
|
</button>
|
||||||
{isExpanded && <ModifierList tags={tags} />}
|
{isExpanded && <ModifierList tags={tags} />}
|
||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
export default function ImageModifers() {
|
export default function ImageModifers() {
|
||||||
// const { status, data } = useQuery(["modifications"], loadModifications);
|
|
||||||
|
|
||||||
// const imageModifierIsOpen = useImageCreate(
|
|
||||||
// (state) => state.uiOptions.imageModifierIsOpen
|
|
||||||
// );
|
|
||||||
// const toggleImageModifiersIsOpen = useImageCreate(
|
|
||||||
// (state) => state.toggleImageModifiersIsOpen
|
|
||||||
// );
|
|
||||||
|
|
||||||
const allModifiers = useImageCreate((state) => state.allModifiers);
|
const allModifiers = useImageCreate((state) => state.allModifiers);
|
||||||
|
|
||||||
console.log("allModifiers", allModifiers);
|
|
||||||
|
|
||||||
const imageModifierIsOpen = useCreateUI((state) => state.isOpenImageModifier);
|
const imageModifierIsOpen = useCreateUI((state) => state.isOpenImageModifier);
|
||||||
const toggleImageModifiersIsOpen = useCreateUI(
|
const toggleImageModifiersIsOpen = useCreateUI(
|
||||||
(state) => state.toggleImageModifier
|
(state) => state.toggleImageModifier
|
||||||
@ -82,18 +80,21 @@ export default function ImageModifers() {
|
|||||||
className="panel-box-toggle-btn"
|
className="panel-box-toggle-btn"
|
||||||
>
|
>
|
||||||
{/* TODO: swap this manual collapse stuff out for some UI component? */}
|
{/* TODO: swap this manual collapse stuff out for some UI component? */}
|
||||||
<h4>Image Modifiers (art styles, tags, ect)</h4>
|
<h3>Image Modifiers (art styles, tags, ect)</h3>
|
||||||
</button>
|
</button>
|
||||||
|
|
||||||
{/* @ts-ignore */}
|
{/* @ts-ignore */}
|
||||||
{imageModifierIsOpen &&
|
{imageModifierIsOpen && (
|
||||||
// @ts-ignore
|
<ul className={ImagerModifierGroups}>
|
||||||
allModifiers.map((item, index) => {
|
{allModifiers.map((item, index) => {
|
||||||
return (
|
return (
|
||||||
// @ts-ignore
|
<li key={item[0]}>
|
||||||
<ModifierGrouping key={item[0]} title={item[0]} tags={item[1]} />
|
<ModifierGrouping title={item[0]} tags={item[1]} />
|
||||||
);
|
</li>
|
||||||
})}
|
);
|
||||||
|
})}
|
||||||
|
</ul>
|
||||||
|
)}
|
||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
@ -8,6 +8,7 @@ export const PanelBox = style({
|
|||||||
padding: vars.spacing.medium,
|
padding: vars.spacing.medium,
|
||||||
borderRadius: vars.trim.smallBorderRadius,
|
borderRadius: vars.trim.smallBorderRadius,
|
||||||
marginBottom: vars.spacing.medium,
|
marginBottom: vars.spacing.medium,
|
||||||
|
// TODO move this to the theme
|
||||||
boxShadow: "0 4px 8px 0 rgba(0, 0, 0, 0.15), 0 6px 20px 0 rgba(0, 0, 0, 0.15)",
|
boxShadow: "0 4px 8px 0 rgba(0, 0, 0, 0.15), 0 6px 20px 0 rgba(0, 0, 0, 0.15)",
|
||||||
});
|
});
|
||||||
|
|
||||||
@ -22,7 +23,6 @@ globalStyle(`${PanelBox} .panel-box-toggle-btn`, {
|
|||||||
border: "0 none",
|
border: "0 none",
|
||||||
cursor: "pointer",
|
cursor: "pointer",
|
||||||
padding: "0",
|
padding: "0",
|
||||||
marginBottom: vars.spacing.small,
|
|
||||||
});
|
});
|
||||||
|
|
||||||
export const SettingItem = style({
|
export const SettingItem = style({
|
||||||
|
@ -12,7 +12,6 @@ import {
|
|||||||
* Lots of these arent used yet, but once they are defined and useable then they can be set.
|
* Lots of these arent used yet, but once they are defined and useable then they can be set.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
// Link color 0, 102, 204
|
|
||||||
|
|
||||||
const colors = createThemeContract({
|
const colors = createThemeContract({
|
||||||
brand: null,
|
brand: null,
|
||||||
|
Loading…
Reference in New Issue
Block a user