Skip to content

Commit ef884d3

Browse files
committed
👔 Allow dict of event names for REDCap format
1 parent bb52bf0 commit ef884d3

1 file changed

Lines changed: 10 additions & 2 deletions

File tree

src/mindlogger_data_export/outputs.py

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -402,7 +402,9 @@ class RedcapImportFormat(WideFormat):
402402

403403
NAME = "redcap"
404404

405-
def __init__(self, project: str = "curious_parent_arm_1", *args, **kwargs) -> None:
405+
def __init__(
406+
self, *args, project: str | dict[str, str] | None = None, **kwargs
407+
) -> None:
406408
kwargs.setdefault("include_options", True)
407409
super().__init__(*args, **kwargs)
408410
self._project = project
@@ -574,10 +576,16 @@ def _add_redcap_metadata(
574576
) -> pl.DataFrame:
575577
"""Add REDCap-required columns and form completion status."""
576578
# Add required REDCap columns using pre-extracted record_id
579+
_project = (
580+
self._project.get(activity_prefix, "")
581+
if isinstance(self._project, dict)
582+
else self._project or ""
583+
)
584+
577585
df = df.with_columns(
578586
[
579587
record_id.to_series().alias("record_id"),
580-
pl.lit(self._project).alias("redcap_event_name"),
588+
pl.lit(_project).alias("redcap_event_name"),
581589
]
582590
)
583591

0 commit comments

Comments
 (0)