in src/co_op_translator/utils/llm/markdown_utils.py [0:0]
def process_markdown_with_many_links(content: str, max_links) -> list:
"""
Process markdown document by splitting it into chunks where each chunk contains max_links or fewer links.
Args:
content (str): The markdown content.
max_links (int): Maximum number of links allowed per chunk.
Returns:
list: List of markdown chunks to process.
"""
lines = content.split("\n")
chunks = []
current_chunk = ""
current_links = 0
for line in lines:
line_links = count_links_in_markdown(line)
if current_links + line_links > max_links:
chunks.append(current_chunk.strip())
current_chunk = line + "\n"
current_links = line_links
else:
current_chunk += line + "\n"
current_links += line_links
if current_chunk:
chunks.append(current_chunk.strip())
return chunks