"""Chartmetric charts generators module.""" from typing import Dict from feed_ingestion.flows.chartmetric_charts.config import \ platforms_to_check_if_chart_is_changed def platform_names_generator(context: Dict) -> Dict: """Generate parameters for ingestion activities. Args: context (dict): The current context. Yields: dict: Dictionary with a platform name. """ for platform_name in context['bootstrap.platform_names']: yield dict(platform_name=platform_name) def platform_names_days_back_generator(context: Dict) -> Dict: """Generate parameters for ingestion activities. Args: context (dict): The current context. Yields: dict: Dictionary with a platform name and its days_back value. """ for key, value in context['bootstrap.platform_days_back'].items(): yield dict(platform_name=key, platform_day_back=value) def platform_names_days_change_check_generator(context: Dict) -> Dict: """Generate parameters for chart change check. Args: context (dict): The current context. Yields: dict: Dictionary with a platform name and its days_back value. """ for key, value in context['bootstrap.platform_days_back'].items(): if key in platforms_to_check_if_chart_is_changed: yield dict(platform_name=key, platform_day_back=value)