"""PROJWBS table handler.""" from xer_mcp.parser.table_handlers.base import TableHandler class ProjwbsHandler(TableHandler): """Handler for PROJWBS (WBS) table in XER files.""" @property def table_name(self) -> str: return "PROJWBS" def parse_row(self, fields: list[str], values: list[str]) -> dict | None: """Parse a PROJWBS row.""" if len(values) < len(fields): values = values + [""] * (len(fields) - len(values)) data = dict(zip(fields, values, strict=False)) return { "wbs_id": data.get("wbs_id", ""), "proj_id": data.get("proj_id", ""), "parent_wbs_id": data.get("parent_wbs_id", ""), "wbs_short_name": data.get("wbs_short_name", ""), "wbs_name": data.get("wbs_name") or None, }