mirror of
https://github.com/langchain-ai/langgraph.git
synced 2026-08-17 21:25:46 +02:00
# Overview Adding conditional rendering logic to co-locate js and python documentation. * `:::` conditional syntax can be used to switch between python only or js only content. * Contains simple unit tests for `:::` * PR adds set up for a way to implement a context switch between languages, but it will not be enabled until JS content is merged in. * Contains a script that can add javascript documentation Implementation of: https://github.com/langchain-ai/langgraph/pull/5118 ## Example Example of conditional rendering / compilation. ```markdown ### Config (static context) Config is for immutable data like user metadata or API keys. Use when you have values that don't change mid-run. Specify configuration using a key called **"configurable"** which is reserved for this purpose: :::python This content will only be rendered for the python site. ::: :::js this content will only be rendered for the js / ts site. ::: ```
23 lines
560 B
Python
23 lines
560 B
Python
from _scripts.notebook_hooks import _apply_conditional_rendering
|
|
|
|
|
|
CONDITIONAL_RENDERING = """
|
|
above
|
|
:::js
|
|
js-content
|
|
:::
|
|
between
|
|
:::python
|
|
python-content
|
|
:::
|
|
below
|
|
"""
|
|
|
|
|
|
def test_conditional_rendering() -> None:
|
|
"""Test logic for conditional rendering of content."""
|
|
output = _apply_conditional_rendering(CONDITIONAL_RENDERING, "js")
|
|
assert output.strip() == "above\njs-content\n\nbetween\n\nbelow"
|
|
output = _apply_conditional_rendering(CONDITIONAL_RENDERING, "python")
|
|
assert output.strip() == "above\n\nbetween\npython-content\n\nbelow"
|