static trellisDesign()

in clns-acuity-vahub/vahub/src/main/webapp/src/app/common/trellising/store/utils/TabStoreUtils.ts [392:471]


    static trellisDesign(tabId: TabId, xAxisValue: string, binSize: number): TrellisDesign {
        switch (tabId) {
            case TabId.CARDIAC_BOXPLOT:
            case TabId.VITALS_BOXPLOT:
            case TabId.RENAL_LABS_BOXPLOT:
            case TabId.LUNG_FUNCTION_BOXPLOT:
            case TabId.LAB_BOXPLOT:
            case TabId.LAB_LINEPLOT:
            case TabId.SINGLE_SUBJECT_LAB_LINEPLOT:
            case TabId.SINGLE_SUBJECT_VITALS_LINEPLOT:
            case TabId.SINGLE_SUBJECT_RENAL_LINEPLOT:
            case TabId.SINGLE_SUBJECT_CARDIAC_LINEPLOT:
            case TabId.SINGLE_SUBJECT_LUNG_LINEPLOT:
            case TabId.DOSE_PROPORTIONALITY_BOX_PLOT:
                switch (XAxisOptions[xAxisValue]) {
                    case XAxisOptions.STUDY_DEFINED_WEEK:
                    case XAxisOptions.WEEKS_SINCE_FIRST_TREATMENT:
                    case XAxisOptions.WEEKS_SINCE_RANDOMISATION:
                    case XAxisOptions.WEEKS_SINCE_FIRST_DOSE:
                    case XAxisOptions.WEEKS_SINCE_FIRST_DOSE_OF_DRUG:
                    case XAxisOptions.DAYS_SINCE_FIRST_TREATMENT:
                    case XAxisOptions.DAYS_SINCE_RANDOMISATION:
                    case XAxisOptions.DAYS_SINCE_FIRST_DOSE_OF_DRUG:
                    case XAxisOptions.DAYS_SINCE_FIRST_DOSE:
                        if (isNil(binSize) || binSize === 1) {
                            return TrellisDesign.CONTINUOUS_OVER_TIME;
                        } else {
                            return TrellisDesign.CATEGORICAL_OVER_TIME;
                        }
                    case XAxisOptions.VISIT_DESCRIPTION:
                    case XAxisOptions.VISIT_NUMBER:
                    case XAxisOptions.DATE:
                        return TrellisDesign.CATEGORICAL_OVER_TIME;
                    default:
                        return TrellisDesign.CONTINUOUS_OVER_TIME;
                }
            case TabId.CTDNA_PLOT:
                switch (XAxisOptions[xAxisValue]) {
                    case XAxisOptions.DAYS_SINCE_FIRST_DOSE:
                        return TrellisDesign.CONTINUOUS_OVER_TIME;
                    default:
                        return TrellisDesign.CATEGORICAL_OVER_TIME;
                }
            case TabId.LIVER_HYSLAW:
            case TabId.SINGLE_SUBJECT_LIVER_HYSLAW:
                return TrellisDesign.VARIABLE_Y_CONST_X;
            case TabId.EXACERBATIONS_OVER_TIME:
            case TabId.EXACERBATIONS_COUNTS:
            case TabId.CVOT_ENDPOINTS_COUNTS:
            case TabId.CVOT_ENDPOINTS_OVER_TIME:
            case TabId.CI_EVENT_COUNTS:
            case TabId.CI_EVENT_OVERTIME:
            case TabId.AES_COUNTS_BARCHART:
            case TabId.CEREBROVASCULAR_COUNTS:
            case TabId.CEREBROVASCULAR_EVENTS_OVER_TIME:
            case TabId.CONMEDS_BARCHART:
            case TabId.POPULATION_BARCHART:
            case TabId.POPULATION_TABLE:
            case TabId.AES_OVER_TIME:
            case TabId.RENAL_CKD_BARCHART:
            case TabId.EXACERBATIONS_GROUPED_COUNTS:
            case TabId.TUMOUR_RESPONSE_WATERFALL_PLOT:
            case TabId.QT_PROLONGATION:
                return TrellisDesign.CATEGORICAL_COUNTS_AND_PERCENTAGES;
            case TabId.LAB_SHIFTPLOT:
            case TabId.BIOMARKERS_HEATMAP_PLOT:
                return TrellisDesign.VARIABLE_Y_VARIABLE_X;
            case TabId.TUMOUR_RESPONSE_PRIOR_THERAPY:
            case TabId.PK_RESULT_OVERALL_RESPONSE:
                return TrellisDesign.CATEGORICAL_OVER_TIME;
            case TabId.TL_DIAMETERS_PLOT:
            case TabId.TL_DIAMETERS_PER_SUBJECT_PLOT:
                return XAxisOptions[xAxisValue] === XAxisOptions.ASSESSMENT_WEEK_WITH_BASELINE
                    ? TrellisDesign.CATEGORICAL_OVER_TIME : TrellisDesign.CONTINUOUS_OVER_TIME;
            case TabId.AES_CHORD_DIAGRAM:
                return TrellisDesign.NO_AXIS;
            default:
                return TrellisDesign.CONTINUOUS_OVER_TIME;
        }
    }