Compare commits
No commits in common. "9f8f2a233bc8f868a0283585ae4fcdc1408c95d3" and "807f8200b1ebaf4369d41e9506a51f01f0e42086" have entirely different histories.
9f8f2a233b
...
807f8200b1
5 changed files with 90 additions and 81 deletions
|
|
@ -96,58 +96,60 @@
|
|||
<FormLabel>Description *</FormLabel>
|
||||
<FormControl>
|
||||
<Textarea
|
||||
placeholder="A detailed description of the income source, and what it was for (event/project/etc)..."
|
||||
placeholder="e.g., Workshop fee, Donation, Service revenue"
|
||||
v-bind="componentField"
|
||||
rows="3"
|
||||
/>
|
||||
</FormControl>
|
||||
<FormDescription>Describe the source of this income</FormDescription>
|
||||
<FormMessage />
|
||||
</FormItem>
|
||||
</FormField>
|
||||
|
||||
<div class="grid grid-cols-2 gap-4">
|
||||
<FormField v-slot="{ componentField }" name="amount">
|
||||
<FormItem>
|
||||
<FormLabel>Amount *</FormLabel>
|
||||
<FormControl>
|
||||
<Input
|
||||
type="number"
|
||||
placeholder="0.00"
|
||||
v-bind="componentField"
|
||||
min="0.01"
|
||||
step="0.01"
|
||||
/>
|
||||
</FormControl>
|
||||
<FormMessage />
|
||||
</FormItem>
|
||||
</FormField>
|
||||
<FormField v-slot="{ componentField }" name="amount">
|
||||
<FormItem>
|
||||
<FormLabel>Amount *</FormLabel>
|
||||
<FormControl>
|
||||
<Input
|
||||
type="number"
|
||||
placeholder="0.00"
|
||||
v-bind="componentField"
|
||||
min="0.01"
|
||||
step="0.01"
|
||||
/>
|
||||
</FormControl>
|
||||
<FormDescription>Amount in selected currency</FormDescription>
|
||||
<FormMessage />
|
||||
</FormItem>
|
||||
</FormField>
|
||||
|
||||
<FormField v-slot="{ componentField }" name="currency">
|
||||
<FormItem>
|
||||
<FormLabel>Currency *</FormLabel>
|
||||
<Select v-bind="componentField">
|
||||
<FormControl>
|
||||
<SelectTrigger class="w-full">
|
||||
<SelectValue placeholder="Select currency" />
|
||||
</SelectTrigger>
|
||||
</FormControl>
|
||||
<SelectContent>
|
||||
<SelectItem v-for="currency in availableCurrencies" :key="currency" :value="currency">
|
||||
{{ currency }}
|
||||
</SelectItem>
|
||||
</SelectContent>
|
||||
</Select>
|
||||
<FormMessage />
|
||||
</FormItem>
|
||||
</FormField>
|
||||
</div>
|
||||
<FormField v-slot="{ componentField }" name="currency">
|
||||
<FormItem>
|
||||
<FormLabel>Currency *</FormLabel>
|
||||
<Select v-bind="componentField">
|
||||
<FormControl>
|
||||
<SelectTrigger>
|
||||
<SelectValue placeholder="Select currency" />
|
||||
</SelectTrigger>
|
||||
</FormControl>
|
||||
<SelectContent>
|
||||
<SelectItem v-for="currency in availableCurrencies" :key="currency" :value="currency">
|
||||
{{ currency }}
|
||||
</SelectItem>
|
||||
</SelectContent>
|
||||
</Select>
|
||||
<FormDescription>Currency for this income</FormDescription>
|
||||
<FormMessage />
|
||||
</FormItem>
|
||||
</FormField>
|
||||
|
||||
<FormField v-slot="{ componentField }" name="reference">
|
||||
<FormItem>
|
||||
<FormLabel>Reference (optional)</FormLabel>
|
||||
<FormLabel>Reference</FormLabel>
|
||||
<FormControl>
|
||||
<Input placeholder="e.g., Invoice #123, Receipt #456" v-bind="componentField" />
|
||||
</FormControl>
|
||||
<FormDescription>Optional reference number or note</FormDescription>
|
||||
<FormMessage />
|
||||
</FormItem>
|
||||
</FormField>
|
||||
|
|
@ -199,6 +201,7 @@ import { Textarea } from '@/components/ui/textarea'
|
|||
import { Badge } from '@/components/ui/badge'
|
||||
import {
|
||||
FormControl,
|
||||
FormDescription,
|
||||
FormField,
|
||||
FormItem,
|
||||
FormLabel,
|
||||
|
|
|
|||
|
|
@ -202,7 +202,7 @@ const messages: LocaleMessages = {
|
|||
income: {
|
||||
title: 'Add Income',
|
||||
description: 'Submit income for the organization',
|
||||
selectAccount: 'Select the revenue account. Use the "Other" account if you\'re not sure.',
|
||||
selectAccount: 'Select the revenue account',
|
||||
submitIncome: 'Submit Income',
|
||||
notAvailable: 'Income submission is not yet available. This feature is coming soon.',
|
||||
},
|
||||
|
|
|
|||
|
|
@ -202,7 +202,7 @@ const messages: LocaleMessages = {
|
|||
income: {
|
||||
title: 'A\u00f1adir ingreso',
|
||||
description: 'Enviar un ingreso para la organizaci\u00f3n',
|
||||
selectAccount: 'Seleccionar la cuenta de ingresos. Use la cuenta "Other" si no está seguro.',
|
||||
selectAccount: 'Seleccionar la cuenta de ingresos',
|
||||
submitIncome: 'Enviar ingreso',
|
||||
notAvailable: 'El registro de ingresos a\u00fan no est\u00e1 disponible. Esta funci\u00f3n llegar\u00e1 pronto.',
|
||||
},
|
||||
|
|
|
|||
|
|
@ -202,7 +202,7 @@ const messages: LocaleMessages = {
|
|||
income: {
|
||||
title: 'Ajouter un revenu',
|
||||
description: 'Soumettre un revenu pour l\u2019organisation',
|
||||
selectAccount: 'S\u00e9lectionner le compte de revenus. Utilisez le compte "Other" si vous n\'\u00eates pas s\u00fbr.',
|
||||
selectAccount: 'S\u00e9lectionner le compte de revenus',
|
||||
submitIncome: 'Soumettre le revenu',
|
||||
notAvailable: 'La saisie de revenus n\u2019est pas encore disponible. Cette fonctionnalit\u00e9 arrive bient\u00f4t.',
|
||||
},
|
||||
|
|
|
|||
|
|
@ -113,60 +113,66 @@
|
|||
</FormItem>
|
||||
</FormField>
|
||||
|
||||
<!-- Amount + Currency -->
|
||||
<div class="grid grid-cols-2 gap-4">
|
||||
<!-- Amount -->
|
||||
<FormField v-slot="{ componentField }" name="amount">
|
||||
<FormItem>
|
||||
<FormLabel>Amount *</FormLabel>
|
||||
<FormControl>
|
||||
<Input
|
||||
type="number"
|
||||
placeholder="0.00"
|
||||
v-bind="componentField"
|
||||
min="0.01"
|
||||
step="0.01"
|
||||
/>
|
||||
</FormControl>
|
||||
<FormMessage />
|
||||
</FormItem>
|
||||
</FormField>
|
||||
<!-- Amount -->
|
||||
<FormField v-slot="{ componentField }" name="amount">
|
||||
<FormItem>
|
||||
<FormLabel>Amount *</FormLabel>
|
||||
<FormControl>
|
||||
<Input
|
||||
type="number"
|
||||
placeholder="0.00"
|
||||
v-bind="componentField"
|
||||
min="0.01"
|
||||
step="0.01"
|
||||
/>
|
||||
</FormControl>
|
||||
<FormDescription>
|
||||
Amount in selected currency
|
||||
</FormDescription>
|
||||
<FormMessage />
|
||||
</FormItem>
|
||||
</FormField>
|
||||
|
||||
<!-- Currency -->
|
||||
<FormField v-slot="{ componentField }" name="currency">
|
||||
<FormItem>
|
||||
<FormLabel>Currency *</FormLabel>
|
||||
<Select v-bind="componentField">
|
||||
<FormControl>
|
||||
<SelectTrigger class="w-full">
|
||||
<SelectValue placeholder="Select currency" />
|
||||
</SelectTrigger>
|
||||
</FormControl>
|
||||
<SelectContent>
|
||||
<SelectItem
|
||||
v-for="currency in availableCurrencies"
|
||||
:key="currency"
|
||||
:value="currency"
|
||||
>
|
||||
{{ currency }}
|
||||
</SelectItem>
|
||||
</SelectContent>
|
||||
</Select>
|
||||
<FormMessage />
|
||||
</FormItem>
|
||||
</FormField>
|
||||
</div>
|
||||
<!-- Currency -->
|
||||
<FormField v-slot="{ componentField }" name="currency">
|
||||
<FormItem>
|
||||
<FormLabel>Currency *</FormLabel>
|
||||
<Select v-bind="componentField">
|
||||
<FormControl>
|
||||
<SelectTrigger>
|
||||
<SelectValue placeholder="Select currency" />
|
||||
</SelectTrigger>
|
||||
</FormControl>
|
||||
<SelectContent>
|
||||
<SelectItem
|
||||
v-for="currency in availableCurrencies"
|
||||
:key="currency"
|
||||
:value="currency"
|
||||
>
|
||||
{{ currency }}
|
||||
</SelectItem>
|
||||
</SelectContent>
|
||||
</Select>
|
||||
<FormDescription>
|
||||
Currency for this expense
|
||||
</FormDescription>
|
||||
<FormMessage />
|
||||
</FormItem>
|
||||
</FormField>
|
||||
|
||||
<!-- Reference (optional) -->
|
||||
<FormField v-slot="{ componentField }" name="reference">
|
||||
<FormItem>
|
||||
<FormLabel>Reference (optional)</FormLabel>
|
||||
<FormLabel>Reference</FormLabel>
|
||||
<FormControl>
|
||||
<Input
|
||||
placeholder="e.g., Invoice #123, Receipt #456"
|
||||
v-bind="componentField"
|
||||
/>
|
||||
</FormControl>
|
||||
<FormDescription>
|
||||
Optional reference number or note
|
||||
</FormDescription>
|
||||
<FormMessage />
|
||||
</FormItem>
|
||||
</FormField>
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue