john-bodley commented on code in PR #29084: URL: https://github.com/apache/superset/pull/29084#discussion_r1628055866
########## superset/utils/core.py: ########## @@ -1056,16 +1056,23 @@ def is_adhoc_column(column: Column) -> TypeGuard[AdhocColumn]: ) +def is_base_axis(column: Column) -> bool: + return is_adhoc_column(column) and column.get("columnType") == "BASE_AXIS" + + +def get_base_axis_columns(columns: list[Column] | None) -> list[Column]: + return [column for column in columns or [] if is_base_axis(column)] + + +def get_non_base_axis_columns(columns: list[Column] | None) -> list[Column]: + return [column for column in columns or [] if not is_base_axis(column)] + + def get_base_axis_labels(columns: list[Column] | None) -> tuple[str, ...]: - axis_cols = [ - col - for col in columns or [] - if is_adhoc_column(col) and col.get("columnType") == "BASE_AXIS" - ] - return tuple(get_column_name(col) for col in axis_cols) + return tuple(get_column_name(column) for column in get_base_axis_columns(columns)) -def get_xaxis_label(columns: list[Column] | None) -> str | None: +def get_x_axis_label(columns: list[Column] | None) -> str | None: Review Comment: Renaming for consistency. ########## superset/utils/core.py: ########## @@ -1056,16 +1056,23 @@ def is_adhoc_column(column: Column) -> TypeGuard[AdhocColumn]: ) +def is_base_axis(column: Column) -> bool: + return is_adhoc_column(column) and column.get("columnType") == "BASE_AXIS" + + +def get_base_axis_columns(columns: list[Column] | None) -> list[Column]: + return [column for column in columns or [] if is_base_axis(column)] + + +def get_non_base_axis_columns(columns: list[Column] | None) -> list[Column]: + return [column for column in columns or [] if not is_base_axis(column)] + + def get_base_axis_labels(columns: list[Column] | None) -> tuple[str, ...]: - axis_cols = [ Review Comment: Refactoring using shared logic. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: notifications-unsubscr...@superset.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: notifications-unsubscr...@superset.apache.org For additional commands, e-mail: notifications-h...@superset.apache.org