feat: Split issuer address into separate fields in invoice template
Replace combined 'issuer-address' with 4 separate elements: - issuer-street (Straße) - issuer-house-number (Hausnummer) - issuer-postal-code (PLZ) - issuer-city (Ort) Update starter layout to use new separate fields with appropriate positioning.
This commit is contained in:
@@ -49,7 +49,10 @@ const INVOICE_LOCKED_TEXT_PALETTE_IDS = new Set([
|
||||
"payment-terms",
|
||||
"bank-details",
|
||||
"issuer-name",
|
||||
"issuer-address",
|
||||
"issuer-street",
|
||||
"issuer-house-number",
|
||||
"issuer-postal-code",
|
||||
"issuer-city",
|
||||
"issuer-contact",
|
||||
]);
|
||||
|
||||
@@ -305,17 +308,48 @@ const INVOICE_PALETTE_ITEMS: PaletteItem[] = [
|
||||
defaultContent: (user) => user?.companyName ?? "Ihr Unternehmen",
|
||||
},
|
||||
{
|
||||
id: "issuer-address",
|
||||
id: "issuer-street",
|
||||
category: "issuer-data",
|
||||
label: "Aussteller-Adresse",
|
||||
description: "Adresse des Rechnungsausstellers",
|
||||
width: 280,
|
||||
label: "Aussteller-Straße",
|
||||
description: "Straße des Rechnungsausstellers",
|
||||
width: 200,
|
||||
fontSize: 14,
|
||||
fontWeight: 400,
|
||||
textAlign: "left",
|
||||
defaultContent: (user) =>
|
||||
user?.address ??
|
||||
`${user?.street ?? ""} ${user?.houseNumber ?? ""}\n${user?.postalCode ?? ""} ${user?.city ?? ""}`,
|
||||
defaultContent: (user) => user?.street ?? "",
|
||||
},
|
||||
{
|
||||
id: "issuer-house-number",
|
||||
category: "issuer-data",
|
||||
label: "Aussteller-Hausnummer",
|
||||
description: "Hausnummer des Rechnungsausstellers",
|
||||
width: 80,
|
||||
fontSize: 14,
|
||||
fontWeight: 400,
|
||||
textAlign: "left",
|
||||
defaultContent: (user) => user?.houseNumber ?? "",
|
||||
},
|
||||
{
|
||||
id: "issuer-postal-code",
|
||||
category: "issuer-data",
|
||||
label: "Aussteller-PLZ",
|
||||
description: "Postleitzahl des Rechnungsausstellers",
|
||||
width: 80,
|
||||
fontSize: 14,
|
||||
fontWeight: 400,
|
||||
textAlign: "left",
|
||||
defaultContent: (user) => user?.postalCode ?? "",
|
||||
},
|
||||
{
|
||||
id: "issuer-city",
|
||||
category: "issuer-data",
|
||||
label: "Aussteller-Ort",
|
||||
description: "Ort des Rechnungsausstellers",
|
||||
width: 200,
|
||||
fontSize: 14,
|
||||
fontWeight: 400,
|
||||
textAlign: "left",
|
||||
defaultContent: (user) => user?.city ?? "",
|
||||
},
|
||||
{
|
||||
id: "issuer-contact",
|
||||
@@ -950,7 +984,10 @@ function createInvoiceStarterLayout(user: UserOption | null, paletteItems: Palet
|
||||
|
||||
return [
|
||||
createElementFromPalette(requirePaletteItem(paletteItems, "issuer-name"), user, { x: 56, y: 56 }),
|
||||
createElementFromPalette(requirePaletteItem(paletteItems, "issuer-address"), user, { x: 56, y: 86 }),
|
||||
createElementFromPalette(requirePaletteItem(paletteItems, "issuer-street"), user, { x: 56, y: 86 }),
|
||||
createElementFromPalette(requirePaletteItem(paletteItems, "issuer-house-number"), user, { x: 260, y: 86 }),
|
||||
createElementFromPalette(requirePaletteItem(paletteItems, "issuer-postal-code"), user, { x: 56, y: 110 }),
|
||||
createElementFromPalette(requirePaletteItem(paletteItems, "issuer-city"), user, { x: 140, y: 110 }),
|
||||
createElementFromPalette(requirePaletteItem(paletteItems, "issuer-contact"), user, { x: 56, y: 130 }),
|
||||
createElementFromPalette(requirePaletteItem(paletteItems, "invoice-title"), user, { x: 480, y: 56 }),
|
||||
createElementFromPalette(requirePaletteItem(paletteItems, "invoice-number"), user, { x: 480, y: 96 }),
|
||||
|
||||
Reference in New Issue
Block a user