Files
image-studio/eslint.config.js
syntaxbullet 5e4b548ad4 feat: add ComfyUI integration for image generation and management
- Implemented ComfyGenerateRequest type and associated functions for generating images using various architectures and modes.
- Added functions for listing generation options and handling image uploads.
- Created workflows for different generation modes including SDXL, Z-Image, Z-Image Turbo, and Anima.
- Introduced GenerationJobStatus component to display the status of ongoing generation jobs.
- Developed MaskControls for managing mask operations and displaying mask analysis.
- Created palette items for tool selection, layer management, and generation settings.
2026-07-10 23:15:02 +02:00

114 lines
3.0 KiB
JavaScript

import js from "@eslint/js";
import tseslint from "typescript-eslint";
const appLayerImports = [
"@app/*",
"@view/*",
"@renderer/*",
"@commands/*",
"@editor/*",
"@input/*",
"../app/*",
"../view/*",
"../renderer/*",
"../commands/*",
"../editor/*",
"../input/*",
"@operations/*",
"@platform/*",
"@server/*",
];
export default tseslint.config(
{
ignores: ["dist/**", "node_modules/**", "eslint.config.js"],
},
js.configs.recommended,
...tseslint.configs.recommended,
{
files: ["**/*.{ts,tsx}"],
rules: {
"@typescript-eslint/no-explicit-any": "error",
"@typescript-eslint/consistent-type-imports": ["error", { prefer: "type-imports" }],
},
},
{
files: ["core/**/*.{ts,tsx}"],
rules: {
"no-restricted-imports": ["error", { patterns: appLayerImports }],
},
},
{
files: ["commands/**/*.{ts,tsx}"],
rules: {
"no-restricted-imports": [
"error",
{ patterns: ["@app/*", "@view/*", "@renderer/*", "@operations/*", "@platform/*", "@server/*", "../app/*", "../view/*", "../renderer/*", "react", "react-dom"] },
],
},
},
{
files: ["editor/**/*.{ts,tsx}"],
rules: {
"no-restricted-imports": [
"error",
{ patterns: ["@app/*", "@view/*", "@renderer/*", "@operations/*", "@platform/*", "@server/*", "../app/*", "../view/*", "../renderer/*", "react", "react-dom"] },
],
},
},
{
files: ["renderer/**/*.{ts,tsx}"],
rules: {
"no-restricted-imports": [
"error",
{ patterns: ["@app/*", "@view/*", "../app/*", "../view/*", "react", "react-dom"] },
],
},
},
{
files: ["input/**/*.{ts,tsx}"],
rules: {
"no-restricted-imports": [
"error",
{
patterns: [
"@app/*",
"@view/*",
"@renderer/*",
"@editor/*",
"../app/*",
"../view/*",
"../renderer/*",
"../editor/*",
"react",
"react-dom",
"@core/document",
"@core/layer",
"@core/artboard",
"@core/asset",
],
},
],
},
},
{
files: ["operations/**/*.{ts,tsx}"],
rules: {
"no-restricted-imports": ["error", { patterns: ["@app/*", "@view/*", "@renderer/*", "@server/*", "react", "react-dom"] }],
"no-restricted-globals": ["error", "document", "Image", "URL", "fetch", "requestAnimationFrame", "cancelAnimationFrame"],
},
},
{
files: ["platform/**/*.{ts,tsx}"],
rules: {
"no-restricted-imports": ["error", { patterns: ["@app/*", "@view/*", "@renderer/*", "@commands/*", "@editor/*", "@input/*", "@operations/*", "@server/*", "react", "react-dom"] }],
},
},
{
files: ["server/**/*.{ts,tsx}"],
rules: {
"no-restricted-imports": ["error", { patterns: ["@app/*", "@view/*", "@renderer/*", "@commands/*", "@editor/*", "@input/*", "@operations/*", "@platform/*", "react", "react-dom"] }],
},
},
);