Skip to content

Commit 91c60fe

Browse files
committed
feat: enhance UI with collapsible transformation categories and improved navigation controls
1 parent fd29e24 commit 91c60fe

File tree

10 files changed

+621
-330
lines changed

10 files changed

+621
-330
lines changed

packages/imagekit-editor-dev/src/ImageKitEditor.tsx

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import { ChakraProvider, theme as defaultTheme } from "@chakra-ui/react"
22
import type { Dict } from "@chakra-ui/utils"
3+
import { isEqual } from "lodash"
34
import merge from "lodash/merge"
45
import React, { forwardRef, useImperativeHandle } from "react"
56
import { EditorLayout, EditorWrapper } from "./components/editor"
@@ -38,20 +39,27 @@ interface EditorProps<Metadata extends RequiredMetadata = RequiredMetadata> {
3839
}>
3940
}
4041

41-
onClose: () => void
42+
onClose: ({ dirty }?: { dirty?: boolean }) => void
4243
}
4344

4445
function ImageKitEditorImpl<M extends RequiredMetadata>(
4546
props: EditorProps<M>,
4647
ref: React.Ref<ImageKitEditorRef>,
4748
) {
4849
const { theme, initialImages, signer } = props
49-
const { addImage, addImages, setCurrentImage, initialize, destroy } =
50-
useEditorStore()
50+
const {
51+
addImage,
52+
addImages,
53+
setCurrentImage,
54+
transformations,
55+
initialize,
56+
destroy,
57+
} = useEditorStore()
5158

5259
const handleOnClose = () => {
5360
destroy()
54-
props.onClose()
61+
const dirty = transformations.length > 0
62+
props.onClose({ dirty })
5563
}
5664

5765
React.useEffect(() => {

0 commit comments

Comments
 (0)