import React from 'react' import { Head, Link, useForm, usePage } from '@inertiajs/react' import EnhanceStubWarning from '../../components/enhance/EnhanceStubWarning' export default function EnhanceCreate() { const { props } = usePage() const form = useForm({ image: null, scale: props.options?.scales?.[0]?.value || 2, mode: props.options?.modes?.[0]?.value || 'standard' }) const [previewUrl, setPreviewUrl] = React.useState(null) const [sourceType, setSourceType] = React.useState(props.selectedArtwork ? 'artwork' : 'upload') React.useEffect(() => () => { if (previewUrl) { URL.revokeObjectURL(previewUrl) } }, [previewUrl]) function handleFileChange(event) { const file = event.target.files?.[0] || null form.setData('image', file) if (previewUrl) { URL.revokeObjectURL(previewUrl) } setPreviewUrl(file ? URL.createObjectURL(file) : null) } function submit(event) { event.preventDefault() const action = sourceType === 'artwork' && props.selectedArtwork?.store_url ? props.selectedArtwork.store_url : props.storeUrl form.post(action, { forceFormData: sourceType !== 'artwork', preserveScroll: true, }) } return (
Skinbase Enhance
Large images may take longer to process. The original image will stay unchanged.