add overrides and remove vatid & type from fields to fill

those are configuration options on the page beforehand
This commit is contained in:
Jan Bader
2026-04-07 23:17:03 +02:00
parent 2fc484c7b7
commit 6e29103f5f

View File

@@ -174,8 +174,6 @@ def get_invoice_links(page: Page) -> list[dict]:
def fill_invoice_fields(page: Page) -> None:
fields = {
"vatId": Config.INVOICE_VAT_ID,
"documentType": Config.INVOICE_DOCUMENT_TYPE,
"company": Config.INVOICE_COMPANY,
"notes": Config.INVOICE_NOTES,
}
@@ -183,7 +181,8 @@ def fill_invoice_fields(page: Page) -> None:
for field_id, value in fields.items():
if not value:
continue
for selector in [
name_override = {"company": "Company", "notes": "Other"}.get(field_id)
selectors = [
f"#{field_id}",
f"input[name='{field_id}']",
f"textarea[name='{field_id}']",
@@ -194,7 +193,12 @@ def fill_invoice_fields(page: Page) -> None:
f"input[name*='{field_id}' i]",
f"textarea[name*='{field_id}' i]",
f"select[name*='{field_id}' i]",
]:
]
if name_override:
selectors.insert(1, f"input[name='{name_override}']")
selectors.insert(2, f"textarea[name='{name_override}']")
selectors.insert(3, f"select[name='{name_override}']")
for selector in selectors:
el = page.locator(selector).first
if el.count() > 0:
tag = el.evaluate("el => el.tagName.toLowerCase()")