#!/usr/bin/env python
import os
import papermill as pm
import bean as be
from bean.qc.utils import parse_args



def main():
    args = parse_args()
    os.system(
        "python -m ipykernel install --user --name bean_python3 --display-name bean_python3"
    )
    pm.execute_notebook(
        f"{os.path.dirname(be.__file__)}/../notebooks/sample_quality_report.ipynb",
        f"{args.out_report_prefix}.ipynb",
        parameters=dict(
            bdata_path=args.bdata_path,
            out_bdata_path=args.out_screen_path,
            edit_quantification_start_pos=args.edit_start_pos,
            edit_quantification_end_pos=args.edit_end_pos,
            target_pos_col=args.target_pos_col,
            rel_pos_is_reporter=args.rel_pos_is_reporter,
            corr_X_thres=args.count_correlation_thres,
            edit_rate_thres=args.edit_rate_thres,
            posctrl_col=args.posctrl_col,
            posctrl_val=args.posctrl_val,
            lfc_thres=args.lfc_thres,
            condition_label=args.condition_label,
        ),
        kernel_name="bean_python3",
    )
    os.system(f"jupyter nbconvert --to html {args.out_report_prefix}.ipynb")


if __name__ == "__main__":
    main()
