mirror of
https://github.com/invoke-ai/InvokeAI
synced 2024-08-30 20:32:17 +00:00
chore(ui): lint
This commit is contained in:
parent
578c8ce5dd
commit
59d932e9c1
@ -20,7 +20,7 @@ import AppErrorBoundaryFallback from './AppErrorBoundaryFallback';
|
|||||||
import GlobalHotkeys from './GlobalHotkeys';
|
import GlobalHotkeys from './GlobalHotkeys';
|
||||||
import PreselectedImage from './PreselectedImage';
|
import PreselectedImage from './PreselectedImage';
|
||||||
import Toaster from './Toaster';
|
import Toaster from './Toaster';
|
||||||
import { useSocketIO } from '../hooks/useSocketIO';
|
import { useSocketIO } from 'app/hooks/useSocketIO';
|
||||||
|
|
||||||
const DEFAULT_CONFIG = {};
|
const DEFAULT_CONFIG = {};
|
||||||
|
|
||||||
|
@ -19,9 +19,9 @@ import React, {
|
|||||||
import { Provider } from 'react-redux';
|
import { Provider } from 'react-redux';
|
||||||
import { addMiddleware, resetMiddlewares } from 'redux-dynamic-middlewares';
|
import { addMiddleware, resetMiddlewares } from 'redux-dynamic-middlewares';
|
||||||
import { ManagerOptions, SocketOptions } from 'socket.io-client';
|
import { ManagerOptions, SocketOptions } from 'socket.io-client';
|
||||||
import Loading from '../../common/components/Loading/Loading';
|
import Loading from 'common/components/Loading/Loading';
|
||||||
import AppDndContext from '../../features/dnd/components/AppDndContext';
|
import AppDndContext from 'features/dnd/components/AppDndContext';
|
||||||
import '../../i18n';
|
import 'i18n';
|
||||||
|
|
||||||
const App = lazy(() => import('./App'));
|
const App = lazy(() => import('./App'));
|
||||||
const ThemeLocaleProvider = lazy(() => import('./ThemeLocaleProvider'));
|
const ThemeLocaleProvider = lazy(() => import('./ThemeLocaleProvider'));
|
||||||
|
@ -6,7 +6,7 @@ import {
|
|||||||
createListenerMiddleware,
|
createListenerMiddleware,
|
||||||
} from '@reduxjs/toolkit';
|
} from '@reduxjs/toolkit';
|
||||||
|
|
||||||
import type { AppDispatch, RootState } from '../../store';
|
import type { AppDispatch, RootState } from 'app/store/store';
|
||||||
import { addCommitStagingAreaImageListener } from './listeners/addCommitStagingAreaImageListener';
|
import { addCommitStagingAreaImageListener } from './listeners/addCommitStagingAreaImageListener';
|
||||||
import { addFirstListImagesListener } from './listeners/addFirstListImagesListener.ts';
|
import { addFirstListImagesListener } from './listeners/addFirstListImagesListener.ts';
|
||||||
import { addAnyEnqueuedListener } from './listeners/anyEnqueued';
|
import { addAnyEnqueuedListener } from './listeners/anyEnqueued';
|
||||||
|
@ -12,7 +12,7 @@ import { t } from 'i18next';
|
|||||||
import { omit } from 'lodash-es';
|
import { omit } from 'lodash-es';
|
||||||
import { boardsApi } from 'services/api/endpoints/boards';
|
import { boardsApi } from 'services/api/endpoints/boards';
|
||||||
import { startAppListening } from '..';
|
import { startAppListening } from '..';
|
||||||
import { imagesApi } from '../../../../../services/api/endpoints/images';
|
import { imagesApi } from 'services/api/endpoints/images';
|
||||||
|
|
||||||
export const addImageUploadedFulfilledListener = () => {
|
export const addImageUploadedFulfilledListener = () => {
|
||||||
startAppListening({
|
startAppListening({
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
import { imagesApi } from 'services/api/endpoints/images';
|
import { imagesApi } from 'services/api/endpoints/images';
|
||||||
import { startAppListening } from '..';
|
import { startAppListening } from '..';
|
||||||
import { selectionChanged } from '../../../../../features/gallery/store/gallerySlice';
|
import { selectionChanged } from 'features/gallery/store/gallerySlice';
|
||||||
import { ImageDTO } from '../../../../../services/api/types';
|
import { ImageDTO } from 'services/api/types';
|
||||||
|
|
||||||
export const addImagesStarredListener = () => {
|
export const addImagesStarredListener = () => {
|
||||||
startAppListening({
|
startAppListening({
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
import { imagesApi } from 'services/api/endpoints/images';
|
import { imagesApi } from 'services/api/endpoints/images';
|
||||||
import { startAppListening } from '..';
|
import { startAppListening } from '..';
|
||||||
import { selectionChanged } from '../../../../../features/gallery/store/gallerySlice';
|
import { selectionChanged } from 'features/gallery/store/gallerySlice';
|
||||||
import { ImageDTO } from '../../../../../services/api/types';
|
import { ImageDTO } from 'services/api/types';
|
||||||
|
|
||||||
export const addImagesUnstarredListener = () => {
|
export const addImagesUnstarredListener = () => {
|
||||||
startAppListening({
|
startAppListening({
|
||||||
|
@ -20,7 +20,7 @@ import { merge, omit } from 'lodash-es';
|
|||||||
import { PropsWithChildren, memo, useCallback, useMemo } from 'react';
|
import { PropsWithChildren, memo, useCallback, useMemo } from 'react';
|
||||||
import { useTranslation } from 'react-i18next';
|
import { useTranslation } from 'react-i18next';
|
||||||
import { FaExternalLinkAlt } from 'react-icons/fa';
|
import { FaExternalLinkAlt } from 'react-icons/fa';
|
||||||
import { useAppSelector } from '../../../app/store/storeHooks';
|
import { useAppSelector } from 'app/store/storeHooks';
|
||||||
import {
|
import {
|
||||||
Feature,
|
Feature,
|
||||||
OPEN_DELAY,
|
OPEN_DELAY,
|
||||||
|
@ -4,7 +4,7 @@ import IAIButton from 'common/components/IAIButton';
|
|||||||
import { clearCanvasHistory } from 'features/canvas/store/canvasSlice';
|
import { clearCanvasHistory } from 'features/canvas/store/canvasSlice';
|
||||||
import { useTranslation } from 'react-i18next';
|
import { useTranslation } from 'react-i18next';
|
||||||
import { FaTrash } from 'react-icons/fa';
|
import { FaTrash } from 'react-icons/fa';
|
||||||
import { isStagingSelector } from '../store/canvasSelectors';
|
import { isStagingSelector } from 'features/canvas/store/canvasSelectors';
|
||||||
import { memo, useCallback } from 'react';
|
import { memo, useCallback } from 'react';
|
||||||
|
|
||||||
const ClearCanvasHistoryButtonModal = () => {
|
const ClearCanvasHistoryButtonModal = () => {
|
||||||
|
@ -11,18 +11,18 @@ import { KonvaEventObject } from 'konva/lib/Node';
|
|||||||
import { Vector2d } from 'konva/lib/types';
|
import { Vector2d } from 'konva/lib/types';
|
||||||
import { memo, useCallback, useEffect, useRef } from 'react';
|
import { memo, useCallback, useEffect, useRef } from 'react';
|
||||||
import { Layer, Stage } from 'react-konva';
|
import { Layer, Stage } from 'react-konva';
|
||||||
import useCanvasDragMove from '../hooks/useCanvasDragMove';
|
import useCanvasDragMove from 'features/canvas/hooks/useCanvasDragMove';
|
||||||
import useCanvasHotkeys from '../hooks/useCanvasHotkeys';
|
import useCanvasHotkeys from 'features/canvas/hooks/useCanvasHotkeys';
|
||||||
import useCanvasMouseDown from '../hooks/useCanvasMouseDown';
|
import useCanvasMouseDown from 'features/canvas/hooks/useCanvasMouseDown';
|
||||||
import useCanvasMouseMove from '../hooks/useCanvasMouseMove';
|
import useCanvasMouseMove from 'features/canvas/hooks/useCanvasMouseMove';
|
||||||
import useCanvasMouseOut from '../hooks/useCanvasMouseOut';
|
import useCanvasMouseOut from 'features/canvas/hooks/useCanvasMouseOut';
|
||||||
import useCanvasMouseUp from '../hooks/useCanvasMouseUp';
|
import useCanvasMouseUp from 'features/canvas/hooks/useCanvasMouseUp';
|
||||||
import useCanvasWheel from '../hooks/useCanvasZoom';
|
import useCanvasWheel from 'features/canvas/hooks/useCanvasZoom';
|
||||||
import { canvasResized } from '../store/canvasSlice';
|
import { canvasResized } from 'features/canvas/store/canvasSlice';
|
||||||
import {
|
import {
|
||||||
setCanvasBaseLayer,
|
setCanvasBaseLayer,
|
||||||
setCanvasStage,
|
setCanvasStage,
|
||||||
} from '../util/konvaInstanceProvider';
|
} from 'features/canvas/util/konvaInstanceProvider';
|
||||||
import IAICanvasBoundingBoxOverlay from './IAICanvasBoundingBoxOverlay';
|
import IAICanvasBoundingBoxOverlay from './IAICanvasBoundingBoxOverlay';
|
||||||
import IAICanvasGrid from './IAICanvasGrid';
|
import IAICanvasGrid from './IAICanvasGrid';
|
||||||
import IAICanvasIntermediateImage from './IAICanvasIntermediateImage';
|
import IAICanvasIntermediateImage from './IAICanvasIntermediateImage';
|
||||||
|
@ -3,7 +3,7 @@ import { useAppSelector } from 'app/store/storeHooks';
|
|||||||
import { isEqual } from 'lodash-es';
|
import { isEqual } from 'lodash-es';
|
||||||
|
|
||||||
import { Group, Rect } from 'react-konva';
|
import { Group, Rect } from 'react-konva';
|
||||||
import { canvasSelector } from '../store/canvasSelectors';
|
import { canvasSelector } from 'features/canvas/store/canvasSelectors';
|
||||||
import { memo } from 'react';
|
import { memo } from 'react';
|
||||||
|
|
||||||
const selector = createSelector(
|
const selector = createSelector(
|
||||||
|
@ -4,7 +4,7 @@ import { memo } from 'react';
|
|||||||
import { Image } from 'react-konva';
|
import { Image } from 'react-konva';
|
||||||
import { useGetImageDTOQuery } from 'services/api/endpoints/images';
|
import { useGetImageDTOQuery } from 'services/api/endpoints/images';
|
||||||
import useImage from 'use-image';
|
import useImage from 'use-image';
|
||||||
import { CanvasImage } from '../store/canvasTypes';
|
import { CanvasImage } from 'features/canvas/store/canvasTypes';
|
||||||
import IAICanvasImageErrorFallback from './IAICanvasImageErrorFallback';
|
import IAICanvasImageErrorFallback from './IAICanvasImageErrorFallback';
|
||||||
|
|
||||||
type IAICanvasImageProps = {
|
type IAICanvasImageProps = {
|
||||||
|
@ -2,7 +2,7 @@ import { useColorModeValue, useToken } from '@chakra-ui/react';
|
|||||||
import { memo } from 'react';
|
import { memo } from 'react';
|
||||||
import { useTranslation } from 'react-i18next';
|
import { useTranslation } from 'react-i18next';
|
||||||
import { Group, Rect, Text } from 'react-konva';
|
import { Group, Rect, Text } from 'react-konva';
|
||||||
import { CanvasImage } from '../store/canvasTypes';
|
import { CanvasImage } from 'features/canvas/store/canvasTypes';
|
||||||
|
|
||||||
type IAICanvasImageErrorFallbackProps = {
|
type IAICanvasImageErrorFallbackProps = {
|
||||||
canvasImage: CanvasImage;
|
canvasImage: CanvasImage;
|
||||||
|
@ -5,7 +5,7 @@ import { GroupConfig } from 'konva/lib/Group';
|
|||||||
import { isEqual } from 'lodash-es';
|
import { isEqual } from 'lodash-es';
|
||||||
|
|
||||||
import { Group, Line } from 'react-konva';
|
import { Group, Line } from 'react-konva';
|
||||||
import { isCanvasMaskLine } from '../store/canvasTypes';
|
import { isCanvasMaskLine } from 'features/canvas/store/canvasTypes';
|
||||||
import { memo } from 'react';
|
import { memo } from 'react';
|
||||||
|
|
||||||
export const canvasLinesSelector = createSelector(
|
export const canvasLinesSelector = createSelector(
|
||||||
|
@ -10,7 +10,7 @@ import {
|
|||||||
isCanvasBaseLine,
|
isCanvasBaseLine,
|
||||||
isCanvasEraseRect,
|
isCanvasEraseRect,
|
||||||
isCanvasFillRect,
|
isCanvasFillRect,
|
||||||
} from '../store/canvasTypes';
|
} from 'features/canvas/store/canvasTypes';
|
||||||
import IAICanvasImage from './IAICanvasImage';
|
import IAICanvasImage from './IAICanvasImage';
|
||||||
import { memo } from 'react';
|
import { memo } from 'react';
|
||||||
|
|
||||||
|
@ -28,7 +28,7 @@ import {
|
|||||||
FaTimes,
|
FaTimes,
|
||||||
} from 'react-icons/fa';
|
} from 'react-icons/fa';
|
||||||
import { useGetImageDTOQuery } from 'services/api/endpoints/images';
|
import { useGetImageDTOQuery } from 'services/api/endpoints/images';
|
||||||
import { stagingAreaImageSaved } from '../store/actions';
|
import { stagingAreaImageSaved } from 'features/canvas/store/actions';
|
||||||
|
|
||||||
const selector = createSelector(
|
const selector = createSelector(
|
||||||
[canvasSelector],
|
[canvasSelector],
|
||||||
|
@ -5,7 +5,7 @@ import { canvasSelector } from 'features/canvas/store/canvasSelectors';
|
|||||||
import GenerationModeStatusText from 'features/parameters/components/Parameters/Canvas/GenerationModeStatusText';
|
import GenerationModeStatusText from 'features/parameters/components/Parameters/Canvas/GenerationModeStatusText';
|
||||||
import { isEqual } from 'lodash-es';
|
import { isEqual } from 'lodash-es';
|
||||||
import { useTranslation } from 'react-i18next';
|
import { useTranslation } from 'react-i18next';
|
||||||
import roundToHundreth from '../util/roundToHundreth';
|
import roundToHundreth from 'features/canvas/util/roundToHundreth';
|
||||||
import IAICanvasStatusTextCursorPos from './IAICanvasStatusText/IAICanvasStatusTextCursorPos';
|
import IAICanvasStatusTextCursorPos from './IAICanvasStatusText/IAICanvasStatusTextCursorPos';
|
||||||
import { memo } from 'react';
|
import { memo } from 'react';
|
||||||
|
|
||||||
|
@ -9,7 +9,7 @@ import { Circle, Group } from 'react-konva';
|
|||||||
import {
|
import {
|
||||||
COLOR_PICKER_SIZE,
|
COLOR_PICKER_SIZE,
|
||||||
COLOR_PICKER_STROKE_RADIUS,
|
COLOR_PICKER_STROKE_RADIUS,
|
||||||
} from '../util/constants';
|
} from 'features/canvas/util/constants';
|
||||||
import { memo } from 'react';
|
import { memo } from 'react';
|
||||||
|
|
||||||
const canvasBrushPreviewSelector = createSelector(
|
const canvasBrushPreviewSelector = createSelector(
|
||||||
|
@ -22,7 +22,7 @@ import { ChangeEvent, memo, useCallback } from 'react';
|
|||||||
import { useHotkeys } from 'react-hotkeys-hook';
|
import { useHotkeys } from 'react-hotkeys-hook';
|
||||||
import { useTranslation } from 'react-i18next';
|
import { useTranslation } from 'react-i18next';
|
||||||
import { FaWrench } from 'react-icons/fa';
|
import { FaWrench } from 'react-icons/fa';
|
||||||
import ClearCanvasHistoryButtonModal from '../ClearCanvasHistoryButtonModal';
|
import ClearCanvasHistoryButtonModal from 'features/canvas/components/ClearCanvasHistoryButtonModal';
|
||||||
|
|
||||||
export const canvasControlsSelector = createSelector(
|
export const canvasControlsSelector = createSelector(
|
||||||
[canvasSelector],
|
[canvasSelector],
|
||||||
|
@ -17,8 +17,8 @@ import { isEqual } from 'lodash-es';
|
|||||||
|
|
||||||
import { useRef } from 'react';
|
import { useRef } from 'react';
|
||||||
import { useHotkeys } from 'react-hotkeys-hook';
|
import { useHotkeys } from 'react-hotkeys-hook';
|
||||||
import { CanvasTool } from '../store/canvasTypes';
|
import { CanvasTool } from 'features/canvas/store/canvasTypes';
|
||||||
import { getCanvasStage } from '../util/konvaInstanceProvider';
|
import { getCanvasStage } from 'features/canvas/util/konvaInstanceProvider';
|
||||||
|
|
||||||
const selector = createSelector(
|
const selector = createSelector(
|
||||||
[canvasSelector, activeTabNameSelector, isStagingSelector],
|
[canvasSelector, activeTabNameSelector, isStagingSelector],
|
||||||
|
@ -15,7 +15,7 @@ import { KonvaEventObject } from 'konva/lib/Node';
|
|||||||
import { isEqual } from 'lodash-es';
|
import { isEqual } from 'lodash-es';
|
||||||
|
|
||||||
import { MutableRefObject, useCallback } from 'react';
|
import { MutableRefObject, useCallback } from 'react';
|
||||||
import getScaledCursorPosition from '../util/getScaledCursorPosition';
|
import getScaledCursorPosition from 'features/canvas/util/getScaledCursorPosition';
|
||||||
import useColorPicker from './useColorUnderCursor';
|
import useColorPicker from './useColorUnderCursor';
|
||||||
|
|
||||||
const selector = createSelector(
|
const selector = createSelector(
|
||||||
|
@ -14,7 +14,7 @@ import { Vector2d } from 'konva/lib/types';
|
|||||||
import { isEqual } from 'lodash-es';
|
import { isEqual } from 'lodash-es';
|
||||||
|
|
||||||
import { MutableRefObject, useCallback } from 'react';
|
import { MutableRefObject, useCallback } from 'react';
|
||||||
import getScaledCursorPosition from '../util/getScaledCursorPosition';
|
import getScaledCursorPosition from 'features/canvas/util/getScaledCursorPosition';
|
||||||
import useColorPicker from './useColorUnderCursor';
|
import useColorPicker from './useColorUnderCursor';
|
||||||
|
|
||||||
const selector = createSelector(
|
const selector = createSelector(
|
||||||
|
@ -15,7 +15,7 @@ import Konva from 'konva';
|
|||||||
import { isEqual } from 'lodash-es';
|
import { isEqual } from 'lodash-es';
|
||||||
|
|
||||||
import { MutableRefObject, useCallback } from 'react';
|
import { MutableRefObject, useCallback } from 'react';
|
||||||
import getScaledCursorPosition from '../util/getScaledCursorPosition';
|
import getScaledCursorPosition from 'features/canvas/util/getScaledCursorPosition';
|
||||||
|
|
||||||
const selector = createSelector(
|
const selector = createSelector(
|
||||||
[activeTabNameSelector, canvasSelector, isStagingSelector],
|
[activeTabNameSelector, canvasSelector, isStagingSelector],
|
||||||
|
@ -14,7 +14,7 @@ import {
|
|||||||
CANVAS_SCALE_BY,
|
CANVAS_SCALE_BY,
|
||||||
MAX_CANVAS_SCALE,
|
MAX_CANVAS_SCALE,
|
||||||
MIN_CANVAS_SCALE,
|
MIN_CANVAS_SCALE,
|
||||||
} from '../util/constants';
|
} from 'features/canvas/util/constants';
|
||||||
|
|
||||||
const selector = createSelector(
|
const selector = createSelector(
|
||||||
[canvasSelector],
|
[canvasSelector],
|
||||||
|
@ -3,11 +3,11 @@ import Konva from 'konva';
|
|||||||
import {
|
import {
|
||||||
commitColorPickerColor,
|
commitColorPickerColor,
|
||||||
setColorPickerColor,
|
setColorPickerColor,
|
||||||
} from '../store/canvasSlice';
|
} from 'features/canvas/store/canvasSlice';
|
||||||
import {
|
import {
|
||||||
getCanvasBaseLayer,
|
getCanvasBaseLayer,
|
||||||
getCanvasStage,
|
getCanvasStage,
|
||||||
} from '../util/konvaInstanceProvider';
|
} from 'features/canvas/util/konvaInstanceProvider';
|
||||||
|
|
||||||
const useColorPicker = () => {
|
const useColorPicker = () => {
|
||||||
const dispatch = useAppDispatch();
|
const dispatch = useAppDispatch();
|
||||||
|
@ -9,12 +9,12 @@ import { IRect, Vector2d } from 'konva/lib/types';
|
|||||||
import { clamp, cloneDeep } from 'lodash-es';
|
import { clamp, cloneDeep } from 'lodash-es';
|
||||||
import { RgbaColor } from 'react-colorful';
|
import { RgbaColor } from 'react-colorful';
|
||||||
import { ImageDTO } from 'services/api/types';
|
import { ImageDTO } from 'services/api/types';
|
||||||
import calculateCoordinates from '../util/calculateCoordinates';
|
import calculateCoordinates from 'features/canvas/util/calculateCoordinates';
|
||||||
import calculateScale from '../util/calculateScale';
|
import calculateScale from 'features/canvas/util/calculateScale';
|
||||||
import { STAGE_PADDING_PERCENTAGE } from '../util/constants';
|
import { STAGE_PADDING_PERCENTAGE } from 'features/canvas/util/constants';
|
||||||
import floorCoordinates from '../util/floorCoordinates';
|
import floorCoordinates from 'features/canvas/util/floorCoordinates';
|
||||||
import getScaledBoundingBoxDimensions from '../util/getScaledBoundingBoxDimensions';
|
import getScaledBoundingBoxDimensions from 'features/canvas/util/getScaledBoundingBoxDimensions';
|
||||||
import roundDimensionsTo64 from '../util/roundDimensionsTo64';
|
import roundDimensionsTo64 from 'features/canvas/util/roundDimensionsTo64';
|
||||||
import {
|
import {
|
||||||
BoundingBoxScale,
|
BoundingBoxScale,
|
||||||
CanvasBaseLine,
|
CanvasBaseLine,
|
||||||
|
@ -4,7 +4,7 @@ import {
|
|||||||
CanvasLayerState,
|
CanvasLayerState,
|
||||||
Dimensions,
|
Dimensions,
|
||||||
isCanvasMaskLine,
|
isCanvasMaskLine,
|
||||||
} from '../store/canvasTypes';
|
} from 'features/canvas/store/canvasTypes';
|
||||||
import createMaskStage from './createMaskStage';
|
import createMaskStage from './createMaskStage';
|
||||||
import { getCanvasBaseLayer, getCanvasStage } from './konvaInstanceProvider';
|
import { getCanvasBaseLayer, getCanvasStage } from './konvaInstanceProvider';
|
||||||
import { konvaNodeToBlob } from './konvaNodeToBlob';
|
import { konvaNodeToBlob } from './konvaNodeToBlob';
|
||||||
|
@ -2,7 +2,7 @@ import {
|
|||||||
areAnyPixelsBlack,
|
areAnyPixelsBlack,
|
||||||
getImageDataTransparency,
|
getImageDataTransparency,
|
||||||
} from 'common/util/arrayBuffer';
|
} from 'common/util/arrayBuffer';
|
||||||
import { GenerationMode } from '../store/canvasTypes';
|
import { GenerationMode } from 'features/canvas/store/canvasTypes';
|
||||||
|
|
||||||
export const getCanvasGenerationMode = (
|
export const getCanvasGenerationMode = (
|
||||||
baseImageData: ImageData,
|
baseImageData: ImageData,
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
import { roundToMultiple } from 'common/util/roundDownToMultiple';
|
import { roundToMultiple } from 'common/util/roundDownToMultiple';
|
||||||
import { Dimensions } from '../store/canvasTypes';
|
import { Dimensions } from 'features/canvas/store/canvasTypes';
|
||||||
|
|
||||||
const getScaledBoundingBoxDimensions = (dimensions: Dimensions) => {
|
const getScaledBoundingBoxDimensions = (dimensions: Dimensions) => {
|
||||||
const { width, height } = dimensions;
|
const { width, height } = dimensions;
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
import { roundToMultiple } from 'common/util/roundDownToMultiple';
|
import { roundToMultiple } from 'common/util/roundDownToMultiple';
|
||||||
import { Dimensions } from '../store/canvasTypes';
|
import { Dimensions } from 'features/canvas/store/canvasTypes';
|
||||||
|
|
||||||
const roundDimensionsTo64 = (dimensions: Dimensions): Dimensions => {
|
const roundDimensionsTo64 = (dimensions: Dimensions): Dimensions => {
|
||||||
return {
|
return {
|
||||||
|
@ -20,7 +20,10 @@ import {
|
|||||||
useAddImagesToBoardMutation,
|
useAddImagesToBoardMutation,
|
||||||
useRemoveImagesFromBoardMutation,
|
useRemoveImagesFromBoardMutation,
|
||||||
} from 'services/api/endpoints/images';
|
} from 'services/api/endpoints/images';
|
||||||
import { changeBoardReset, isModalOpenChanged } from '../store/slice';
|
import {
|
||||||
|
changeBoardReset,
|
||||||
|
isModalOpenChanged,
|
||||||
|
} from 'features/changeBoardModal/store/slice';
|
||||||
import { useTranslation } from 'react-i18next';
|
import { useTranslation } from 'react-i18next';
|
||||||
|
|
||||||
const selector = createSelector(
|
const selector = createSelector(
|
||||||
|
@ -6,7 +6,7 @@ import {
|
|||||||
controlAdapterDuplicated,
|
controlAdapterDuplicated,
|
||||||
controlAdapterIsEnabledChanged,
|
controlAdapterIsEnabledChanged,
|
||||||
controlAdapterRemoved,
|
controlAdapterRemoved,
|
||||||
} from '../store/controlAdaptersSlice';
|
} from 'features/controlAdapters/store/controlAdaptersSlice';
|
||||||
import ParamControlAdapterModel from './parameters/ParamControlAdapterModel';
|
import ParamControlAdapterModel from './parameters/ParamControlAdapterModel';
|
||||||
import ParamControlAdapterWeight from './parameters/ParamControlAdapterWeight';
|
import ParamControlAdapterWeight from './parameters/ParamControlAdapterWeight';
|
||||||
|
|
||||||
@ -16,8 +16,8 @@ import IAISwitch from 'common/components/IAISwitch';
|
|||||||
import { activeTabNameSelector } from 'features/ui/store/uiSelectors';
|
import { activeTabNameSelector } from 'features/ui/store/uiSelectors';
|
||||||
import { useTranslation } from 'react-i18next';
|
import { useTranslation } from 'react-i18next';
|
||||||
import { useToggle } from 'react-use';
|
import { useToggle } from 'react-use';
|
||||||
import { useControlAdapterIsEnabled } from '../hooks/useControlAdapterIsEnabled';
|
import { useControlAdapterIsEnabled } from 'features/controlAdapters/hooks/useControlAdapterIsEnabled';
|
||||||
import { useControlAdapterType } from '../hooks/useControlAdapterType';
|
import { useControlAdapterType } from 'features/controlAdapters/hooks/useControlAdapterType';
|
||||||
import ControlAdapterImagePreview from './ControlAdapterImagePreview';
|
import ControlAdapterImagePreview from './ControlAdapterImagePreview';
|
||||||
import ControlAdapterProcessorComponent from './ControlAdapterProcessorComponent';
|
import ControlAdapterProcessorComponent from './ControlAdapterProcessorComponent';
|
||||||
import ControlAdapterShouldAutoConfig from './ControlAdapterShouldAutoConfig';
|
import ControlAdapterShouldAutoConfig from './ControlAdapterShouldAutoConfig';
|
||||||
|
@ -22,11 +22,11 @@ import {
|
|||||||
useRemoveImageFromBoardMutation,
|
useRemoveImageFromBoardMutation,
|
||||||
} from 'services/api/endpoints/images';
|
} from 'services/api/endpoints/images';
|
||||||
import { PostUploadAction } from 'services/api/types';
|
import { PostUploadAction } from 'services/api/types';
|
||||||
import IAIDndImageIcon from '../../../common/components/IAIDndImageIcon';
|
import IAIDndImageIcon from 'common/components/IAIDndImageIcon';
|
||||||
import { controlAdapterImageChanged } from '../store/controlAdaptersSlice';
|
import { controlAdapterImageChanged } from 'features/controlAdapters/store/controlAdaptersSlice';
|
||||||
import { useControlAdapterControlImage } from '../hooks/useControlAdapterControlImage';
|
import { useControlAdapterControlImage } from 'features/controlAdapters/hooks/useControlAdapterControlImage';
|
||||||
import { useControlAdapterProcessedControlImage } from '../hooks/useControlAdapterProcessedControlImage';
|
import { useControlAdapterProcessedControlImage } from 'features/controlAdapters/hooks/useControlAdapterProcessedControlImage';
|
||||||
import { useControlAdapterProcessorType } from '../hooks/useControlAdapterProcessorType';
|
import { useControlAdapterProcessorType } from 'features/controlAdapters/hooks/useControlAdapterProcessorType';
|
||||||
|
|
||||||
type Props = {
|
type Props = {
|
||||||
id: string;
|
id: string;
|
||||||
|
@ -12,8 +12,8 @@ import NormalBaeProcessor from './processors/NormalBaeProcessor';
|
|||||||
import OpenposeProcessor from './processors/OpenposeProcessor';
|
import OpenposeProcessor from './processors/OpenposeProcessor';
|
||||||
import PidiProcessor from './processors/PidiProcessor';
|
import PidiProcessor from './processors/PidiProcessor';
|
||||||
import ZoeDepthProcessor from './processors/ZoeDepthProcessor';
|
import ZoeDepthProcessor from './processors/ZoeDepthProcessor';
|
||||||
import { useControlAdapterIsEnabled } from '../hooks/useControlAdapterIsEnabled';
|
import { useControlAdapterIsEnabled } from 'features/controlAdapters/hooks/useControlAdapterIsEnabled';
|
||||||
import { useControlAdapterProcessorNode } from '../hooks/useControlAdapterProcessorNode';
|
import { useControlAdapterProcessorNode } from 'features/controlAdapters/hooks/useControlAdapterProcessorNode';
|
||||||
|
|
||||||
export type Props = {
|
export type Props = {
|
||||||
id: string;
|
id: string;
|
||||||
|
@ -3,8 +3,8 @@ import IAISwitch from 'common/components/IAISwitch';
|
|||||||
import { controlAdapterAutoConfigToggled } from 'features/controlAdapters/store/controlAdaptersSlice';
|
import { controlAdapterAutoConfigToggled } from 'features/controlAdapters/store/controlAdaptersSlice';
|
||||||
import { memo, useCallback } from 'react';
|
import { memo, useCallback } from 'react';
|
||||||
import { useTranslation } from 'react-i18next';
|
import { useTranslation } from 'react-i18next';
|
||||||
import { useControlAdapterIsEnabled } from '../hooks/useControlAdapterIsEnabled';
|
import { useControlAdapterIsEnabled } from 'features/controlAdapters/hooks/useControlAdapterIsEnabled';
|
||||||
import { useControlAdapterShouldAutoConfig } from '../hooks/useControlAdapterShouldAutoConfig';
|
import { useControlAdapterShouldAutoConfig } from 'features/controlAdapters/hooks/useControlAdapterShouldAutoConfig';
|
||||||
import { isNil } from 'lodash-es';
|
import { isNil } from 'lodash-es';
|
||||||
|
|
||||||
type Props = {
|
type Props = {
|
||||||
|
@ -19,7 +19,7 @@ import { useFeatureStatus } from 'features/system/hooks/useFeatureStatus';
|
|||||||
import { Fragment, memo } from 'react';
|
import { Fragment, memo } from 'react';
|
||||||
import { useTranslation } from 'react-i18next';
|
import { useTranslation } from 'react-i18next';
|
||||||
import { FaPlus } from 'react-icons/fa';
|
import { FaPlus } from 'react-icons/fa';
|
||||||
import { useAddControlAdapter } from '../hooks/useAddControlAdapter';
|
import { useAddControlAdapter } from 'features/controlAdapters/hooks/useAddControlAdapter';
|
||||||
|
|
||||||
const selector = createSelector(
|
const selector = createSelector(
|
||||||
[stateSelector],
|
[stateSelector],
|
||||||
|
@ -11,9 +11,9 @@ import { configSelector } from 'features/system/store/configSelectors';
|
|||||||
import { map } from 'lodash-es';
|
import { map } from 'lodash-es';
|
||||||
import { memo, useCallback } from 'react';
|
import { memo, useCallback } from 'react';
|
||||||
import { useTranslation } from 'react-i18next';
|
import { useTranslation } from 'react-i18next';
|
||||||
import { CONTROLNET_PROCESSORS } from '../../store/constants';
|
import { CONTROLNET_PROCESSORS } from 'features/controlAdapters/store/constants';
|
||||||
import { controlAdapterProcessortTypeChanged } from '../../store/controlAdaptersSlice';
|
import { controlAdapterProcessortTypeChanged } from 'features/controlAdapters/store/controlAdaptersSlice';
|
||||||
import { ControlAdapterProcessorType } from '../../store/types';
|
import { ControlAdapterProcessorType } from 'features/controlAdapters/store/types';
|
||||||
|
|
||||||
type Props = {
|
type Props = {
|
||||||
id: string;
|
id: string;
|
||||||
|
@ -3,7 +3,7 @@ import { CONTROLNET_PROCESSORS } from 'features/controlAdapters/store/constants'
|
|||||||
import { RequiredCannyImageProcessorInvocation } from 'features/controlAdapters/store/types';
|
import { RequiredCannyImageProcessorInvocation } from 'features/controlAdapters/store/types';
|
||||||
import { memo, useCallback } from 'react';
|
import { memo, useCallback } from 'react';
|
||||||
import { useTranslation } from 'react-i18next';
|
import { useTranslation } from 'react-i18next';
|
||||||
import { useProcessorNodeChanged } from '../hooks/useProcessorNodeChanged';
|
import { useProcessorNodeChanged } from 'features/controlAdapters/components/hooks/useProcessorNodeChanged';
|
||||||
import ProcessorWrapper from './common/ProcessorWrapper';
|
import ProcessorWrapper from './common/ProcessorWrapper';
|
||||||
|
|
||||||
const DEFAULTS = CONTROLNET_PROCESSORS.canny_image_processor
|
const DEFAULTS = CONTROLNET_PROCESSORS.canny_image_processor
|
||||||
|
@ -3,7 +3,7 @@ import { CONTROLNET_PROCESSORS } from 'features/controlAdapters/store/constants'
|
|||||||
import { RequiredColorMapImageProcessorInvocation } from 'features/controlAdapters/store/types';
|
import { RequiredColorMapImageProcessorInvocation } from 'features/controlAdapters/store/types';
|
||||||
import { memo, useCallback } from 'react';
|
import { memo, useCallback } from 'react';
|
||||||
import { useTranslation } from 'react-i18next';
|
import { useTranslation } from 'react-i18next';
|
||||||
import { useProcessorNodeChanged } from '../hooks/useProcessorNodeChanged';
|
import { useProcessorNodeChanged } from 'features/controlAdapters/components/hooks/useProcessorNodeChanged';
|
||||||
import ProcessorWrapper from './common/ProcessorWrapper';
|
import ProcessorWrapper from './common/ProcessorWrapper';
|
||||||
|
|
||||||
const DEFAULTS = CONTROLNET_PROCESSORS.color_map_image_processor
|
const DEFAULTS = CONTROLNET_PROCESSORS.color_map_image_processor
|
||||||
|
@ -3,7 +3,7 @@ import { CONTROLNET_PROCESSORS } from 'features/controlAdapters/store/constants'
|
|||||||
import { RequiredContentShuffleImageProcessorInvocation } from 'features/controlAdapters/store/types';
|
import { RequiredContentShuffleImageProcessorInvocation } from 'features/controlAdapters/store/types';
|
||||||
import { memo, useCallback } from 'react';
|
import { memo, useCallback } from 'react';
|
||||||
import { useTranslation } from 'react-i18next';
|
import { useTranslation } from 'react-i18next';
|
||||||
import { useProcessorNodeChanged } from '../hooks/useProcessorNodeChanged';
|
import { useProcessorNodeChanged } from 'features/controlAdapters/components/hooks/useProcessorNodeChanged';
|
||||||
import ProcessorWrapper from './common/ProcessorWrapper';
|
import ProcessorWrapper from './common/ProcessorWrapper';
|
||||||
|
|
||||||
const DEFAULTS = CONTROLNET_PROCESSORS.content_shuffle_image_processor
|
const DEFAULTS = CONTROLNET_PROCESSORS.content_shuffle_image_processor
|
||||||
|
@ -4,7 +4,7 @@ import { CONTROLNET_PROCESSORS } from 'features/controlAdapters/store/constants'
|
|||||||
import { RequiredHedImageProcessorInvocation } from 'features/controlAdapters/store/types';
|
import { RequiredHedImageProcessorInvocation } from 'features/controlAdapters/store/types';
|
||||||
import { ChangeEvent, memo, useCallback } from 'react';
|
import { ChangeEvent, memo, useCallback } from 'react';
|
||||||
import { useTranslation } from 'react-i18next';
|
import { useTranslation } from 'react-i18next';
|
||||||
import { useProcessorNodeChanged } from '../hooks/useProcessorNodeChanged';
|
import { useProcessorNodeChanged } from 'features/controlAdapters/components/hooks/useProcessorNodeChanged';
|
||||||
import ProcessorWrapper from './common/ProcessorWrapper';
|
import ProcessorWrapper from './common/ProcessorWrapper';
|
||||||
|
|
||||||
const DEFAULTS = CONTROLNET_PROCESSORS.hed_image_processor
|
const DEFAULTS = CONTROLNET_PROCESSORS.hed_image_processor
|
||||||
|
@ -3,7 +3,7 @@ import { CONTROLNET_PROCESSORS } from 'features/controlAdapters/store/constants'
|
|||||||
import { RequiredLineartAnimeImageProcessorInvocation } from 'features/controlAdapters/store/types';
|
import { RequiredLineartAnimeImageProcessorInvocation } from 'features/controlAdapters/store/types';
|
||||||
import { memo, useCallback } from 'react';
|
import { memo, useCallback } from 'react';
|
||||||
import { useTranslation } from 'react-i18next';
|
import { useTranslation } from 'react-i18next';
|
||||||
import { useProcessorNodeChanged } from '../hooks/useProcessorNodeChanged';
|
import { useProcessorNodeChanged } from 'features/controlAdapters/components/hooks/useProcessorNodeChanged';
|
||||||
import ProcessorWrapper from './common/ProcessorWrapper';
|
import ProcessorWrapper from './common/ProcessorWrapper';
|
||||||
|
|
||||||
const DEFAULTS = CONTROLNET_PROCESSORS.lineart_anime_image_processor
|
const DEFAULTS = CONTROLNET_PROCESSORS.lineart_anime_image_processor
|
||||||
|
@ -4,7 +4,7 @@ import { CONTROLNET_PROCESSORS } from 'features/controlAdapters/store/constants'
|
|||||||
import { RequiredLineartImageProcessorInvocation } from 'features/controlAdapters/store/types';
|
import { RequiredLineartImageProcessorInvocation } from 'features/controlAdapters/store/types';
|
||||||
import { ChangeEvent, memo, useCallback } from 'react';
|
import { ChangeEvent, memo, useCallback } from 'react';
|
||||||
import { useTranslation } from 'react-i18next';
|
import { useTranslation } from 'react-i18next';
|
||||||
import { useProcessorNodeChanged } from '../hooks/useProcessorNodeChanged';
|
import { useProcessorNodeChanged } from 'features/controlAdapters/components/hooks/useProcessorNodeChanged';
|
||||||
import ProcessorWrapper from './common/ProcessorWrapper';
|
import ProcessorWrapper from './common/ProcessorWrapper';
|
||||||
|
|
||||||
const DEFAULTS = CONTROLNET_PROCESSORS.lineart_image_processor
|
const DEFAULTS = CONTROLNET_PROCESSORS.lineart_image_processor
|
||||||
|
@ -3,7 +3,7 @@ import { CONTROLNET_PROCESSORS } from 'features/controlAdapters/store/constants'
|
|||||||
import { RequiredMediapipeFaceProcessorInvocation } from 'features/controlAdapters/store/types';
|
import { RequiredMediapipeFaceProcessorInvocation } from 'features/controlAdapters/store/types';
|
||||||
import { memo, useCallback } from 'react';
|
import { memo, useCallback } from 'react';
|
||||||
import { useTranslation } from 'react-i18next';
|
import { useTranslation } from 'react-i18next';
|
||||||
import { useProcessorNodeChanged } from '../hooks/useProcessorNodeChanged';
|
import { useProcessorNodeChanged } from 'features/controlAdapters/components/hooks/useProcessorNodeChanged';
|
||||||
import ProcessorWrapper from './common/ProcessorWrapper';
|
import ProcessorWrapper from './common/ProcessorWrapper';
|
||||||
|
|
||||||
const DEFAULTS = CONTROLNET_PROCESSORS.mediapipe_face_processor
|
const DEFAULTS = CONTROLNET_PROCESSORS.mediapipe_face_processor
|
||||||
|
@ -3,7 +3,7 @@ import { CONTROLNET_PROCESSORS } from 'features/controlAdapters/store/constants'
|
|||||||
import { RequiredMidasDepthImageProcessorInvocation } from 'features/controlAdapters/store/types';
|
import { RequiredMidasDepthImageProcessorInvocation } from 'features/controlAdapters/store/types';
|
||||||
import { memo, useCallback } from 'react';
|
import { memo, useCallback } from 'react';
|
||||||
import { useTranslation } from 'react-i18next';
|
import { useTranslation } from 'react-i18next';
|
||||||
import { useProcessorNodeChanged } from '../hooks/useProcessorNodeChanged';
|
import { useProcessorNodeChanged } from 'features/controlAdapters/components/hooks/useProcessorNodeChanged';
|
||||||
import ProcessorWrapper from './common/ProcessorWrapper';
|
import ProcessorWrapper from './common/ProcessorWrapper';
|
||||||
|
|
||||||
const DEFAULTS = CONTROLNET_PROCESSORS.midas_depth_image_processor
|
const DEFAULTS = CONTROLNET_PROCESSORS.midas_depth_image_processor
|
||||||
|
@ -3,7 +3,7 @@ import { CONTROLNET_PROCESSORS } from 'features/controlAdapters/store/constants'
|
|||||||
import { RequiredMlsdImageProcessorInvocation } from 'features/controlAdapters/store/types';
|
import { RequiredMlsdImageProcessorInvocation } from 'features/controlAdapters/store/types';
|
||||||
import { memo, useCallback } from 'react';
|
import { memo, useCallback } from 'react';
|
||||||
import { useTranslation } from 'react-i18next';
|
import { useTranslation } from 'react-i18next';
|
||||||
import { useProcessorNodeChanged } from '../hooks/useProcessorNodeChanged';
|
import { useProcessorNodeChanged } from 'features/controlAdapters/components/hooks/useProcessorNodeChanged';
|
||||||
import ProcessorWrapper from './common/ProcessorWrapper';
|
import ProcessorWrapper from './common/ProcessorWrapper';
|
||||||
|
|
||||||
const DEFAULTS = CONTROLNET_PROCESSORS.mlsd_image_processor
|
const DEFAULTS = CONTROLNET_PROCESSORS.mlsd_image_processor
|
||||||
|
@ -3,7 +3,7 @@ import { CONTROLNET_PROCESSORS } from 'features/controlAdapters/store/constants'
|
|||||||
import { RequiredNormalbaeImageProcessorInvocation } from 'features/controlAdapters/store/types';
|
import { RequiredNormalbaeImageProcessorInvocation } from 'features/controlAdapters/store/types';
|
||||||
import { memo, useCallback } from 'react';
|
import { memo, useCallback } from 'react';
|
||||||
import { useTranslation } from 'react-i18next';
|
import { useTranslation } from 'react-i18next';
|
||||||
import { useProcessorNodeChanged } from '../hooks/useProcessorNodeChanged';
|
import { useProcessorNodeChanged } from 'features/controlAdapters/components/hooks/useProcessorNodeChanged';
|
||||||
import ProcessorWrapper from './common/ProcessorWrapper';
|
import ProcessorWrapper from './common/ProcessorWrapper';
|
||||||
|
|
||||||
const DEFAULTS = CONTROLNET_PROCESSORS.normalbae_image_processor
|
const DEFAULTS = CONTROLNET_PROCESSORS.normalbae_image_processor
|
||||||
|
@ -4,7 +4,7 @@ import { CONTROLNET_PROCESSORS } from 'features/controlAdapters/store/constants'
|
|||||||
import { RequiredOpenposeImageProcessorInvocation } from 'features/controlAdapters/store/types';
|
import { RequiredOpenposeImageProcessorInvocation } from 'features/controlAdapters/store/types';
|
||||||
import { ChangeEvent, memo, useCallback } from 'react';
|
import { ChangeEvent, memo, useCallback } from 'react';
|
||||||
import { useTranslation } from 'react-i18next';
|
import { useTranslation } from 'react-i18next';
|
||||||
import { useProcessorNodeChanged } from '../hooks/useProcessorNodeChanged';
|
import { useProcessorNodeChanged } from 'features/controlAdapters/components/hooks/useProcessorNodeChanged';
|
||||||
import ProcessorWrapper from './common/ProcessorWrapper';
|
import ProcessorWrapper from './common/ProcessorWrapper';
|
||||||
|
|
||||||
const DEFAULTS = CONTROLNET_PROCESSORS.openpose_image_processor
|
const DEFAULTS = CONTROLNET_PROCESSORS.openpose_image_processor
|
||||||
|
@ -4,7 +4,7 @@ import { CONTROLNET_PROCESSORS } from 'features/controlAdapters/store/constants'
|
|||||||
import { RequiredPidiImageProcessorInvocation } from 'features/controlAdapters/store/types';
|
import { RequiredPidiImageProcessorInvocation } from 'features/controlAdapters/store/types';
|
||||||
import { ChangeEvent, memo, useCallback } from 'react';
|
import { ChangeEvent, memo, useCallback } from 'react';
|
||||||
import { useTranslation } from 'react-i18next';
|
import { useTranslation } from 'react-i18next';
|
||||||
import { useProcessorNodeChanged } from '../hooks/useProcessorNodeChanged';
|
import { useProcessorNodeChanged } from 'features/controlAdapters/components/hooks/useProcessorNodeChanged';
|
||||||
import ProcessorWrapper from './common/ProcessorWrapper';
|
import ProcessorWrapper from './common/ProcessorWrapper';
|
||||||
|
|
||||||
const DEFAULTS = CONTROLNET_PROCESSORS.pidi_image_processor
|
const DEFAULTS = CONTROLNET_PROCESSORS.pidi_image_processor
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
import { useAppDispatch, useAppSelector } from 'app/store/storeHooks';
|
import { useAppDispatch, useAppSelector } from 'app/store/storeHooks';
|
||||||
import { controlAdapterAdded } from 'features/controlAdapters/store/controlAdaptersSlice';
|
import { controlAdapterAdded } from 'features/controlAdapters/store/controlAdaptersSlice';
|
||||||
import { useCallback, useMemo } from 'react';
|
import { useCallback, useMemo } from 'react';
|
||||||
import { ControlAdapterType } from '../store/types';
|
import { ControlAdapterType } from 'features/controlAdapters/store/types';
|
||||||
import { useControlAdapterModels } from './useControlAdapterModels';
|
import { useControlAdapterModels } from './useControlAdapterModels';
|
||||||
|
|
||||||
export const useAddControlAdapter = (type: ControlAdapterType) => {
|
export const useAddControlAdapter = (type: ControlAdapterType) => {
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
import { createSelector } from '@reduxjs/toolkit';
|
import { createSelector } from '@reduxjs/toolkit';
|
||||||
import { stateSelector } from 'app/store/store';
|
import { stateSelector } from 'app/store/store';
|
||||||
import { useMemo } from 'react';
|
import { useMemo } from 'react';
|
||||||
import { selectControlAdapterById } from '../store/controlAdaptersSlice';
|
import { selectControlAdapterById } from 'features/controlAdapters/store/controlAdaptersSlice';
|
||||||
import { useAppSelector } from 'app/store/storeHooks';
|
import { useAppSelector } from 'app/store/storeHooks';
|
||||||
import { defaultSelectorOptions } from 'app/store/util/defaultMemoizeOptions';
|
import { defaultSelectorOptions } from 'app/store/util/defaultMemoizeOptions';
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
import { createSelector } from '@reduxjs/toolkit';
|
import { createSelector } from '@reduxjs/toolkit';
|
||||||
import { stateSelector } from 'app/store/store';
|
import { stateSelector } from 'app/store/store';
|
||||||
import { useMemo } from 'react';
|
import { useMemo } from 'react';
|
||||||
import { selectControlAdapterById } from '../store/controlAdaptersSlice';
|
import { selectControlAdapterById } from 'features/controlAdapters/store/controlAdaptersSlice';
|
||||||
import { useAppSelector } from 'app/store/storeHooks';
|
import { useAppSelector } from 'app/store/storeHooks';
|
||||||
import { defaultSelectorOptions } from 'app/store/util/defaultMemoizeOptions';
|
import { defaultSelectorOptions } from 'app/store/util/defaultMemoizeOptions';
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
import { createSelector } from '@reduxjs/toolkit';
|
import { createSelector } from '@reduxjs/toolkit';
|
||||||
import { stateSelector } from 'app/store/store';
|
import { stateSelector } from 'app/store/store';
|
||||||
import { useMemo } from 'react';
|
import { useMemo } from 'react';
|
||||||
import { selectControlAdapterById } from '../store/controlAdaptersSlice';
|
import { selectControlAdapterById } from 'features/controlAdapters/store/controlAdaptersSlice';
|
||||||
import { useAppSelector } from 'app/store/storeHooks';
|
import { useAppSelector } from 'app/store/storeHooks';
|
||||||
import { defaultSelectorOptions } from 'app/store/util/defaultMemoizeOptions';
|
import { defaultSelectorOptions } from 'app/store/util/defaultMemoizeOptions';
|
||||||
|
|
||||||
|
@ -1,10 +1,10 @@
|
|||||||
import { createSelector } from '@reduxjs/toolkit';
|
import { createSelector } from '@reduxjs/toolkit';
|
||||||
import { stateSelector } from 'app/store/store';
|
import { stateSelector } from 'app/store/store';
|
||||||
import { useMemo } from 'react';
|
import { useMemo } from 'react';
|
||||||
import { selectControlAdapterById } from '../store/controlAdaptersSlice';
|
import { selectControlAdapterById } from 'features/controlAdapters/store/controlAdaptersSlice';
|
||||||
import { useAppSelector } from 'app/store/storeHooks';
|
import { useAppSelector } from 'app/store/storeHooks';
|
||||||
import { defaultSelectorOptions } from 'app/store/util/defaultMemoizeOptions';
|
import { defaultSelectorOptions } from 'app/store/util/defaultMemoizeOptions';
|
||||||
import { isControlNet } from '../store/types';
|
import { isControlNet } from 'features/controlAdapters/store/types';
|
||||||
|
|
||||||
export const useControlAdapterControlMode = (id: string) => {
|
export const useControlAdapterControlMode = (id: string) => {
|
||||||
const selector = useMemo(
|
const selector = useMemo(
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
import { createSelector } from '@reduxjs/toolkit';
|
import { createSelector } from '@reduxjs/toolkit';
|
||||||
import { stateSelector } from 'app/store/store';
|
import { stateSelector } from 'app/store/store';
|
||||||
import { useMemo } from 'react';
|
import { useMemo } from 'react';
|
||||||
import { selectControlAdapterById } from '../store/controlAdaptersSlice';
|
import { selectControlAdapterById } from 'features/controlAdapters/store/controlAdaptersSlice';
|
||||||
import { useAppSelector } from 'app/store/storeHooks';
|
import { useAppSelector } from 'app/store/storeHooks';
|
||||||
import { defaultSelectorOptions } from 'app/store/util/defaultMemoizeOptions';
|
import { defaultSelectorOptions } from 'app/store/util/defaultMemoizeOptions';
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
import { createSelector } from '@reduxjs/toolkit';
|
import { createSelector } from '@reduxjs/toolkit';
|
||||||
import { stateSelector } from 'app/store/store';
|
import { stateSelector } from 'app/store/store';
|
||||||
import { useMemo } from 'react';
|
import { useMemo } from 'react';
|
||||||
import { selectControlAdapterById } from '../store/controlAdaptersSlice';
|
import { selectControlAdapterById } from 'features/controlAdapters/store/controlAdaptersSlice';
|
||||||
import { useAppSelector } from 'app/store/storeHooks';
|
import { useAppSelector } from 'app/store/storeHooks';
|
||||||
import { defaultSelectorOptions } from 'app/store/util/defaultMemoizeOptions';
|
import { defaultSelectorOptions } from 'app/store/util/defaultMemoizeOptions';
|
||||||
|
|
||||||
|
@ -7,7 +7,7 @@ import {
|
|||||||
useGetIPAdapterModelsQuery,
|
useGetIPAdapterModelsQuery,
|
||||||
useGetT2IAdapterModelsQuery,
|
useGetT2IAdapterModelsQuery,
|
||||||
} from 'services/api/endpoints/models';
|
} from 'services/api/endpoints/models';
|
||||||
import { ControlAdapterType } from '../store/types';
|
import { ControlAdapterType } from 'features/controlAdapters/store/types';
|
||||||
|
|
||||||
export const useControlAdapterModels = (type?: ControlAdapterType) => {
|
export const useControlAdapterModels = (type?: ControlAdapterType) => {
|
||||||
const { data: controlNetModelsData } = useGetControlNetModelsQuery();
|
const { data: controlNetModelsData } = useGetControlNetModelsQuery();
|
||||||
|
@ -1,10 +1,10 @@
|
|||||||
import { createSelector } from '@reduxjs/toolkit';
|
import { createSelector } from '@reduxjs/toolkit';
|
||||||
import { stateSelector } from 'app/store/store';
|
import { stateSelector } from 'app/store/store';
|
||||||
import { useMemo } from 'react';
|
import { useMemo } from 'react';
|
||||||
import { selectControlAdapterById } from '../store/controlAdaptersSlice';
|
import { selectControlAdapterById } from 'features/controlAdapters/store/controlAdaptersSlice';
|
||||||
import { useAppSelector } from 'app/store/storeHooks';
|
import { useAppSelector } from 'app/store/storeHooks';
|
||||||
import { defaultSelectorOptions } from 'app/store/util/defaultMemoizeOptions';
|
import { defaultSelectorOptions } from 'app/store/util/defaultMemoizeOptions';
|
||||||
import { isControlNetOrT2IAdapter } from '../store/types';
|
import { isControlNetOrT2IAdapter } from 'features/controlAdapters/store/types';
|
||||||
|
|
||||||
export const useControlAdapterProcessedControlImage = (id: string) => {
|
export const useControlAdapterProcessedControlImage = (id: string) => {
|
||||||
const selector = useMemo(
|
const selector = useMemo(
|
||||||
|
@ -1,10 +1,10 @@
|
|||||||
import { createSelector } from '@reduxjs/toolkit';
|
import { createSelector } from '@reduxjs/toolkit';
|
||||||
import { stateSelector } from 'app/store/store';
|
import { stateSelector } from 'app/store/store';
|
||||||
import { useMemo } from 'react';
|
import { useMemo } from 'react';
|
||||||
import { selectControlAdapterById } from '../store/controlAdaptersSlice';
|
import { selectControlAdapterById } from 'features/controlAdapters/store/controlAdaptersSlice';
|
||||||
import { useAppSelector } from 'app/store/storeHooks';
|
import { useAppSelector } from 'app/store/storeHooks';
|
||||||
import { defaultSelectorOptions } from 'app/store/util/defaultMemoizeOptions';
|
import { defaultSelectorOptions } from 'app/store/util/defaultMemoizeOptions';
|
||||||
import { isControlNetOrT2IAdapter } from '../store/types';
|
import { isControlNetOrT2IAdapter } from 'features/controlAdapters/store/types';
|
||||||
|
|
||||||
export const useControlAdapterProcessorNode = (id: string) => {
|
export const useControlAdapterProcessorNode = (id: string) => {
|
||||||
const selector = useMemo(
|
const selector = useMemo(
|
||||||
|
@ -1,10 +1,10 @@
|
|||||||
import { createSelector } from '@reduxjs/toolkit';
|
import { createSelector } from '@reduxjs/toolkit';
|
||||||
import { stateSelector } from 'app/store/store';
|
import { stateSelector } from 'app/store/store';
|
||||||
import { useMemo } from 'react';
|
import { useMemo } from 'react';
|
||||||
import { selectControlAdapterById } from '../store/controlAdaptersSlice';
|
import { selectControlAdapterById } from 'features/controlAdapters/store/controlAdaptersSlice';
|
||||||
import { useAppSelector } from 'app/store/storeHooks';
|
import { useAppSelector } from 'app/store/storeHooks';
|
||||||
import { defaultSelectorOptions } from 'app/store/util/defaultMemoizeOptions';
|
import { defaultSelectorOptions } from 'app/store/util/defaultMemoizeOptions';
|
||||||
import { isControlNetOrT2IAdapter } from '../store/types';
|
import { isControlNetOrT2IAdapter } from 'features/controlAdapters/store/types';
|
||||||
|
|
||||||
export const useControlAdapterProcessorType = (id: string) => {
|
export const useControlAdapterProcessorType = (id: string) => {
|
||||||
const selector = useMemo(
|
const selector = useMemo(
|
||||||
|
@ -3,8 +3,8 @@ import { stateSelector } from 'app/store/store';
|
|||||||
import { useAppSelector } from 'app/store/storeHooks';
|
import { useAppSelector } from 'app/store/storeHooks';
|
||||||
import { defaultSelectorOptions } from 'app/store/util/defaultMemoizeOptions';
|
import { defaultSelectorOptions } from 'app/store/util/defaultMemoizeOptions';
|
||||||
import { useMemo } from 'react';
|
import { useMemo } from 'react';
|
||||||
import { selectControlAdapterById } from '../store/controlAdaptersSlice';
|
import { selectControlAdapterById } from 'features/controlAdapters/store/controlAdaptersSlice';
|
||||||
import { isControlNetOrT2IAdapter } from '../store/types';
|
import { isControlNetOrT2IAdapter } from 'features/controlAdapters/store/types';
|
||||||
|
|
||||||
export const useControlAdapterResizeMode = (id: string) => {
|
export const useControlAdapterResizeMode = (id: string) => {
|
||||||
const selector = useMemo(
|
const selector = useMemo(
|
||||||
|
@ -3,8 +3,8 @@ import { stateSelector } from 'app/store/store';
|
|||||||
import { useAppSelector } from 'app/store/storeHooks';
|
import { useAppSelector } from 'app/store/storeHooks';
|
||||||
import { defaultSelectorOptions } from 'app/store/util/defaultMemoizeOptions';
|
import { defaultSelectorOptions } from 'app/store/util/defaultMemoizeOptions';
|
||||||
import { useMemo } from 'react';
|
import { useMemo } from 'react';
|
||||||
import { selectControlAdapterById } from '../store/controlAdaptersSlice';
|
import { selectControlAdapterById } from 'features/controlAdapters/store/controlAdaptersSlice';
|
||||||
import { isControlNetOrT2IAdapter } from '../store/types';
|
import { isControlNetOrT2IAdapter } from 'features/controlAdapters/store/types';
|
||||||
|
|
||||||
export const useControlAdapterShouldAutoConfig = (id: string) => {
|
export const useControlAdapterShouldAutoConfig = (id: string) => {
|
||||||
const selector = useMemo(
|
const selector = useMemo(
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
import { createSelector } from '@reduxjs/toolkit';
|
import { createSelector } from '@reduxjs/toolkit';
|
||||||
import { stateSelector } from 'app/store/store';
|
import { stateSelector } from 'app/store/store';
|
||||||
import { useMemo } from 'react';
|
import { useMemo } from 'react';
|
||||||
import { selectControlAdapterById } from '../store/controlAdaptersSlice';
|
import { selectControlAdapterById } from 'features/controlAdapters/store/controlAdaptersSlice';
|
||||||
import { useAppSelector } from 'app/store/storeHooks';
|
import { useAppSelector } from 'app/store/storeHooks';
|
||||||
import { defaultSelectorOptions } from 'app/store/util/defaultMemoizeOptions';
|
import { defaultSelectorOptions } from 'app/store/util/defaultMemoizeOptions';
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
import { createSelector } from '@reduxjs/toolkit';
|
import { createSelector } from '@reduxjs/toolkit';
|
||||||
import { stateSelector } from 'app/store/store';
|
import { stateSelector } from 'app/store/store';
|
||||||
import { useMemo } from 'react';
|
import { useMemo } from 'react';
|
||||||
import { selectControlAdapterById } from '../store/controlAdaptersSlice';
|
import { selectControlAdapterById } from 'features/controlAdapters/store/controlAdaptersSlice';
|
||||||
import { useAppSelector } from 'app/store/storeHooks';
|
import { useAppSelector } from 'app/store/storeHooks';
|
||||||
import { defaultSelectorOptions } from 'app/store/util/defaultMemoizeOptions';
|
import { defaultSelectorOptions } from 'app/store/util/defaultMemoizeOptions';
|
||||||
|
|
||||||
|
@ -13,7 +13,7 @@ import {
|
|||||||
import { cloneDeep, merge, uniq } from 'lodash-es';
|
import { cloneDeep, merge, uniq } from 'lodash-es';
|
||||||
import { appSocketInvocationError } from 'services/events/actions';
|
import { appSocketInvocationError } from 'services/events/actions';
|
||||||
import { v4 as uuidv4 } from 'uuid';
|
import { v4 as uuidv4 } from 'uuid';
|
||||||
import { buildControlAdapter } from '../util/buildControlAdapter';
|
import { buildControlAdapter } from 'features/controlAdapters/util/buildControlAdapter';
|
||||||
import { controlAdapterImageProcessed } from './actions';
|
import { controlAdapterImageProcessed } from './actions';
|
||||||
import {
|
import {
|
||||||
CONTROLNET_MODEL_DEFAULT_PROCESSORS as CONTROLADAPTER_MODEL_DEFAULT_PROCESSORS,
|
CONTROLNET_MODEL_DEFAULT_PROCESSORS as CONTROLADAPTER_MODEL_DEFAULT_PROCESSORS,
|
||||||
|
@ -6,8 +6,8 @@ import {
|
|||||||
IPAdapterConfig,
|
IPAdapterConfig,
|
||||||
RequiredCannyImageProcessorInvocation,
|
RequiredCannyImageProcessorInvocation,
|
||||||
T2IAdapterConfig,
|
T2IAdapterConfig,
|
||||||
} from '../store/types';
|
} from 'features/controlAdapters/store/types';
|
||||||
import { CONTROLNET_PROCESSORS } from '../store/constants';
|
import { CONTROLNET_PROCESSORS } from 'features/controlAdapters/store/constants';
|
||||||
|
|
||||||
export const initialControlNet: Omit<ControlNetConfig, 'id'> = {
|
export const initialControlNet: Omit<ControlNetConfig, 'id'> = {
|
||||||
type: 'controlnet',
|
type: 'controlnet',
|
||||||
|
@ -19,10 +19,16 @@ import { setShouldConfirmOnDelete } from 'features/system/store/systemSlice';
|
|||||||
import { some } from 'lodash-es';
|
import { some } from 'lodash-es';
|
||||||
import { ChangeEvent, memo, useCallback, useRef } from 'react';
|
import { ChangeEvent, memo, useCallback, useRef } from 'react';
|
||||||
import { useTranslation } from 'react-i18next';
|
import { useTranslation } from 'react-i18next';
|
||||||
import { imageDeletionConfirmed } from '../store/actions';
|
import { imageDeletionConfirmed } from 'features/deleteImageModal/store/actions';
|
||||||
import { getImageUsage, selectImageUsage } from '../store/selectors';
|
import {
|
||||||
import { imageDeletionCanceled, isModalOpenChanged } from '../store/slice';
|
getImageUsage,
|
||||||
import { ImageUsage } from '../store/types';
|
selectImageUsage,
|
||||||
|
} from 'features/deleteImageModal/store/selectors';
|
||||||
|
import {
|
||||||
|
imageDeletionCanceled,
|
||||||
|
isModalOpenChanged,
|
||||||
|
} from 'features/deleteImageModal/store/slice';
|
||||||
|
import { ImageUsage } from 'features/deleteImageModal/store/types';
|
||||||
import ImageUsageMessage from './ImageUsageMessage';
|
import ImageUsageMessage from './ImageUsageMessage';
|
||||||
|
|
||||||
const selector = createSelector(
|
const selector = createSelector(
|
||||||
|
@ -2,7 +2,7 @@ import { ListItem, Text, UnorderedList } from '@chakra-ui/react';
|
|||||||
import { some } from 'lodash-es';
|
import { some } from 'lodash-es';
|
||||||
import { memo } from 'react';
|
import { memo } from 'react';
|
||||||
import { useTranslation } from 'react-i18next';
|
import { useTranslation } from 'react-i18next';
|
||||||
import { ImageUsage } from '../store/types';
|
import { ImageUsage } from 'features/deleteImageModal/store/types';
|
||||||
|
|
||||||
type Props = {
|
type Props = {
|
||||||
imageUsage?: ImageUsage;
|
imageUsage?: ImageUsage;
|
||||||
|
@ -11,9 +11,13 @@ import { useAppDispatch } from 'app/store/storeHooks';
|
|||||||
import { parseify } from 'common/util/serialize';
|
import { parseify } from 'common/util/serialize';
|
||||||
import { AnimatePresence, motion } from 'framer-motion';
|
import { AnimatePresence, motion } from 'framer-motion';
|
||||||
import { PropsWithChildren, memo, useCallback, useState } from 'react';
|
import { PropsWithChildren, memo, useCallback, useState } from 'react';
|
||||||
import { useScaledModifer } from '../hooks/useScaledCenteredModifer';
|
import { useScaledModifer } from 'features/dnd/hooks/useScaledCenteredModifer';
|
||||||
import { DragEndEvent, DragStartEvent, TypesafeDraggableData } from '../types';
|
import {
|
||||||
import { customPointerWithin } from '../util/customPointerWithin';
|
DragEndEvent,
|
||||||
|
DragStartEvent,
|
||||||
|
TypesafeDraggableData,
|
||||||
|
} from 'features/dnd/types';
|
||||||
|
import { customPointerWithin } from 'features/dnd/util/customPointerWithin';
|
||||||
import { DndContextTypesafe } from './DndContextTypesafe';
|
import { DndContextTypesafe } from './DndContextTypesafe';
|
||||||
import DragPreview from './DragPreview';
|
import DragPreview from './DragPreview';
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
import { DndContext } from '@dnd-kit/core';
|
import { DndContext } from '@dnd-kit/core';
|
||||||
import { DndContextTypesafeProps } from '../types';
|
import { DndContextTypesafeProps } from 'features/dnd/types';
|
||||||
|
|
||||||
export function DndContextTypesafe(props: DndContextTypesafeProps) {
|
export function DndContextTypesafe(props: DndContextTypesafeProps) {
|
||||||
return <DndContext {...props} />;
|
return <DndContext {...props} />;
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
import { Box, ChakraProps, Flex, Heading, Image, Text } from '@chakra-ui/react';
|
import { Box, ChakraProps, Flex, Heading, Image, Text } from '@chakra-ui/react';
|
||||||
import { memo } from 'react';
|
import { memo } from 'react';
|
||||||
import { TypesafeDraggableData } from '../types';
|
import { TypesafeDraggableData } from 'features/dnd/types';
|
||||||
import { useTranslation } from 'react-i18next';
|
import { useTranslation } from 'react-i18next';
|
||||||
|
|
||||||
type OverlayDragImageProps = {
|
type OverlayDragImageProps = {
|
||||||
|
@ -4,7 +4,7 @@ import {
|
|||||||
UseDraggableTypesafeReturnValue,
|
UseDraggableTypesafeReturnValue,
|
||||||
UseDroppableTypesafeArguments,
|
UseDroppableTypesafeArguments,
|
||||||
UseDroppableTypesafeReturnValue,
|
UseDroppableTypesafeReturnValue,
|
||||||
} from '../types';
|
} from 'features/dnd/types';
|
||||||
|
|
||||||
export function useDroppableTypesafe(props: UseDroppableTypesafeArguments) {
|
export function useDroppableTypesafe(props: UseDroppableTypesafeArguments) {
|
||||||
return useDroppable(props) as UseDroppableTypesafeReturnValue;
|
return useDroppable(props) as UseDroppableTypesafeReturnValue;
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
import { TypesafeActive, TypesafeDroppableData } from '../types';
|
import { TypesafeActive, TypesafeDroppableData } from 'features/dnd/types';
|
||||||
|
|
||||||
export const isValidDrop = (
|
export const isValidDrop = (
|
||||||
overData: TypesafeDroppableData | undefined,
|
overData: TypesafeDroppableData | undefined,
|
||||||
|
@ -5,7 +5,7 @@ import { useAppSelector } from 'app/store/storeHooks';
|
|||||||
import IAICollapse from 'common/components/IAICollapse';
|
import IAICollapse from 'common/components/IAICollapse';
|
||||||
import { memo, useMemo } from 'react';
|
import { memo, useMemo } from 'react';
|
||||||
import { useTranslation } from 'react-i18next';
|
import { useTranslation } from 'react-i18next';
|
||||||
import { useFeatureStatus } from '../../system/hooks/useFeatureStatus';
|
import { useFeatureStatus } from 'features/system/hooks/useFeatureStatus';
|
||||||
import ParamDynamicPromptsMaxPrompts from './ParamDynamicPromptsMaxPrompts';
|
import ParamDynamicPromptsMaxPrompts from './ParamDynamicPromptsMaxPrompts';
|
||||||
import ParamDynamicPromptsPreview from './ParamDynamicPromptsPreview';
|
import ParamDynamicPromptsPreview from './ParamDynamicPromptsPreview';
|
||||||
import ParamDynamicPromptsSeedBehaviour from './ParamDynamicPromptsSeedBehaviour';
|
import ParamDynamicPromptsSeedBehaviour from './ParamDynamicPromptsSeedBehaviour';
|
||||||
|
@ -5,7 +5,7 @@ import { defaultSelectorOptions } from 'app/store/util/defaultMemoizeOptions';
|
|||||||
import IAISwitch from 'common/components/IAISwitch';
|
import IAISwitch from 'common/components/IAISwitch';
|
||||||
import { memo, useCallback } from 'react';
|
import { memo, useCallback } from 'react';
|
||||||
import { useTranslation } from 'react-i18next';
|
import { useTranslation } from 'react-i18next';
|
||||||
import { combinatorialToggled } from '../store/dynamicPromptsSlice';
|
import { combinatorialToggled } from 'features/dynamicPrompts/store/dynamicPromptsSlice';
|
||||||
|
|
||||||
const selector = createSelector(
|
const selector = createSelector(
|
||||||
stateSelector,
|
stateSelector,
|
||||||
|
@ -7,7 +7,7 @@ import { memo, useCallback } from 'react';
|
|||||||
import {
|
import {
|
||||||
maxPromptsChanged,
|
maxPromptsChanged,
|
||||||
maxPromptsReset,
|
maxPromptsReset,
|
||||||
} from '../store/dynamicPromptsSlice';
|
} from 'features/dynamicPrompts/store/dynamicPromptsSlice';
|
||||||
import { useTranslation } from 'react-i18next';
|
import { useTranslation } from 'react-i18next';
|
||||||
import IAIInformationalPopover from 'common/components/IAIInformationalPopover/IAIInformationalPopover';
|
import IAIInformationalPopover from 'common/components/IAIInformationalPopover/IAIInformationalPopover';
|
||||||
|
|
||||||
|
@ -5,7 +5,7 @@ import { useTranslation } from 'react-i18next';
|
|||||||
import {
|
import {
|
||||||
SeedBehaviour,
|
SeedBehaviour,
|
||||||
seedBehaviourChanged,
|
seedBehaviourChanged,
|
||||||
} from '../store/dynamicPromptsSlice';
|
} from 'features/dynamicPrompts/store/dynamicPromptsSlice';
|
||||||
import IAIMantineSelectItemWithDescription from 'common/components/IAIMantineSelectItemWithDescription';
|
import IAIMantineSelectItemWithDescription from 'common/components/IAIMantineSelectItemWithDescription';
|
||||||
import IAIInformationalPopover from 'common/components/IAIInformationalPopover/IAIInformationalPopover';
|
import IAIInformationalPopover from 'common/components/IAIInformationalPopover/IAIInformationalPopover';
|
||||||
|
|
||||||
|
@ -17,9 +17,9 @@ import { BoardDTO } from 'services/api/types';
|
|||||||
import { menuListMotionProps } from 'theme/components/menu';
|
import { menuListMotionProps } from 'theme/components/menu';
|
||||||
import GalleryBoardContextMenuItems from './GalleryBoardContextMenuItems';
|
import GalleryBoardContextMenuItems from './GalleryBoardContextMenuItems';
|
||||||
import NoBoardContextMenuItems from './NoBoardContextMenuItems';
|
import NoBoardContextMenuItems from './NoBoardContextMenuItems';
|
||||||
import { useFeatureStatus } from '../../../system/hooks/useFeatureStatus';
|
import { useFeatureStatus } from 'features/system/hooks/useFeatureStatus';
|
||||||
import { useBulkDownloadImagesMutation } from '../../../../services/api/endpoints/images';
|
import { useBulkDownloadImagesMutation } from 'services/api/endpoints/images';
|
||||||
import { addToast } from '../../../system/store/systemSlice';
|
import { addToast } from 'features/system/store/systemSlice';
|
||||||
|
|
||||||
type Props = {
|
type Props = {
|
||||||
board?: BoardDTO;
|
board?: BoardDTO;
|
||||||
|
@ -7,7 +7,7 @@ import { OverlayScrollbarsComponent } from 'overlayscrollbars-react';
|
|||||||
import { memo, useState } from 'react';
|
import { memo, useState } from 'react';
|
||||||
import { useListAllBoardsQuery } from 'services/api/endpoints/boards';
|
import { useListAllBoardsQuery } from 'services/api/endpoints/boards';
|
||||||
import { BoardDTO } from 'services/api/types';
|
import { BoardDTO } from 'services/api/types';
|
||||||
import DeleteBoardModal from '../DeleteBoardModal';
|
import DeleteBoardModal from 'features/gallery/components/Boards/DeleteBoardModal';
|
||||||
import AddBoardButton from './AddBoardButton';
|
import AddBoardButton from './AddBoardButton';
|
||||||
import BoardsSearch from './BoardsSearch';
|
import BoardsSearch from './BoardsSearch';
|
||||||
import GalleryBoard from './GalleryBoard';
|
import GalleryBoard from './GalleryBoard';
|
||||||
|
@ -30,8 +30,8 @@ import {
|
|||||||
} from 'services/api/endpoints/boards';
|
} from 'services/api/endpoints/boards';
|
||||||
import { useGetImageDTOQuery } from 'services/api/endpoints/images';
|
import { useGetImageDTOQuery } from 'services/api/endpoints/images';
|
||||||
import { BoardDTO } from 'services/api/types';
|
import { BoardDTO } from 'services/api/types';
|
||||||
import AutoAddIcon from '../AutoAddIcon';
|
import AutoAddIcon from 'features/gallery/components/Boards/AutoAddIcon';
|
||||||
import BoardContextMenu from '../BoardContextMenu';
|
import BoardContextMenu from 'features/gallery/components/Boards/BoardContextMenu';
|
||||||
import { useTranslation } from 'react-i18next';
|
import { useTranslation } from 'react-i18next';
|
||||||
|
|
||||||
interface GalleryBoardProps {
|
interface GalleryBoardProps {
|
||||||
|
@ -13,8 +13,8 @@ import {
|
|||||||
} from 'features/gallery/store/gallerySlice';
|
} from 'features/gallery/store/gallerySlice';
|
||||||
import { memo, useCallback, useMemo, useState } from 'react';
|
import { memo, useCallback, useMemo, useState } from 'react';
|
||||||
import { useBoardName } from 'services/api/hooks/useBoardName';
|
import { useBoardName } from 'services/api/hooks/useBoardName';
|
||||||
import AutoAddIcon from '../AutoAddIcon';
|
import AutoAddIcon from 'features/gallery/components/Boards/AutoAddIcon';
|
||||||
import BoardContextMenu from '../BoardContextMenu';
|
import BoardContextMenu from 'features/gallery/components/Boards/BoardContextMenu';
|
||||||
import {
|
import {
|
||||||
useGetBoardAssetsTotalQuery,
|
useGetBoardAssetsTotalQuery,
|
||||||
useGetBoardImagesTotalQuery,
|
useGetBoardImagesTotalQuery,
|
||||||
|
@ -43,8 +43,8 @@ import { useGetImageDTOQuery } from 'services/api/endpoints/images';
|
|||||||
import { useDebouncedMetadata } from 'services/api/hooks/useDebouncedMetadata';
|
import { useDebouncedMetadata } from 'services/api/hooks/useDebouncedMetadata';
|
||||||
import { useDebouncedWorkflow } from 'services/api/hooks/useDebouncedWorkflow';
|
import { useDebouncedWorkflow } from 'services/api/hooks/useDebouncedWorkflow';
|
||||||
import { menuListMotionProps } from 'theme/components/menu';
|
import { menuListMotionProps } from 'theme/components/menu';
|
||||||
import { sentImageToImg2Img } from '../../store/actions';
|
import { sentImageToImg2Img } from 'features/gallery/store/actions';
|
||||||
import SingleSelectionMenuItems from '../ImageContextMenu/SingleSelectionMenuItems';
|
import SingleSelectionMenuItems from 'features/gallery/components/ImageContextMenu/SingleSelectionMenuItems';
|
||||||
|
|
||||||
const currentImageButtonsSelector = createSelector(
|
const currentImageButtonsSelector = createSelector(
|
||||||
[stateSelector, activeTabNameSelector],
|
[stateSelector, activeTabNameSelector],
|
||||||
|
@ -17,8 +17,8 @@ import { memo, useCallback, useMemo, useRef, useState } from 'react';
|
|||||||
import { useHotkeys } from 'react-hotkeys-hook';
|
import { useHotkeys } from 'react-hotkeys-hook';
|
||||||
import { FaImage } from 'react-icons/fa';
|
import { FaImage } from 'react-icons/fa';
|
||||||
import { useGetImageDTOQuery } from 'services/api/endpoints/images';
|
import { useGetImageDTOQuery } from 'services/api/endpoints/images';
|
||||||
import ImageMetadataViewer from '../ImageMetadataViewer/ImageMetadataViewer';
|
import ImageMetadataViewer from 'features/gallery/components/ImageMetadataViewer/ImageMetadataViewer';
|
||||||
import NextPrevImageButtons from '../NextPrevImageButtons';
|
import NextPrevImageButtons from 'features/gallery/components/NextPrevImageButtons';
|
||||||
import { useTranslation } from 'react-i18next';
|
import { useTranslation } from 'react-i18next';
|
||||||
|
|
||||||
export const imagesSelector = createSelector(
|
export const imagesSelector = createSelector(
|
||||||
|
@ -14,9 +14,9 @@ import {
|
|||||||
useBulkDownloadImagesMutation,
|
useBulkDownloadImagesMutation,
|
||||||
useStarImagesMutation,
|
useStarImagesMutation,
|
||||||
useUnstarImagesMutation,
|
useUnstarImagesMutation,
|
||||||
} from '../../../../services/api/endpoints/images';
|
} from 'services/api/endpoints/images';
|
||||||
import { useFeatureStatus } from '../../../system/hooks/useFeatureStatus';
|
import { useFeatureStatus } from 'features/system/hooks/useFeatureStatus';
|
||||||
import { addToast } from '../../../system/store/systemSlice';
|
import { addToast } from 'features/system/store/systemSlice';
|
||||||
import { useTranslation } from 'react-i18next';
|
import { useTranslation } from 'react-i18next';
|
||||||
|
|
||||||
const MultipleSelectionMenuItems = () => {
|
const MultipleSelectionMenuItems = () => {
|
||||||
|
@ -38,7 +38,10 @@ import {
|
|||||||
import { useDebouncedMetadata } from 'services/api/hooks/useDebouncedMetadata';
|
import { useDebouncedMetadata } from 'services/api/hooks/useDebouncedMetadata';
|
||||||
import { useDebouncedWorkflow } from 'services/api/hooks/useDebouncedWorkflow';
|
import { useDebouncedWorkflow } from 'services/api/hooks/useDebouncedWorkflow';
|
||||||
import { ImageDTO } from 'services/api/types';
|
import { ImageDTO } from 'services/api/types';
|
||||||
import { sentImageToCanvas, sentImageToImg2Img } from '../../store/actions';
|
import {
|
||||||
|
sentImageToCanvas,
|
||||||
|
sentImageToImg2Img,
|
||||||
|
} from 'features/gallery/store/actions';
|
||||||
|
|
||||||
type SingleSelectionMenuItemsProps = {
|
type SingleSelectionMenuItemsProps = {
|
||||||
imageDTO: ImageDTO;
|
imageDTO: ImageDTO;
|
||||||
|
@ -15,7 +15,7 @@ import { defaultSelectorOptions } from 'app/store/util/defaultMemoizeOptions';
|
|||||||
import IAIButton from 'common/components/IAIButton';
|
import IAIButton from 'common/components/IAIButton';
|
||||||
import { memo, useCallback, useRef } from 'react';
|
import { memo, useCallback, useRef } from 'react';
|
||||||
import { FaImages, FaServer } from 'react-icons/fa';
|
import { FaImages, FaServer } from 'react-icons/fa';
|
||||||
import { galleryViewChanged } from '../store/gallerySlice';
|
import { galleryViewChanged } from 'features/gallery/store/gallerySlice';
|
||||||
import BoardsList from './Boards/BoardsList/BoardsList';
|
import BoardsList from './Boards/BoardsList/BoardsList';
|
||||||
import GalleryBoardName from './GalleryBoardName';
|
import GalleryBoardName from './GalleryBoardName';
|
||||||
import GallerySettingsPopover from './GallerySettingsPopover';
|
import GallerySettingsPopover from './GallerySettingsPopover';
|
||||||
|
@ -20,7 +20,7 @@ import {
|
|||||||
useStarImagesMutation,
|
useStarImagesMutation,
|
||||||
useUnstarImagesMutation,
|
useUnstarImagesMutation,
|
||||||
} from 'services/api/endpoints/images';
|
} from 'services/api/endpoints/images';
|
||||||
import IAIDndImageIcon from '../../../../common/components/IAIDndImageIcon';
|
import IAIDndImageIcon from 'common/components/IAIDndImageIcon';
|
||||||
|
|
||||||
interface HoverableImageProps {
|
interface HoverableImageProps {
|
||||||
imageName: string;
|
imageName: string;
|
||||||
|
@ -12,7 +12,7 @@ import {
|
|||||||
isParameterControlNetModel,
|
isParameterControlNetModel,
|
||||||
isParameterLoRAModel,
|
isParameterLoRAModel,
|
||||||
isParameterT2IAdapterModel,
|
isParameterT2IAdapterModel,
|
||||||
} from '../../../parameters/types/parameterSchemas';
|
} from 'features/parameters/types/parameterSchemas';
|
||||||
import ImageMetadataItem from './ImageMetadataItem';
|
import ImageMetadataItem from './ImageMetadataItem';
|
||||||
|
|
||||||
type Props = {
|
type Props = {
|
||||||
|
@ -2,7 +2,7 @@ import { Box, ChakraProps, Flex, IconButton, Spinner } from '@chakra-ui/react';
|
|||||||
import { memo } from 'react';
|
import { memo } from 'react';
|
||||||
import { useTranslation } from 'react-i18next';
|
import { useTranslation } from 'react-i18next';
|
||||||
import { FaAngleDoubleRight, FaAngleLeft, FaAngleRight } from 'react-icons/fa';
|
import { FaAngleDoubleRight, FaAngleLeft, FaAngleRight } from 'react-icons/fa';
|
||||||
import { useNextPrevImage } from '../hooks/useNextPrevImage';
|
import { useNextPrevImage } from 'features/gallery/hooks/useNextPrevImage';
|
||||||
|
|
||||||
const nextPrevButtonStyles: ChakraProps['sx'] = {
|
const nextPrevButtonStyles: ChakraProps['sx'] = {
|
||||||
color: 'base.100',
|
color: 'base.100',
|
||||||
|
@ -7,8 +7,8 @@ import { MouseEvent, useCallback, useMemo } from 'react';
|
|||||||
import { useListImagesQuery } from 'services/api/endpoints/images';
|
import { useListImagesQuery } from 'services/api/endpoints/images';
|
||||||
import { ImageDTO } from 'services/api/types';
|
import { ImageDTO } from 'services/api/types';
|
||||||
import { imagesSelectors } from 'services/api/util';
|
import { imagesSelectors } from 'services/api/util';
|
||||||
import { useFeatureStatus } from '../../system/hooks/useFeatureStatus';
|
import { useFeatureStatus } from 'features/system/hooks/useFeatureStatus';
|
||||||
import { selectionChanged } from '../store/gallerySlice';
|
import { selectionChanged } from 'features/gallery/store/gallerySlice';
|
||||||
|
|
||||||
const selector = createSelector(
|
const selector = createSelector(
|
||||||
[stateSelector, selectListImagesBaseQueryArgs],
|
[stateSelector, selectListImagesBaseQueryArgs],
|
||||||
|
@ -9,8 +9,8 @@ import {
|
|||||||
imagesApi,
|
imagesApi,
|
||||||
useLazyListImagesQuery,
|
useLazyListImagesQuery,
|
||||||
} from 'services/api/endpoints/images';
|
} from 'services/api/endpoints/images';
|
||||||
import { selectListImagesBaseQueryArgs } from '../store/gallerySelectors';
|
import { selectListImagesBaseQueryArgs } from 'features/gallery/store/gallerySelectors';
|
||||||
import { IMAGE_LIMIT } from '../store/types';
|
import { IMAGE_LIMIT } from 'features/gallery/store/types';
|
||||||
import { ListImagesArgs } from 'services/api/types';
|
import { ListImagesArgs } from 'services/api/types';
|
||||||
import { imagesAdapter } from 'services/api/util';
|
import { imagesAdapter } from 'services/api/util';
|
||||||
|
|
||||||
|
@ -9,7 +9,7 @@ import {
|
|||||||
loraRemoved,
|
loraRemoved,
|
||||||
loraWeightChanged,
|
loraWeightChanged,
|
||||||
loraWeightReset,
|
loraWeightReset,
|
||||||
} from '../store/loraSlice';
|
} from 'features/lora/store/loraSlice';
|
||||||
import IAIInformationalPopover from 'common/components/IAIInformationalPopover/IAIInformationalPopover';
|
import IAIInformationalPopover from 'common/components/IAIInformationalPopover/IAIInformationalPopover';
|
||||||
|
|
||||||
type Props = {
|
type Props = {
|
||||||
|
@ -6,7 +6,7 @@ import { defaultSelectorOptions } from 'app/store/util/defaultMemoizeOptions';
|
|||||||
import IAICollapse from 'common/components/IAICollapse';
|
import IAICollapse from 'common/components/IAICollapse';
|
||||||
import { size } from 'lodash-es';
|
import { size } from 'lodash-es';
|
||||||
import { memo } from 'react';
|
import { memo } from 'react';
|
||||||
import { useFeatureStatus } from '../../system/hooks/useFeatureStatus';
|
import { useFeatureStatus } from 'features/system/hooks/useFeatureStatus';
|
||||||
import ParamLoraList from './ParamLoraList';
|
import ParamLoraList from './ParamLoraList';
|
||||||
import ParamLoRASelect from './ParamLoraSelect';
|
import ParamLoRASelect from './ParamLoraSelect';
|
||||||
import { useTranslation } from 'react-i18next';
|
import { useTranslation } from 'react-i18next';
|
||||||
|
@ -10,10 +10,10 @@ import { FocusEventHandler, useCallback, useState } from 'react';
|
|||||||
import { useTranslation } from 'react-i18next';
|
import { useTranslation } from 'react-i18next';
|
||||||
import { useAddMainModelsMutation } from 'services/api/endpoints/models';
|
import { useAddMainModelsMutation } from 'services/api/endpoints/models';
|
||||||
import { CheckpointModelConfig } from 'services/api/types';
|
import { CheckpointModelConfig } from 'services/api/types';
|
||||||
import { setAdvancedAddScanModel } from '../../store/modelManagerSlice';
|
import { setAdvancedAddScanModel } from 'features/modelManager/store/modelManagerSlice';
|
||||||
import BaseModelSelect from '../shared/BaseModelSelect';
|
import BaseModelSelect from 'features/modelManager/subpanels/shared/BaseModelSelect';
|
||||||
import CheckpointConfigsSelect from '../shared/CheckpointConfigsSelect';
|
import CheckpointConfigsSelect from 'features/modelManager/subpanels/shared/CheckpointConfigsSelect';
|
||||||
import ModelVariantSelect from '../shared/ModelVariantSelect';
|
import ModelVariantSelect from 'features/modelManager/subpanels/shared/ModelVariantSelect';
|
||||||
import { getModelName } from './util';
|
import { getModelName } from './util';
|
||||||
|
|
||||||
type AdvancedAddCheckpointProps = {
|
type AdvancedAddCheckpointProps = {
|
||||||
|
@ -8,9 +8,9 @@ import { makeToast } from 'features/system/util/makeToast';
|
|||||||
import { useTranslation } from 'react-i18next';
|
import { useTranslation } from 'react-i18next';
|
||||||
import { useAddMainModelsMutation } from 'services/api/endpoints/models';
|
import { useAddMainModelsMutation } from 'services/api/endpoints/models';
|
||||||
import { DiffusersModelConfig } from 'services/api/types';
|
import { DiffusersModelConfig } from 'services/api/types';
|
||||||
import { setAdvancedAddScanModel } from '../../store/modelManagerSlice';
|
import { setAdvancedAddScanModel } from 'features/modelManager/store/modelManagerSlice';
|
||||||
import BaseModelSelect from '../shared/BaseModelSelect';
|
import BaseModelSelect from 'features/modelManager/subpanels/shared/BaseModelSelect';
|
||||||
import ModelVariantSelect from '../shared/ModelVariantSelect';
|
import ModelVariantSelect from 'features/modelManager/subpanels/shared/ModelVariantSelect';
|
||||||
import { getModelName } from './util';
|
import { getModelName } from './util';
|
||||||
import { FocusEventHandler, useCallback } from 'react';
|
import { FocusEventHandler, useCallback } from 'react';
|
||||||
|
|
||||||
|
@ -15,7 +15,7 @@ import {
|
|||||||
useGetModelsInFolderQuery,
|
useGetModelsInFolderQuery,
|
||||||
useImportMainModelsMutation,
|
useImportMainModelsMutation,
|
||||||
} from 'services/api/endpoints/models';
|
} from 'services/api/endpoints/models';
|
||||||
import { setAdvancedAddScanModel } from '../../store/modelManagerSlice';
|
import { setAdvancedAddScanModel } from 'features/modelManager/store/modelManagerSlice';
|
||||||
import { ALL_BASE_MODELS } from 'services/api/constants';
|
import { ALL_BASE_MODELS } from 'services/api/constants';
|
||||||
|
|
||||||
export default function FoundModelsList() {
|
export default function FoundModelsList() {
|
||||||
|
@ -6,7 +6,7 @@ import IAIMantineSelect from 'common/components/IAIMantineSelect';
|
|||||||
import { motion } from 'framer-motion';
|
import { motion } from 'framer-motion';
|
||||||
import { useCallback, useEffect, useState, useMemo } from 'react';
|
import { useCallback, useEffect, useState, useMemo } from 'react';
|
||||||
import { FaTimes } from 'react-icons/fa';
|
import { FaTimes } from 'react-icons/fa';
|
||||||
import { setAdvancedAddScanModel } from '../../store/modelManagerSlice';
|
import { setAdvancedAddScanModel } from 'features/modelManager/store/modelManagerSlice';
|
||||||
import AdvancedAddCheckpoint from './AdvancedAddCheckpoint';
|
import AdvancedAddCheckpoint from './AdvancedAddCheckpoint';
|
||||||
import AdvancedAddDiffusers from './AdvancedAddDiffusers';
|
import AdvancedAddDiffusers from './AdvancedAddDiffusers';
|
||||||
import { ManualAddMode } from './AdvancedAddModels';
|
import { ManualAddMode } from './AdvancedAddModels';
|
||||||
|
@ -11,7 +11,7 @@ import { useGetModelsInFolderQuery } from 'services/api/endpoints/models';
|
|||||||
import {
|
import {
|
||||||
setAdvancedAddScanModel,
|
setAdvancedAddScanModel,
|
||||||
setSearchFolder,
|
setSearchFolder,
|
||||||
} from '../../store/modelManagerSlice';
|
} from 'features/modelManager/store/modelManagerSlice';
|
||||||
|
|
||||||
type SearchFolderForm = {
|
type SearchFolderForm = {
|
||||||
folder: string;
|
folder: string;
|
||||||
|
@ -15,9 +15,9 @@ import {
|
|||||||
useUpdateMainModelsMutation,
|
useUpdateMainModelsMutation,
|
||||||
} from 'services/api/endpoints/models';
|
} from 'services/api/endpoints/models';
|
||||||
import { CheckpointModelConfig } from 'services/api/types';
|
import { CheckpointModelConfig } from 'services/api/types';
|
||||||
import BaseModelSelect from '../shared/BaseModelSelect';
|
import BaseModelSelect from 'features/modelManager/subpanels/shared/BaseModelSelect';
|
||||||
import CheckpointConfigsSelect from '../shared/CheckpointConfigsSelect';
|
import CheckpointConfigsSelect from 'features/modelManager/subpanels/shared/CheckpointConfigsSelect';
|
||||||
import ModelVariantSelect from '../shared/ModelVariantSelect';
|
import ModelVariantSelect from 'features/modelManager/subpanels/shared/ModelVariantSelect';
|
||||||
import ModelConvert from './ModelConvert';
|
import ModelConvert from './ModelConvert';
|
||||||
|
|
||||||
type CheckpointModelEditProps = {
|
type CheckpointModelEditProps = {
|
||||||
|
@ -13,8 +13,8 @@ import {
|
|||||||
useUpdateMainModelsMutation,
|
useUpdateMainModelsMutation,
|
||||||
} from 'services/api/endpoints/models';
|
} from 'services/api/endpoints/models';
|
||||||
import { DiffusersModelConfig } from 'services/api/types';
|
import { DiffusersModelConfig } from 'services/api/types';
|
||||||
import BaseModelSelect from '../shared/BaseModelSelect';
|
import BaseModelSelect from 'features/modelManager/subpanels/shared/BaseModelSelect';
|
||||||
import ModelVariantSelect from '../shared/ModelVariantSelect';
|
import ModelVariantSelect from 'features/modelManager/subpanels/shared/ModelVariantSelect';
|
||||||
|
|
||||||
type DiffusersModelEditProps = {
|
type DiffusersModelEditProps = {
|
||||||
model: DiffusersModelConfigEntity;
|
model: DiffusersModelConfigEntity;
|
||||||
|
@ -16,7 +16,7 @@ import {
|
|||||||
useUpdateLoRAModelsMutation,
|
useUpdateLoRAModelsMutation,
|
||||||
} from 'services/api/endpoints/models';
|
} from 'services/api/endpoints/models';
|
||||||
import { LoRAModelConfig } from 'services/api/types';
|
import { LoRAModelConfig } from 'services/api/types';
|
||||||
import BaseModelSelect from '../shared/BaseModelSelect';
|
import BaseModelSelect from 'features/modelManager/subpanels/shared/BaseModelSelect';
|
||||||
|
|
||||||
type LoRAModelEditProps = {
|
type LoRAModelEditProps = {
|
||||||
model: LoRAModelConfigEntity;
|
model: LoRAModelConfigEntity;
|
||||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user