async def generate_entities(self) -> AsyncGenerator[ChunkEntity, None]:
        """Generate all OneDrive entities.

        Yields entities in the following order:
          - OneDriveDriveEntity for the user's drive
          - OneDriveDriveItemEntity for each file in the drive
        """
        async with httpx.AsyncClient() as client:
            # 1) Generate drive entity
            drive_entity = None
            async for drive in self._generate_drive_entity(client):
                yield drive
                drive_entity = drive
                break  # Only one drive for personal OneDrive

            if not drive_entity:
                logger.error("No drive found for user")
                return

            # 2) Generate file entities for the drive
            drive_id = drive_entity.entity_id
            drive_name = drive_entity.drive_type or "OneDrive"

            logger.info(f"Starting to process files from drive: {drive_id} ({drive_name})")

            async for file_entity in self._generate_drive_item_entities(
                client, drive_id, drive_name
            ):
                yield file_entity
Generate all OneDrive entities.

        Yields entities in the following order:
          - OneDriveDriveEntity for the user's drive
          - OneDriveDriveItemEntity for each file in the drive
        
backend/airweave/platform/sources/onedrive.py