async def generate_entities(self) -> AsyncGenerator[ChunkEntity, None]:
        """Recursively generate all entities from Dropbox.

        Yields:
            A sequence of entities in the following order:
            1. Account-level entities
            2. For each folder (including root), folder entity and its contents recursively
        """
        async with httpx.AsyncClient() as client:
            # 1. Account(s)
            async for account_entity in self._generate_account_entities(client):
                yield account_entity

                account_breadcrumb = Breadcrumb(
                    entity_id=account_entity.account_id,
                    name=account_entity.name,
                    type="account",
                )

                # Create breadcrumbs list with just the account
                account_breadcrumbs = [account_breadcrumb]

                # 2. Process root directory first (for files in root)
                async for file_entity in self._generate_file_entities(
                    client, account_breadcrumbs, ""
                ):
                    yield file_entity

                # 3. Process all folders recursively starting from root
                async for folder_entity in self._generate_folder_entities(
                    client, account_breadcrumb
                ):
                    # Skip excluded paths
                    # TODO: change for code that works!
                    if (
                        self.exclude_path
                        and folder_entity.path_lower
                        and self.exclude_path in folder_entity.path_lower
                    ):
                        logger.info(f"Skipping excluded folder: {folder_entity.path_lower}")
                        continue

                    yield folder_entity

                    folder_breadcrumb = Breadcrumb(
                        entity_id=folder_entity.folder_id,
                        name=folder_entity.name,
                        type="folder",
                    )
                    folder_breadcrumbs = [account_breadcrumb, folder_breadcrumb]

                    # Process all subfolders and their files recursively
                    async for entity in self._process_folder_and_contents(
                        client, folder_entity.path_lower, folder_breadcrumbs
                    ):
                        yield entity
Recursively generate all entities from Dropbox.

        Yields:
            A sequence of entities in the following order:
            1. Account-level entities
            2. For each folder (including root), folder entity and its contents recursively
        
backend/airweave/platform/sources/dropbox.py