Compare commits

...

4 Commits

Author SHA1 Message Date
Flatlogic Bot
eed4809a2c Forced merge: merge ai-dev into master 2025-08-19 19:57:39 +00:00
Flatlogic Bot
f1b098160d Image First Change 2025-08-19 19:54:22 +00:00
Flatlogic Bot
74000da528 Added image support 2025-08-19 18:56:52 +00:00
Flatlogic Bot
fefa78ae57 Initial 2025-08-19 18:44:32 +00:00
6 changed files with 69 additions and 49 deletions

5
.gitignore vendored
View File

@ -1,3 +1,8 @@
node_modules/ node_modules/
*/node_modules/ */node_modules/
*/build/ */build/
**/node_modules/
**/build/
.DS_Store
.env

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1 @@
{}

View File

@ -64,6 +64,14 @@ const FormImagePicker = ({
const showFilename = !isRoundIcon && file; const showFilename = !isRoundIcon && file;
return ( return (
<div>
{file && (
<img
src={file.url || URL.createObjectURL(file)}
alt="Preview"
className="mb-4 max-h-48 object-contain"
/>
)}
<div className='flex items-stretch justify-start relative'> <div className='flex items-stretch justify-start relative'>
<label className='inline-flex'> <label className='inline-flex'>
<BaseButton <BaseButton
@ -83,6 +91,7 @@ const FormImagePicker = ({
className='absolute top-0 left-0 w-full h-full opacity-0 outline-none cursor-pointer -z-1' className='absolute top-0 left-0 w-full h-full opacity-0 outline-none cursor-pointer -z-1'
onChange={handleFileChange} onChange={handleFileChange}
accept={accept} accept={accept}
capture
disabled={loading} disabled={loading}
/> />
</label> </label>
@ -96,6 +105,8 @@ const FormImagePicker = ({
</div> </div>
)} )}
</div> </div>
</div>
); );
}; };

View File

@ -202,12 +202,14 @@ const EditBottlesPage = () => {
path={'bottles/picture'} path={'bottles/picture'}
name='picture' name='picture'
id='picture' id='picture'
accept='image/*'
capture
schema={{ schema={{
size: undefined, size: undefined,
formats: undefined, formats: undefined,
}} }}
component={FormImagePicker} component={FormImagePicker}
></Field> />
</FormField> </FormField>
<FormField label='Age'> <FormField label='Age'>

View File

@ -91,6 +91,21 @@ const BottlesNew = () => {
onSubmit={(values) => handleSubmit(values)} onSubmit={(values) => handleSubmit(values)}
> >
<Form> <Form>
<FormField label='Picture'>
<Field
label='Picture'
color='info'
icon={mdiUpload}
path='bottles/picture'
name='picture'
id='picture'
accept='image/*'
capture
schema={{ size: undefined, formats: undefined }}
component={FormImagePicker}
></Field>
</FormField>
<FormField label='Name'> <FormField label='Name'>
<Field name='name' placeholder='Name' /> <Field name='name' placeholder='Name' />
</FormField> </FormField>
@ -169,21 +184,6 @@ const BottlesNew = () => {
<Field name='barcode' placeholder='Barcode' /> <Field name='barcode' placeholder='Barcode' />
</FormField> </FormField>
<FormField>
<Field
label='Picture'
color='info'
icon={mdiUpload}
path={'bottles/picture'}
name='picture'
id='picture'
schema={{
size: undefined,
formats: undefined,
}}
component={FormImagePicker}
></Field>
</FormField>
<FormField label='Age'> <FormField label='Age'>
<Field type='number' name='age' placeholder='Age' /> <Field type='number' name='age' placeholder='Age' />