ConusAI vendor v0.1.0-beta.114
ci / gate (push) Waiting to run

This commit is contained in:
ConusAI vendor v0.1.0-beta.114
2026-11-14 09:56:45 +00:00
commit 1ce8d23c35
867 changed files with 122104 additions and 0 deletions
+127
View File
@@ -0,0 +1,127 @@
// SPDX-License-Identifier: LicenseRef-ConusAI-Template-1.0
import { SelectField, TextField } from "@conusai-kit/ui/patterns"
import { FieldLegend, FieldSet } from "@conusai-kit/ui/primitives"
import type { InvoiceTerms, SeriesView } from "../contract/index.js"
import type { Labels } from "./labels.js"
export function DraftFields({
labels,
data,
series,
count,
}: {
labels: Labels
data?: InvoiceTerms
series: SeriesView[]
count: number
}) {
return (
<>
<SelectField
name="series"
label={labels.series}
required
defaultValue={data?.series_id}
options={series
.filter((row) => row.active && row.kind === (data?.type_code === "381" ? "credit_note" : "invoice"))
.map((row) => ({ value: row.seriesId, label: row.code }))}
/>
<TextField name="currency" label={labels.currency} required maxLength={3} defaultValue={data?.currency} />
<TextField name="issueDate" type="date" label={labels.issueDate} required defaultValue={data?.issue_date} />
<TextField name="dueDate" type="date" label={labels.dueDate} defaultValue={data?.due_date ?? undefined} />
<TextField name="buyerReference" label={labels.buyerReference} required defaultValue={data?.buyer_reference} />
{(["seller", "buyer"] as const).map((side) => (
<FieldSet key={side}>
<FieldLegend>{labels[side]}</FieldLegend>
<TextField
name={`${side}.reference`}
label={labels.partyRef}
required
defaultValue={data?.[side].reference}
/>
<TextField name={`${side}.name`} label={labels.name} required defaultValue={data?.[side].name} />
<SelectField
name={`${side}.vatScheme`}
label={labels.vatScheme}
defaultValue={data?.[side].vat_identifier?.scheme ?? "vat"}
options={[
{ value: "vat", label: labels.vatDefault },
{ value: "9937", label: labels.vatLithuanian },
]}
/>
<TextField
name={`${side}.vatValue`}
label={labels.vatIdentifier}
defaultValue={data?.[side].vat_identifier?.value ?? undefined}
/>
<TextField
name={`${side}.country`}
label={labels.country}
required
maxLength={2}
defaultValue={data?.[side].address.country}
/>
<TextField
name={`${side}.street`}
label={labels.street}
defaultValue={data?.[side].address.street ?? undefined}
/>
<TextField name={`${side}.city`} label={labels.city} defaultValue={data?.[side].address.city ?? undefined} />
<TextField
name={`${side}.postcode`}
label={labels.postcode}
defaultValue={data?.[side].address.postal_code ?? undefined}
/>
<TextField
name={`${side}.scheme`}
label={labels.endpointScheme}
required
defaultValue={data?.[side].endpoint.scheme}
/>
<TextField
name={`${side}.endpoint`}
label={labels.endpoint}
required
defaultValue={data?.[side].endpoint.value}
/>
</FieldSet>
))}
{Array.from({ length: count }, (_, i) => (
<FieldSet key={`line-${i}`}>
<FieldLegend>
{labels.item} {i + 1}
</FieldLegend>
<TextField name={`line.${i}.name`} label={labels.item} required defaultValue={data?.lines[i]?.item_name} />
<TextField
name={`line.${i}.quantity`}
label={labels.quantity}
required
defaultValue={data?.lines[i]?.quantity}
/>
<TextField name={`line.${i}.unit`} label={labels.unit} required defaultValue={data?.lines[i]?.unit} />
<TextField
name={`line.${i}.price`}
label={labels.price}
required
defaultValue={data?.lines[i]?.net_price.amount}
/>
<TextField
name={`line.${i}.category`}
label={labels.vatCategory}
required
defaultValue={data?.lines[i]?.vat_category}
/>
<TextField
name={`line.${i}.rate`}
label={labels.vatRate}
defaultValue={data?.lines[i]?.vat_rate ?? undefined}
/>
<TextField
name={`line.${i}.exemption`}
label={labels.exemption}
defaultValue={data?.lines[i]?.exemption_reason ?? undefined}
/>
</FieldSet>
))}
</>
)
}