@gechiui/block-editor
Version:
45 lines (43 loc) • 1.08 kB
JavaScript
import { createElement } from "@gechiui/element";
/**
* GeChiUI dependencies
*/
import { createContext, useContext, useMemo } from '@gechiui/element';
/**
* Internal dependencies
*/
import useSaveImage from './use-save-image';
import useTransformImage from './use-transform-image';
const ImageEditingContext = createContext({});
export const useImageEditingContext = () => useContext(ImageEditingContext);
export default function ImageEditingProvider(_ref) {
let {
id,
url,
naturalWidth,
naturalHeight,
isEditing,
onFinishEditing,
onSaveImage,
children
} = _ref;
const transformImage = useTransformImage({
url,
naturalWidth,
naturalHeight
}, isEditing);
const saveImage = useSaveImage({
id,
url,
onSaveImage,
onFinishEditing,
...transformImage
});
const providerValue = useMemo(() => ({ ...transformImage,
...saveImage
}), [transformImage, saveImage]);
return createElement(ImageEditingContext.Provider, {
value: providerValue
}, children);
}
//# sourceMappingURL=context.js.map